/*!
 * CSL Fort Lauderdale — MASTER STYLESHEET (theme: csl-fortlauderdale)
 * One file for the whole site design. Edit here; it is cache-busted automatically (filemtime).
 * Built 2026-10-07 from the old scattered sources (mu-plugins, homepage template, uploads/csl-theme).
 * THIS FILE IS THE SOURCE NOW — edit it directly (master/build_master.py was a one-time migration; do not re-run it).
 * The SuperEvents plugin (calendar, event, show, series, auditions pages) keeps its own CSS.
 * Sections: 1 Fonts · 2 Livestream page · 3 Arts page (#caw) · 4 Site design system · 5 Mailing-list form ·
 *           6 Phone chrome · 7 Homepage (scoped to body.home) · 8 Homepage: Arts cards · 9 Homepage: events · 10 Homepage: Next-up card
 */

/* ======================================================================
   1. Fonts (self-hosted; loaded only when a rule uses them)
   ====================================================================== */
@font-face{font-family:'Bebas Neue';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/csl/bebas-neue-400-normal.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/csl/fraunces-400-italic.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:600;font-display:swap;src:url(fonts/csl/fraunces-600-italic.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/csl/fraunces-600-normal.woff2) format('woff2')}


/* ======================================================================
   2. Livestream page (BoxCast player)
   ====================================================================== */
.csl-stream{background:#0B0824}
.csl-stream .boxcast-boxoffice,.csl-stream .boxcast-boxoffice *{font-family:'Mulish',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;box-sizing:border-box}
.csl-stream .boxcast-boxoffice{color:#f6f1eb;background:#0B0824}
.csl-stream .boxcast-boxoffice a,.csl-stream .boxcast-boxoffice a:hover{text-decoration:none!important;color:inherit}
/* missing thumbnails: never request …/null or …/undefined */
.csl-stream [style*='url("null")'],.csl-stream [style*='url("undefined")'],.csl-stream [style*="url(null)"],.csl-stream [style*="url(undefined)"]{background-image:none!important;background-color:#1b1740}
.csl-stream img[src$="null"],.csl-stream img[src$="undefined"]{display:none!important}
/* player overlay before broadcast: the title already heads the info panel, so show only the start time */
.csl-stream .boxcast-errors{display:flex;align-items:center;justify-content:center;text-align:center;padding:16px 18px}
.csl-stream .boxcast-errors h3{display:none!important}
.csl-stream .boxcast-errors p{font-size:15px!important;line-height:1.4;margin:0;color:#FBC79A!important;font-weight:700}
/* info well: one title, no duplicate description line */
.csl-stream .boxcast-well{padding:18px 20px;color:#f6f1eb}
.csl-stream .boxcast-title{font-size:clamp(20px,2.4vw,28px)!important;line-height:1.25!important;margin:0 0 8px!important;color:#fff;font-weight:700;overflow-wrap:anywhere;text-transform:none}
.csl-stream .boxcast-description p:first-child{display:none}
.csl-stream .boxcast-description p{font-size:15px;line-height:1.55;color:#d9d3e8;margin:0 0 8px}
.csl-stream .boxcast-start-stop{font-size:14px;line-height:1.45;color:#FBC79A;margin:6px 0 10px}
.csl-stream .boxcast-well aside dl{margin:0}
.csl-stream .boxcast-well aside dt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.csl-stream .boxcast-well aside dd{display:inline-block;margin:0;font-size:12px!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:999px;background:#f47c20;color:#fff}
.csl-stream .boxcast-linkback{display:inline-block;margin-top:12px;font-size:12px;color:#9c95b8!important}
/* playlist */
.csl-stream .boxcast-playlist{border-top:1px solid rgba(255,255,255,.08)}
.csl-stream .boxcast-well-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.csl-stream .boxcast-well-title>div{float:none!important}
.csl-stream .boxcast-well-title>br{display:none}
.csl-stream .boxcast-well-title h3{margin:0;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#FBC79A}
.csl-stream .boxcast-playlist-search input{font-size:16px!important;min-height:44px;width:min(240px,100%);padding:10px 14px;border-radius:999px;border:1.5px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;outline:0}
.csl-stream .boxcast-playlist-search input:focus{border-color:#f47c20}
.csl-stream .boxcast-playlist-search input::placeholder{color:#a9a3c2}
.csl-stream .boxcast-playlist ul{list-style:none;margin:0;padding:0}
.csl-stream .boxcast-playlist-item{display:flex;gap:14px;align-items:flex-start;padding:12px 8px;border-radius:12px;cursor:pointer}
.csl-stream .boxcast-playlist-item:hover,.csl-stream .boxcast-playlist-item.boxcast-selected{background:rgba(244,124,32,.12)}
.csl-stream .boxcast-preview-icon{flex:0 0 auto;border-radius:8px;overflow:hidden}
.csl-stream .boxcast-playlist-item-meta{min-width:0;flex:1}
.csl-stream .boxcast-playlist-item-meta h3{margin:0 0 4px;font-size:15px;line-height:1.35;font-weight:700;overflow-wrap:anywhere}
.csl-stream .boxcast-playlist-item-meta p{margin:0;font-size:13px;line-height:1.45;color:#b8b1cf}
.csl-stream .boxcast-playlist-item-meta p:not(:last-child){display:none}
.csl-stream .boxcast-preview-duration{font-size:11px;font-weight:700}
/* pagination */
.csl-stream .boxcast-playlist button{min-height:44px;padding:0 20px;border-radius:999px;border:0;background:#f47c20;color:#fff;font-size:14px!important;font-weight:800;letter-spacing:.02em;cursor:pointer;transition:background .15s}
.csl-stream .boxcast-playlist button:hover{background:#d9660d}
.csl-stream .boxcast-playlist button:disabled{opacity:.4;cursor:default}
.csl-stream .boxcast-playlist button+span,.csl-stream .boxcast-playlist span:has(+button){font-size:13px;color:#b8b1cf}
@media(max-width:640px){
  .csl-stream .boxcast-well{padding:16px}
  .csl-stream .boxcast-playlist-search,.csl-stream .boxcast-playlist-search input,.csl-stream .boxcast-well-title>div:last-child{width:100%}
  .csl-stream .boxcast-preview-icon{width:112px}
}
.csl-stream [id^="boxcast-widget"],.csl-stream .boxcast-boxoffice,.csl-stream .boxcast-boxoffice .boxcast-well,.csl-stream .boxcast-page-controls{background:#0B0824!important;border:0!important;box-shadow:none!important}
.csl-stream .boxcast-boxoffice .boxcast-well{color:#f6f1eb!important}
.csl-stream .boxcast-boxoffice h1,.csl-stream .boxcast-boxoffice h3,.csl-stream .boxcast-boxoffice h3 a{font-family:'Mulish',sans-serif!important;letter-spacing:normal!important;text-transform:none!important;color:#fff!important}
.csl-stream .boxcast-boxoffice .boxcast-well-title h3{letter-spacing:.14em!important;text-transform:uppercase!important;color:#FBC79A!important;font-size:13px!important}
.csl-stream .boxcast-boxoffice .boxcast-description p,.csl-stream .boxcast-boxoffice .boxcast-playlist-item-meta p{color:#c9c3dc!important}
.csl-stream .boxcast-boxoffice .boxcast-start-stop{color:#FBC79A!important}
.csl-stream .boxcast-playlist-item-meta p span{white-space:normal!important;overflow:visible!important}
.csl-stream .boxcast-boxoffice .boxcast-playlist-item{border:2px solid transparent!important;background:transparent!important}
.csl-stream .boxcast-boxoffice .boxcast-playlist-item:hover{background:rgba(255,255,255,.05)!important}
.csl-stream .boxcast-boxoffice .boxcast-playlist-item.boxcast-selected{background:rgba(244,124,32,.14)!important;border-color:rgba(244,124,32,.6)!important}
.csl-stream .boxcast-page-controls{display:flex!important;align-items:center;justify-content:space-between;gap:10px;padding:16px 0 4px!important}
.csl-stream .boxcast-page-controls button{white-space:nowrap;padding:0 18px!important;font-size:13.5px!important;line-height:1}
.csl-stream .boxcast-page-controls span{font-size:13px!important;color:#b8b1cf!important;white-space:nowrap}
.csl-stream .boxcast-linkback strong{color:#d8d2ea}
.csl-stream .boxcast-boxoffice .boxcast-title{font-weight:700!important}
.csl-stream .boxcast-boxoffice .boxcast-description p{font-size:14px!important;line-height:1.5!important}
.csl-stream .boxcast-boxoffice .boxcast-start-stop{font-size:14px!important;line-height:1.45!important;margin:8px 0 12px!important}
.csl-stream .boxcast-boxoffice .boxcast-playlist-item-meta p,.csl-stream .boxcast-boxoffice .boxcast-playlist-item-meta p span{font-size:13px!important;line-height:1.45!important}
.csl-stream .boxcast-boxoffice .boxcast-playlist-item-meta h3,.csl-stream .boxcast-boxoffice .boxcast-playlist-item-meta h3 a{font-size:15px!important;line-height:1.35!important}
.csl-stream .boxcast-boxoffice .boxcast-linkback{display:block;font-size:12px!important;margin-top:12px}
.csl-stream .boxcast-boxoffice .boxcast-well-title{border:0!important;padding-bottom:4px}
.csl-stream .boxcast-boxoffice .boxcast-page-controls{padding:16px 16px 8px!important;margin:0!important}
.csl-stream .boxcast-boxoffice .boxcast-page-controls button{display:inline-flex!important;align-items:center;justify-content:center;height:44px!important;min-height:44px;padding:0 18px!important;margin:0!important;line-height:1!important;vertical-align:middle}
.csl-stream .boxcast-boxoffice .boxcast-page-controls{width:auto!important;max-width:100%;gap:8px!important;padding:16px 0 8px!important}
.csl-stream .boxcast-boxoffice .boxcast-page-controls button{padding:0 14px!important;font-size:13px!important;flex:0 1 auto;min-width:0}
.csl-stream .boxcast-boxoffice .boxcast-page-controls span{font-size:12px!important}


/* ======================================================================
   3. The Arts at CSL page (everything scoped to #caw)
   ====================================================================== */
/* The Arts at CSL — cinematic page layer (scoped to #caw, page 1472 only) */
#caw{--o:#f47c20;--od:#b3500a;--ind:#14103A;--deep:#0f0c1e;--blk:#0a0a0a;--cream:#fbf7f2;--txt:#f6f1eb;--mut:#b8b2ad;--ease:cubic-bezier(.2,.7,.2,1);--gut:clamp(20px,4vw,56px)}
#caw .caw-sec{position:relative;padding:clamp(80px,10vw,150px) var(--gut);overflow:hidden}
#caw .caw-in{position:relative;max-width:1440px;margin:0 auto}
#caw [id^="caw-"]{scroll-margin-top:84px}

/* type */
#caw .caw-eyebrow{display:flex;align-items:center;gap:16px;font-family:'Josefin Sans',sans-serif;font-size:15px;letter-spacing:.32em;text-transform:uppercase;color:var(--o);margin:0 0 22px;line-height:1.2}
#caw .caw-eyebrow>span{width:48px;height:1px;background:currentColor;flex:none}
#caw .caw-eyebrow-d{color:var(--od)}
#caw .caw-h2{margin:0;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:clamp(44px,6vw,104px);line-height:.9;letter-spacing:-.02em;text-transform:uppercase;color:#fff}
#caw .caw-h2 b{color:var(--o);font-weight:700}
#caw .caw-h2-d{color:var(--blk)}
#caw .caw-h2-d b{color:var(--od)}
#caw .caw-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px 48px;flex-wrap:wrap;margin-bottom:clamp(36px,4.5vw,64px)}
#caw .caw-head-note{max-width:380px;margin:0;font-size:17px;line-height:1.6;color:var(--mut)}
#caw .caw-lead{margin:0;font-size:clamp(18px,1.45vw,21px);line-height:1.65;color:#3b3631;max-width:620px}

/* buttons */
#caw .caw-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:18px 30px 16px;border-radius:999px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:14px;line-height:1.1;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;white-space:nowrap;border:1.5px solid transparent;transition:transform .35s var(--ease),background .3s,color .3s,box-shadow .35s,border-color .3s;cursor:pointer}
#caw .caw-btn:hover{transform:translateY(-2px)}
#caw .caw-btn-o{background:var(--o);color:var(--blk)}
#caw .caw-btn-o:hover{background:#ff9a4d;color:var(--blk);box-shadow:0 14px 40px -10px rgba(244,124,32,.7)}
#caw .caw-btn-ghost{border-color:rgba(255,255,255,.45);color:#fff;background:rgba(255,255,255,.04);backdrop-filter:blur(6px)}
#caw .caw-btn-ghost:hover{background:#fff;color:var(--blk);border-color:#fff}
#caw .caw-btn-dark{background:var(--blk);color:#fff}
#caw .caw-btn-dark:hover{color:var(--o)}
#caw .caw-btn-line{border-color:var(--blk);color:var(--blk)}
#caw .caw-btn-line:hover{background:var(--blk);color:var(--o)}
#caw .caw-btn-sm{padding:13px 18px 11px;font-size:12px;letter-spacing:.16em;gap:8px}
#caw .caw-link{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:3px;transition:color .25s,border-color .25s}
#caw .caw-link:hover{color:var(--o);border-color:var(--o)}
#caw .caw-link-d{color:var(--blk);border-color:rgba(0,0,0,.25)}
#caw .caw-link-d:hover{color:var(--od);border-color:var(--od)}
#caw .caw-price{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:15px;letter-spacing:.06em;color:var(--txt)}
#caw .caw-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 5px;border-radius:999px;border:1px solid color-mix(in srgb,var(--c) 45%,transparent);background:color-mix(in srgb,var(--c) 14%,transparent);font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:11px;line-height:1;letter-spacing:.2em;text-transform:uppercase;color:#fff;white-space:nowrap}
#caw .caw-chip i{width:6px;height:6px;border-radius:50%;background:var(--c);flex:none}
#caw .caw-cap-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-family:'Josefin Sans',sans-serif;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}

/* ============ HERO ============ */
#caw .caw-hero{position:relative;isolation:isolate;min-height:max(640px,calc(92vh - 66px));display:flex;align-items:flex-end;overflow:hidden;background:#07060f;color:var(--txt)}
#caw .caw-hero-media{position:absolute;inset:0;z-index:-1;overflow:hidden}
#caw .caw-kb,#caw .caw-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none;display:block}
#caw .caw-kb{transform-origin:62% 38%;animation:cawKB 22s ease-in-out infinite alternate;will-change:transform}
@keyframes cawKB{0%{transform:scale(1.04) translate3d(0,0,0)}100%{transform:scale(1.2) translate3d(-3%,-2%,0)}}
#caw .caw-leak{position:absolute;width:80vmax;height:80vmax;border-radius:50%;mix-blend-mode:screen;pointer-events:none;will-change:transform}
#caw .caw-leak-a{top:-42vmax;left:-30vmax;background:radial-gradient(closest-side,rgba(255,138,61,.55),rgba(244,124,32,.18) 45%,rgba(244,124,32,0) 72%);animation:cawLeakA 19s ease-in-out infinite alternate}
#caw .caw-leak-b{bottom:-50vmax;right:-34vmax;background:radial-gradient(closest-side,rgba(255,86,120,.34),rgba(170,60,160,.14) 45%,rgba(120,40,160,0) 72%);animation:cawLeakB 26s ease-in-out infinite alternate}
@keyframes cawLeakA{0%{transform:translate3d(0,0,0) scale(1);opacity:.75}50%{opacity:1}100%{transform:translate3d(22vw,12vh,0) scale(1.15);opacity:.6}}
@keyframes cawLeakB{0%{transform:translate3d(0,0,0) scale(1.1);opacity:.55}100%{transform:translate3d(-24vw,-14vh,0) scale(.95);opacity:.9}}
#caw .caw-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,6,15,.78) 0%,rgba(7,6,15,.35) 45%,rgba(7,6,15,0) 70%),linear-gradient(180deg,rgba(7,6,15,.55) 0%,rgba(7,6,15,0) 30%,rgba(7,6,15,.2) 60%,rgba(7,6,15,.92) 100%)}
#caw .caw-grain{position:absolute;inset:-60%;opacity:.13;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:cawGrain 1.2s steps(6) infinite}
@keyframes cawGrain{0%{transform:translate(0,0)}20%{transform:translate(-4%,3%)}40%{transform:translate(3%,-5%)}60%{transform:translate(-6%,-2%)}80%{transform:translate(5%,4%)}100%{transform:translate(0,0)}}
#caw .caw-hero-in{position:relative;width:100%;max-width:1440px;margin:0 auto;padding:clamp(120px,16vh,180px) var(--gut) clamp(44px,8vh,96px);display:grid;grid-template-columns:minmax(0,1fr) 392px;align-items:end;gap:48px}
#caw .caw-h1{margin:0;font-family:'Josefin Sans',sans-serif;font-weight:300;text-transform:uppercase;line-height:.86;letter-spacing:-.025em;font-size:clamp(60px,10.4vw,176px);color:var(--txt);text-shadow:0 10px 60px rgba(0,0,0,.35)}
#caw .caw-h1>span{display:block}
#caw .caw-h1 b{color:var(--o);font-weight:600}
#caw .caw-tag{margin:clamp(22px,3vh,34px) 0 0;max-width:540px;font-size:clamp(18px,1.5vw,22px);line-height:1.55;color:rgba(246,241,235,.9)}
#caw .caw-hero-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:clamp(26px,4vh,40px)}
#caw .caw-rise{animation:cawRise 1.25s var(--ease) both;animation-delay:var(--d,0ms)}
@keyframes cawRise{from{opacity:0;transform:translateY(42px)}to{opacity:1;transform:none}}

#caw .caw-next{position:relative;background:rgba(15,12,30,.52);-webkit-backdrop-filter:blur(20px) saturate(1.35);backdrop-filter:blur(20px) saturate(1.35);border:1px solid rgba(255,255,255,.14);border-radius:22px;padding:20px;box-shadow:0 40px 90px -20px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.12)}
#caw .caw-next::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(244,124,32,.8),rgba(244,124,32,0) 40%,rgba(255,255,255,0) 70%,rgba(255,255,255,.25));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
#caw .caw-next-top{display:flex;gap:16px;align-items:center}
#caw .caw-next-top img{width:88px;height:88px;flex:none;border-radius:12px;object-fit:cover;box-shadow:0 10px 30px rgba(0,0,0,.4)}
#caw .caw-next-chip{display:inline-flex;align-items:center;gap:8px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--o);margin-bottom:8px}
#caw .caw-next-chip i{width:7px;height:7px;border-radius:50%;background:var(--o);box-shadow:0 0 0 0 rgba(244,124,32,.7);animation:cawPulse 2s infinite}
@keyframes cawPulse{0%{box-shadow:0 0 0 0 rgba(244,124,32,.7)}70%{box-shadow:0 0 0 10px rgba(244,124,32,0)}100%{box-shadow:0 0 0 0 rgba(244,124,32,0)}}
#caw .caw-next-title{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:21px;line-height:1.12;color:#fff}
#caw .caw-next-when{margin-top:6px;font-family:'Josefin Sans',sans-serif;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:rgba(246,241,235,.72)}
#caw .caw-cd{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}
#caw .caw-cd>div{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 0 10px;text-align:center}
#caw .caw-cd b{display:block;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:34px;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
#caw .caw-cd span{display:block;margin-top:6px;font-family:'Josefin Sans',sans-serif;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:rgba(246,241,235,.6)}
#caw .caw-next-foot{display:flex;align-items:center;justify-content:space-between;gap:14px}
#caw .caw-scroll{position:absolute;left:50%;bottom:22px;width:22px;height:36px;margin-left:-11px;border:1.5px solid rgba(255,255,255,.4);border-radius:12px}
#caw .caw-scroll span{position:absolute;left:50%;top:7px;width:3px;height:7px;margin-left:-1.5px;border-radius:2px;background:#fff;animation:cawScroll 2s var(--ease) infinite}
@keyframes cawScroll{0%{transform:translateY(0);opacity:1}80%{transform:translateY(12px);opacity:0}100%{opacity:0}}

/* ============ POSTER WALL ============ */
#caw .caw-shows{background:radial-gradient(70% 45% at 50% 0%,rgba(244,124,32,.13),rgba(244,124,32,0) 70%),var(--deep);color:var(--txt)}
#caw .caw-wall{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(40px,4vw,64px) clamp(22px,2.4vw,36px)}
#caw .caw-poster{grid-column:span 2;display:flex;flex-direction:column;perspective:1400px;min-width:0}
#caw .caw-poster.caw-lg{grid-column:span 3}
#caw .caw-frame{position:relative;display:block;width:100%;aspect-ratio:4/5;margin:0;padding:0;border:0;border-radius:20px;overflow:hidden;cursor:zoom-in;background:#07060f;color:inherit;font:inherit;transform-style:preserve-3d;transition:transform .6s var(--ease),box-shadow .6s var(--ease);box-shadow:0 0 0 1px rgba(255,255,255,.07),0 40px 80px -34px rgba(0,0,0,.9)}
#caw .caw-poster.caw-lg .caw-frame{aspect-ratio:1/1}
#caw .caw-frame:hover,#caw .caw-frame:focus-visible{box-shadow:0 0 0 1px rgba(244,124,32,.45),0 50px 100px -30px rgba(244,124,32,.38)}
#caw .caw-frame:focus-visible{outline:2px solid var(--o);outline-offset:4px}
#caw .caw-frame-bg{position:absolute;inset:-30px;background-size:cover;background-position:center;filter:blur(38px) saturate(1.35) brightness(.5);transform:scale(1.15)}
#caw .caw-frame img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:contain;padding:8%;box-sizing:border-box;filter:drop-shadow(0 24px 40px rgba(0,0,0,.55));transition:transform .6s var(--ease)}
#caw .caw-poster.caw-lg .caw-frame img{padding:7%}
#caw .caw-frame:hover img{transform:translateZ(40px) scale(1.02)}
#caw .caw-frame-ph{position:absolute;inset:0;display:grid;place-items:center;padding:12%;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:32px;text-transform:uppercase;text-align:center;background:radial-gradient(120% 120% at 20% 10%,#2A2170,#14103A)}
#caw .caw-glare{position:absolute;inset:0;background:radial-gradient(circle at var(--gx,50%) var(--gy,0%),rgba(255,255,255,.28),rgba(255,255,255,0) 50%);opacity:0;transition:opacity .4s;mix-blend-mode:soft-light;pointer-events:none}
#caw .caw-frame:hover .caw-glare{opacity:1}
#caw .caw-frame-hint{position:absolute;left:50%;bottom:18px;transform:translate(-50%,10px);opacity:0;padding:10px 16px 8px;border-radius:999px;background:rgba(10,10,10,.72);backdrop-filter:blur(8px);font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#fff;white-space:nowrap;transition:opacity .35s,transform .35s var(--ease)}
#caw .caw-frame:hover .caw-frame-hint,#caw .caw-frame:focus-visible .caw-frame-hint{opacity:1;transform:translate(-50%,0)}
#caw .caw-cap{padding:24px 2px 0;display:flex;flex-direction:column;flex:1}
#caw .caw-cap-price{margin:0 0 20px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:15px;letter-spacing:.08em;color:#ffb27a}
#caw .caw-cap-title{margin:14px 0 10px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:clamp(22px,1.9vw,30px);line-height:1.1;letter-spacing:0;text-transform:none;color:#fff}
#caw .caw-poster.caw-lg .caw-cap-title{font-size:clamp(26px,2.4vw,38px)}
#caw .caw-cap-title a{color:inherit;text-decoration:none;transition:color .25s}
#caw .caw-cap-title a:hover{color:var(--o)}
#caw .caw-cap-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:18px;border-top:1px solid rgba(255,255,255,.1)}
#caw .caw-cap-links{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%}
#caw .caw-shows-foot{margin-top:clamp(40px,5vw,64px);display:flex;justify-content:center}

/* ============ LIGHTBOX ============ */
#caw .caw-lb{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:clamp(10px,3vw,40px);background:rgba(5,4,12,.84);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);opacity:0;visibility:hidden;transition:opacity .35s var(--ease),visibility 0s linear .35s}
#caw .caw-lb.open{opacity:1;visibility:visible;transition:opacity .35s var(--ease)}
#caw .caw-lb-panel{position:relative;width:min(1180px,100%);max-height:calc(100vh - 2*clamp(10px,3vw,40px));display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);background:var(--deep);border:1px solid rgba(255,255,255,.1);border-radius:22px;overflow:hidden;box-shadow:0 60px 140px -30px rgba(0,0,0,.8);transform:translateY(28px) scale(.97);transition:transform .5s var(--ease)}
#caw .caw-lb.open .caw-lb-panel{transform:none}
#caw .caw-lb-art{position:relative;overflow:hidden;background:#07060f;display:grid;place-items:center;min-height:0}
#caw .caw-lb-art .caw-frame-bg{inset:-40px}
#caw .caw-lb-art img{position:relative;display:block;width:100%;height:100%;max-height:calc(100vh - 2*clamp(10px,3vw,40px));max-width:none;object-fit:contain;padding:6%;box-sizing:border-box;filter:drop-shadow(0 30px 50px rgba(0,0,0,.6))}
#caw .caw-lb-info{padding:clamp(26px,3.6vw,52px);overflow:auto;display:flex;flex-direction:column;gap:18px;color:var(--txt)}
#caw .caw-lb-title{margin:0;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:clamp(32px,3.4vw,52px);line-height:.95;letter-spacing:-.01em;text-transform:uppercase;color:#fff}
#caw .caw-lb-blurb{margin:0;font-size:16px;line-height:1.65;color:var(--mut)}
#caw .caw-lb-perfs{list-style:none;margin:4px 0 0;padding:0}
#caw .caw-lb-perfs li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-top:1px solid rgba(255,255,255,.09);font-family:'Josefin Sans',sans-serif;font-size:14px;letter-spacing:.08em;text-transform:uppercase}
#caw .caw-lb-perfs li:last-child{border-bottom:1px solid rgba(255,255,255,.09)}
#caw .caw-lb-perfs b{font-weight:600;color:#fff}
#caw .caw-lb-perfs em{font-style:normal;color:var(--mut);margin-left:10px}
#caw .caw-lb-perfs a{color:var(--o);text-decoration:none;font-weight:600;font-size:12px;letter-spacing:.18em}
#caw .caw-lb-perfs a:hover{color:#fff}
#caw .caw-lb-foot{margin-top:auto;padding-top:8px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
#caw .caw-lb-foot .caw-price{font-size:18px;margin-right:auto}
#caw .caw-lb-x{position:absolute;top:14px;right:14px;z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(10,10,10,.6);backdrop-filter:blur(8px);color:#fff;font-size:22px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .25s,transform .35s var(--ease)}
#caw .caw-lb-x:hover{background:var(--o);color:var(--blk);transform:rotate(90deg)}
body.caw-lock{overflow:hidden}

/* ============ SEASON ============ */
#caw .caw-season-sec{background:linear-gradient(180deg,var(--ind) 0%,#110d2e 100%);color:var(--txt)}
#caw .caw-season-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px 40px;flex-wrap:wrap;margin-bottom:clamp(30px,4vw,56px)}
#caw .caw-filters{display:flex;gap:10px;flex-wrap:wrap}
#caw .caw-filters button{display:inline-flex;align-items:center;gap:9px;padding:12px 18px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:transparent;color:#fff;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:12px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
#caw .caw-filters button i{width:7px;height:7px;border-radius:50%;background:var(--c)}
#caw .caw-filters button:hover{border-color:rgba(255,255,255,.5)}
#caw .caw-filters button.on{background:#fff;color:var(--blk);border-color:#fff}
#caw .caw-tl{list-style:none;margin:0;padding:0}
#caw .caw-tl-m{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;padding:28px 0;border-top:1px solid rgba(255,255,255,.1)}
#caw .caw-tl-m:last-child{border-bottom:1px solid rgba(255,255,255,.1)}
#caw .caw-tl-mo b{display:block;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:clamp(40px,4.4vw,64px);line-height:.9;text-transform:uppercase;color:#fff}
#caw .caw-tl-mo span{display:block;margin-top:8px;font-family:'Josefin Sans',sans-serif;font-size:13px;letter-spacing:.3em;color:var(--mut)}
#caw .caw-tl-items{display:flex;flex-direction:column;gap:10px}
#caw .caw-tl-i{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:22px;padding:18px 22px;border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);color:#fff;text-decoration:none;transition:background .3s,border-color .3s,transform .4s var(--ease)}
#caw .caw-tl-i:hover{background:rgba(255,255,255,.07);border-color:rgba(244,124,32,.5);transform:translateX(4px)}
#caw .caw-tl-day{text-align:center}
#caw .caw-tl-day b{display:block;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:34px;line-height:1;color:var(--o)}
#caw .caw-tl-day span{display:block;margin-top:5px;font-family:'Josefin Sans',sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--mut)}
#caw .caw-tl-body{display:flex;flex-direction:column;gap:10px;min-width:0}
#caw .caw-tl-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-family:'Josefin Sans',sans-serif;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
#caw .caw-tl-title{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:clamp(20px,1.8vw,26px);line-height:1.15;color:#fff}
#caw .caw-tl-go{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:grid;place-items:center;font-size:18px;transition:background .3s,color .3s,border-color .3s}
#caw .caw-tl-i:hover .caw-tl-go{background:var(--o);border-color:var(--o);color:var(--blk)}
#caw .caw-hide{display:none !important}

/* ============ PAST PRODUCTIONS ============ */
#caw .caw-past-sec{background:var(--blk);color:var(--txt)}
#caw .caw-past-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:4px;outline:none}
#caw .caw-past-track::-webkit-scrollbar{display:none}
#caw .caw-slide{flex:0 0 min(1160px,86%);scroll-snap-align:start;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(24px,3vw,48px);padding:clamp(18px,2.2vw,30px);border-radius:22px;background:linear-gradient(160deg,#17132b 0%,#101010 60%);border:1px solid #242424}
#caw .caw-slide-flyer{border-radius:16px;overflow:hidden;aspect-ratio:1/1;background:#000;align-self:start}
#caw .caw-slide-flyer img{display:block;width:100%;height:100%;object-fit:contain;max-width:none}
#caw .caw-slide-body{display:flex;flex-direction:column;min-width:0;padding:6px 0}
#caw .caw-slide-title{margin:18px 0 16px;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:clamp(30px,3vw,50px);line-height:.95;letter-spacing:-.01em;text-transform:uppercase;color:#fff}
#caw .caw-slide-text{margin:0;font-size:16px;line-height:1.65;color:var(--mut);max-width:62ch}
#caw .caw-vids{display:flex;gap:12px;margin-top:auto;padding-top:26px}
#caw .caw-yt{position:relative;flex:1.7778 1 0;aspect-ratio:16/9;min-width:0}
#caw .caw-yt-v{flex:.5625 1 0;aspect-ratio:9/16}
#caw .caw-yt-btn{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:14px;overflow:hidden;background:#000;cursor:pointer;color:#fff}
#caw .caw-yt-btn img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none;opacity:.85;transition:transform .6s var(--ease),opacity .3s}
#caw .caw-yt-btn:hover img{transform:scale(1.05);opacity:1}
#caw .caw-yt-btn:focus-visible{outline:2px solid var(--o);outline-offset:3px}
#caw .caw-yt-play{position:absolute;left:50%;top:50%;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;background:var(--o);box-shadow:0 10px 30px rgba(0,0,0,.45);transition:transform .35s var(--ease)}
#caw .caw-yt-play::after{content:"";position:absolute;left:23px;top:18px;border-style:solid;border-width:11px 0 11px 17px;border-color:transparent transparent transparent var(--blk)}
#caw .caw-yt-btn:hover .caw-yt-play{transform:scale(1.1)}
#caw .caw-yt-v .caw-yt-play{width:46px;height:46px;margin:-23px 0 0 -23px}
#caw .caw-yt-v .caw-yt-play::after{left:18px;top:14px;border-width:9px 0 9px 14px}
#caw .caw-yt-t{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 12px;background:linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,0));font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:12px;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;text-align:left}
#caw .caw-yt-v .caw-yt-t{font-size:10px;padding:24px 10px 10px}
#caw .caw-yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:14px;background:#000}
#caw .caw-past-nav{display:flex;align-items:center;gap:20px;margin-top:30px}
#caw .caw-arrow{width:54px;height:54px;flex:none;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;font-size:20px;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
#caw .caw-arrow:hover{background:var(--o);border-color:var(--o);color:var(--blk)}
#caw .caw-arrow:disabled{opacity:.3;cursor:default;background:transparent;color:#fff;border-color:rgba(255,255,255,.22)}
#caw .caw-past-count{font-family:'Josefin Sans',sans-serif;font-size:14px;letter-spacing:.2em;color:var(--mut);font-variant-numeric:tabular-nums}
#caw .caw-past-count b{color:#fff;font-weight:600}
#caw .caw-past-bar{flex:1;height:2px;background:rgba(255,255,255,.12);border-radius:2px;overflow:hidden}
#caw .caw-past-bar span{display:block;height:100%;background:var(--o);transition:width .5s var(--ease)}

/* ============ PATRON ============ */
#caw .caw-patron-sec{background:radial-gradient(60% 70% at 100% 0%,rgba(244,124,32,.16),rgba(244,124,32,0) 70%),var(--cream);color:#111}
#caw .caw-patron{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,6vw,96px);align-items:center}
#caw .caw-patron-copy .caw-h2{margin-bottom:28px}
#caw .caw-patron-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
#caw .caw-patron-mail{margin:22px 0 0;font-size:16px;color:#5a534c}
#caw .caw-patron-mail a{color:var(--od);text-decoration:none;border-bottom:1px solid rgba(179,80,10,.35);font-weight:700}
#caw .caw-patron-mail a:hover{border-color:var(--od)}
#caw .caw-tiers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#caw .caw-tier{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:22px;padding:clamp(24px,2.4vw,32px);box-shadow:0 30px 60px -40px rgba(60,30,0,.35)}
#caw .caw-tier-feat{grid-column:1/-1;background:radial-gradient(120% 160% at 0% 0%,#2A2170 0%,var(--ind) 55%,#0b0920 100%);border-color:transparent;color:#fff;box-shadow:0 40px 80px -40px rgba(20,16,58,.8)}
#caw .caw-tier-k{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:13px;letter-spacing:.26em;text-transform:uppercase;color:var(--od)}
#caw .caw-tier-feat .caw-tier-k{color:var(--o)}
#caw .caw-tier p{margin:12px 0 18px;font-size:16px;line-height:1.6;color:#4a443e}
#caw .caw-tier-feat p{color:rgba(246,241,235,.75)}
#caw .caw-tier dl{margin:auto 0 0;padding:0}
#caw .caw-tier-feat dl{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
#caw .caw-tier dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:14px 0;border-top:1px solid rgba(0,0,0,.09)}
#caw .caw-tier-feat dl>div{border-color:rgba(255,255,255,.14)}
#caw .caw-tier dt{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:14px;line-height:1.3;letter-spacing:.06em;text-transform:uppercase;color:#111}
#caw .caw-tier dt small{display:block;margin-top:4px;font-family:'Mulish',sans-serif;font-weight:400;font-size:13px;letter-spacing:0;text-transform:none;color:#6b645d}
#caw .caw-tier-feat dt{color:#fff}
#caw .caw-tier dd{margin:0;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:clamp(22px,2vw,30px);line-height:1;color:#0a0a0a;white-space:nowrap;font-variant-numeric:tabular-nums}
#caw .caw-tier-feat dd{color:#fff}
#caw .caw-tier .caw-link{margin-top:auto;align-self:flex-start}

/* ============ PRACTICE + LIST ============ */
#caw .caw-practice-sec{background:radial-gradient(60% 60% at 0% 100%,rgba(244,124,32,.1),rgba(244,124,32,0) 70%),var(--ind);color:var(--txt)}
#caw .caw-practice{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(40px,6vw,96px);align-items:center}
#caw .caw-practice .caw-h2{font-size:clamp(40px,5vw,84px);margin-bottom:30px}
#caw .caw-practice-text{font-size:clamp(17px,1.35vw,20px);line-height:1.7;color:#d9d1c7}
#caw .caw-practice-text p{margin:0}
#caw .caw-practice-text p+p{margin-top:1.05em}
#caw .caw-quote{margin:30px 0;padding:4px 0 4px 26px;border-left:2px solid var(--o);font-family:'DM Serif Display',serif;font-style:italic;font-size:clamp(24px,2.2vw,32px);line-height:1.3;color:#fff}
#caw .caw-list{position:relative;padding:clamp(26px,3vw,42px);border-radius:22px;background:linear-gradient(160deg,rgba(244,124,32,.2) 0%,rgba(255,255,255,.035) 55%);border:1px solid rgba(244,124,32,.35);box-shadow:0 40px 90px -40px rgba(0,0,0,.7)}
#caw .caw-list-k{display:flex;align-items:center;gap:10px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--o)}
#caw .caw-list-dot{width:7px;height:7px;border-radius:50%;background:var(--o);animation:cawPulse 2.4s infinite}
#caw .caw-list-h{margin:16px 0 14px;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:clamp(28px,2.6vw,40px);line-height:1;letter-spacing:-.01em;text-transform:uppercase;color:#fff}
#caw .caw-list-p{margin:0 0 24px;font-size:16px;line-height:1.6;color:var(--mut)}
#caw .caw-list-form{display:flex;gap:6px;padding:6px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.2);transition:border-color .25s}
#caw .caw-list-form:focus-within{border-color:var(--o)}
#caw .caw-list-form input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:#fff;font-family:'Mulish',sans-serif;font-size:16px;padding:0 18px;height:50px}
#caw .caw-list-form input::placeholder{color:rgba(246,241,235,.45)}
#caw .caw-list-form button{flex:none;border:0;border-radius:999px;background:var(--o);color:var(--blk);padding:0 24px;height:50px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:13px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .25s}
#caw .caw-list-form button:hover{background:#ff9a4d}
#caw .caw-list-status{margin:14px 0 0;font-size:15px;color:var(--o)}
#caw .caw-list-more{margin:18px 0 0;font-size:14px}
#caw .caw-list-more a{color:rgba(246,241,235,.75);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25)}
#caw .caw-list-more a:hover{color:var(--o);border-color:var(--o)}
#caw .screen-reader-text{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* ============ RESPONSIVE ============ */
@media (max-width:1100px){
  #caw .caw-hero-in{grid-template-columns:minmax(0,1fr) 360px;gap:32px}
  #caw .caw-patron,#caw .caw-practice{grid-template-columns:1fr}
}
@media (max-width:900px){
  #caw .caw-hero{min-height:0}
  #caw .caw-hero-in{grid-template-columns:1fr;padding-top:clamp(140px,26vh,240px)}
  #caw .caw-next{max-width:520px}
  #caw .caw-scroll{display:none}
  #caw .caw-wall{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;margin:0 calc(-1*var(--gut));padding:0 var(--gut) 12px;scroll-padding:0 var(--gut);scrollbar-width:none}
  #caw .caw-wall::-webkit-scrollbar{display:none}
  #caw .caw-poster,#caw .caw-poster.caw-lg{flex:0 0 clamp(270px,76vw,340px);scroll-snap-align:start}
  #caw .caw-poster.caw-lg .caw-frame{aspect-ratio:4/5}
  #caw .caw-slide{flex-basis:88%;grid-template-columns:1fr}
  #caw .caw-slide-flyer{max-width:520px}
  #caw .caw-tl-m{grid-template-columns:1fr;gap:14px}
  #caw .caw-tl-mo{display:flex;align-items:baseline;gap:14px}
  #caw .caw-tl-mo span{margin:0}
}
@media (max-width:600px){
  #caw .caw-hero-links .caw-btn{flex:1 1 100%}
  #caw .caw-next{padding:16px}
  #caw .caw-next-top img{width:72px;height:72px}
  #caw .caw-cd b{font-size:28px}
  #caw .caw-next-foot{flex-wrap:wrap}
  #caw .caw-next-foot .caw-btn{flex:1 1 auto}
  #caw .caw-slide{flex-basis:90%;padding:14px}
  #caw .caw-vids{flex-wrap:wrap}
  #caw .caw-yt{flex:1 1 100%}
  #caw .caw-yt-v{flex:1 1 calc(50% - 6px)}
  #caw .caw-past-bar{display:none}
  #caw .caw-past-nav{justify-content:space-between}
  #caw .caw-tl-i{grid-template-columns:48px minmax(0,1fr);gap:14px;padding:16px}
  #caw .caw-tl-go{display:none}
  #caw .caw-tiers{grid-template-columns:1fr}
  #caw .caw-tier-feat dl{grid-template-columns:1fr}
  #caw .caw-patron-ctas .caw-btn{flex:1 1 100%;white-space:normal;text-align:center}
  #caw .caw-lb-panel{grid-template-columns:1fr;overflow:auto;max-height:calc(100vh - 20px)}
  #caw .caw-lb-art img{max-height:56vh}
  #caw .caw-lb-info{overflow:visible}
  #caw .caw-cap-links{gap:16px}
}
@media (max-width:400px){
  #caw .caw-list-form{flex-direction:column;border-radius:18px}
  #caw .caw-list-form button{width:100%}
}
@media (min-width:601px) and (max-width:760px){
  #caw .caw-lb-panel{grid-template-columns:1fr;overflow:auto}
  #caw .caw-lb-art img{max-height:56vh}
  #caw .caw-lb-info{overflow:visible}
}
@media (prefers-reduced-motion:reduce){
  #caw .caw-kb,#caw .caw-leak,#caw .caw-grain,#caw .caw-rise,#caw .caw-next-chip i,#caw .caw-list-dot,#caw .caw-scroll span{animation:none !important}
  #caw .caw-kb{transform:scale(1.04)}
  #caw .caw-frame,#caw .caw-frame img,#caw .caw-lb-panel,#caw .caw-tl-i,#caw .caw-btn{transition:none !important}
  #caw .caw-past-track{scroll-behavior:auto}
}
/* tier rows: stack label over amount in the narrow cards */
#caw .caw-tier:not(.caw-tier-feat) dl>div{flex-direction:column;align-items:flex-start;gap:8px}
#caw .caw-tier:not(.caw-tier-feat) dd{font-size:clamp(24px,2vw,30px)}
#caw .caw-disc ul{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:18px 36px !important}
@media (max-width:1100px){#caw .caw-disc ul{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
@media (max-width:600px){#caw .caw-disc ul{grid-template-columns:1fr !important}}
#caw .caw-lb-perfs .caw-lb-time{font-family:'Josefin Sans',sans-serif;font-style:normal;font-weight:400;color:var(--mut);margin-left:10px}
#caw .caw-lb-perfs a{text-transform:uppercase;font-family:'Josefin Sans',sans-serif;white-space:nowrap}
#caw .caw-lb-x:focus-visible,#caw .caw-lb-x:focus{outline:2px solid var(--o);outline-offset:2px}
@media (max-width:760px){#caw .caw-lb-foot{position:sticky;bottom:0;margin:0 calc(-1*clamp(26px,3.6vw,52px)) calc(-1*clamp(26px,3.6vw,52px));padding:14px clamp(26px,3.6vw,52px);background:rgba(15,12,30,.94);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.08)}}
@media (min-width:601px) and (max-width:900px){#caw .caw-poster,#caw .caw-poster.caw-lg{flex-basis:41vw}}

/* 2026-10-06 bigger type chip + dates (client: too small) */
#caw .caw-chip{font-size:13.5px;padding:8px 15px 7px;letter-spacing:.16em;font-weight:700}
#caw .caw-chip i{width:8px;height:8px}
#caw .caw-cap-meta{font-size:16.5px;font-weight:700;letter-spacing:.08em;color:#f6f1eb}
#caw .caw-tl-meta{font-size:15.5px;font-weight:700;letter-spacing:.08em;color:#f6f1eb}
#caw .caw-next-when{font-size:16px;font-weight:700;color:#f6f1eb}
@media(max-width:560px){#caw .caw-cap-meta{font-size:15px}#caw .caw-tl-meta{font-size:14px}#caw .caw-chip{font-size:12.5px}}
#caw .caw-h2{line-height:1.02;padding-top:.06em}

/* 2026-10-07: compact show cards (smaller poster + all details, poster links to the show page, no zoom) */
#caw .caw-wall2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));gap:clamp(20px,2.4vw,34px)}
#caw .caw-card2{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:clamp(18px,2vw,28px);align-items:start;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:clamp(14px,1.6vw,20px)}
#caw .caw-card2-art{display:block;border-radius:12px;overflow:hidden;aspect-ratio:1;background:#111;box-shadow:0 18px 40px -18px rgba(0,0,0,.8);transition:transform .25s}
#caw .caw-card2-art:hover{transform:translateY(-3px)}
#caw .caw-card2-art img{width:100%;height:100%;object-fit:cover;display:block}
#caw .caw-card2 .caw-cap-meta{font-size:14px}
#caw .caw-card2 .caw-cap-title{margin:10px 0 8px;font-size:clamp(22px,1.8vw,28px)}
#caw .caw-card2-blurb{margin:0 0 12px;font-size:16px;line-height:1.55;color:rgba(255,255,255,.82)}
#caw .caw-card2-perfs{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:6px}
#caw .caw-card2-perfs li{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:16px;line-height:1.35;color:#fff}
#caw .caw-card2-perfs li span{color:rgba(255,255,255,.75)}
#caw .caw-card2-price{font-size:18px;font-weight:700;color:var(--o);margin:0 0 16px;line-height:1.4}
#caw .caw-card2-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#caw .caw-card2-btns .caw-btn{width:100%;padding:15px 14px 13px;font-size:14px;white-space:nowrap;box-sizing:border-box}
#caw .caw-btn-ghost2{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}
#caw .caw-btn-ghost2:hover{border-color:#fff;color:#fff}
@media(max-width:620px){#caw .caw-card2{grid-template-columns:1fr}#caw .caw-card2-art{max-width:300px}#caw .caw-card2-btns{grid-template-columns:1fr}}
/* bigger small print site-wide on this page: prices, dates, foot labels */
#caw .caw-price,#caw .caw-cap-price,#caw .caw-next-when{font-size:17px!important}
/* patron buttons: same width */
#caw .caw-patron-ctas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px}
#caw .caw-patron-ctas .caw-btn{width:100%;box-sizing:border-box;text-align:center;white-space:normal}
@media(max-width:560px){#caw .caw-patron-ctas{grid-template-columns:1fr}}
/* 2026-10-07: readable small print — nothing under 14px */
#caw .caw-btn-sm,#caw .caw-link,#caw .caw-filters button,#caw .caw-list-form button,#caw .caw-tl-meta,#caw .caw-yt-t,#caw .caw-list-k{font-size:14px!important}
#caw .caw-chip,#caw .caw-next-chip,#caw .caw-frame-hint,#caw .caw-tl-day span{font-size:13px!important}
#caw .caw-cd span{font-size:12px!important}
#caw .caw-yt-v .caw-yt-t{font-size:13px!important}
#caw .caw-cap-meta,#caw .caw-tl-mo span,#caw .caw-tier-k{font-size:15px!important}
#caw .caw-tier dt,#caw .caw-tier dt small,#caw .caw-past-count,#caw .caw-list-more{font-size:15px!important}
#caw .caw-tier p,#caw .caw-tier dd{font-size:17px}
#caw .caw-patron-ctas{max-width:860px}
#caw .caw-card2-btns.caw-one{grid-template-columns:1fr}
#caw .caw-perf-tix{margin-left:auto;font-family:'Josefin Sans',sans-serif;font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--o);text-decoration:none;border:1px solid rgba(244,124,32,.5);border-radius:999px;padding:5px 12px 3px}
#caw .caw-perf-tix:hover{background:var(--o);color:var(--blk)}
#caw .caw-card2-perfs li{align-items:center}
/* hero "Next up" card: button never spills out of the card */
#caw .caw-next-foot{flex-wrap:wrap}
#caw .caw-next-foot .caw-btn{flex:1 1 auto;justify-content:center;max-width:100%;box-sizing:border-box;white-space:nowrap;padding-left:20px;padding-right:20px}
#caw .caw-next-foot-one .caw-btn{flex:1 1 100%}


/* ======================================================================
   4. Site design system: nav, footer, interior pages, designed pages (.csl-dc)
   ====================================================================== */
/* CSL site theme — applies the homepage design system to every other page.
   Scoped to body.csl-themed (injected on all non-front-page views). */
:root{
  --night:#14103A; --night-2:#1B1650; --deep:#0B0824;
  --paper:#F4EFE4; --paper-2:#EDE6D6; --ink:#14103A;
  --gold:#F47C20; --gold-2:#FBC79A; --lav:#A79FC9; --rose:#E8756A;
  --maxw:1200px; --pad:clamp(20px,5vw,64px);
  --display:'Bebas Neue','Arial Narrow',sans-serif;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --body:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}
:root{--csl-logo:url("/wp-content/themes/csl-fortlauderdale/assets/images/csl/csl-logo.svg");--csl-sun:url("/wp-content/themes/csl-fortlauderdale/assets/images/csl/csl-sun.png")}

/* ---- reset default theme chrome on themed pages ---- */
body.csl-themed{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}
body.csl-themed .wp-site-blocks > header.wp-block-template-part,
body.csl-themed .wp-site-blocks > footer.wp-block-template-part,
body.csl-themed > .wp-site-blocks > header,
body.csl-themed > .wp-site-blocks > footer{display:none !important}
body.csl-themed .wp-block-site-title, body.csl-themed .wp-block-navigation{}
body.csl-themed a{color:var(--gold);text-decoration:none}
body.csl-themed a:hover{color:var(--rose)}
body.csl-themed img{max-width:100%;height:auto}
body.csl-themed .entry-content a{text-decoration:underline;text-underline-offset:2px}

/* ---- top nav ---- */
/* homepage: hide the old cinematic template nav; the unified .csl-nav replaces it site-wide */
body.home header.nav#nav, body.home #nav.nav{display:none !important}
.csl-nav{position:sticky;top:0;z-index:1000;background:rgba(20,16,58,.9);backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid rgba(255,255,255,.08);transition:background .35s ease,backdrop-filter .35s ease,border-color .35s ease,box-shadow .35s ease}
.csl-nav .bar{max-width:var(--maxw);margin:0 auto;padding:14px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:18px}
.csl-nav .brand{display:flex;align-items:center;gap:12px;color:#fff}
.csl-nav .brand .logo{display:block;height:38px;aspect-ratio:1195/185;background:var(--csl-logo) left center/contain no-repeat}
.csl-nav .brand .loc{font-family:var(--body);font-weight:700;letter-spacing:.16em;font-size:10.5px;color:var(--lav);text-transform:uppercase;border-left:1px solid rgba(255,255,255,.28);padding-left:13px;white-space:nowrap}
.csl-nav .links{display:flex;align-items:center;gap:18px}
.csl-nav .links a{color:#EDE9FF;font-weight:700;font-size:16px;letter-spacing:.02em;position:relative;padding:4px 0;white-space:nowrap}
.csl-nav .links a:hover{color:#fff}
.csl-nav .links a::after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:0;background:var(--gold);transition:width .2s}
.csl-nav .links a:hover::after{width:100%}
.csl-nav .give{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--gold);color:#fff !important;padding:11px 32px;min-width:128px;text-align:center;border-radius:999px;font-weight:800;font-size:16.5px;letter-spacing:.04em;box-shadow:0 6px 18px rgba(244,124,32,.32)}
.csl-nav .give::after{display:none}
.csl-nav .give:hover{background:#e06c12;transform:translateY(-1px)}
.csl-burger{display:none;background:none;border:0;cursor:pointer;width:52px;height:52px;padding:0;position:relative;-webkit-tap-highlight-color:transparent}
.csl-burger span{display:block;position:absolute;left:12px;right:12px;height:3px;border-radius:3px;background:#fff;transition:transform .34s cubic-bezier(.2,.8,.2,1),opacity .2s ease;transform-origin:center}
.csl-burger span:nth-child(1){top:17px}
.csl-burger span:nth-child(2){top:25px}
.csl-burger span:nth-child(3){top:33px}
.csl-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.csl-burger[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(.4)}
.csl-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
/* dropdowns */
.csl-nav .has-drop{position:relative}
.csl-nav .droptoggle{background:none;border:0;color:#EDE9FF;font-weight:700;font-size:16px;white-space:nowrap;letter-spacing:.02em;cursor:pointer;padding:4px 0;font-family:inherit;display:inline-flex;align-items:center;gap:5px}
.csl-nav .droptoggle:hover{color:#fff}
.csl-nav .caret{font-size:10px;opacity:.7;transition:transform .15s}
.csl-nav .drop{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%) translateY(6px);min-width:212px;background:var(--night-2);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:8px;box-shadow:0 18px 44px rgba(0,0,0,.45);opacity:0;visibility:hidden;transition:.16s;z-index:1001}
.csl-nav .has-drop:hover .drop{opacity:1;visibility:visible;transform:translateX(-50%)}
.csl-nav .has-drop:hover .caret{transform:rotate(180deg)}
.csl-nav .drop a{display:block;padding:9px 14px;border-radius:8px;color:#EDE9FF;font-weight:600;font-size:14px}
.csl-nav .drop a::after{display:none}
.csl-nav .drop a:hover{background:rgba(244,124,32,.16);color:#fff}

/* ---- interior image hero ---- */
.csl-hero{position:relative;min-height:clamp(300px,44vh,480px);background-size:cover;background-position:center;display:flex;align-items:flex-end;overflow:hidden}
.csl-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,16,58,.30) 0%,rgba(20,16,58,.50) 52%,rgba(20,16,58,.88) 100%)}
.csl-hero-inner{position:relative;max-width:var(--maxw);margin:0 auto;width:100%;padding:0 var(--pad) clamp(28px,5vw,54px)}
.csl-hero .csl-hero-title{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.01em;line-height:.9;color:#fff !important;font-size:clamp(48px,8.5vw,110px);margin:0;text-shadow:0 3px 34px rgba(0,0,0,.55)}
.csl-hero .csl-hero-title::after{content:"";display:block;width:88px;height:5px;background:var(--gold);border-radius:3px;margin-top:20px}
/* on hero pages, drop the default post title + tighten content top */
body.csl-has-hero .wp-block-post-title,body.csl-has-hero h1.wp-block-post-title,body.csl-has-hero .wp-block-post-featured-image{display:none !important}
body.csl-has-hero .csl-main,body.csl-has-hero main.wp-block-group{padding-top:clamp(30px,4vw,52px)}

/* ---- page shell ---- */
body.csl-themed .csl-main{max-width:var(--maxw);margin:0 auto;padding:clamp(34px,6vw,72px) var(--pad) 80px;min-height:50vh}
body.csl-themed .csl-page-head{margin:0 0 34px}
body.csl-themed .csl-page-head .eyebrow{font-weight:800;letter-spacing:.18em;text-transform:uppercase;font-size:12px;color:var(--gold)}
body.csl-themed h1, body.csl-themed .wp-block-post-title, body.csl-themed .page-title, body.csl-themed .archive-title{
  font-family:var(--display);font-weight:400;letter-spacing:.01em;line-height:.98;font-size:clamp(40px,7vw,76px);color:var(--ink);text-transform:uppercase;margin:.1em 0 .3em}
body.csl-themed h2{font-family:var(--serif);font-weight:600;font-size:clamp(26px,3.4vw,38px);line-height:1.1;color:var(--ink);margin:1.4em 0 .5em}
body.csl-themed h3{font-family:var(--body);font-weight:800;font-size:22px;letter-spacing:-.01em;margin:1.3em 0 .4em}
body.csl-themed p{font-size:18.5px;line-height:1.75;margin:0 0 1.15em;max-width:72ch}
body.csl-themed .em, body.csl-themed em{font-family:var(--serif);font-style:italic;color:var(--gold)}
body.csl-themed blockquote{border-left:3px solid var(--gold);margin:1.4em 0;padding:.4em 0 .4em 22px;font-family:var(--serif);font-style:italic;font-size:22px;color:#3a3560}
body.csl-themed hr{border:0;border-top:1px solid rgba(20,16,58,.14);margin:2.2em 0}

/* buttons (reuse plugin .csl-btn but ensure theme fallback) */
body.csl-themed .csl-btn{border-radius:999px}
.csl-cta,body.csl-themed a.csl-cta{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:#fff;padding:12px 24px;border-radius:999px;font-weight:800;letter-spacing:.01em;text-decoration:none}
.csl-cta:hover,body.csl-themed a.csl-cta:hover{background:#e06c12;color:#fff}

/* ---- events archive (TT5 query-loop markup) ---- */
body.csl-themed main.wp-block-group{max-width:var(--maxw);width:100%;margin-left:auto !important;margin-right:auto !important;padding-left:var(--pad);padding-right:var(--pad);box-sizing:border-box}
body.csl-themed .wp-block-query{width:100%;max-width:100%}
body.csl-themed .wp-block-post-template{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:26px;width:100% !important;max-width:100% !important;list-style:none;margin:8px 0 0;padding:0}
body.csl-themed .wp-block-post-template > li.wp-block-post{background:#fff;border:1px solid rgba(20,16,58,.08);border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(20,16,58,.05),0 14px 34px rgba(20,16,58,.06);transition:transform .16s,box-shadow .16s;margin:0;max-width:100%;display:flex;flex-direction:column}
body.csl-themed .wp-block-post-template > li.wp-block-post:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(20,16,58,.06),0 22px 46px rgba(20,16,58,.12)}
body.csl-themed li.wp-block-post > *{max-width:100% !important;width:100%;box-sizing:border-box}
body.csl-themed li.wp-block-post .wp-block-post-featured-image, body.csl-themed li.wp-block-post img{width:100%;margin:0}
body.csl-themed li.wp-block-post img{aspect-ratio:16/9;object-fit:cover;display:block}
body.csl-themed li.wp-block-post .wp-block-post-title{font-family:var(--body);font-weight:800;font-size:19px;line-height:1.25;text-transform:none;letter-spacing:-.01em;padding:0 18px;margin:16px 0 6px}
body.csl-themed li.wp-block-post .wp-block-post-title a{color:var(--ink)}
body.csl-themed li.wp-block-post .wp-block-post-title a:hover{color:var(--gold)}
body.csl-themed li.wp-block-post .wp-block-post-excerpt, body.csl-themed li.wp-block-post .wp-block-post-content{padding:2px 18px 0;font-size:15px;color:#4a4668}
body.csl-themed li.wp-block-post .wp-block-post-excerpt p, body.csl-themed li.wp-block-post .wp-block-post-content p{font-size:14.5px;line-height:1.55;margin:.4em 0}
/* clamp card body so the grid stays uniform regardless of content length */
body.csl-themed li.wp-block-post .wp-block-post-excerpt, body.csl-themed li.wp-block-post .wp-block-post-content{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;max-height:6.6em}
body.csl-themed li.wp-block-post .wp-block-post-date, body.csl-themed li.wp-block-post time{padding:16px 18px 18px;color:var(--gold);font-weight:700;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;margin-top:auto}
/* archive title */
body.csl-themed .wp-block-query-title, body.csl-themed .wp-block-post-title.has-xx-large-font-size{margin-bottom:.2em}

/* pagination */
body.csl-themed .wp-block-query-pagination, body.csl-themed .pagination, body.csl-themed .nav-links{display:flex;gap:8px;justify-content:center;margin-top:40px;flex-wrap:wrap}
body.csl-themed .wp-block-query-pagination a, body.csl-themed .page-numbers{padding:8px 14px;border:1px solid rgba(20,16,58,.16);border-radius:10px;color:var(--ink);font-weight:700}
body.csl-themed .page-numbers.current{background:var(--gold);color:#fff;border-color:var(--gold)}

/* ---- single event: hide default TT5 byline/meta cruft ---- */
body.single-csl_event .wp-block-post-author,
body.single-csl_event .wp-block-post-author-name,
body.single-csl_event .wp-block-post-author-biography,
body.single-csl_event .wp-block-post-terms,
body.single-csl_event .wp-block-post-date{display:none}

/* ---- footer ---- */
.csl-footer{background:#36316E;color:#D9D4F0;padding:60px var(--pad) 30px;font-size:15px;position:relative;overflow:hidden}
.csl-footer::before{content:"";position:absolute;right:-140px;bottom:-220px;width:min(760px,82vw);height:min(760px,82vw);background:var(--csl-sun) center/contain no-repeat;opacity:.08;pointer-events:none;z-index:0}
.csl-footer .cols,.csl-footer .base{position:relative;z-index:1}
.csl-footer .cols{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:36px}
.csl-footer .brand{display:block;margin-bottom:18px}
.csl-footer .brand .logo{display:block;height:54px;aspect-ratio:1195/185;max-width:100%;background:var(--csl-logo) left center/contain no-repeat}
.csl-footer .tag{color:#A79FC9;max-width:34ch;line-height:1.6}
.csl-footer .contact{margin-top:14px;line-height:1.9}
.csl-footer .contact a{color:var(--gold-2)}
.csl-footer h4{font-family:var(--body);font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:12px;color:#fff;margin:0 0 14px}
.csl-footer ul{list-style:none;margin:0;padding:0;line-height:2.2}
.csl-footer ul a{color:#CFC9EC}
.csl-footer ul a:hover{color:#fff}
.csl-footer .socials{display:flex;gap:14px;margin-top:12px}
.csl-footer .socials a{color:#CFC9EC}
.csl-footer .base{max-width:var(--maxw);margin:40px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:#8b84b3;font-size:13px}

/* ---- mobile ---- */
/* (obsolete dropdown-nav mobile block removed — see the mega-nav @media(max-width:960px) block below) */


/* ---- calendar page: (old full-width rule REMOVED — it clamped the whole .csl-dc to 1200 on the redesigned page) ---- */
body.page-id-1342 .csl-ev-cal,
body.page-id-1342 .csl-ev-list{max-width:var(--maxw) !important;width:100% !important;margin-left:auto !important;margin-right:auto !important}
body.page-id-1342 .csl-page-head{margin-bottom:18px}


/* ---- events plugin: don't let theme gold override the plugin's own button/link colors ---- */
body.csl-themed .csl-ev-share-btn,
body.csl-themed .csl-ev-btn.primary,
body.csl-themed .csl-ev-btn.lg{color:#fff}
/* hide TT5 "Written by …" byline cruft on single event pages */
body.single-csl_event .wp-block-post-author,
body.single-csl_event .wp-block-post-author-name,
body.single-csl_event .wp-block-post-author-biography,
body.single-csl_event .wp-block-post-terms,
body.single-csl_event .wp-block-post-date,
body.single-csl_event .wp-block-post-author-name__prefix{display:none !important}
/* TT5 post-meta byline group (Written by / date) on single events */
body.single-csl_event .wp-block-group.has-small-font-size{display:none !important}
/* TT5 single template prints the featured image; plugin renders its own contained hero — hide the duplicate. */
body.single-csl_event .wp-block-post-featured-image{display:none !important}
/* replace TT5's text post-nav with the plugin's image-rich event nav */
body.single-csl_event .wp-block-post-navigation-link,body.single-csl_event nav.post-navigation,body.single-csl_event .wp-block-post-navigation{display:none !important}

/* nav: drop the location tag when space is tight so the menu never wraps */
@media(max-width:1299px){.csl-nav .brand .loc{display:none}}


/* ---- image gallery + lightbox (rental page) ---- */
.csl-gallery-wrap{margin-top:8px}
body.csl-themed .csl-gallery-wrap{max-width:var(--maxw) !important;width:100%;margin-left:auto !important;margin-right:auto !important}
.csl-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin:24px 0 8px}
.csl-gallery-item{display:block;position:relative;aspect-ratio:4/3;border-radius:14px;overflow:hidden;cursor:zoom-in;background:#e9e6f0;box-shadow:0 1px 2px rgba(20,16,58,.06),0 12px 30px rgba(20,16,58,.09)}
body.csl-themed .csl-gallery-item img,.csl-gallery-item img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.2,.7,.3,1)}
.csl-gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(20,16,58,.4));opacity:0;transition:opacity .3s}
.csl-gallery-item:hover img{transform:scale(1.07)}
.csl-gallery-item:hover::after{opacity:1}
.csl-lb{position:fixed;inset:0;z-index:100000;background:rgba(11,8,36,.95);display:none;align-items:center;justify-content:center;opacity:0;transition:opacity .25s}
.csl-lb.open{display:flex;opacity:1}
.csl-lb img{max-width:92vw;max-height:85vh;border-radius:12px;box-shadow:0 30px 90px rgba(0,0,0,.6);animation:cslLbIn .32s cubic-bezier(.2,.7,.3,1)}
@keyframes cslLbIn{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
.csl-lb-cap{position:absolute;bottom:24px;left:0;right:0;text-align:center;color:#fff;font-family:var(--display);letter-spacing:.09em;text-transform:uppercase;font-size:22px}
.csl-lb-btn{position:absolute;background:rgba(255,255,255,.12);border:0;color:#fff;width:54px;height:54px;border-radius:50%;font-size:28px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .2s}
.csl-lb-btn:hover{background:var(--gold);transform:scale(1.06)}
.csl-lb-prev{left:24px}.csl-lb-next{right:24px}.csl-lb-close{top:22px;right:22px;width:46px;height:46px;font-size:24px}
@media(max-width:700px){.csl-lb-btn{width:44px;height:44px;font-size:22px}.csl-lb-prev{left:8px}.csl-lb-next{right:8px}}
@media(prefers-reduced-motion:reduce){.csl-gallery-item img,.csl-lb,.csl-lb img{transition:none;animation:none}}


/* ---- livestream page ---- */
body.csl-themed .csl-stream{max-width:var(--maxw) !important;width:100%;margin:10px auto 0 !important;border-radius:16px;overflow:hidden;box-shadow:0 24px 64px rgba(20,16,58,.20);background:#0B0824;min-height:460px}
.csl-stream #boxcast-widget-eicq2j7w6hizm98tuqyl{min-height:460px}
body.csl-themed .csl-stream-give{max-width:var(--maxw) !important;width:100%;margin:32px auto 0 !important;text-align:center;background:linear-gradient(135deg,var(--night),var(--night-2));border-radius:16px;padding:36px 28px}
body.csl-themed .csl-stream-give p{color:#CFC9EC;font-size:19px;max-width:46ch;margin:0 auto 20px}

/* =========================================================
   INTERIOR PAGE DESIGN SYSTEM — bold, modern, animated
   ========================================================= */
/* full-bleed band that escapes the constrained content column */
body.csl-themed .csl-sec{position:relative;width:100vw;max-width:100vw !important;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:clamp(54px,8vw,116px) 0;box-sizing:border-box}
body.csl-themed .csl-sec>.in{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)}
body.csl-themed .csl-sec.tight{padding:clamp(40px,5vw,70px) 0}
.csl-sec.paper{background:var(--paper)}
.csl-sec.cream{background:var(--paper-2)}
.csl-sec.dark{background:linear-gradient(155deg,var(--deep),var(--night) 58%,var(--night-2));color:#EFEBFF;overflow:hidden}
.csl-sec.dark h2,.csl-sec.dark h3,.csl-sec.dark h4{color:#fff}
.csl-sec.dark p{color:#CFC9EC}
.csl-sec.dark .csl-eyebrow{color:var(--gold-2)}
/* faint sun watermark on dark bands */
.csl-sec.dark::after{content:"";position:absolute;right:-140px;top:-160px;width:min(560px,60vw);height:min(560px,60vw);background:var(--csl-sun) center/contain no-repeat;opacity:.06;pointer-events:none}

/* section eyebrow + headings */
.csl-eyebrow{display:block;font-weight:800;letter-spacing:.2em;text-transform:uppercase;font-size:13px;color:var(--gold);margin:0 0 16px}
body.csl-themed .csl-sec h2{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.01em;line-height:.95;font-size:clamp(34px,5.2vw,64px);margin:0 0 .35em}
.csl-lead{font-size:clamp(19px,2.2vw,25px);line-height:1.55;font-family:var(--serif)}

/* 50/50 split */
.csl-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,70px);align-items:center}
.csl-split.reverse .csl-split-media{order:2}
.csl-split-copy>*:first-child{margin-top:0}
.csl-split-copy>*:last-child{margin-bottom:0}

/* media / image placeholder */
.csl-media{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 30px 70px rgba(20,16,58,.18)}
.csl-media img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.csl-ph{position:relative;border-radius:20px;aspect-ratio:4/3;background:linear-gradient(150deg,#e7e2f2,#efe9db);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#8b84b3;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(20,16,58,.06)}
.csl-ph::before{content:"";position:absolute;inset:0;background:var(--csl-sun) center/58% no-repeat;opacity:.10}
.csl-ph span{position:relative;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:12px}
.csl-ph.tall{aspect-ratio:3/4}
.csl-sec.dark .csl-ph{background:linear-gradient(150deg,#221c4e,#171341);color:#8b84b3}

/* value / feature cards */
.csl-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin-top:8px}
.csl-card{background:#fff;border:1px solid rgba(20,16,58,.08);border-radius:18px;padding:28px 26px;box-shadow:0 1px 2px rgba(20,16,58,.05),0 16px 40px rgba(20,16,58,.07);transition:transform .2s cubic-bezier(.2,.7,.3,1),box-shadow .2s}
.csl-card:hover{transform:translateY(-5px);box-shadow:0 26px 54px rgba(20,16,58,.14)}
.csl-card .n{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#fff;font-family:var(--display);font-size:22px;margin-bottom:16px}
.csl-card h3{font-family:var(--display);font-weight:400;letter-spacing:.03em;text-transform:uppercase;font-size:24px;margin:0 0 8px;color:var(--ink)}
.csl-card p{font-size:15.5px;line-height:1.6;margin:0;color:#4a4668}
.csl-sec.dark .csl-card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1)}
.csl-sec.dark .csl-card h3{color:#fff}.csl-sec.dark .csl-card p{color:#CFC9EC}

/* big pull-quote band */
.csl-quote-band .in{max-width:1000px;text-align:center}
.csl-quote-band .mark{font-family:var(--serif);font-size:90px;line-height:0;color:var(--gold);opacity:.5;display:block;height:40px}
.csl-quote-band blockquote{border:0;margin:0;padding:0;font-family:var(--serif);font-style:italic;font-size:clamp(24px,3.6vw,44px);line-height:1.25;color:#fff}
.csl-sec.dark .csl-quote-band blockquote{color:#fff}

/* centered statement band */
.csl-statement{text-align:center;max-width:760px;margin:0 auto}
.csl-statement p{font-size:clamp(19px,2.4vw,27px);line-height:1.5;font-family:var(--serif)}

/* final CTA band */
.csl-cta-band{text-align:center}
.csl-cta-band .csl-cta{font-size:17px;padding:16px 34px;margin-top:8px}

/* scroll reveal */
html.csl-js .csl-reveal{opacity:0;transform:translateY(26px)}
html.csl-js .csl-reveal.in{opacity:1;transform:none;transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}
html.csl-js .csl-reveal.d1{transition-delay:.08s}html.csl-js .csl-reveal.d2{transition-delay:.16s}html.csl-js .csl-reveal.d3{transition-delay:.24s}
@media(prefers-reduced-motion:reduce){html.csl-js .csl-reveal{opacity:1!important;transform:none!important}}

@media(max-width:820px){
  .csl-split{grid-template-columns:1fr;gap:26px}
  .csl-split.reverse .csl-split-media{order:0}
}

/* ===== Claude Design port — interior page template (.csl-dc) ===== */
body.csl-themed .csl-dc{width:100vw;max-width:100vw !important;margin-left:calc(50% - 50vw);background:#F4EFE4;color:#14103A;font-family:'Mulish',sans-serif;overflow-x:clip}
.csl-dc *{box-sizing:border-box}
.csl-dc img{max-width:none}
/* strip theme chrome on designed pages so the cinematic hero sits flush under the nav */
body.csl-designed main.wp-block-group{max-width:none !important;padding:0 !important;margin:0 !important;width:100% !important}
body.csl-designed .entry-content{max-width:none !important;padding:0 !important;margin:0 !important}
body.csl-designed .csl-hero,body.csl-designed .csl-page-head{display:none !important}
body.csl-designed .wp-block-post-title{display:none !important}
.csl-dc a{color:#f47c20;text-decoration:none}
.csl-dc h1,.csl-dc h2{text-wrap:balance}
/* reveal initial states (only when JS is on; no-JS = visible) */
html.csl-js .csl-dc [data-reveal="up"]{opacity:0;transform:translateY(56px)}
html.csl-js .csl-dc [data-reveal="clip"]{clip-path:inset(18% 8% 18% 8%)}
@media(prefers-reduced-motion:reduce){html.csl-js .csl-dc [data-reveal]{opacity:1 !important;transform:none !important;clip-path:none !important}}
/* interactive values */
.csl-dc-values{display:flex;gap:8px;height:clamp(520px,62vh,640px)}
.csl-dc-val{position:relative;flex:1 1 0;min-width:0;overflow:hidden;cursor:pointer;background:#ECE4D4;color:#14103A;border:1px solid #ddd2bc;transition:flex .8s cubic-bezier(.2,.8,.2,1),background .5s,color .5s}
.csl-dc-val.active{flex:5 1 0;background:#f47c20;color:#14103A;border-color:#f47c20}
.csl-dc-val .mark{position:absolute;right:-18%;bottom:-22%;width:78%;max-width:420px;opacity:0;transform:rotate(-90deg);transition:opacity .8s,transform 1.4s cubic-bezier(.2,.8,.2,1);mix-blend-mode:multiply;pointer-events:none}
.csl-dc-val.active .mark{opacity:.28;transform:rotate(0deg)}
.csl-dc-val .num{position:absolute;top:22px;left:22px;font-family:'Josefin Sans',sans-serif;font-size:15px;letter-spacing:.2em;font-weight:600}
.csl-dc-val .vlabel{position:absolute;left:0;right:0;bottom:24px;display:flex;justify-content:center;opacity:1;transition:opacity .4s}
.csl-dc-val.active .vlabel{opacity:0}
.csl-dc-val .vlabel span{writing-mode:vertical-rl;transform:rotate(180deg);font-family:'Josefin Sans',sans-serif;font-size:22px;letter-spacing:.24em;text-transform:uppercase;white-space:nowrap}
.csl-dc-val .vbody{position:absolute;left:clamp(22px,3vw,44px);right:clamp(22px,3vw,44px);bottom:clamp(24px,3vw,44px);opacity:0;transform:translateY(30px);transition:opacity .6s .15s,transform .8s .1s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.csl-dc-val.active .vbody{opacity:1;transform:none}
.csl-dc-val .vt{font-family:'Josefin Sans',sans-serif;font-weight:600;text-transform:uppercase;font-size:clamp(40px,4.6vw,76px);line-height:.95;letter-spacing:-.01em;margin-bottom:20px}
.csl-dc-val .vbody p{margin:0;max-width:440px;font-size:clamp(17px,1.35vw,20px);line-height:1.55}
/* word reveal + buttons */
.csl-dc-words span{opacity:.14;transition:opacity .35s}
.csl-dc-words .hl{color:#f47c20;font-weight:600}
.csl-dc-btn{display:inline-flex;align-items:center;gap:14px;padding:22px 36px 20px;border-radius:999px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:16px;letter-spacing:.2em;text-transform:uppercase;transition:transform .3s,background .3s,color .3s}
.csl-dc-btn.dark{background:#000;color:#fff}
.csl-dc-btn.dark:hover{color:#f47c20;transform:translateY(-3px)}
.csl-dc-btn.out{border:1.5px solid #000;color:#000}
.csl-dc-btn.out:hover{background:#000;color:#f47c20}
@media(max-width:900px){
  .csl-dc-values{flex-direction:column;height:auto}
  .csl-dc-val{flex:0 0 auto;height:72px}
  .csl-dc-val.active{height:400px}
  .csl-dc-val .vlabel span{writing-mode:horizontal-tb;transform:none}
}

/* design port: let the design's own inline styles + inheritance rule (reset theme typography inside .csl-dc) */
body.csl-themed .csl-dc h1,body.csl-themed .csl-dc h2,body.csl-themed .csl-dc h3,body.csl-themed .csl-dc h4,body.csl-themed .csl-dc p,body.csl-themed .csl-dc blockquote,body.csl-themed .csl-dc li,body.csl-themed .csl-dc a{color:inherit;font-family:inherit;font-weight:inherit;font-size:inherit;line-height:inherit;letter-spacing:inherit;text-transform:none;margin:0;max-width:none}
body.csl-themed .csl-dc em{font-style:italic;color:inherit}
/* designed pages: also hide TT5's own featured-image block (design brings its own hero) */
body.csl-designed .wp-block-post-featured-image,body.csl-designed figure.wp-block-post-featured-image{display:none !important}

/* designed pages: flush the cinematic hero directly under the nav (kill block-layout gaps) */
body.csl-designed .wp-site-blocks{padding-top:0 !important;gap:0 !important;row-gap:0 !important}
body.csl-designed .wp-site-blocks > *{margin-top:0 !important}
body.csl-designed main.wp-block-group{margin-block-start:0 !important;row-gap:0 !important;gap:0 !important}
body.csl-designed .entry-content{row-gap:0 !important;gap:0 !important}

/* designed pages: kill the has-global-padding block padding (white bands top & bottom) */
body.csl-designed .wp-block-group.has-global-padding{padding-top:0 !important;padding-bottom:0 !important}
/* design buttons must beat the .csl-dc a color reset */
body.csl-themed .csl-dc a.csl-dc-btn.dark{color:#fff}
body.csl-themed .csl-dc a.csl-dc-btn.dark:hover{color:#f47c20}
body.csl-themed .csl-dc a.csl-dc-btn.out{color:#000}
body.csl-themed .csl-dc a.csl-dc-btn.out:hover{color:#f47c20}

/* ===== MEGA NAV ===== */
.csl-nav .has-mega{position:static}
.csl-nav .megatoggle{background:none;border:0;color:#EDE9FF;font-weight:700;font-size:16px;letter-spacing:.02em;cursor:pointer;padding:4px 0;font-family:inherit;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.csl-nav .megatoggle:hover{color:#fff}
.csl-nav .megatoggle .caret{font-size:10px;opacity:.7;transition:transform .2s}
.csl-nav .mega{position:absolute;left:0;right:0;top:100%;background:linear-gradient(180deg,var(--night-2),var(--deep));border-top:1px solid rgba(255,255,255,.08);box-shadow:0 30px 60px rgba(0,0,0,.5);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s;z-index:1001}
.csl-nav .has-mega:hover .mega,.csl-nav .has-mega:focus-within .mega{opacity:1;visibility:visible;transform:none}
.csl-nav .has-mega:hover .megatoggle .caret{transform:rotate(180deg)}
.csl-nav .mega-in{max-width:var(--maxw);margin:0 auto;padding:38px var(--pad) 44px;display:grid;grid-template-columns:1fr 1fr 1fr 1.05fr;gap:34px}
.csl-nav .mega-h{font-family:'Josefin Sans',sans-serif;font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:700}
.csl-nav .mega-sub{color:var(--lav);font-size:12.5px;margin:6px 0 14px}
.csl-nav .mega ul{list-style:none;margin:0;padding:0}
.csl-nav .mega li{margin:0 0 2px}
.csl-nav .mega li a{display:block;padding:8px 12px;border-radius:10px;color:#EDE9FF;text-decoration:none}
.csl-nav .mega li a::after{display:none}
.csl-nav .mega li a:hover{background:rgba(244,124,32,.14);color:#fff}
.csl-nav .mega .ml{display:block;font-weight:700;font-size:15px}
.csl-nav .mega .mb{display:block;font-size:12px;color:var(--lav);margin-top:1px}
.csl-nav .mega-feat{display:flex;flex-direction:column;justify-content:center;gap:10px;border-radius:16px;padding:30px;background:linear-gradient(150deg,var(--gold),#c85f12);color:#fff !important;text-decoration:none;position:relative;overflow:hidden}
.csl-nav .mega-feat::after{content:"";position:absolute;right:-30px;bottom:-40px;width:210px;height:210px;background:var(--csl-sun) center/contain no-repeat;opacity:.2;pointer-events:none}
.csl-nav .mega-feat-eyebrow{font-family:'Josefin Sans',sans-serif;font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;position:relative}
.csl-nav .mega-feat-h{font-family:'Josefin Sans',sans-serif;font-weight:700;text-transform:uppercase;font-size:40px;line-height:.92;position:relative}
.csl-nav .mega-feat-sub{font-size:14px;position:relative;opacity:.95}

/* ===== FOOTER (design language) ===== */
.csl-footer .fbrand-col{max-width:460px}
.csl-footer .fbrand{display:flex;align-items:center;gap:18px;margin-bottom:22px}
.csl-footer .fmark{width:62px;height:62px;flex:0 0 auto;background:var(--csl-sun) center/contain no-repeat}
.csl-footer .fwordmark{font-family:'Josefin Sans',sans-serif;text-transform:uppercase;line-height:1.06;font-size:18px;letter-spacing:.06em;color:#fff}
.csl-footer .fwordmark em{color:var(--gold);font-size:27px;font-weight:300;font-style:normal;display:inline-block}
.csl-footer .fcol h4{font-family:'Josefin Sans',sans-serif;font-size:13px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin:0 0 14px;font-weight:700}
.csl-footer .fcol ul{list-style:none;margin:0;padding:0;line-height:2.3}
.csl-footer .fcol ul a{color:#CFC9EC}
.csl-footer .fcol ul a:hover{color:#fff}

/* ===== NAV + MEGA mobile ===== */
@media(max-width:960px){
  /* backdrop-filter makes .csl-nav a containing block for position:fixed — kill it on mobile so the menu overlay fills the viewport.
     background is NOT !important so hero pages (body.home/.csl-designed) can stay transparent-over-hero; non-hero pages get solid. */
  .csl-nav{-webkit-backdrop-filter:none !important;backdrop-filter:none !important;background:var(--night)}
  .csl-nav .links{position:fixed;top:66px;left:0;right:0;bottom:0;height:auto;background:var(--night);flex-direction:column;align-items:stretch;gap:0;padding:16px var(--pad) 40px;transform:translateY(-120%);transition:transform .3s;overflow-y:auto;z-index:1000}
  .csl-nav .links.open{transform:none}
  .csl-nav .links a,.csl-nav .megatoggle{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.08);width:100%;font-size:17px;justify-content:space-between}
  .csl-nav .links a::after{display:none}
  .csl-nav .has-mega{width:100%}
  .csl-nav .mega{position:static;opacity:1;visibility:visible;transform:none;display:none;box-shadow:none;border:0;background:transparent}
  .csl-nav .has-mega.open .mega{display:block}
  .csl-nav .has-mega.open .megatoggle .caret{transform:rotate(180deg)}
  .csl-nav .mega-in{display:block;padding:6px 0 10px}
  .csl-nav .mega-col{margin:10px 0}
  .csl-nav .mega-sub{display:none}
  .csl-nav .mega-feat{margin-top:14px}
  .csl-nav .give{margin-top:18px;text-align:center;justify-content:center;border-bottom:0 !important}
  .csl-burger{display:block}
  .csl-footer .cols{grid-template-columns:1fr 1fr}
  .csl-footer .fbrand-col{grid-column:1 / -1;max-width:none}
}
@media(max-width:560px){ .csl-footer .cols{grid-template-columns:1fr} }

/* ===== people grid (Our People) ===== */
.csl-dc-people{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 24px;margin-top:8px}
@media(max-width:1000px){.csl-dc-people{grid-template-columns:repeat(3,1fr)}}
.csl-dc-person{text-align:left}
.csl-dc-person .ph{position:relative;aspect-ratio:1/1;border-radius:16px;overflow:hidden;background:#241f45;box-shadow:0 14px 34px rgba(0,0,0,.28)}
.csl-dc-person .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none;transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.csl-dc-person:hover .ph img{transform:scale(1.06)}
.csl-dc-person .nm{display:block;margin-top:14px;font-family:'Josefin Sans',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.02em;font-size:18px;line-height:1.15;color:inherit}
.csl-dc-person .rl{display:block;margin-top:4px;font-family:'Josefin Sans',sans-serif;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#f47c20}
@media(max-width:560px){.csl-dc-people{grid-template-columns:1fr 1fr;gap:20px 16px}.csl-dc-person .nm{font-size:16px}}

/* design eyebrows ("01 — Who we are" / hero labels) were too small — bump site-wide */
.csl-dc [style*="letter-spacing:.3em"],.csl-dc [style*="letter-spacing:.32em"]{font-size:clamp(15px,1.15vw,18px) !important}

/* ===== QA polish 2026-09-28 ===== */
/* 1) rolled .csl-dc pages: theme reset zeroes p margins -> consecutive paragraphs collide into a wall of text.
   Restore rhythm ONLY between adjacent paragraphs (single-p blocks + inline-styled design paras unaffected). */
body.csl-themed .csl-dc p + p{margin-top:1.05em}
body.csl-themed .csl-dc p + ul,body.csl-themed .csl-dc ul + p{margin-top:1.05em}
/* 2) mobile: alignfull/TT5 wrapper leaks ~30px past viewport; body had overflow-x:clip but documentElement did not.
   clip (not hidden) so position:sticky/fixed nav is preserved. */
html{overflow-x:clip}

/* ===== NAV REDESIGN 2026-09-28: logo stacked above a spaced/larger menu, transparent over the hero ===== */
/* desktop: stack brand over menu, centered, enlarged + more spacing */
@media(min-width:961px){
  .csl-nav .bar{flex-direction:column;justify-content:center;gap:15px;padding:36px var(--pad) 20px}
  .csl-nav .brand{flex-direction:column;gap:9px;text-align:center}
  .csl-nav .brand .logo{height:58px;width:min(72vw,430px);background-position:center}
  .csl-nav .brand .loc{border-left:0;padding-left:0;font-size:12px;letter-spacing:.36em}
  .csl-nav .links{gap:clamp(22px,2.5vw,46px)}
  .csl-nav .links a,.csl-nav .megatoggle{font-size:18px;letter-spacing:.05em}
  .csl-nav .give{font-size:17px;padding:12px 34px}
  /* compact on scroll so the taller nav doesn't hog the viewport */
  .csl-nav.scrolled .bar{gap:9px;padding:11px var(--pad)}
  .csl-nav.scrolled .brand .logo{height:38px}
  .csl-nav.scrolled .brand .loc{display:none}
}
/* transparent floating nav over a full-bleed dark hero (homepage + interior .csl-designed pages) */
body.home .csl-nav,body.csl-designed .csl-nav{position:fixed;left:0;right:0;top:0;background:transparent;border:0;-webkit-backdrop-filter:none;backdrop-filter:none}
/* scrim as a pseudo-element that extends BELOW the nav box and fades to nothing — no hard bottom line */
body.home .csl-nav::before,body.csl-designed .csl-nav::before{content:"";position:absolute;left:0;right:0;top:0;bottom:-60px;background:linear-gradient(180deg,rgba(10,8,30,.6),rgba(10,8,30,.12) 42%,transparent 82%);pointer-events:none;z-index:-1}
.csl-nav.scrolled::before{display:none}
/* scrolled off the hero -> solidify (all pages) so nav text stays legible over content */
.csl-nav.scrolled{background:rgba(16,12,44,.93)!important;background-image:none!important;-webkit-backdrop-filter:saturate(1.3) blur(12px)!important;backdrop-filter:saturate(1.3) blur(12px)!important;border-bottom-color:rgba(255,255,255,.08)!important;box-shadow:0 10px 34px rgba(0,0,0,.34)}
/* hero pages: nav overlays, so the hero fills the whole viewport behind it */
body.csl-designed .csl-dc > section:first-child{min-height:100svh!important}

/* homepage hero thread of light: fade out once past the hero so it does not cross the below-hero sections */
.thread{transition:opacity .5s ease}

/* ===== iteration 2026-09-28 b: mega card, boxcast, line-of-light rail, footer credit ===== */
.csl-nav .mega-feat{align-items:center;text-align:center;padding:36px 28px;gap:9px}
.csl-nav .mega-feat-h{font-size:46px;margin:2px 0;line-height:.95}
.csl-nav .mega-feat-sub{max-width:250px;margin:0 auto}

[id^="boxcast-widget-"]{background:#fff;color:#1b1b1b;border-radius:16px;overflow:hidden;box-shadow:0 24px 64px rgba(20,16,58,.22)}
[id^="boxcast-widget-"] a{color:#b3500a}
[id^="boxcast-widget-"] a:hover{color:#f47c20}

.csl-thread{position:fixed;top:0;bottom:0;left:clamp(16px,4vw,58px);width:2px;z-index:900;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(244,124,32,.55) 16%,rgba(244,124,32,.55) 82%,transparent);box-shadow:0 0 18px rgba(244,124,32,.45)}
.csl-thread::after{content:"";position:absolute;left:50%;top:36%;width:9px;height:9px;margin-left:-4.5px;border-radius:50%;background:#f9a24a;box-shadow:0 0 16px 4px rgba(244,124,32,.7)}

:root{--uni-logo:url("/wp-content/themes/csl-fortlauderdale/assets/images/csl/uni-logo.svg")}
.csl-footer .base{flex-wrap:wrap;gap:10px 22px}
.csl-footer .base .legal{display:inline-flex;gap:22px;align-items:center;flex-wrap:wrap}
.csl-footer .base .legal a{color:#CFC9EC}
.csl-footer .base .legal a:hover{color:#fff}
.csl-footer .fcredit{margin-top:30px;padding-top:24px;border-top:1px solid rgba(255,255,255,.09);display:flex;flex-direction:column;align-items:center;gap:13px;text-align:center}
.csl-footer .fcredit>span{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#8f89b3}
.csl-footer .fcredit-logo{display:block;width:220px;height:22px;background:var(--uni-logo) center/contain no-repeat;opacity:.92;transition:opacity .2s}
.csl-footer .fcredit-logo:hover{opacity:1}

/* ===== footer polish 2026-09-28: larger/bolder text, animated sun, giant wordmark ===== */
.csl-footer{font-size:16px}
.csl-footer .fcol h4{font-size:14px}
.csl-footer .fcol ul{line-height:2.5;font-size:17.5px}
.csl-footer .fcol ul a{font-weight:600}
.csl-footer .tag{font-size:16.5px}
.csl-footer .contact{font-size:16px}
.csl-footer::before{transform-origin:center;animation:csl-slowspin 110s linear infinite}
@keyframes csl-slowspin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.csl-footer::before{animation:none}}
/* giant wordmark = scroll-driven ghost marquee, clipped off at the footer's bottom edge */
.csl-footer{position:relative;overflow:hidden}
.csl-footer .cols,.csl-footer .base,.csl-footer .fcredit{position:relative;z-index:2}
.csl-footer .fgiant{position:absolute;left:0;right:0;bottom:clamp(-72px,-5vw,-26px);z-index:0;overflow:hidden;white-space:nowrap;pointer-events:none;user-select:none;line-height:.8}
.csl-footer .fgiant span{display:inline-block;font-family:'Josefin Sans',sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(96px,17vw,280px);letter-spacing:-.01em;color:rgba(244,124,32,.15);will-change:transform;animation:csl-marquee 120s linear infinite}
@keyframes csl-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.csl-footer .fgiant span{animation:none}}

/* ===== contact form (cinematic, cream section) 2026-09-28 ===== */
.csl-form{margin-top:clamp(28px,4vw,44px);max-width:820px}
.csl-form .row2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:620px){.csl-form .row2{grid-template-columns:1fr}}
.csl-form label{display:block;margin:0 0 18px;font-family:'Josefin Sans',sans-serif;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#8a847e;font-weight:600}
.csl-form .row2 label{margin-bottom:0}
.csl-form input,.csl-form select,.csl-form textarea{display:block;width:100%;margin-top:9px;padding:15px 16px;font-family:'Mulish',sans-serif;font-size:16.5px;color:#111;background:#fff;border:1px solid rgba(17,17,17,.16);border-radius:12px;box-sizing:border-box;transition:border-color .18s,box-shadow .18s}
.csl-form textarea{resize:vertical;min-height:130px;line-height:1.5}
.csl-form select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'><path d='M1 1l6 6 6-6' fill='none' stroke='%23f47c20' stroke-width='2'/></svg>");background-repeat:no-repeat;background-position:right 16px center;padding-right:44px}
.csl-form input:focus,.csl-form select:focus,.csl-form textarea:focus{outline:0;border-color:#f47c20;box-shadow:0 0 0 3px rgba(244,124,32,.16)}
.csl-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.csl-form-btn{display:inline-flex;align-items:center;gap:10px;margin-top:6px;background:#f47c20;color:#fff;font-family:'Josefin Sans',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:15px;padding:16px 40px;border:0;border-radius:999px;cursor:pointer;box-shadow:0 8px 22px rgba(244,124,32,.3);transition:transform .18s,background .18s}
.csl-form-btn:hover{background:#e06c12;transform:translateY(-1px)}
.csl-form-btn:disabled{opacity:.65;cursor:default;transform:none}
.csl-form-status{margin-top:18px;font-size:16px;font-weight:600}
.csl-form-status.ok{color:#1c7c3a}
.csl-form-status.err{color:#b3300a}

/* full-bleed the .csl-dc wrapper on designed pages (block theme was constraining it to content-size -> cream side margins, esp. on the calendar) */
body.csl-designed .csl-dc{max-width:none !important;width:100% !important;margin-left:0 !important;margin-right:0 !important}

/* 2026-09-29 fixes (mini): mega "Join Us" card wraps; footer marquee very slow + tops not clipped; wider CTA buttons in their own type style */
.csl-nav .mega-feat,.csl-nav .mega-feat *{white-space:normal}
.csl-nav .mega-feat-sub{text-wrap:balance}
.csl-footer .fgiant{line-height:1.15;bottom:clamp(-116px,-8vw,-42px)}
.csl-footer .fgiant span{animation-duration:900s}
.csl-dc-btn{justify-content:center;min-width:min(280px,100%);padding-left:56px;padding-right:56px}
body.csl-themed .csl-dc a.csl-dc-btn{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:16px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none}

/* 2026-09-29 event When/Where layout (mini) */
.csl-ev-metarow .val .csl-ev-date{display:block;font-size:19px;font-weight:700;line-height:1.35}
.csl-ev-metarow .val .csl-ev-time{display:block;margin-top:4px;font-size:17px;font-weight:600;color:#b3500a}
.csl-ev-metarow .val .csl-ev-venue{display:block;font-weight:700;line-height:1.35;margin-bottom:4px}
.csl-ev-metarow .val .csl-ev-addr{display:block;font-size:16.5px;font-weight:500;line-height:1.5;color:#4a4540}
body.csl-themed .csl-ev-metarow a.csl-ev-dir{display:inline-flex;align-items:center;margin-top:14px;padding:9px 18px;border-radius:999px;border:1.5px solid #b3500a;color:#b3500a;font-size:14px;font-weight:700;letter-spacing:.04em;text-decoration:none;transition:background .2s,color .2s}
body.csl-themed .csl-ev-metarow a.csl-ev-dir:hover{background:#b3500a;color:#fff}

/* ===== 2026-09-29 c: app badges, "Get the App" nav dropdown, newsletter band, real footer lockup (agent) ===== */
/* store badges */
.csl-badges{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.csl-badges a.csl-badge{display:inline-block;line-height:0;border-radius:9px;transition:transform .2s ease,opacity .2s ease;padding:0;border:0;width:auto}
.csl-badges a.csl-badge::after{display:none!important}
.csl-badges a.csl-badge:hover{transform:translateY(-2px)}
.csl-badges a.csl-badge:focus-visible{outline:2px solid #f47c20;outline-offset:3px}
.csl-badges img{display:block;height:46px;width:auto;max-width:none}

/* footer: real horizontal lockup (same asset as the nav) replaces the fake sun+text lockup; marquee removed */
.csl-footer .fbrand{display:inline-flex;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:24px;text-decoration:none}
.csl-footer .flogo{display:block;width:clamp(240px,24vw,300px);max-width:100%;aspect-ratio:1195/185;background:var(--csl-logo) left center/contain no-repeat}
.csl-footer .floc{font-family:'Josefin Sans',sans-serif;font-size:11.5px;letter-spacing:.36em;text-transform:uppercase;color:#A79FC9;font-weight:600}
.csl-footer .fgiant{display:none}
.csl-footer{padding-bottom:34px}
.csl-footer .fapp{margin-top:28px}
.csl-footer .fapp-h{font-family:'Josefin Sans',sans-serif;font-size:14px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:700;margin:0 0 14px}
.csl-footer .fapp .csl-badges img{height:44px}

/* nav: Get the App dropdown */
.csl-nav .has-app{position:relative}
.csl-nav .appdd{position:absolute;top:calc(100% + 16px);left:50%;width:330px;transform:translate(-50%,8px);opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s;z-index:1002;background:linear-gradient(180deg,var(--night-2),var(--deep));border:1px solid rgba(255,255,255,.1);border-radius:18px;box-shadow:0 30px 60px rgba(0,0,0,.5)}
.csl-nav .appdd::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
.csl-nav .has-app:hover .appdd,.csl-nav .has-app:focus-within .appdd,.csl-nav .has-app.open .appdd{opacity:1;visibility:visible;transform:translate(-50%,0)}
.csl-nav .has-app:hover .apptoggle .caret,.csl-nav .has-app.open .apptoggle .caret{transform:rotate(180deg)}
.csl-nav .appdd-in{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:26px 24px 24px}
.csl-nav .appdd-h{font-family:'Josefin Sans',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.2em;font-size:13px;color:var(--gold)}
.csl-nav .appdd-sub{font-family:'Mulish',sans-serif;font-size:15px;line-height:1.45;color:#CFC9EC;max-width:250px;white-space:normal;margin-bottom:10px}
.csl-nav .appdd .csl-badges{justify-content:center;gap:10px}
.csl-nav .appdd .csl-badges img{height:40px}
@media(max-width:960px){
  .csl-nav .has-app{width:100%}
  .csl-nav .appdd{position:static;width:auto;transform:none;opacity:1;visibility:visible;display:none;background:transparent;border:0;border-radius:0;box-shadow:none}
  .csl-nav .appdd::before{display:none}
  .csl-nav .has-app.open .appdd{display:block;transform:none}
  .csl-nav .appdd-in{align-items:flex-start;text-align:left;padding:14px 0 18px}
  .csl-nav .appdd .csl-badges{justify-content:flex-start}
  .csl-nav .appdd .csl-badges img{height:44px}
  .csl-nav .links .csl-badges a.csl-badge{padding:0;border-bottom:0;width:auto;font-size:0}
}

/* newsletter band (site-wide, above footer) */
.csl-nlband{background:#fbf7f2;color:#111;padding:clamp(64px,8vw,112px) var(--pad);position:relative;border-top:1px solid rgba(20,16,58,.06)}
.csl-nlband-in{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1fr minmax(0,520px);gap:clamp(32px,6vw,96px);align-items:center}
.csl-nlband .csl-nl-eyebrow{display:flex;align-items:center;gap:16px;font-family:'Josefin Sans',sans-serif;font-size:14px;letter-spacing:.32em;text-transform:uppercase;color:#b3500a;font-weight:600;margin-bottom:20px}
.csl-nlband .csl-nl-eyebrow span{width:48px;height:1px;background:#b3500a}
body .csl-nlband h2.csl-nl-h{margin:0 0 16px;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:clamp(40px,4.6vw,68px);line-height:.96;letter-spacing:-.02em;text-transform:uppercase;color:#111}
body .csl-nlband h2.csl-nl-h a{color:inherit;text-decoration:none;transition:color .2s}
body .csl-nlband h2.csl-nl-h a:hover{color:#b3500a}
.csl-nlband h2.csl-nl-h b{font-weight:700}
body .csl-nlband p.csl-nl-copy{margin:0;max-width:46ch;font-family:'Mulish',sans-serif;font-size:clamp(17px,1.35vw,20px);line-height:1.65;color:#3b3631}
/* the form (shared by the band and /newsletter/) */
.csl-newsletter-form .csl-nl-form{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid rgba(17,17,17,.14);border-radius:999px;padding:7px;box-shadow:0 18px 44px rgba(20,16,58,.08);transition:border-color .18s,box-shadow .18s;margin:0}
.csl-newsletter-form .csl-nl-form:focus-within{border-color:#f47c20;box-shadow:0 0 0 4px rgba(244,124,32,.14),0 18px 44px rgba(20,16,58,.08)}
.csl-newsletter-form .csl-nl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.csl-newsletter-form input[type=email]{flex:1;min-width:0;border:0;background:transparent;padding:14px 8px 14px 20px;margin:0;font-family:'Mulish',sans-serif;font-size:17px;color:#111;outline:0;box-shadow:none}
.csl-newsletter-form input[type=email]::placeholder{color:#8a847e}
.csl-newsletter-form button[type=submit]{flex:0 0 auto;background:#f47c20;color:#fff;border:0;border-radius:999px;padding:16px 32px;margin:0;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:15px;letter-spacing:.16em;text-transform:uppercase;line-height:1;cursor:pointer;transition:background .2s,transform .2s}
.csl-newsletter-form button[type=submit]:hover{background:#e06c12;transform:translateY(-1px)}
.csl-newsletter-form .csl-nl-status{margin:14px 0 0 20px;font-family:'Mulish',sans-serif;font-size:15.5px;font-weight:700;color:#b3500a;max-width:none}
/* homepage-only app strip inside the band */
.csl-appstrip{max-width:var(--maxw);margin:clamp(44px,5vw,64px) auto 0;padding-top:clamp(28px,3vw,40px);border-top:1px solid rgba(17,17,17,.1);display:flex;align-items:center;justify-content:space-between;gap:20px 40px;flex-wrap:wrap}
.csl-appstrip-t{display:flex;align-items:baseline;gap:8px 20px;flex-wrap:wrap}
.csl-appstrip-h{font-family:'Josefin Sans',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.2em;font-size:15px;color:#111}
.csl-appstrip-s{font-family:'Mulish',sans-serif;font-size:17px;color:#3b3631}
@media(max-width:860px){
  .csl-nlband-in{grid-template-columns:1fr}
}
@media(max-width:480px){
  .csl-newsletter-form .csl-nl-form{flex-direction:column;align-items:stretch;border-radius:22px;padding:8px}
  .csl-newsletter-form input[type=email]{padding:14px 14px;text-align:center}
  .csl-newsletter-form button[type=submit]{width:100%;padding:17px 24px}
  .csl-newsletter-form .csl-nl-status{margin-left:0;text-align:center}
  .csl-appstrip{flex-direction:column;align-items:flex-start}
}
@media(max-width:960px){.csl-nav .links a.give{display:flex;justify-content:center;align-items:center;text-align:center}}

/* 2026-09-29c: mobile — backdrop-filter on the scrolled nav made it the containing block for the fixed menu, so the closed menu peeked out ("Explore" bar) and couldn't open full-height after scrolling */
@media(max-width:960px){.csl-nav.scrolled{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:rgba(16,12,44,.97)!important}}

/* 2026-09-29 Seven Core Values — phone/tablet accordion (active panel collapsed to 2px; labels collided with numbers) */
@media(max-width:900px){
  .csl-dc-values{gap:8px}
  .csl-dc-values .csl-dc-val,.csl-dc-values .csl-dc-val.active{flex:0 0 auto!important;height:auto!important;min-height:0;border-radius:14px}
  .csl-dc-val .num{top:0;bottom:0;left:20px;display:flex;align-items:center;height:64px;font-size:13px}
  .csl-dc-val .vlabel{position:static;display:flex;justify-content:flex-start;align-items:center;min-height:64px;padding:0 48px 0 64px}
  .csl-dc-val .vlabel span{font-size:17px;letter-spacing:.16em;white-space:normal}
  .csl-dc-val .vlabel::after{content:"+";position:absolute;right:20px;top:0;height:64px;display:flex;align-items:center;font-size:24px;font-weight:300;opacity:.7}
  .csl-dc-val.active .vlabel{display:none}
  .csl-dc-val .vbody{position:static;display:none;opacity:1;transform:none;padding:64px 22px 28px}
  .csl-dc-val.active .vbody{display:block;animation:cslValIn .45s cubic-bezier(.2,.8,.2,1) both}
  .csl-dc-val.active .num{height:64px}
  .csl-dc-val .vt{font-size:clamp(30px,8.5vw,44px);margin-bottom:14px}
  .csl-dc-val .vbody p{font-size:17px;line-height:1.6}
  .csl-dc-val .mark{width:70%;right:-14%;bottom:-18%}
}
@keyframes cslValIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* =====================================================================
   2026-09-29g — site-wide mobile polish pass (typography, buttons, hero,
   footer, burger menu, newsletter band, contact form, blog cards).
   Appended block; earlier rules left intact.
   ===================================================================== */

/* 1) Typography: one system everywhere — Josefin Sans display + Mulish body.
      Same selectors/specificity as the original theme rules so component rules still win;
      .csl-dc pages keep their own reset (body.csl-themed .csl-dc h1… inherit). */
:root{--display:'Josefin Sans',sans-serif;--body:'Mulish',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif}
body.csl-themed h1, body.csl-themed .wp-block-post-title, body.csl-themed .page-title, body.csl-themed .archive-title{
  font-family:'Josefin Sans',sans-serif;font-weight:300;letter-spacing:-.01em;line-height:1.02;font-size:clamp(38px,6.4vw,76px);text-wrap:balance;overflow-wrap:break-word}
body.csl-themed .wp-block-query-title{font-family:'Josefin Sans',sans-serif;font-weight:300;letter-spacing:-.01em;text-transform:uppercase}
body.csl-themed h2{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:clamp(22px,2.6vw,30px);line-height:1.18;letter-spacing:.03em;text-transform:uppercase;text-wrap:balance;margin:1.6em 0 .55em}
body.csl-themed h3{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:20px;line-height:1.25;letter-spacing:.01em;text-wrap:balance}
body.csl-themed h2.has-small-font-size{letter-spacing:.24em;color:var(--gold)}
.csl-hero .csl-hero-title{font-family:'Josefin Sans',sans-serif;font-weight:300;letter-spacing:-.01em;line-height:.95;font-size:clamp(40px,8vw,104px)}
/* post / event cards (blog, archives, "More posts") */
body.csl-themed li.wp-block-post .wp-block-post-title{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:20px;line-height:1.22;letter-spacing:.02em;text-transform:uppercase;text-wrap:balance}
body.csl-themed li.wp-block-post .wp-block-post-title a{text-decoration:none}
.csl-footer,.csl-nav{font-family:'Mulish',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}

/* 11) post cards: the date was double-padded (div + nested time) — one 20px gutter for date, title, excerpt */
body.csl-themed li.wp-block-post .wp-block-post-date time{padding:0;margin:0}
body.csl-themed li.wp-block-post .wp-block-post-date{padding-left:20px;padding-right:20px}
body.csl-themed li.wp-block-post .wp-block-post-title,body.csl-themed li.wp-block-post .wp-block-post-excerpt{padding-left:20px;padding-right:20px}
body.csl-themed li.wp-block-post > .wp-block-post-date:first-child{padding-top:20px;padding-bottom:0}
body.csl-themed li.wp-block-post > .wp-block-post-date:first-child + .wp-block-post-title{margin-top:10px}
body.csl-themed li.wp-block-post > .wp-block-post-excerpt:last-child{padding-bottom:20px}

/* 4) balanced headings everywhere in the design system (no orphan last words) */
.csl-dc h1,.csl-dc h2,.csl-dc h3,.csl-dc-person .nm{text-wrap:balance}

/* 10) plain sub-headings inside designed pages (e.g. /prayer/ "Ways to Request Prayer") */
body.csl-themed .csl-dc h3:not([style]){font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:18px;line-height:1.3;letter-spacing:.14em;text-transform:uppercase;color:#f47c20;margin:24px 0 8px}
body.csl-themed .csl-dc section[style*="background:#fbf7f2"] h3:not([style]),body.csl-themed .csl-dc section[style*="background:#fff"] h3:not([style]){color:#b3500a}
body.csl-themed .csl-dc h3:not([style]):first-child{margin-top:0}

/* 12) decorative sun spiral must keep its aspect ratio */
.csl-dc img.mark{height:auto!important}

/* 9) contact form rhythm: a label belongs to its own field, not the one above */
.csl-form label{margin:22px 0 0}
.csl-form .row2{gap:0 18px}
.csl-form .row2 label{margin-top:22px}
.csl-form > .row2:first-child label{margin-top:0}
.csl-form input,.csl-form select,.csl-form textarea{margin-top:8px}
.csl-form .hp{margin:0}
.csl-form-btn{margin-top:30px}
/* "Open in Google Maps" — same pill as the design buttons */
body.csl-themed .csl-dc a.csl-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:#000;color:#fff;padding:18px 30px 16px;border-radius:999px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:14px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;line-height:1.2;white-space:nowrap;transition:transform .3s,color .3s}
body.csl-themed .csl-dc a.csl-cta::after{content:"\2197";letter-spacing:0}
body.csl-themed .csl-dc a.csl-cta:hover{color:#f47c20;background:#000;transform:translateY(-2px)}

/* 8) newsletter band: heading is plain text; separate small link to the newsletter page */
body .csl-nlband p.csl-nl-more{margin:18px 0 0;font-family:'Josefin Sans',sans-serif;font-size:13px;letter-spacing:.2em;text-transform:uppercase;font-weight:600}
body .csl-nlband .csl-nl-more a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#b3500a;text-decoration:none;border-bottom:0}
body .csl-nlband .csl-nl-more a:hover{color:#111}

/* 6) burger menu: real chevron, opaque header while open, no duplicate rows in Explore */
.csl-nav .caret{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;font-size:0;opacity:.8;line-height:0}
.csl-nav .caret svg{width:12px;height:12px;display:block}
@media(max-width:960px){
  .csl-nav.menu-open,.csl-nav.menu-open.scrolled{background:#120f2e!important;background-image:none!important;box-shadow:none}
  .csl-nav.menu-open::before{display:none}
  .csl-nav .links{background:#120f2e}
  .csl-nav .mega li.is-dup{display:none}
  .csl-nav .mega li a{padding:11px 20px 11px 12px}
  .csl-nav .caret{width:14px;height:14px}
  .csl-nav .caret svg{width:14px;height:14px}
}

/* ---------- phones ---------- */
@media(max-width:600px){
  /* 7) line-of-light rail sits on top of the text gutter on phones */
  .csl-thread{display:none}

  /* 2) pill buttons: one line, arrow stays with its label */
  .csl-dc-btn,body.csl-themed .csl-dc a.csl-dc-btn{font-size:13px;letter-spacing:.12em;padding:19px 22px 17px;white-space:nowrap;min-width:0;max-width:100%;justify-content:center}
  /* full-width stack on phones (attribute selectors are unreliable here: the reveal JS re-serialises inline styles) */
  .csl-dc .csl-dc-btn,body.csl-themed .csl-dc a.csl-dc-btn{display:flex;flex:1 1 100%;width:100%}
  .csl-dc-btn + .csl-dc-btn{margin-top:0}

  /* 3) hero eyebrows over photography: smaller, light, and never orange-on-orange */
  .csl-dc [data-hero-fade] > div:not(:has(h1)):not(:has(> a)){font-size:12px!important;letter-spacing:.18em!important;color:#f6f1eb!important;gap:12px!important;text-wrap:balance;text-shadow:0 1px 14px rgba(0,0,0,.55)}
  .csl-dc [data-hero-fade] > div > span:first-child:empty{width:28px!important;flex:0 0 28px;background:#f47c20!important}
  /* bottom scrim so hero copy always sits on dark */
  .csl-dc > section:first-child > div:first-child > div[style*="linear-gradient"]{background:linear-gradient(180deg,rgba(0,0,0,.42) 0%,rgba(0,0,0,.12) 30%,rgba(0,0,0,.6) 56%,rgba(0,0,0,.92) 100%)!important}

  /* 4) big hero headings fit the column */
  .csl-dc h1{font-size:clamp(38px,12.5vw,60px)!important;overflow-wrap:break-word}
  .csl-dc h2{overflow-wrap:break-word}

  /* 13) scroll-scrubbed word reveal: unpin and just show the words */
  .csl-dc [data-words]{height:auto!important}
  .csl-dc [data-words] > div{position:relative!important;top:auto!important;height:auto!important;padding-top:clamp(84px,22vw,120px)!important;padding-bottom:clamp(84px,22vw,120px)!important}
  .csl-dc [data-words] [data-word]{opacity:1!important}

  /* 9) contact form on phones */
  .csl-form > .row2:first-child label + label{margin-top:22px}
  .csl-form-btn{display:flex;width:100%;justify-content:center;box-shadow:none;padding:19px 24px 17px}
  body.csl-themed .csl-dc a.csl-cta{width:100%}

  /* 5) footer: link columns side by side, 44px tap targets, readable legal line */
  .csl-footer{padding-top:52px}
  .csl-footer .cols{grid-template-columns:1fr 1fr;gap:34px 18px}
  .csl-footer .fbrand-col{grid-column:1 / -1}
  .csl-footer .fcol h4{margin:0 0 4px}
  .csl-footer .fcol ul{line-height:1.35;font-size:16px}
  .csl-footer .fcol:last-child{grid-column:1 / -1}
  .csl-footer .fcol:last-child ul{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}
  .csl-footer .fcol ul a{display:flex;align-items:center;min-height:44px;padding:0}
  .csl-footer .base{margin-top:30px;font-size:14px;gap:4px 20px}
  .csl-footer .base .legal{gap:0 22px}
  .csl-footer .base .legal a{display:inline-flex;align-items:center;min-height:44px}
  .csl-footer .base .legal > span{flex-basis:100%}
}

/* 2026-09-29 homepage hero headlines: Josefin Sans like the rest of the site (was condensed Bebas Neue) */
body.home .disp{font-family:'Josefin Sans',sans-serif!important;font-weight:300!important;letter-spacing:-.01em!important;line-height:1.02!important;text-shadow:0 2px 24px rgba(10,8,30,.55)}
body.home h1.disp{font-size:clamp(40px,5.6vw,88px)!important}
body.home h2.disp{font-size:clamp(40px,5.2vw,80px)!important}

/* 2026-10-06 single event top bar: back to calendar + prev/next */
body .csl-ev-topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 22px;padding:0 0 16px;border-bottom:1px solid rgba(20,16,58,.12)}
body.csl-themed .csl-ev-topbar a{font-family:'Josefin Sans',sans-serif;font-weight:700;font-size:14px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:#14103A}
body.csl-themed .csl-ev-topbar a:hover{color:#f47c20}
body.csl-themed .csl-ev-topbar a.csl-ev-back{display:inline-flex;align-items:center;gap:8px;background:#f47c20;color:#14103A;padding:12px 22px 10px;border-radius:999px}
body.csl-themed .csl-ev-topbar a.csl-ev-back:hover{background:#14103A;color:#fff}
body .csl-ev-topnav{display:flex;gap:22px}
@media(max-width:560px){body .csl-ev-topbar{justify-content:center}body .csl-ev-topnav{width:100%;justify-content:space-between}}

/* 2026-10-06 "Save the Date" upcoming section lightened (paper bg, ink text) + square flyer thumbs */
html body .csl-upc-light .csl-ev-list{--csl-ink:#14103A;--csl-muted:#5b5570;--csl-line:rgba(20,16,58,.1)}
html body .csl-upc-light .csl-ev-list .csl-ev-card{background:#fff!important;border:1px solid rgba(20,16,58,.08)!important;box-shadow:0 30px 70px -40px rgba(20,16,58,.35)!important;-webkit-backdrop-filter:none;backdrop-filter:none}
html body .csl-upc-light .csl-ev-list .csl-ev-card:hover{border-color:rgba(244,124,32,.6)!important;box-shadow:0 36px 80px -30px rgba(244,124,32,.35)!important}
html body .csl-upc-light .csl-ev-card .csl-ev-card-title,html body .csl-upc-light .csl-ev-card .csl-ev-card-title a{color:#14103A!important}
html body .csl-upc-light .csl-ev-card .csl-ev-card-title a:hover{color:#f47c20!important}
html body .csl-upc-light .csl-ev-card .csl-ev-when,html body .csl-upc-light .csl-ev-card .csl-ev-excerpt{color:#4a4560!important}
html body .csl-upc-light .csl-ev-card .csl-ev-cat{color:#c95f0e!important}
html body .csl-upc-light .csl-ev-card .csl-ev-card-foot{border-top:1px solid rgba(20,16,58,.08)}
html body .csl-upc-light .csl-ev-pill.free{background:rgba(29,187,169,.14);color:#0f7d70}
html body .csl-upc-light .csl-ev-pill.fixed,html body .csl-upc-light .csl-ev-pill.tickets{background:rgba(244,124,32,.14);color:#b8540a}
html body .csl-upc-light .csl-ev-pill.tiers{background:rgba(136,120,255,.14);color:#5a49c9}
html body .csl-upc-light .csl-ev-pill.donation{background:rgba(240,88,143,.14);color:#b8285c}
html body .csl-upc-light .csl-ev-card a.csl-ev-btn.primary:hover{background:#14103A;color:#fff!important}
html body .csl-upc-light .csl-ev-thumb{aspect-ratio:1/1!important;background-color:#F4EFE4!important}
html body .csl-upc-light .csl-ev-card.list .csl-ev-thumb{width:min(260px,32%);aspect-ratio:1/1!important;align-self:flex-start}
html body .csl-upc-light .csl-ev-thumb::before{filter:blur(20px) brightness(1.05) saturate(.9)}
@media(max-width:700px){html body .csl-upc-light .csl-ev-card.list .csl-ev-thumb{width:100%}}

/* 2026-10-06 photo bands (hero + quote): text back to white over the photo, photo lightened.
   Oct-02 lightening set the .csl-dc wrapper to ink, which these bands inherited (navy-on-photo). */
body .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img){color:#fff!important}
body .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) :is(h1,h2,h3,p,blockquote,li):not([style*="#f47c20"]){color:#fff!important}
body .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) > div[style*="inset:0"] > div[style*="linear-gradient(180deg,rgba(0,0,0"]{background:linear-gradient(180deg,rgba(20,16,58,.32),rgba(20,16,58,.06) 40%,rgba(20,16,58,.74))!important}
body .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) > div[style*="inset:0"] > [data-parallax] > img{filter:brightness(1.12)}
body .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) blockquote{text-shadow:0 2px 24px rgba(20,16,58,.55)}
/* nav location tag ("Fort Lauderdale") readable over light heroes */
body .csl-nav .brand .loc{color:#fff!important;opacity:1;font-size:12.5px;text-shadow:0 1px 10px rgba(20,16,58,.7),0 0 2px rgba(20,16,58,.5)}
/* 2026-10-06 tone down the spinning sun overlay on lightened photo heroes */
body .csl-dc section img[data-spin][style*="mix-blend-mode:screen"]{opacity:.38!important}
/* 2026-10-06 small orange eyebrows ("Welcome", "What's Happening") over photo heroes → light tan + shadow so they read */
body .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) div[style*="letter-spacing:.3"][style*="color:#f47c20"]{color:#FFE2C4!important;font-weight:700;text-shadow:0 1px 12px rgba(20,16,58,.85),0 0 2px rgba(20,16,58,.6)}
body .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) div[style*="letter-spacing:.3"][style*="color:#f47c20"] > span{background:#FFE2C4!important;box-shadow:0 0 8px rgba(20,16,58,.6)}
/* show pages: hero is a bright flyer → keep a strong scrim so the title reads */
body.csl-show-page .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) > div[style*="inset:0"] > div[style*="linear-gradient"]{background:linear-gradient(90deg,rgba(20,16,58,.88) 0,rgba(20,16,58,.62) 45%,rgba(20,16,58,.25) 100%),linear-gradient(180deg,rgba(20,16,58,.35),rgba(20,16,58,.2) 40%,rgba(20,16,58,.85))!important}
body.csl-show-page .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) > div[style*="inset:0"] > [data-parallax] > img{filter:blur(2px) brightness(.9)}
body.csl-show-page .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) :is(div,a,span)[style*="color:#f47c20"]{color:#ffb070!important}
body.csl-show-page .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) a{color:#FFE2C4}
/* 2026-10-06 eyebrows over photo heroes: structural selector (dc_js rewrites inline styles, so attribute matches fail) */
body .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) [data-hero-fade] > div[data-reveal]:not(:has(a)){color:#FFE2C4!important;font-weight:700;text-shadow:0 1px 12px rgba(20,16,58,.85),0 0 2px rgba(20,16,58,.6)}
body .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) [data-hero-fade] > div[data-reveal]:not(:has(a)) > span{background:#FFE2C4!important}
/* FAQ accordions: no black focus ring / tap flash; orange hover */
body .csl-dc details > summary{outline:none;-webkit-tap-highlight-color:transparent;transition:color .2s}
body .csl-dc details > summary::-webkit-details-marker{display:none}
body .csl-dc details > summary:focus-visible{outline:2px solid #f47c20;outline-offset:6px;border-radius:6px}
body .csl-dc details > summary:hover{color:#f47c20!important}
body .csl-dc details{border-top-color:rgba(20,16,58,.12)!important}
/* 2026-10-06 Give page: Give Now buttons + lighter-indigo closing band */
body.csl-themed .csl-dc a.csl-give-btn{display:inline-flex;align-items:center;gap:10px;background:#f47c20;color:#14103A!important;font-family:'Josefin Sans',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:15px;padding:18px 40px 16px;border-radius:999px;text-decoration:none;box-shadow:0 14px 30px -14px rgba(244,124,32,.85);transition:transform .2s,background .2s,color .2s}
body.csl-themed .csl-dc a.csl-give-btn:hover{background:#14103A;color:#fff!important;transform:translateY(-2px)}
body.csl-themed .csl-dc .csl-give-band a.csl-give-btn:hover{background:#fff;color:#14103A!important}
body.csl-themed .csl-dc .csl-give-band,body.csl-themed .csl-dc .csl-give-band :is(h2,div,span){color:#F4EFE4}
body.csl-themed .csl-dc .csl-give-band h2 span{color:#FFD2A6!important}
body.csl-themed .csl-dc .csl-give-band a.csl-dc-btn.out{color:#F4EFE4!important;border:1.5px solid rgba(244,239,228,.7)!important;background:transparent!important}
body.csl-themed .csl-dc .csl-give-band a.csl-dc-btn.out:hover{background:#F4EFE4!important;color:#14103A!important}
/* 2026-10-06 closing CTA bands site-wide: orange → lighter indigo (class added in page content) */
body.csl-themed .csl-dc .csl-give-band :is(p,li){color:#E9E4F5!important}
body.csl-themed .csl-dc .csl-give-band a.csl-dc-btn.dark,body.csl-themed .csl-dc .csl-give-band a[style*="background:#000"]{background:#f47c20!important;color:#14103A!important;border-color:#f47c20!important}
body.csl-themed .csl-dc .csl-give-band a.csl-dc-btn.dark:hover,body.csl-themed .csl-dc .csl-give-band a[style*="background:#000"]:hover{background:#fff!important;color:#14103A!important}
body.csl-themed .csl-dc .csl-give-band a[style*="border:1px solid #000"],body.csl-themed .csl-dc .csl-give-band a[style*="border:2px solid #000"],body.csl-themed .csl-dc .csl-give-band a[style*="border:1.5px solid #000"]{color:#F4EFE4!important;border-color:rgba(244,239,228,.7)!important;background:transparent!important}
body.csl-themed .csl-dc .csl-give-band a:not([class]):not([style*="background"]){color:#FFD2A6}
body.csl-themed .csl-dc .csl-give-band [style*="color:#000"]:not(a){color:#F4EFE4!important}
/* homepage Arts cards: bigger tag + date line */
body .csl-arts-card .csl-arts-tag{font-size:13px;padding:8px 13px 6px}
body .csl-arts-card .csl-arts-when{font-size:16px}
/* show pages: hero type/date eyebrow bigger */
body.csl-show-page .csl-dc [data-hero-fade] > div[data-reveal]:not(:has(a)){font-size:clamp(16px,1.4vw,20px)!important}
body.csl-themed .csl-dc .csl-give-band a[style*="color:#111"]{color:#F4EFE4!important;border-color:rgba(244,239,228,.7)!important;background:transparent!important}
body.csl-themed .csl-dc .csl-give-band a[style*="color:#111"]:hover{background:#F4EFE4!important;color:#14103A!important}
/* 2026-10-06 CTA band buttons: bigger + bolder; eyebrow + links readable */
body.csl-themed .csl-dc .csl-give-band a:is(.csl-dc-btn,.csl-give-btn,[style*="border-radius:999px"]){font-size:17px!important;font-weight:800!important;padding:21px 44px 19px!important;letter-spacing:.12em!important;border-width:2px!important}
body.csl-themed .csl-dc .csl-give-band a[style*="background:#000"]{background:#f47c20!important;color:#14103A!important}
body.csl-themed .csl-dc .csl-give-band a[href^="tel:"]{color:#FFD2A6!important;text-decoration-color:rgba(255,210,166,.6)}
body.csl-themed .csl-dc .csl-give-band > div > div[data-reveal]:first-child,body.csl-themed .csl-dc .csl-give-band > div[data-reveal]:first-child{color:#FFD2A6!important;font-size:15px!important;font-weight:700}
@media(max-width:560px){body.csl-themed .csl-dc .csl-give-band a:is(.csl-dc-btn,.csl-give-btn,[style*="border-radius:999px"]){font-size:15px!important;padding:18px 30px 16px!important}}
/* 2026-10-06 /app/ coming-soon page */
.csl-app-hero .csl-app-ghost{display:inline-flex;align-items:center;font-family:'Josefin Sans',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:15px;padding:18px 34px 16px;border-radius:999px;border:2px solid rgba(255,255,255,.7);color:#fff!important;text-decoration:none}
.csl-app-hero .csl-app-ghost:hover{background:#fff;color:#14103A!important}
.csl-app-phone{justify-self:center;width:min(320px,74vw);aspect-ratio:9/19;border-radius:46px;padding:12px;background:linear-gradient(160deg,#2b2660,#0e0b28);box-shadow:0 50px 100px -30px rgba(0,0,0,.6),0 0 0 2px rgba(255,255,255,.12) inset,0 0 80px rgba(244,124,32,.25);animation:csl-app-float 6s ease-in-out infinite}
.csl-app-screen{position:relative;height:100%;border-radius:36px;overflow:hidden;background:radial-gradient(80% 50% at 50% 30%,rgba(244,124,32,.35),transparent 70%),linear-gradient(180deg,#1b1650,#36316E);display:flex;flex-direction:column;align-items:center;padding:56px 22px 26px;box-sizing:border-box;text-align:center}
.csl-app-notch{position:absolute;top:12px;left:50%;width:96px;height:26px;margin-left:-48px;border-radius:20px;background:#07051a}
.csl-app-logo{width:46%;max-width:none;margin:8px 0 14px;animation:csl-app-spin 30s linear infinite;filter:drop-shadow(0 0 22px rgba(244,124,32,.6))}
.csl-app-brand{font-family:'Josefin Sans',sans-serif;color:#fff;text-transform:uppercase;letter-spacing:.08em;font-size:15px;line-height:1.25}
.csl-app-brand b{font-size:20px}.csl-app-brand span{display:block;margin-top:6px;font-size:10px;letter-spacing:.3em;color:#FFB070;font-weight:700}
.csl-app-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:auto}
.csl-app-tiles span{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:16px 6px;color:#fff;font-family:'Josefin Sans',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.csl-app-soon{margin-top:14px;font-family:'Josefin Sans',sans-serif;font-weight:800;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#14103A;background:#f47c20;border-radius:999px;padding:9px 18px 7px}
@keyframes csl-app-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes csl-app-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.csl-app-phone,.csl-app-logo{animation:none}}
.csl-app-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2vw,28px)}
.csl-app-feats > div{background:#fff;border:1px solid rgba(20,16,58,.08);border-radius:20px;padding:28px 26px;box-shadow:0 24px 60px -40px rgba(20,16,58,.4)}
.csl-app-feats b{display:block;font-family:'Josefin Sans',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:20px;color:#14103A;margin-bottom:8px}
body.csl-themed .csl-dc .csl-app-feats p{margin:0;font-size:16.5px;line-height:1.6;color:#3b3631}
@media(max-width:960px){.csl-app-hero{grid-template-columns:1fr!important;text-align:left}.csl-app-feats{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.csl-app-feats{grid-template-columns:1fr}}
/* show pages: background flyer no longer blurred; reads as a soft atmospheric wash, poster on the right stays sharp */
body.csl-show-page .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) > div[style*="inset:0"] > [data-parallax] > img{filter:saturate(1.05) brightness(.95)!important;opacity:.55}
body.csl-show-page .csl-dc section:has(> div[style*="inset:0"] > [data-parallax] > img) > div[style*="inset:0"]{background:#1b1650}
body.csl-themed .csl-dc .csl-app-hero{padding-top:clamp(200px,26vh,250px)!important}
body.csl-themed .csl-dc .csl-app-hero a.csl-app-ghost{text-decoration:none!important}
@media(max-width:960px){body.csl-themed .csl-dc .csl-app-hero{padding-top:150px!important}}
/* 2026-10-06 footer: large social icons */
.csl-footer .csl-socials{display:flex;gap:14px;margin:22px 0 6px}
body .csl-footer .csl-socials a.csl-soc{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.28);color:#fff!important;transition:transform .2s,background .2s,border-color .2s}
body .csl-footer .csl-socials a.csl-soc svg{width:26px;height:26px}
body .csl-footer .csl-socials a.csl-soc:hover{transform:translateY(-3px);background:#f47c20;border-color:#f47c20;color:#14103A!important}

/* ===== 2026-10-06 client round: header, mobile menu, buttons, readability ===== */
/* breathing room above the logo */
.csl-nav .brand{padding-top:14px}
@media(max-width:960px){.csl-nav .brand{padding-top:10px}}
/* bigger hamburger (64px tap target, thicker bars) */
@media(max-width:960px){
  .csl-burger{width:64px!important;height:64px!important}
  .csl-burger span{left:14px!important;right:14px!important;height:4px!important}
  .csl-burger span:nth-child(1){top:20px!important}.csl-burger span:nth-child(2){top:30px!important}.csl-burger span:nth-child(3){top:40px!important}
  .csl-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(10px) rotate(45deg)!important}
  .csl-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-10px) rotate(-45deg)!important}
  /* larger mobile menu + sub-menu text */
  .csl-nav .links a,.csl-nav .megatoggle{font-size:21px!important;padding:18px 0!important}
  .csl-nav .mega .ml{font-size:19px!important;padding:6px 0}
  .csl-nav .mega .mb{font-size:15.5px!important;line-height:1.45;opacity:.85}
  .csl-nav .mega .mega-h{font-size:14px!important;letter-spacing:.2em}
  .csl-nav .mega-feat-h{font-size:24px!important}.csl-nav .mega-feat-sub{font-size:16px!important}
}
/* phones: every call-to-action button full width and the same width */
@media(max-width:640px){
  .csl-dc div:has(> a.csl-dc-btn),.csl-dc div:has(> a.csl-give-btn),.csl-dc div:has(> a.csl-app-ghost),.csl-dc div:has(> a[style*="border-radius:999px"]),.hero-cta,#caw div:has(> a.caw-btn){flex-direction:column!important;align-items:stretch!important}
  .csl-dc a.csl-dc-btn,.csl-dc a.csl-give-btn,.csl-dc a.csl-app-ghost,.csl-dc a[style*="border-radius:999px"],.hero-cta .btn,#caw a.caw-btn,.csl-ev-topbar a.csl-ev-back{display:flex!important;width:100%!important;box-sizing:border-box;justify-content:center!important;text-align:center}
  .csl-ev-topbar{flex-direction:column;align-items:stretch}
}
/* readability: lift the small print */
.csl-dc [style*="font-size:11px"],.csl-dc [style*="font-size: 11px"],.csl-dc [style*="font-size:12px"],.csl-dc [style*="font-size: 12px"]{font-size:14.5px!important}
.csl-dc [style*="font-size:13px"],.csl-dc [style*="font-size: 13px"],.csl-dc [style*="font-size:14px"],.csl-dc [style*="font-size: 14px"]{font-size:15.5px!important}
.csl-dc [style*="font-size:15px"],.csl-dc [style*="font-size: 15px"]{font-size:16px!important}
.csl-dc [style*="font-size:16px"],.csl-dc [style*="font-size: 16px"]{font-size:17px!important}
.csl-footer .fcol a,.csl-footer .contact,.csl-footer .tag{font-size:16.5px!important}
.csl-footer .base,.csl-footer .base a{font-size:14.5px!important}
.csl-home-ev-when{font-size:16.5px!important}.csl-home-ev-more{font-size:14.5px!important}.csl-home-ev-tag{font-size:13px!important}
#caw .caw-cap-meta span,#caw .caw-next-chip,#caw .caw-frame-hint{font-size:14px}
/* /app/ headline: never break "IMPROVED" mid-word */
.csl-app-hero h1{font-size:clamp(42px,5.6vw,92px)!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}
.csl-app-hero h1 span{white-space:nowrap}

/* ===== 2026-10-06 FOOTER: modern, large type, strong CTA ===== */
.csl-footer{background:radial-gradient(70% 60% at 85% 0%,rgba(244,124,32,.28),transparent 60%),radial-gradient(60% 50% at 0% 100%,rgba(167,159,201,.18),transparent 60%),linear-gradient(180deg,#2B2660 0%,#1B1650 100%)!important}
.csl-footer .fcta{position:relative;padding:clamp(80px,10vw,140px) clamp(20px,4vw,56px) clamp(60px,7vw,100px);border-bottom:1px solid rgba(255,255,255,.12);overflow:hidden}
.csl-footer .fcta-in{position:relative;max-width:1240px;margin:0 auto}
.csl-footer .fcta-eyebrow{display:flex;align-items:center;gap:14px;font-family:'Josefin Sans',sans-serif;font-weight:700;font-size:clamp(14px,1.3vw,17px);letter-spacing:.24em;text-transform:uppercase;color:#FFB070;margin-bottom:22px}
.csl-footer .fcta-eyebrow span{width:48px;height:2px;background:#f47c20;flex:none}
body .csl-footer .fcta-h{margin:0;font-family:'Josefin Sans',sans-serif;font-weight:300;text-transform:uppercase;font-size:clamp(52px,8.6vw,148px);line-height:.95;letter-spacing:-.02em;color:#fff!important}
body .csl-footer .fcta-h em{display:block;font-style:normal;font-weight:700;color:#f47c20;background:linear-gradient(90deg,#f47c20,#FFB070);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
body .csl-footer .fcta-p{margin:clamp(22px,3vw,34px) 0 0;max-width:640px;font-size:clamp(19px,1.7vw,24px);line-height:1.55;color:#E9E4F5!important}
.csl-footer .fcta-btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:clamp(28px,3.5vw,44px)}
body .csl-footer a.fcta-btn{display:inline-flex;align-items:center;justify-content:center;font-family:'Josefin Sans',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:clamp(15px,1.25vw,18px);padding:22px 42px 20px;border-radius:999px;text-decoration:none;transition:transform .2s,background .2s,color .2s,border-color .2s}
body .csl-footer a.fcta-primary{background:#f47c20;color:#14103A!important;box-shadow:0 18px 40px -16px rgba(244,124,32,.9)}
body .csl-footer a.fcta-primary:hover{background:#fff;transform:translateY(-3px)}
body .csl-footer a.fcta-ghost{border:2px solid rgba(255,255,255,.65);color:#fff!important}
body .csl-footer a.fcta-ghost:hover{background:#fff;color:#14103A!important;transform:translateY(-3px)}
@media(max-width:640px){.csl-footer .fcta-btns{flex-direction:column}body .csl-footer a.fcta-btn{width:100%;box-sizing:border-box}}
/* larger footer text + links */
.csl-footer .cols{padding-top:clamp(56px,6vw,90px)!important}
.csl-footer h4{font-size:15px!important;letter-spacing:.24em!important;color:#FFB070!important}
.csl-footer .fcol a{font-size:18.5px!important;font-weight:600;color:#F4EFE4!important}
.csl-footer .fcol a:hover{color:#f47c20!important}
.csl-footer .fcol li{margin-bottom:12px}
.csl-footer .tag{font-size:18px!important;line-height:1.6;color:#E9E4F5!important}
.csl-footer .contact,.csl-footer .contact a{font-size:18px!important;color:#F4EFE4!important}
.csl-footer .contact a[href^="tel"]{font-weight:800;color:#FFB070!important}
/* signup inputs: always a white field with a visible border, whatever band they sit on */
body .csl-signup .csl-su-f input{background:#fff!important;border:2px solid rgba(20,16,58,.22)!important;color:#14103A!important;border-radius:14px!important;padding:15px 18px!important;font-size:17px!important;box-shadow:0 2px 0 rgba(20,16,58,.04) inset!important;width:100%!important;min-width:0}
body .csl-signup .csl-su-f input::placeholder{color:#8a849c}
body .csl-signup .csl-su-f input:focus{border-color:#f47c20!important;box-shadow:0 0 0 4px rgba(244,124,32,.18)!important}
.csl-newsletter-form .csl-signup{background:transparent;border:0;box-shadow:none;padding:0;border-radius:0}


/* ======================================================================
   5. Mailing-list / text-updates form (.csl-signup)
   ====================================================================== */
.csl-signup{display:flex;flex-direction:column;gap:12px;margin:0;font-family:Mulish,sans-serif;text-align:left}.csl-su-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:560px){.csl-su-row{grid-template-columns:1fr}}.csl-su-f{display:flex;flex-direction:column;gap:6px}.csl-su-f span{font-family:"Josefin Sans",sans-serif;font-weight:700;font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;color:#14103A}.csl-su-f em{font-style:normal;font-weight:600;letter-spacing:.02em;text-transform:none;opacity:.7}.csl-su-f input{font:inherit;font-size:17px;padding:15px 18px;border:1.5px solid rgba(20,16,58,.18);border-radius:14px;background:#fff;color:#14103A;width:100%;box-sizing:border-box}.csl-su-f input:focus{outline:none;border-color:#f47c20;box-shadow:0 0 0 4px rgba(244,124,32,.15)}.csl-su-opt{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;color:#4a4560;cursor:pointer}.csl-su-opt input{width:22px;height:22px;flex:0 0 22px;margin-top:1px;accent-color:#f47c20}.csl-su-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}.csl-signup button[type=submit]{font-family:"Josefin Sans",sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:16px;padding:18px 28px 16px;border:0;border-radius:999px;background:#f47c20;color:#14103A;cursor:pointer;width:100%;box-shadow:0 14px 30px -14px rgba(244,124,32,.85)}.csl-signup button[type=submit]:hover{background:#14103A;color:#fff}.csl-su-status{margin:0;font-weight:700;font-size:15.5px}.csl-su-status.ok{color:#0f7d70}.csl-su-status.err{color:#b8285c}.csl-dark .csl-su-f span,.caw-list .csl-su-f span{color:#f6f1eb}.caw-list .csl-su-opt{color:rgba(246,241,235,.8)}


/* ======================================================================
   6. Phones: navy browser chrome, no grey admin bar
   ====================================================================== */
html{background:#14103A}@media(max-width:782px){#wpadminbar{display:none!important}html{margin-top:0!important}}


/* ======================================================================
   7. Homepage (cinema hero + sections) — every rule scoped with :where(body.home), zero added specificity
   ====================================================================== */
body.home{--night:#14103A;
  --night-2:#1B1650;
  --deep:#0B0824;
  --paper:#F4EFE4;
  --paper-2:#EDE6D6;
  --ink:#14103A;
  --gold:#F47C20;
  --gold-2:#FBC79A;
  --lav:#A79FC9;
  --rose:#E8756A;
  --maxw:1240px;
  --pad:clamp(20px,5vw,72px);
  --display:'Bebas Neue','Arial Narrow',sans-serif;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --body:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;}
:where(body.home) *{box-sizing:border-box}
html:has(body.home){scroll-behavior:smooth;overflow-x:clip;max-width:100%}
body.home{margin:0;background:#F4EFE4;color:#EFEBFF;font-family:var(--body);
  -webkit-font-smoothing:antialiased;overflow-x:clip;max-width:100%;line-height:1.55}
:where(body.home) *{min-width:0}
:where(body.home) img{max-width:100%;display:block}
:where(body.home) a{color:inherit;text-decoration:none}
:where(body.home) h1,:where(body.home) h2,:where(body.home) h3{margin:0;text-wrap:balance}
:where(body.home) .wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
:where(body.home) .disp{font-family:var(--display);font-weight:400;letter-spacing:.01em;line-height:.9;text-transform:uppercase}
:where(body.home) .it{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;letter-spacing:-.01em}
:where(body.home) .eyebrow{font-family:var(--body);font-weight:700;font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}
:where(body.home) .muted{color:var(--lav)}
:where(body.home) .thread{position:fixed;top:0;left:max(24px,4vw);width:2px;height:100vh;z-index:40;
  background:linear-gradient(to bottom,rgba(244,124,32,.12),rgba(244,124,32,.12));pointer-events:none}
:where(body.home) .thread::before{content:"";position:absolute;inset:0;transform-origin:top;transform:scaleY(var(--p,0));
  background:linear-gradient(to bottom,var(--gold-2),var(--gold));box-shadow:0 0 14px 1px rgba(244,124,32,.6)}
:where(body.home) .thread .bead{position:absolute;left:50%;top:calc(var(--p,0) * 100%);width:11px;height:11px;margin:-6px 0 0 -5px;border-radius:50%;
  background:var(--gold-2);box-shadow:0 0 18px 4px rgba(244,124,32,.8)}
@media(max-width:720px){:where(body.home) .thread{left:12px}}
:where(body.home) header.nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .4s,backdrop-filter .4s,border-color .4s;
  border-bottom:1px solid rgba(255,255,255,.08)}
:where(body.home) header.nav.scrolled{background:rgba(11,8,36,.82);backdrop-filter:blur(14px)}
:where(body.home) .nav .bar{display:flex;align-items:center;justify-content:space-between;height:74px;gap:24px}
:where(body.home) .brand{display:flex;align-items:center;gap:12px;font-family:var(--display);font-size:23px;letter-spacing:.04em;line-height:.85}
:where(body.home) .brand .logo{display:inline-flex;flex:0 0 auto}
:where(body.home) .brand .logo svg{height:46px;width:auto;display:block}
:where(body.home) .brand .loc{font-family:var(--body);font-weight:700;font-size:10px;line-height:1.15;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold);padding-left:14px;margin-left:2px;border-left:1px solid rgba(255,255,255,.22)}
:where(body.home) .fbrand .flogo svg{height:52px;width:auto;display:block}
:where(body.home) .menu{display:flex;align-items:center;gap:30px;font-weight:600;font-size:13.5px;letter-spacing:.02em}
:where(body.home) .menu a{color:#D9D3F2;opacity:.9;transition:color .2s}
:where(body.home) .menu a:hover{color:#fff}
:where(body.home) .btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:13px;letter-spacing:.03em;
  padding:11px 20px;border-radius:999px;transition:transform .2s,box-shadow .2s,background .2s,color .2s}
:where(body.home) .btn.give{background:var(--gold);color:#3A2405;box-shadow:0 8px 26px -8px rgba(244,124,32,.7)}
:where(body.home) .btn.give:hover{transform:translateY(-2px);box-shadow:0 14px 34px -8px rgba(244,124,32,.85)}
:where(body.home) .btn.ghost{border:1.5px solid rgba(255,255,255,.35);color:#fff}
:where(body.home) .btn.ghost:hover{border-color:var(--gold);color:var(--gold)}
:where(body.home) .btn.dark{background:var(--ink);color:#fff}
:where(body.home) .btn.dark:hover{transform:translateY(-2px)}
:where(body.home) .menu-toggle{display:none}
:where(body.home) .hamburger{display:none;width:44px;height:44px;border:1.5px solid rgba(255,255,255,.32);border-radius:12px;background:rgba(255,255,255,.04);
  align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;flex:0 0 auto;padding:0}
:where(body.home) .hamburger span{display:block;width:20px;height:2px;background:#fff;border-radius:2px;transition:transform .3s,opacity .3s}
:where(body.home) .hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
:where(body.home) .hamburger.open span:nth-child(2){opacity:0}
:where(body.home) .hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
:where(body.home) .mobile-menu{position:fixed;inset:0;z-index:49;background:rgba(11,8,36,.98);backdrop-filter:blur(10px);
  display:flex;flex-direction:column;justify-content:center;gap:4px;padding:80px var(--pad) 40px;
  opacity:0;visibility:hidden;transition:opacity .35s ease;pointer-events:none}
:where(body.home) .mobile-menu.open{opacity:1;visibility:visible;pointer-events:auto}
:where(body.home) .mobile-menu a.mlink{font-family:var(--display);font-size:clamp(30px,9vw,42px);letter-spacing:.02em;color:#fff;
  padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08);text-transform:uppercase}
:where(body.home) .mobile-menu a.mlink:active{color:var(--gold)}
:where(body.home) .mobile-menu .btn.give{margin-top:26px;align-self:flex-start;padding:15px 30px;font-size:15px}
@media(max-width:1040px){:where(body.home) .menu{display:none}
:where(body.home) .nav .headcta .btn.give{display:none}
:where(body.home) .hamburger{display:flex}}
@media(max-width:600px){:where(body.home) .nav .bar{height:60px}
:where(body.home) .brand{gap:10px}
:where(body.home) .brand .logo svg{height:34px}
:where(body.home) .brand .loc{font-size:8px;letter-spacing:.16em;padding-left:10px}}
:where(body.home) .hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;
  background:radial-gradient(120% 90% at 78% 12%,#2A2170 0%,#14103A 42%,#0D0A2A 100%)}
:where(body.home) .aura{position:absolute;inset:-20% -10% auto auto;width:min(80vw,900px);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 50% 45%,rgba(251,217,160,.55),rgba(244,124,32,.28) 30%,rgba(232,117,106,.12) 55%,transparent 70%);
  filter:blur(10px);will-change:transform;pointer-events:none}
:where(body.home) .hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(80% 70% at 50% 40%,#000,transparent 78%);pointer-events:none}
:where(body.home) .hero .wrap{position:relative;z-index:2;padding-top:110px;padding-bottom:60px}
:where(body.home) .hero h1{font-size:clamp(52px,10.5vw,150px);max-width:16ch;margin:.18em 0 .32em}
:where(body.home) .hero h1 .it{font-size:.92em;color:var(--gold)}
:where(body.home) .lede{font-size:clamp(17px,2.1vw,23px);max-width:40ch;color:#E4DEFB}
:where(body.home) .hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
:where(body.home) .hero-cta .btn{padding:15px 26px;font-size:14px}
:where(body.home) .when{margin-top:26px;font-weight:600;font-size:13.5px;letter-spacing:.04em;color:var(--lav);display:flex;gap:10px;align-items:center;flex-wrap:wrap}
:where(body.home) .dot{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px 2px rgba(244,124,32,.8)}
:where(body.home) .scrollcue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:2;font-size:10.5px;letter-spacing:.32em;
  text-transform:uppercase;color:var(--lav);display:flex;flex-direction:column;align-items:center;gap:9px}
:where(body.home) .scrollcue .line{width:1px;height:42px;background:linear-gradient(var(--gold),transparent);animation:cue 2.2s infinite}
@keyframes cue{0%{transform:scaleY(.2);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}50.1%{transform-origin:bottom}100%{transform:scaleY(.2);transform-origin:bottom}}
:where(body.home) .cinema{position:relative;height:360vh;background:var(--deep)}
:where(body.home) .cinema-stage{position:sticky;top:0;height:100vh;overflow:hidden;background:#0B0824}
:where(body.home) .layer{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;will-change:opacity,transform}
:where(body.home) .layer .lvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease}
:where(body.home) .layer .lvid.ready{opacity:1}
@media(max-width:760px){:where(body.home) .layer .lvid{display:none!important}}
@media(prefers-reduced-motion:reduce){:where(body.home) .layer .lvid{display:none!important}}
:where(body.home) #l1{opacity:1;background-image:radial-gradient(120% 90% at 78% 12%,#2A2170,#0D0A2A)}
:where(body.home) #l2{opacity:0;background-image:radial-gradient(circle at 50% 45%,#3a2a08,#0B0824)}
:where(body.home) #l3{opacity:0;background-image:radial-gradient(120% 120% at 50% 60%,#3a2a08,#0B0824)}
:where(body.home) .cinema-veil{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(11,8,36,.55) 0%,rgba(11,8,36,.05) 32%,rgba(11,8,36,.12) 60%,rgba(11,8,36,.82) 100%)}
:where(body.home) .cine-thread{position:absolute;left:50%;top:0;width:2px;height:100%;transform:translateX(-50%) scaleY(0);transform-origin:top;
  background:linear-gradient(to bottom,rgba(251,217,160,0),var(--gold-2),var(--gold),rgba(244,124,32,0));
  box-shadow:0 0 22px 3px rgba(244,124,32,.55);opacity:0;pointer-events:none}
:where(body.home) .cap{position:absolute;left:0;right:0;padding:0 var(--pad);z-index:5;pointer-events:none;opacity:0;will-change:opacity,transform}
:where(body.home) .cap .eyebrow{color:var(--gold-2);font-size:clamp(13px,1.5vw,16px);letter-spacing:.24em}
:where(body.home) .cap1{top:50%;transform:translateY(-46%);max-width:1240px;margin:0 auto;text-align:center}
:where(body.home) .cap1 h1{font-size:clamp(46px,9vw,132px);line-height:.9;max-width:18ch;margin:.2em auto 0;text-shadow:0 6px 40px rgba(0,0,0,.55)}
:where(body.home) .cap1 h1 .it{color:var(--gold)}
:where(body.home) .cap2{top:50%;transform:translateY(-50%);text-align:center}
:where(body.home) .cap2 .cap-line{font-family:var(--serif);font-style:italic;font-size:clamp(34px,6.4vw,88px);color:#fff;text-shadow:0 4px 34px rgba(0,0,0,.6);margin:0}
:where(body.home) .cap2 .cap-sub{color:#E9E3FF;max-width:34ch;margin:18px auto 0;font-size:clamp(18px,2.3vw,26px);line-height:1.5;text-shadow:0 2px 18px rgba(0,0,0,.7)}
:where(body.home) .cap3{bottom:9vh;left:0;right:0;max-width:820px;margin:0 auto;text-align:center}
:where(body.home) .cap3 h2{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(44px,8vw,104px);line-height:.86;text-shadow:0 6px 40px rgba(0,0,0,.55)}
:where(body.home) .cap3 h2 .it{color:var(--gold);text-transform:none}
:where(body.home) .cap3 .cap-sub{color:#EDE8FF;max-width:52ch;margin:16px auto 0;font-size:clamp(17px,2vw,23px);line-height:1.55;text-shadow:0 2px 20px rgba(0,0,0,.7)}
:where(body.home) .cap3 .hero-cta{margin-top:28px;pointer-events:auto;justify-content:center}
:where(body.home) .cap3 .when{margin-top:20px;justify-content:center;font-size:clamp(14px,1.6vw,17px)}
:where(body.home) .cinema .scrollcue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:6}
@media(prefers-reduced-motion:reduce){:where(body.home) .cinema{height:100vh}
:where(body.home) #l1{opacity:1}
:where(body.home) .cinema-veil{background:linear-gradient(180deg,rgba(11,8,36,.5),rgba(11,8,36,.2) 40%,rgba(11,8,36,.85))}
:where(body.home) .cap1{opacity:1}
:where(body.home) .cap2,:where(body.home) .cap3,:where(body.home) .cine-thread,:where(body.home) .cinema .scrollcue{display:none}}
:where(body.home) .reveal{transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
html:has(body.home).js .reveal:not(.in){opacity:0;transform:translateY(34px)}
:where(body.home) .reveal.in{opacity:1;transform:none}
:where(body.home) .reveal.d1{transition-delay:.08s}
:where(body.home) .reveal.d2{transition-delay:.16s}
:where(body.home) .reveal.d3{transition-delay:.24s}
:where(body.home) .reveal.d4{transition-delay:.32s}
:where(body.home) section{position:relative}
:where(body.home) .movement{padding:clamp(84px,12vw,150px) 0}
:where(body.home) .tag{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px}
:where(body.home) .tag .n{font-family:var(--display);font-size:15px;color:var(--gold)}
:where(body.home) .tag .t{font-weight:700;font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--lav)}
:where(body.home) .manifesto{background:var(--deep)}
:where(body.home) .manifesto h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,5.4vw,74px);line-height:1.08;max-width:20ch}
:where(body.home) .manifesto .word{display:inline-block;opacity:.14;transition:opacity .5s,color .5s;margin-right:.24em}
:where(body.home) .manifesto .word.lit{opacity:1}
:where(body.home) .manifesto .word.acc{font-style:italic;color:var(--gold)}
:where(body.home) .manifesto .small{margin-top:30px;max-width:52ch;color:var(--lav);font-size:clamp(19px,2.4vw,25px);line-height:1.6}
:where(body.home) .values{background:var(--paper);color:var(--ink)}
:where(body.home) .values .tag .t{color:#8A7F5E}
:where(body.home) .values .head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:34px}
:where(body.home) .values h2{font-size:clamp(38px,6vw,86px)}
:where(body.home) .values h2 .it{color:var(--gold)}
:where(body.home) .values .intro{max-width:40ch;color:#5B5470;font-size:19px;line-height:1.6}
:where(body.home) .vrow{display:grid;grid-template-columns:64px minmax(200px,1fr) 2fr;gap:clamp(14px,3vw,44px);align-items:baseline;
  padding:26px 0;border-top:1px solid rgba(20,16,58,.16);position:relative;transition:background .3s}
:where(body.home) .vrow:last-child{border-bottom:1px solid rgba(20,16,58,.16)}
:where(body.home) .vrow:hover{background:rgba(244,124,32,.09)}
:where(body.home) .vrow .rn{font-family:var(--display);font-size:20px;color:var(--gold)}
:where(body.home) .vrow .vn{font-family:var(--display);font-size:clamp(30px,4.6vw,58px);line-height:.9}
:where(body.home) .vrow .vd{color:#4C4666;font-size:clamp(15px,1.6vw,18px);font-family:var(--serif);font-style:italic}
:where(body.home) .vrow .sweep{position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--gold);transition:width .5s}
:where(body.home) .vrow:hover .sweep{width:100%}
@media(max-width:760px){:where(body.home) .vrow{grid-template-columns:38px 1fr;gap:6px 16px}
:where(body.home) .vrow .vd{grid-column:1/-1}}
:where(body.home) .sunday{background:linear-gradient(180deg,#14103A,#1A1550)}
:where(body.home) .sunday .grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,5vw,64px);align-items:center}
:where(body.home) .sunday h2{font-size:clamp(40px,7vw,104px);margin-bottom:18px}
:where(body.home) .sunday h2 .it{color:var(--gold);display:block;font-size:.5em;line-height:1.1;margin-top:.1em}
:where(body.home) .sunday p{color:#DBD5F5;max-width:46ch;font-size:19px;line-height:1.65}
:where(body.home) .sunday .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
:where(body.home) .player{position:relative;aspect-ratio:16/10;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.12);
  background:radial-gradient(120% 120% at 30% 20%,#2A2170,#0E0A2C);display:flex;align-items:center;justify-content:center}
:where(body.home) .player .badge{position:absolute;top:14px;left:14px;display:flex;align-items:center;gap:8px;font-weight:700;font-size:11px;
  letter-spacing:.16em;background:rgba(232,117,106,.16);border:1px solid rgba(232,117,106,.5);color:#FFC9C2;padding:6px 12px;border-radius:999px}
:where(body.home) .player .live{width:8px;height:8px;border-radius:50%;background:var(--rose);animation:pulse 1.6s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
:where(body.home) .player .play{width:74px;height:74px;border-radius:50%;background:var(--gold);color:#3A2405;display:flex;align-items:center;justify-content:center;
  box-shadow:0 12px 40px -8px rgba(244,124,32,.7);transition:transform .3s}
:where(body.home) .player:hover .play{transform:scale(1.08)}
:where(body.home) .player .cap{position:absolute;bottom:14px;left:14px;right:14px;font-size:12.5px;color:#CFC8ED;display:flex;justify-content:space-between}
:where(body.home) .events{background:var(--paper-2);color:var(--ink)}
:where(body.home) .events .head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:36px}
:where(body.home) .events h2{font-size:clamp(36px,5.4vw,76px)}
:where(body.home) .events h2 .it{color:var(--gold)}
:where(body.home) .ecards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
:where(body.home) .ecard{background:#fff;border-radius:16px;overflow:hidden;border:1px solid rgba(20,16,58,.08);transition:transform .3s,box-shadow .3s}
:where(body.home) .ecard:hover{transform:translateY(-6px);box-shadow:0 24px 50px -22px rgba(20,16,58,.4)}
:where(body.home) .ecard .top{aspect-ratio:16/10;position:relative;display:flex;align-items:flex-end;padding:16px}
:where(body.home) .ecard .kicker{position:absolute;top:14px;left:14px;font-weight:700;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  background:rgba(20,16,58,.72);color:#fff;padding:5px 11px;border-radius:999px}
:where(body.home) .ecard .date{font-family:var(--display);font-size:34px;color:#fff;line-height:.8;text-shadow:0 2px 18px rgba(0,0,0,.4)}
:where(body.home) .ecard .date span{display:block;font-family:var(--body);font-weight:700;font-size:11px;letter-spacing:.18em}
:where(body.home) .ecard .body{padding:18px 18px 22px}
:where(body.home) .ecard h3{font-family:var(--display);font-size:24px;letter-spacing:.01em;margin-bottom:6px}
:where(body.home) .ecard .meta{color:#6B6488;font-size:13px;font-weight:600}
:where(body.home) .ecard .price{margin-top:12px;display:inline-flex;font-weight:700;font-size:12px;color:var(--gold);letter-spacing:.02em}
@media(max-width:860px){:where(body.home) .ecards{grid-template-columns:1fr;max-width:460px}}
:where(body.home) .rent{background:var(--deep);overflow:hidden;position:relative}
:where(body.home) .rent .glow{position:absolute;right:-10%;top:-10%;width:60vw;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(244,124,32,.16),transparent 62%);pointer-events:none}
:where(body.home) .rent .head{max-width:22ch}
:where(body.home) .rent h2{font-size:clamp(44px,8.6vw,132px);margin:16px 0 20px}
:where(body.home) .rent h2 .it{color:var(--gold)}
:where(body.home) .rent .sub{color:#D9D3F2;max-width:52ch;font-size:19px;line-height:1.65}
:where(body.home) .rent .uses{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 40px}
:where(body.home) .rent .uses span{font-size:12.5px;font-weight:600;letter-spacing:.04em;color:#CFC8ED;border:1px solid rgba(255,255,255,.16);
  padding:8px 14px;border-radius:999px}
:where(body.home) .venues{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:8px}
:where(body.home) .venue{border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:26px;position:relative;overflow:hidden;
  background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,0));transition:border-color .3s,transform .3s}
:where(body.home) .venue:hover{border-color:rgba(244,124,32,.55);transform:translateY(-4px)}
:where(body.home) .venue .vt{font-family:var(--display);font-size:30px;letter-spacing:.02em}
:where(body.home) .venue .vspecs{display:flex;gap:24px;margin:16px 0;flex-wrap:wrap}
:where(body.home) .venue .vspecs b{font-family:var(--display);font-size:30px;color:var(--gold);display:block;line-height:.9}
:where(body.home) .venue .vspecs small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--lav)}
:where(body.home) .venue ul{margin:0;padding:0;list-style:none;color:#CFC8ED;font-size:13.5px}
:where(body.home) .venue li{padding:5px 0 5px 20px;position:relative}
:where(body.home) .venue li::before{content:"";position:absolute;left:0;top:11px;width:7px;height:7px;border-radius:50%;background:var(--gold)}
:where(body.home) .rent .rcta{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px;align-items:center}
:where(body.home) .rent .rnote{color:var(--lav);font-size:13px}
@media(max-width:820px){:where(body.home) .venues{grid-template-columns:1fr}
:where(body.home) .sunday .grid{grid-template-columns:1fr}}
:where(body.home) .give-sec{background:radial-gradient(120% 120% at 50% 0%,#2A2170,#14103A 60%);text-align:center}
:where(body.home) .give-sec .eyebrow{color:var(--gold-2)}
:where(body.home) .give-sec h2{font-size:clamp(40px,8vw,118px);margin:14px auto 18px;max-width:16ch}
:where(body.home) .give-sec h2 .it{color:var(--gold)}
:where(body.home) .give-sec p{color:#DBD5F5;max-width:44ch;margin:0 auto;font-size:19px;line-height:1.65}
:where(body.home) .give-sec .btn{margin-top:30px;padding:17px 34px;font-size:15px}
:where(body.home) .affirm{font-family:var(--serif);font-style:italic;font-size:clamp(20px,3vw,30px);color:#EFEAFF;max-width:26ch;margin:56px auto 0;line-height:1.35}
:where(body.home) .affirm .q{color:var(--gold)}
:where(body.home) footer{background:var(--deep);border-top:1px solid rgba(255,255,255,.08);padding:70px 0 40px}
:where(body.home) .fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}
:where(body.home) footer h4{font-weight:700;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 16px}
:where(body.home) footer a{display:block;color:#CFC8ED;font-size:14px;padding:5px 0;transition:color .2s}
:where(body.home) footer a:hover{color:#fff}
:where(body.home) .fbrand .disp{font-size:30px;letter-spacing:.04em}
:where(body.home) .fbrand p{color:var(--lav);font-size:13.5px;max-width:30ch;margin:14px 0 0}
:where(body.home) .fnews{display:flex;gap:8px;margin-top:14px}
:where(body.home) .fnews input{flex:1;min-width:0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:999px;
  padding:12px 16px;color:#fff;font-size:13px}
:where(body.home) .fnews input::placeholder{color:var(--lav)}
:where(body.home) .fbot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:54px;padding-top:26px;
  border-top:1px solid rgba(255,255,255,.08);color:var(--lav);font-size:12.5px}
:where(body.home) .socials{display:flex;gap:12px}
:where(body.home) .socials a{border:1px solid rgba(255,255,255,.18);width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0}
:where(body.home) .socials a:hover{border-color:var(--gold);color:var(--gold)}
@media(max-width:860px){:where(body.home) .fgrid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){:where(body.home) .fgrid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){:where(body.home) *{animation:none!important;transition:none!important}
:where(body.home) .reveal{opacity:1;transform:none}
:where(body.home) .manifesto .word{opacity:1}}
:where(body.home) .cinema{height:300vh}
:where(body.home) #l1{background-image:url(/wp-content/uploads/2026/10/csl-hero-sunrise.jpg)!important;background-color:#f1c79a}
:where(body.home) #l3{background-image:url(/wp-content/uploads/2026/09/csl-hero-sanctuary.jpg)}
:where(body.home) #l1 .sun,:where(body.home) #l1 .sun-glow,:where(body.home) #l1 .sun-fg,:where(body.home) #l1 .sun-bloom{position:absolute;pointer-events:none}
:where(body.home) #l1 .sun{border-radius:50%;background:radial-gradient(circle closest-side,#fffaf0 0,#ffe7a0 38%,#ffc85a 74%,#ffad3f 94%,rgba(255,160,60,0) 100%);box-shadow:0 0 40px 14px rgba(255,236,170,.9),0 0 120px 50px rgba(255,190,90,.45)}
:where(body.home) #l1 .sun-glow{border-radius:50%;background:radial-gradient(circle closest-side,rgba(255,232,170,.85) 0,rgba(255,196,110,.5) 25%,rgba(255,170,90,.18) 55%,rgba(255,160,80,0) 100%);mix-blend-mode:screen}
:where(body.home) #l1 .sun-bloom{border-radius:50%;background:radial-gradient(circle closest-side,rgba(255,246,215,.7) 0,rgba(255,214,150,.28) 40%,rgba(255,200,130,0) 100%);mix-blend-mode:screen}
:where(body.home) #l1 .sun-fg{background:url(/wp-content/uploads/2026/10/csl-hero-sunrise-fg.png) 0 0/100% 100% no-repeat}
:where(body.home) .cinema-veil{background:linear-gradient(180deg,rgba(20,16,58,.38),rgba(20,16,58,0) 22%,rgba(20,16,58,0) 52%,rgba(20,16,58,.62))!important}
:where(body.home) .cine-thread{display:none!important}
:where(body.home) .cap1{top:auto!important;bottom:6vh;transform:none}
:where(body.home) .cap1 h1{font-size:clamp(34px,4.6vw,76px)!important;max-width:24ch!important;text-shadow:0 4px 30px rgba(20,16,58,.75),0 1px 3px rgba(20,16,58,.5)!important}
@media(max-width:760px){:where(body.home) .cap1{bottom:14vh}}
:where(body.home) .a6cls-1{fill: none;}
:where(body.home) .a6cls-2{fill: #f68f4c;}
:where(body.home) .a6cls-3{fill: #f58126;}
:where(body.home) .a6cls-4{fill: #f5904c;}
:where(body.home) .a6cls-5{fill: #f79f62;}
:where(body.home) .a6cls-6{fill: #f48f4b;}
:where(body.home) .a6cls-7{fill: #f89f62;}
:where(body.home) .a6cls-8{fill: #f5904a;}
:where(body.home) .a6cls-9{fill: #f9be90;}
:where(body.home) .a6cls-10{fill: #f79e63;}
:where(body.home) .a6cls-11{fill: #f68f4a;}
:where(body.home) .a6cls-12{fill: #f79f60;}
:where(body.home) .a6cls-13{fill: #f5812a;}
:where(body.home) .a6cls-14{fill: #fab98a;}
:where(body.home) .a6cls-15{fill: #f6a161;}
:where(body.home) .a6cls-16{fill: #fbd0b2;}
:where(body.home) .a6cls-17{fill: #f5904b;}
:where(body.home) .a6cls-18{fill: #f9b98b;}
:where(body.home) .a6cls-19{fill: #f8a162;}
:where(body.home) .a6cls-20{fill: #f8a161;}
:where(body.home) .a6cls-21{fill: #f79e5f;}
:where(body.home) .a6cls-22{fill: #f9ba8d;}
:where(body.home) .a6cls-23{fill: #f58f4a;}
:where(body.home) .a6cls-24{fill: #f58129;}
:where(body.home) .a6cls-25{fill: #f58f4b;}
:where(body.home) .a6cls-26{fill: #fac398;}
:where(body.home) .a6cls-27{fill: #f8ad77;}
:where(body.home) .a6cls-28{fill: #f7a060;}
:where(body.home) .a6cls-29{fill: #f58f4c;}
:where(body.home) .a6cls-30{fill: #f69350;}
:where(body.home) .a6cls-31{fill: #f68b38;}
:where(body.home) .a6cls-32{fill: #f6904c;}
:where(body.home) .a6cls-33{fill: #fff;}
:where(body.home) .a6cls-34{fill: #f89e5e;}
:where(body.home) .a6cls-35{fill: #f48e43;}
:where(body.home) .a6cls-36{fill: #f9b682;}
:where(body.home) .a6cls-37{fill: #f89250;}
:where(body.home) .a6cls-38{fill: #f47d1f;}
:where(body.home) .a6cls-39{fill: #f9b788;}
:where(body.home) .a6cls-40{fill: #f57c1f;}
:where(body.home) .a6cls-41{fill: #f79b58;}
:where(body.home) .a6cls-42{fill: #f8a061;}
:where(body.home) .a6cls-43{fill: #f58e4b;}
:where(body.home) .a6cls-44{fill: #f57d20;}
:where(body.home) .a6cls-45{fill: #fac8a4;}
:where(body.home) .a6cls-46{fill: #f6914e;}
:where(body.home) .a6cls-47{fill: #f57d1f;}
:where(body.home) .a6cls-48{fill: #f79f61;}
:where(body.home) .csl-arts-feat .caf-glow{position:absolute;right:-12vw;top:-18vw;width:56vw;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(244,124,32,.28) 0%,rgba(244,124,32,0) 62%);pointer-events:none}
:where(body.home) .csl-arts-feat .caf-glow2{position:absolute;left:-18vw;bottom:-26vw;width:50vw;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(120,90,255,.18) 0%,rgba(120,90,255,0) 62%);pointer-events:none}
:where(body.home) .csl-arts-feat .caf-top{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(28px,5vw,90px);align-items:end;margin-bottom:clamp(44px,5vw,72px)}
:where(body.home) .csl-arts-feat .caf-h{margin:0;padding-top:.08em;font-family:'Josefin Sans',sans-serif;font-weight:300;font-size:clamp(42px,6.2vw,108px);line-height:.98;letter-spacing:-.02em;text-transform:uppercase;color:#14103A}
:where(body.home) .csl-arts-feat .caf-h b{font-weight:700;color:#f47c20}
:where(body.home) .csl-arts-feat .caf-p{margin:0 0 30px;font-family:'Mulish',sans-serif;font-size:clamp(17px,1.35vw,20px);line-height:1.65;color:rgba(20,16,58,.74);max-width:520px}
:where(body.home) .csl-arts-feat .caf-ctas{display:flex;flex-wrap:wrap;gap:14px}
:where(body.home) .csl-arts-feat .caf-btn{display:inline-flex;align-items:center;gap:10px;font-family:'Josefin Sans',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:14px;padding:17px 32px 15px;border-radius:999px;text-decoration:none;transition:transform .2s,background .2s,border-color .2s,color .2s}
:where(body.home) .csl-arts-feat .caf-btn:hover{transform:translateY(-2px)}
:where(body.home) .csl-arts-feat .caf-solid{background:#f47c20;color:#14103A;border:1px solid #f47c20}
:where(body.home) .csl-arts-feat .caf-solid:hover{background:#ff8f38}
:where(body.home) .csl-arts-feat .caf-ghost{background:transparent;color:#14103A;border:1px solid rgba(20,16,58,.42)}
:where(body.home) .csl-arts-feat .caf-ghost:hover{border-color:#14103A;background:rgba(20,16,58,.05)}
:where(body.home) .csl-arts-feat .caf-sub{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px;padding-top:26px;border-top:1px solid rgba(20,16,58,.12);font-family:'Josefin Sans',sans-serif;font-size:13px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:rgba(20,16,58,.55)}
:where(body.home) .csl-arts-feat .caf-sub a{color:#f47c20;text-decoration:none}
:where(body.home) .csl-arts-feat .caf-sub a:hover{color:#14103A}
@media(max-width:900px){:where(body.home) .csl-arts-feat .caf-top{grid-template-columns:1fr;align-items:start}}
@media(max-width:560px){:where(body.home) .csl-arts-feat .caf-btn{flex:1 1 100%;justify-content:center}
:where(body.home) .csl-arts-feat .caf-sub{font-size:11px;letter-spacing:.18em}}
:where(body.home) .csl-arts-feat .caf-h{color:#14103A}
:where(body.home) .csl-arts-feat .caf-h b{color:#f47c20}
:where(body.home) .csl-arts-feat .caf-p{color:#4a4668}
:where(body.home) .csl-arts-feat .caf-sub{color:#6a6488;border-top-color:rgba(20,16,58,.14)}
:where(body.home) .csl-arts-feat .caf-sub a{color:#b3500a}
:where(body.home) .csl-arts-feat .caf-sub a:hover{color:#14103A}
:where(body.home) .csl-arts-feat .caf-ghost{color:#14103A;border-color:rgba(20,16,58,.38)}
:where(body.home) .csl-arts-feat .caf-ghost:hover{border-color:#14103A;background:rgba(20,16,58,.05)}
:where(body.home) .csl-arts-feat .caf-glow{background:radial-gradient(circle,rgba(244,124,32,.14) 0%,rgba(244,124,32,0) 62%)}
:where(body.home) .csl-arts-feat .caf-glow2{display:none}
:where(body.home) .csl-dc-val{background:#ECE4D4;color:#14103A;border:1px solid #ddd2bc}
:where(body.home) .csl-dc-val.active{background:#f47c20;color:#14103A;border-color:#f47c20}


/* ======================================================================
   8. Homepage: "Coming to our stage" Arts cards
   ====================================================================== */
.csl-arts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2vw,30px);align-items:start}@media(max-width:1100px){.csl-arts-grid{grid-template-columns:repeat(2,1fr)}}.csl-arts-card{position:relative;display:flex;flex-direction:column;text-decoration:none;color:#14103A}.csl-arts-poster{position:relative;display:block;aspect-ratio:1/1;border-radius:18px;overflow:hidden;background:#0f0c1e;box-shadow:0 24px 60px -28px rgba(20,16,58,.45);border:1px solid rgba(20,16,58,.08);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s}.csl-arts-poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;max-width:none;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.csl-arts-card:hover .csl-arts-poster{transform:translateY(-6px);border-color:#f47c20;box-shadow:0 34px 70px -24px rgba(244,124,32,.45)}.csl-arts-card:hover .csl-arts-poster img{transform:scale(1.05)}.csl-arts-tag{position:absolute;left:14px;top:14px;font-family:"Josefin Sans",sans-serif;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#fff;background:rgba(15,12,30,.72);padding:7px 12px 5px;border-radius:999px;backdrop-filter:blur(4px)}.csl-arts-date{position:absolute;right:14px;top:14px;min-width:54px;padding:8px 8px 6px;box-sizing:border-box;border-radius:12px;background:#f47c20;color:#14103A;display:flex;flex-direction:column;align-items:center;line-height:1;font-family:"Josefin Sans",sans-serif;box-shadow:0 8px 20px -8px rgba(0,0,0,.5)}.csl-arts-date b{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.csl-arts-date i{font-style:normal;font-size:24px;font-weight:700;margin-top:3px;white-space:nowrap}.csl-arts-date.wide i{font-size:20px}.csl-arts-meta{display:flex;flex-direction:column;gap:8px;padding:20px 4px 0}.csl-arts-when{font-family:"Mulish",sans-serif;font-size:14px;font-weight:800;color:#c95f0e;letter-spacing:.02em}body .csl-arts-card .csl-arts-title{font-family:"Josefin Sans",sans-serif;font-weight:700;font-size:clamp(18px,1.5vw,22px);line-height:1.18;text-transform:uppercase;letter-spacing:.02em;color:#14103A}.csl-arts-times{list-style:none;margin:2px 0 4px;padding:0;display:flex;flex-direction:column;gap:4px;font-family:"Mulish",sans-serif;font-size:14px;color:#3b3631}.csl-arts-times li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid rgba(20,16,58,.1)}.csl-arts-times li:last-child{border-bottom:0}.csl-arts-times b{font-weight:800;color:#14103A;white-space:nowrap}body .csl-arts-card .csl-arts-more{font-family:"Josefin Sans",sans-serif;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#14103A;transition:color .25s}body .csl-arts-card:hover .csl-arts-more{color:#f47c20}@media(max-width:560px){.csl-arts-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -20px;padding:4px 20px 14px;scroll-padding:0 20px;-webkit-overflow-scrolling:touch;scrollbar-width:none;align-items:flex-start}.csl-arts-grid::-webkit-scrollbar{display:none}.csl-arts-card{flex:0 0 78vw;max-width:340px;scroll-snap-align:start}.csl-arts-date{right:12px;top:12px}.csl-arts-date b{font-size:12px}.csl-arts-date i{font-size:22px}.csl-arts-tag{left:12px;top:12px;font-size:12px;letter-spacing:.16em;padding:7px 11px 5px}.csl-arts-meta{padding-top:16px;gap:8px}.csl-arts-when{font-size:14px}body .csl-arts-card .csl-arts-title{font-size:18px}body .csl-arts-card .csl-arts-more{font-size:13px;letter-spacing:.14em}.csl-arts-feat .caf-sub{font-size:12px;letter-spacing:.16em;gap:12px}.csl-arts-feat .caf-sub a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;margin:-10px -4px;font-size:14px;letter-spacing:.14em;white-space:nowrap}}
.csl-arts-swipe,.csl-arts-dots,.csl-arts-all{display:none}@media(max-width:560px){.csl-arts-card[data-reveal]{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}.csl-arts-grid{align-items:stretch!important}.csl-arts-card{height:auto}.csl-arts-swipe{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 0 10px}.csl-arts-arrow{width:52px;height:52px;flex:0 0 52px;border-radius:50%;border:2px solid #14103A;background:#fff;color:#14103A;font-size:22px;font-weight:800;line-height:1;cursor:pointer}.csl-arts-arrow:active{background:#f47c20;border-color:#f47c20}.csl-arts-hint{font-family:"Josefin Sans",sans-serif;font-weight:700;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:#14103A;text-align:center}.csl-arts-hint b{display:inline-block;color:#f47c20;animation:csl-nudge 1.4s ease-in-out infinite}@keyframes csl-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}.csl-arts-dots{display:flex;justify-content:center;gap:8px;margin:4px 0 20px}.csl-arts-dots i{width:9px;height:9px;border-radius:50%;background:rgba(20,16,58,.2);transition:background .2s,width .2s}.csl-arts-dots i.on{background:#f47c20;width:24px;border-radius:9px}.csl-arts-all{display:block}.csl-arts-all a{display:flex!important;width:100%;justify-content:center;box-sizing:border-box}}


/* ======================================================================
   9. Homepage: classes & workshops cards
   ====================================================================== */
.csl-home-evs{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2vw,30px)}@media(max-width:1000px){.csl-home-evs{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.csl-home-evs{grid-template-columns:1fr}}.csl-home-ev{text-decoration:none;color:inherit;display:flex;flex-direction:column;background:#111;border:1px solid #242424;border-radius:18px;overflow:hidden;transition:transform .25s,border-color .25s}.csl-home-ev:hover{transform:translateY(-4px);border-color:#f47c20}.csl-home-ev-media{position:relative;aspect-ratio:1/1;overflow:hidden;background:#0a0a0a}.csl-home-ev-media::before{content:"";position:absolute;inset:-20px;background:var(--ev-img) center/cover;filter:blur(22px) brightness(.55);transform:scale(1.1)}.csl-home-ev-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;max-width:none}.csl-home-ev-tag{position:absolute;left:18px;top:16px;font-family:"Josefin Sans",sans-serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.5);padding:6px 12px;border-radius:999px;backdrop-filter:blur(3px)}.csl-home-ev-body{padding:24px 24px 28px;display:flex;flex-direction:column;gap:10px;flex:1}.csl-home-ev-title{font-family:"Josefin Sans",sans-serif;font-weight:600;font-size:22px;line-height:1.15;color:#fff}.csl-home-ev-when{font-size:15px;font-weight:700;color:#f47c20}.csl-home-ev-more{margin-top:auto;padding-top:6px;font-family:"Josefin Sans",sans-serif;font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#b8b2ad}.csl-home-ev:hover .csl-home-ev-more{color:#fff}.csl-home-ev-title{hyphens:none;-webkit-hyphens:none;overflow-wrap:normal;word-break:normal}.csl-nowrap{white-space:nowrap}.csl-home-evs-more{display:none}@media(max-width:640px){.csl-home-ev:nth-child(n+5){display:none}.csl-home-evs-more{display:flex;justify-content:center;margin-top:28px}.csl-home-evs-more a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;width:100%;box-sizing:border-box;padding:16px 28px;border-radius:999px;background:#f47c20;color:#14103A;font-family:"Josefin Sans",sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:14px;text-decoration:none}}


/* ======================================================================
   10. Homepage: floating "Next up" Arts card over the hero
   ====================================================================== */
.csl-hn{position:absolute;right:clamp(16px,3vw,44px);top:clamp(200px,26vh,260px);z-index:6;width:min(360px,calc(100vw - 32px));box-sizing:border-box;background:rgba(15,12,30,.58);-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:16px 16px 14px;color:#fff;box-shadow:0 24px 60px -20px rgba(0,0,0,.65);font-family:'Josefin Sans',sans-serif;transition:opacity .4s,transform .4s}
.csl-hn[hidden]{display:none}
.csl-hn.is-off{opacity:0;transform:translateY(12px);pointer-events:none}
.csl-hn-top{display:flex;gap:14px;align-items:center;color:#fff;text-decoration:none}
.csl-hn-top img{width:76px;height:76px;flex:none;border-radius:12px;object-fit:cover;box-shadow:0 10px 26px rgba(0,0,0,.4)}
.csl-hn-top>span{display:flex;flex-direction:column;min-width:0}
.csl-hn-chip{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#FFB070;margin-bottom:6px}
.csl-hn-chip i{width:7px;height:7px;border-radius:50%;background:#f47c20;animation:cslHnP 2s infinite}
@keyframes cslHnP{0%{box-shadow:0 0 0 0 rgba(244,124,32,.7)}70%{box-shadow:0 0 0 9px rgba(244,124,32,0)}100%{box-shadow:0 0 0 0 rgba(244,124,32,0)}}
.csl-hn-title{font-weight:600;font-size:20px;line-height:1.15;color:#fff}
.csl-hn-when{margin-top:5px;font-size:15px;font-weight:600;color:rgba(255,255,255,.85)}
.csl-hn-cd{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0 12px}
.csl-hn-cd div{background:rgba(255,255,255,.08);border-radius:10px;padding:8px 4px 6px;text-align:center}
.csl-hn-cd b{display:block;font-size:24px;font-weight:600;line-height:1;color:#fff}
.csl-hn-cd span{display:block;margin-top:4px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.csl-hn-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}
.csl-hn-price{font-family:'Mulish',sans-serif;font-weight:700;font-size:15px;color:#FFB070}
.csl-hn-btn{display:inline-flex;align-items:center;gap:8px;background:#f47c20;color:#14103A!important;text-decoration:none;font-weight:700;font-size:14px;letter-spacing:.14em;text-transform:uppercase;padding:12px 18px 10px;border-radius:999px;white-space:nowrap}
.csl-hn-btn:hover{background:#ff9a4d}
.csl-hn-x{position:absolute;top:6px;right:8px;width:30px;height:30px;border:0;background:transparent;color:rgba(255,255,255,.7);font-size:22px;line-height:1;cursor:pointer;border-radius:50%}
.csl-hn-x:hover{color:#fff;background:rgba(255,255,255,.1)}
.csl-hn-btn{flex:1 1 auto;justify-content:center}
@media(max-width:760px){.csl-hn{left:12px;right:12px;top:88px;width:auto;padding:10px 12px;border-radius:16px}.csl-hn-top img{width:52px;height:52px;border-radius:10px}.csl-hn-chip{font-size:11px;margin-bottom:3px}.csl-hn-title{font-size:16px}.csl-hn-when{font-size:13px;margin-top:2px}.csl-hn-cd{display:none}.csl-hn-foot{margin-top:10px}.csl-hn-price{display:none}.csl-hn-btn{padding:10px 14px 8px;font-size:13px}.csl-hn-x{top:2px;right:4px}}

/* ======================================================================
   11. Site-wide fixes (2026-10-07 onward) — add new rules here
   ====================================================================== */
/* Footer CTA "Come home this Sunday." — same heading font on every page (inner pages were falling back to the serif) */
.csl-footer .fcta-h em{font-family:'Josefin Sans',sans-serif!important;font-style:normal!important;font-weight:700!important}
/* Mailing-list form: the "(optional — for text updates)" hint in the body font, not a serif */
.csl-signup em,.csl-signup i,.csl-su-f span em,.csl-su-f span i{font-family:'Mulish',sans-serif!important;font-style:italic;font-weight:500;letter-spacing:0;text-transform:none}
/* Menu jitter fix: on regular inner pages the sticky menu shrank on scroll (210px -> 121px) and pulled the page up,
   which flipped it back and forth near the top. The menu is now fixed everywhere and the page keeps a spacer of its
   full height (--csl-nav-h, measured by the master JS). */
body.csl-themed:not(.home):not(.csl-designed){padding-top:var(--csl-nav-h,210px)}
body.csl-themed:not(.home):not(.csl-designed) .csl-nav{position:fixed;left:0;right:0;top:0}
body.admin-bar.csl-themed:not(.home):not(.csl-designed) .csl-nav{top:32px}
@media(max-width:960px){body.csl-themed:not(.home):not(.csl-designed){padding-top:var(--csl-nav-h,92px)}}
@media(max-width:782px){body.admin-bar.csl-themed:not(.home):not(.csl-designed) .csl-nav{top:0}}
/* Homepage hero spotlight (SuperEvents → Hero spotlight): 1–2 cards in a positioned stack, nudged by --hn-x / --hn-y */
.csl-hn-stack{position:absolute;z-index:6;display:flex;flex-direction:column;gap:12px;width:min(360px,calc(100vw - 32px));transform:translate(var(--hn-x,0px),var(--hn-y,0px));transition:opacity .4s}
.csl-hn-stack[hidden]{display:none}
.csl-hn-stack.is-off{opacity:0;pointer-events:none}
.csl-hn-stack .csl-hn{position:relative;top:auto;right:auto;bottom:auto;left:auto;width:100%;transform:none}
.csl-hn-stack.pos-top-right{right:clamp(16px,3vw,44px);top:clamp(200px,26vh,260px)}
.csl-hn-stack.pos-top-left{left:clamp(16px,3vw,44px);top:clamp(200px,26vh,260px)}
.csl-hn-stack.pos-middle-right{right:clamp(16px,3vw,44px);top:50%;margin-top:-90px}
.csl-hn-stack.pos-middle-left{left:clamp(16px,3vw,44px);top:50%;margin-top:-90px}
.csl-hn-stack.pos-bottom-right{right:clamp(16px,3vw,44px);bottom:clamp(84px,12vh,130px)}
.csl-hn-stack.pos-bottom-left{left:clamp(16px,3vw,44px);bottom:clamp(84px,12vh,130px)}
.csl-hn-stack>.csl-hn-x{position:absolute;top:6px;right:8px;z-index:2}
@media(max-width:760px){
  .csl-hn-stack{left:12px!important;right:12px!important;width:auto;margin-top:0!important;transform:none;gap:8px}
  .csl-hn-stack.mob-top{top:88px!important;bottom:auto!important}
  .csl-hn-stack.mob-bottom{top:auto!important;bottom:max(18px,env(safe-area-inset-bottom))!important}
  .csl-hn-stack.mob-hide{display:none!important}
}

/* 2026-10-07 Adam: "make the spinning logo smaller" — the hero sun spiral
   (img[data-spin], screen-blended, inline width:min(62vw,820px)) covered half
   of each interior hero. The spin JS re-serializes style= with spaces
   ("mix-blend-mode: screen"), so match on "screen" alone; the older
   [style*="mix-blend-mode:screen"] rule above never matched.
   Adam 2026-10-07: then "move it down 1/2 in the hero" → vertically centred
   via top (not transform: the spin JS owns transform). */
img[data-spin][style*="screen"]{width:min(30vw,400px)!important;right:-3vw!important;top:calc(50% - min(15vw,200px))!important;opacity:.5!important}
@media (max-width:700px){img[data-spin][style*="screen"]{width:36vw!important;right:-6vw!important;top:calc(50% - 18vw)!important;opacity:.45!important}}

/* 2026-10-07 recurring events: "See other nights" line above the description */
.csl-ev-other{margin:0 0 22px;padding:14px 18px;border-radius:14px;background:#fff;border:1px solid rgba(20,16,58,.1);font-size:17px;line-height:1.5;color:#3b3631}
.csl-ev-other a{color:#b3500a;font-weight:700;text-decoration:none}
.csl-ev-other a:hover{text-decoration:underline}
/* 2026-10-07 event page buttons (Buttons field / CSL_Events_Content) + compact facts list */
.csl-ev-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
.csl-ev-buttons .csl-ev-btn.lg{width:auto;margin:0;border-radius:999px;padding:15px 26px}
.csl-ev-buttons .csl-ev-btn.ghost{background:transparent;border:1.5px solid #14103A;color:#14103A}
.csl-ev-buttons .csl-ev-btn.ghost:hover{background:#14103A;color:#fff}
.csl-ev-desc ul.csl-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 28px;list-style:none;padding:0;margin:0 0 1em}
.csl-ev-desc ul.csl-facts li{position:relative;padding-left:20px;line-height:1.5}
.csl-ev-desc ul.csl-facts li:before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;border-radius:50%;background:#F47C20}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
/* Arts page: "Now casting" auditions section ([csl_arts_auditions]) */
#caw .caw-aud-sec{background:linear-gradient(180deg,#14103A 0%,#0f0c1e 100%);color:#f6f1eb}
#caw .caw-aud-head{max-width:1240px;margin:0 auto clamp(30px,4vw,48px)}
#caw .caw-aud-head .caw-h2 b{color:var(--o);font-weight:700}
#caw .caw-aud-lead{margin:22px 0 0;max-width:680px;font-size:clamp(18px,1.45vw,21px);line-height:1.6;color:rgba(246,241,235,.85)}
#caw .caw-aud-sec .se-aud{max-width:1240px}
#caw .caw-aud-sec .se-aud-card{border:0}
#caw .caw-aud-all{max-width:1240px;margin:28px auto 0}
#caw .caw-aud-all a{font-family:'Josefin Sans',sans-serif;font-weight:700;font-size:15px;letter-spacing:.2em;text-transform:uppercase;color:#FFB070;text-decoration:none}
#caw .caw-aud-sec .se-aud-list .se-aud-card{grid-template-columns:minmax(200px,340px) minmax(0,1fr)}
#caw .caw-aud-sec .se-aud-list .se-aud-body{padding:clamp(22px,2.6vw,36px);gap:12px}
#caw .caw-aud-sec .se-aud-list .se-aud-btn{align-self:flex-start;padding-left:32px;padding-right:32px}
@media(max-width:620px){#caw .caw-aud-sec .se-aud-list .se-aud-card{grid-template-columns:1fr}#caw .caw-aud-sec .se-aud-list .se-aud-btn{align-self:stretch}}
/* Homepage "Now casting" band ([csl_home_auditions]) */
.csl-home-aud{background:#14103A;color:#f6f1eb;padding:clamp(70px,9vw,130px) clamp(20px,4vw,56px)}
.csl-home-aud-in{max-width:1240px;margin:0 auto}
.csl-home-aud-head{margin-bottom:clamp(28px,4vw,44px)}
.csl-home-aud-eye{display:flex;align-items:center;gap:14px;font-family:'Josefin Sans',sans-serif;font-size:15px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:#FFB070;margin-bottom:16px}
.csl-home-aud-eye span{width:44px;height:2px;background:#f47c20}
body.home .csl-home-aud h2.csl-home-aud-h{margin:0;font-family:'Josefin Sans',sans-serif;font-weight:300;text-transform:uppercase;font-size:clamp(40px,5.4vw,84px);line-height:.95;letter-spacing:-.02em;color:#fff}
.csl-home-aud-h b{font-weight:700;color:#f47c20}
body.home .csl-home-aud p.csl-home-aud-p{margin:20px 0 0;max-width:640px;font-size:clamp(17px,1.4vw,20px);line-height:1.6;color:rgba(246,241,235,.85)}
.csl-home-aud .se-aud-list .se-aud-card{grid-template-columns:minmax(200px,320px) minmax(0,1fr)}
.csl-home-aud .se-aud-list .se-aud-body{padding:clamp(22px,2.6vw,34px);gap:12px}
.csl-home-aud .se-aud-list .se-aud-btn{align-self:flex-start;padding-left:30px;padding-right:30px}
@media(max-width:620px){.csl-home-aud .se-aud-list .se-aud-card{grid-template-columns:1fr}.csl-home-aud .se-aud-list .se-aud-btn{align-self:stretch}}
.csl-home-aud-all{margin:26px 0 0}.csl-home-aud-all a{font-family:'Josefin Sans',sans-serif;font-weight:700;font-size:15px;letter-spacing:.2em;text-transform:uppercase;color:#FFB070;text-decoration:none}

/* ======================================================================
   12. Blog — /blog/ (page-blog.html), category archives (category.html), single posts (single-post.html)
   Markup: theme inc/csl-blog.php (2026-10-07, HANDOFF §39). Writer classes: .csl-faq, .csl-callout,
   .csl-callout.is-navy, .csl-keyfacts, .csl-button. Everything prefixed .csl-themed to beat the
   generic interior-page type rules (body.csl-themed h1/h2/p/a/em).
   ====================================================================== */
body.csl-blog-view,body.csl-post-view{background:#fbf7f2}
body.csl-blog-view .wp-site-blocks,body.csl-post-view .wp-site-blocks{padding-top:0;padding-bottom:0}
body.csl-blog-view .wp-site-blocks>*,body.csl-post-view .wp-site-blocks>*{margin-block-start:0}
.csl-themed main.csl-post,.csl-themed main.csl-blog-main{margin:0;padding:0;max-width:none;font-family:'Mulish',sans-serif;color:#14103A}
.csl-themed main.csl-post>*,.csl-themed main.csl-blog-main>*,.csl-themed .csl-post-wrap>*,.csl-themed .csl-post-article>*{margin-block-start:0}
.csl-blog-hero,.csl-blog-chips,.csl-post-hero,.csl-related,.csl-post-cta{position:relative;width:100vw;margin-left:calc(50% - 50vw);box-sizing:border-box}
.csl-blog *,.csl-post *{box-sizing:border-box}

/* shared: eyebrow with thin rules, chips, buttons */
.csl-themed .csl-eyebrow{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 0 20px;max-width:none;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:14px;line-height:1.2;letter-spacing:.32em;text-transform:uppercase;color:#f47c20}
.csl-themed .csl-eyebrow>span{flex:0 0 40px;height:1px;background:currentColor}
.csl-themed .csl-eyebrow a{color:inherit}
.csl-themed .csl-eyebrow-sm{margin:0 0 10px;max-width:none;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:12.5px;line-height:1.3;letter-spacing:.26em;text-transform:uppercase;color:#c45f10}
.csl-themed .csl-chip{position:relative;z-index:2;display:inline-block;padding:6px 12px 5px;border-radius:999px;background:rgba(244,124,32,.12);color:#a34d0b;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:12px;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;transition:background .2s,color .2s}
.csl-themed a.csl-chip:hover{background:#f47c20;color:#fff}
.csl-themed .csl-btn-solid,.csl-themed .csl-btn-line,.csl-themed .csl-btn-ghost,.csl-themed .csl-prose a.csl-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:15px 28px 13px;border-radius:999px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:14.5px;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;text-align:center;transition:transform .25s,background .25s,color .25s,border-color .25s}
.csl-themed .csl-btn-solid,.csl-themed .csl-prose a.csl-button{background:#f47c20;color:#fff;box-shadow:0 10px 24px rgba(244,124,32,.28)}
.csl-themed .csl-btn-solid:hover,.csl-themed .csl-prose a.csl-button:hover{background:#e06c12;color:#fff;transform:translateY(-2px)}
.csl-themed .csl-btn-line{border:1.5px solid rgba(20,16,58,.28);color:#14103A}
.csl-themed .csl-btn-line:hover{border-color:#14103A;background:#14103A;color:#fff}
.csl-themed .csl-btn-ghost{border:1.5px solid rgba(246,241,235,.55);color:#f6f1eb}
.csl-themed .csl-btn-ghost:hover{background:#f6f1eb;color:#14103A}

/* ---- blog index + category hero ---- */
.csl-themed .csl-blog-hero{overflow:hidden;background:radial-gradient(120% 90% at 50% 0%,#241d63 0%,#14103A 58%,#0e0b2b 100%);color:#f6f1eb;text-align:center;padding:clamp(64px,9vw,128px) 16px clamp(60px,8vw,108px)}
.csl-themed .csl-blog-hero::before{content:"";position:absolute;right:-140px;top:-160px;width:min(60vw,560px);aspect-ratio:1;background:var(--csl-sun) center/contain no-repeat;opacity:.13;pointer-events:none}
.csl-themed .csl-blog-hero-in{position:relative;max-width:980px;margin:0 auto}
.csl-themed .csl-blog-hero .csl-blog-title{margin:0;font-family:'Josefin Sans',sans-serif;font-weight:300;text-transform:uppercase;font-size:clamp(42px,7.6vw,104px);line-height:.98;letter-spacing:-.02em;color:#f6f1eb;text-wrap:balance}
.csl-themed .csl-blog-hero .csl-blog-title em{font-family:inherit;font-style:normal;font-weight:600;color:#f47c20}
.csl-themed .csl-blog-hero .csl-blog-dek{max-width:640px;margin:24px auto 0;font-size:clamp(17px,1.5vw,20px);line-height:1.6;color:rgba(246,241,235,.84)}

/* ---- category chips ---- */
.csl-themed .csl-blog-chips{background:#fbf7f2;border-bottom:1px solid rgba(20,16,58,.08);padding:22px 16px}
.csl-themed .csl-blog-chips ul{list-style:none;margin:0 auto;padding:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:1200px}
.csl-themed .csl-blog-chips a{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:11px 20px 10px;border-radius:999px;border:1px solid rgba(20,16,58,.16);background:#fff;color:#14103A;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:13px;line-height:1;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;transition:border-color .2s,color .2s,background .2s}
.csl-themed .csl-blog-chips a .n{font-family:'Mulish',sans-serif;font-weight:700;font-size:12px;letter-spacing:0;color:#8a83a6}
.csl-themed .csl-blog-chips a:hover{border-color:#f47c20;color:#c45f10}
.csl-themed .csl-blog-chips a[aria-current]{background:#14103A;border-color:#14103A;color:#fff}
.csl-themed .csl-blog-chips a[aria-current] .n{color:#FBC79A}

/* ---- index body: lead card + grid + pager ---- */
.csl-themed .csl-blog-in{max-width:1200px;margin:0 auto;padding:clamp(40px,6vw,72px) clamp(16px,4vw,40px) clamp(70px,9vw,120px)}
.csl-themed .csl-blog-grid{display:grid;grid-template-columns:1fr;gap:clamp(22px,2.6vw,34px)}
@media(min-width:640px){.csl-themed .csl-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1000px){.csl-themed .csl-blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.csl-themed .csl-card{position:relative;display:flex;padding:0;border:0;flex-direction:column;min-width:0;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 1px 0 rgba(20,16,58,.06),0 14px 34px -18px rgba(20,16,58,.28);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.csl-themed .csl-card:hover{transform:translateY(-4px);box-shadow:0 1px 0 rgba(20,16,58,.06),0 26px 48px -22px rgba(20,16,58,.38)}
.csl-themed .csl-card-media{aspect-ratio:3/2;overflow:hidden;background:#ECE4D4}
.csl-themed .csl-card-media img{display:block;width:100%;height:100%;object-fit:cover;max-width:none;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.csl-themed .csl-card:hover .csl-card-media img{transform:scale(1.04)}
.csl-themed .csl-card-body{display:flex;flex-direction:column;flex:1;padding:22px 24px 24px}
.csl-themed .csl-card-top{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}
.csl-themed .csl-card-flag{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#14103A}
.csl-themed .csl-card-title{margin:0 0 10px;font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(22px,2vw,25px);line-height:1.18;letter-spacing:0;text-transform:none;color:#14103A;text-wrap:balance}
.csl-themed .csl-card-title a{color:inherit;text-decoration:none}
.csl-themed .csl-card-title a::after{content:"";position:absolute;inset:0;z-index:1}
.csl-themed .csl-card:hover .csl-card-title a{color:#c45f10}
.csl-themed .csl-card-title a:focus-visible{outline:none}
.csl-themed .csl-card:focus-within{outline:3px solid #f47c20;outline-offset:3px}
.csl-themed .csl-card .csl-card-excerpt{margin:0 0 18px;max-width:none;font-size:16px;line-height:1.6;color:#4a4568;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.csl-themed .csl-card .csl-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:auto 0 0;max-width:none;font-size:14px;line-height:1.4;color:#7a7396}
.csl-themed .csl-card--lead{margin-bottom:clamp(30px,4vw,48px)}
@media(min-width:900px){
  .csl-themed .csl-card--lead{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:stretch}
  .csl-themed .csl-card--lead .csl-card-media{aspect-ratio:auto;min-height:420px}
  .csl-themed .csl-card--lead .csl-card-body{padding:clamp(32px,4vw,56px);justify-content:center}
}
.csl-themed .csl-card--lead .csl-card-title{font-size:clamp(28px,3.3vw,44px);line-height:1.1;margin-bottom:16px}
.csl-themed .csl-card--lead .csl-card-excerpt{font-size:17.5px;-webkit-line-clamp:4;margin-bottom:24px}
.csl-themed .csl-card-go{margin-left:auto;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:#c45f10}
@media(max-width:560px){.csl-themed .csl-card-go{display:none}}
.csl-themed .csl-blog-empty{text-align:center;margin:20px auto;max-width:none}
.csl-themed .csl-blog-pager{margin-top:clamp(40px,5vw,64px)}
.csl-themed .csl-blog-pager ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.csl-themed .csl-blog-pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:46px;padding:0 16px;border-radius:999px;border:1px solid rgba(20,16,58,.16);background:#fff;color:#14103A;font-weight:700;font-size:15px;text-decoration:none}
.csl-themed .csl-blog-pager a.page-numbers:hover{border-color:#f47c20;color:#c45f10}
.csl-themed .csl-blog-pager .page-numbers.current{background:#14103A;border-color:#14103A;color:#fff}
.csl-themed .csl-blog-pager .page-numbers.dots{border:0;background:none}

/* ---- single post: hero + contained featured image ---- */
.csl-themed .csl-post-hero{background:radial-gradient(120% 100% at 50% 0%,#241d63 0%,#14103A 60%,#0e0b2b 100%);color:#f6f1eb;text-align:center;padding:clamp(52px,7vw,96px) 16px clamp(150px,15vw,210px);overflow:hidden}
.csl-themed .csl-post-hero::before{content:"";position:absolute;left:-160px;bottom:-200px;width:min(58vw,520px);aspect-ratio:1;background:var(--csl-sun) center/contain no-repeat;opacity:.1;pointer-events:none}
.csl-themed .csl-post-hero-in{position:relative;max-width:980px;margin:0 auto}
.csl-themed .csl-crumbs ol{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 0;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:13px;line-height:1.3;letter-spacing:.24em;text-transform:uppercase}
.csl-themed .csl-crumbs li+li::before{content:"/";margin:0 14px;color:rgba(246,241,235,.35)}
.csl-themed .csl-crumbs a{color:#f47c20;text-decoration:none}
.csl-themed .csl-crumbs a:hover{color:#FBC79A}
.csl-themed .csl-post-hero .csl-post-title{margin:0 auto;max-width:22ch;font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(36px,5.4vw,66px);line-height:1.07;letter-spacing:-.005em;text-transform:none;color:#f6f1eb;text-wrap:balance}
.csl-themed .csl-post-hero .csl-post-meta{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;margin:26px auto 0;max-width:none;font-size:15.5px;line-height:1.4;color:rgba(246,241,235,.78)}
.csl-themed .csl-post-by{color:#f6f1eb;font-weight:700}
.csl-themed .csl-post-dot{width:4px;height:4px;border-radius:50%;background:#f47c20}
.csl-themed .csl-post-figure{position:relative;z-index:2;max-width:1072px;margin:calc(-1 * clamp(112px,12vw,170px)) auto 0;padding:0 16px;text-align:center}
.csl-themed .csl-post-figure img{display:block;margin:0 auto;width:auto;max-width:100%;height:auto;max-height:min(640px,78vh);border-radius:22px;box-shadow:0 30px 70px -30px rgba(11,8,36,.6)}
.csl-themed .csl-post-figure figcaption{margin-top:12px;font-size:14px;color:#7a7396}

/* ---- single post: reading column + sticky sidebar ---- */
.csl-themed .csl-post-wrap{max-width:1200px;margin:0 auto;padding:clamp(40px,5vw,68px) clamp(16px,4vw,40px) clamp(56px,7vw,90px)}
.csl-themed .csl-post-article{max-width:720px;margin:0 auto;min-width:0}
.csl-themed .csl-post-side{display:none}
@media(min-width:1100px){
  .csl-themed .csl-post-wrap{display:grid;grid-template-columns:minmax(0,720px) 330px;justify-content:center;column-gap:clamp(48px,5vw,80px);align-items:start}
  .csl-themed .csl-post-article{margin:0}
  .csl-themed .csl-post-side{display:block;position:sticky;top:calc(var(--wp-admin--admin-bar--height,0px) + 112px)}
}
.csl-themed .csl-side-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 1px 0 rgba(20,16,58,.06),0 24px 48px -26px rgba(20,16,58,.4)}
.csl-themed .csl-side-media{aspect-ratio:4/3;overflow:hidden;background:#ECE4D4}
.csl-themed .csl-side-media img{display:block;width:100%;height:100%;object-fit:cover;max-width:none}
.csl-themed .csl-side-body{padding:24px 26px 26px;display:flex;flex-direction:column;gap:10px}
.csl-themed .csl-side-body .csl-eyebrow-sm{margin:0}
.csl-themed .csl-side-body .csl-side-h{margin:0 0 4px;max-width:none;font-family:'DM Serif Display',Georgia,serif;font-size:25px;line-height:1.15;color:#14103A}
.csl-themed .csl-side-list{list-style:none;margin:0 0 10px;padding:0}
.csl-themed .csl-side-list li{position:relative;padding:9px 0 9px 30px;border-top:1px solid rgba(20,16,58,.08);font-weight:700;font-size:16px;line-height:1.4;color:#2b2650}
.csl-themed .csl-side-list li::before{content:"";position:absolute;left:2px;top:13px;width:16px;height:9px;border-left:2.5px solid #f47c20;border-bottom:2.5px solid #f47c20;transform:rotate(-45deg)}
.csl-themed .csl-side-body .csl-btn-solid,.csl-themed .csl-side-body .csl-btn-line{width:100%;padding-left:16px;padding-right:16px}

/* ---- article typography ---- */
.csl-themed .csl-prose{font-family:'Mulish',sans-serif;font-size:19px;line-height:1.78;color:#2b2650}
.csl-themed .csl-prose>*{margin-block-start:0}
.csl-themed .csl-prose p{max-width:none;margin:0 0 1.3em;font-size:19px;line-height:1.78}
.csl-themed .csl-prose>p:first-of-type{font-size:21px;line-height:1.7;color:#14103A}
.csl-themed .csl-prose h2{margin:2.1em 0 .65em;font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(28px,3.2vw,38px);line-height:1.15;letter-spacing:0;text-transform:none;color:#14103A;scroll-margin-top:calc(var(--wp-admin--admin-bar--height,0px) + 120px);text-wrap:balance}
.csl-themed .csl-prose h2::before{content:"";display:block;width:38px;height:2px;margin-bottom:18px;background:#f47c20}
.csl-themed .csl-prose h3{margin:1.8em 0 .5em;font-family:'Mulish',sans-serif;font-weight:800;font-size:22px;line-height:1.3;letter-spacing:-.01em;color:#14103A;scroll-margin-top:calc(var(--wp-admin--admin-bar--height,0px) + 120px)}
.csl-themed .csl-prose h4{margin:1.6em 0 .5em;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:14px;letter-spacing:.22em;text-transform:uppercase;color:#c45f10}
.csl-themed .csl-prose a{color:#b4570f;text-decoration:underline;text-decoration-color:rgba(244,124,32,.55);text-decoration-thickness:1.5px;text-underline-offset:3px}
.csl-themed .csl-prose a:hover{color:#14103A;text-decoration-color:#14103A}
.csl-themed .csl-prose em{font-family:inherit;font-style:italic;color:inherit}
.csl-themed .csl-prose strong{font-weight:800;color:#14103A}
.csl-themed .csl-prose ul,.csl-themed .csl-prose ol{margin:0 0 1.4em;padding-left:1.4em}
.csl-themed .csl-prose li{margin:0 0 .55em;padding-left:.25em;line-height:1.7}
.csl-themed .csl-prose li::marker{color:#f47c20;font-weight:800}
.csl-themed .csl-prose li>ul,.csl-themed .csl-prose li>ol{margin:.55em 0 0}
.csl-themed .csl-prose blockquote{margin:2em 0;padding:26px 30px;border:0;border-left:4px solid #f47c20;border-radius:0 18px 18px 0;background:#fff;box-shadow:0 14px 34px -24px rgba(20,16,58,.35);font-family:'DM Serif Display',Georgia,serif;font-style:normal;font-size:clamp(21px,2.2vw,25px);line-height:1.45;color:#14103A}
.csl-themed .csl-prose blockquote p{font-size:inherit;line-height:inherit;margin:0 0 .6em}
.csl-themed .csl-prose blockquote p:last-child{margin:0}
.csl-themed .csl-prose blockquote cite{display:block;margin-top:12px;font-family:'Josefin Sans',sans-serif;font-style:normal;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:#c45f10}
.csl-themed .csl-prose img{border-radius:16px;height:auto}
.csl-themed .csl-prose figure{margin:2em 0}
.csl-themed .csl-prose figcaption{margin-top:10px;font-size:14.5px;line-height:1.5;color:#7a7396;text-align:center}
.csl-themed .csl-prose hr{margin:2.6em auto;width:80px;border:0;border-top:2px solid rgba(244,124,32,.6)}
.csl-themed .csl-table-wrap,.csl-themed .csl-prose .wp-block-table{margin:2em 0;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:16px;border:1px solid rgba(20,16,58,.1);background:#fff}
.csl-themed .wp-block-table .csl-table-wrap{margin:0;border:0;border-radius:0}
.csl-themed .csl-prose table{width:100%;min-width:520px;border-collapse:collapse;font-size:16px;line-height:1.5}
.csl-themed .csl-prose th{background:#14103A;color:#fff;text-align:left;padding:14px 16px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;vertical-align:bottom}
.csl-themed .csl-prose td{padding:13px 16px;border-top:1px solid rgba(20,16,58,.08);vertical-align:top;color:#2b2650}
.csl-themed .csl-prose tbody tr:nth-child(even) td{background:#fbf7f2}
.csl-themed .csl-prose caption{caption-side:bottom;padding:10px;font-size:14px;color:#7a7396}

/* writer components */
.csl-themed .csl-prose .csl-callout{margin:2em 0;padding:22px 26px;border-left:4px solid #f47c20;border-radius:0 18px 18px 0;background:#fff3e6}
.csl-themed .csl-prose .csl-callout>:last-child{margin-bottom:0}
.csl-themed .csl-prose .csl-callout p{font-size:18px}
.csl-themed .csl-prose .csl-callout.is-navy{background:#14103A;color:rgba(246,241,235,.9)}
.csl-themed .csl-prose .csl-callout.is-navy strong,.csl-themed .csl-prose .csl-callout.is-navy h3{color:#fff}
.csl-themed .csl-prose .csl-callout.is-navy a{color:#FBC79A}
.csl-themed .csl-prose .csl-keyfacts{margin:2em 0;padding:26px 28px;border-radius:20px;background:#fff;border:1px solid rgba(20,16,58,.1);box-shadow:0 14px 34px -26px rgba(20,16,58,.4)}
.csl-themed .csl-prose .csl-keyfacts>:first-child{margin-top:0}
.csl-themed .csl-prose .csl-keyfacts>:last-child{margin-bottom:0}
.csl-themed .csl-prose .csl-keyfacts h3::before{content:none}
.csl-themed .csl-prose .csl-keyfacts ul{list-style:none;padding:0}
.csl-themed .csl-prose .csl-keyfacts li{position:relative;padding-left:32px}
.csl-themed .csl-prose .csl-keyfacts li::before{content:"";position:absolute;left:3px;top:.55em;width:15px;height:8px;border-left:2.5px solid #f47c20;border-bottom:2.5px solid #f47c20;transform:rotate(-45deg)}
.csl-themed .csl-prose p.csl-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin:2em 0}

/* auto table of contents (server-rendered when a post has >= 4 H2s; JS adds the active-section highlight) */
.csl-themed .csl-prose .csl-toc{margin:0 0 2.4em;background:#fff;border:1px solid rgba(20,16,58,.1);border-radius:20px;box-shadow:0 14px 34px -28px rgba(20,16,58,.45)}
.csl-themed .csl-toc summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;cursor:pointer;list-style:none}
.csl-themed .csl-toc summary::-webkit-details-marker{display:none}
.csl-themed .csl-toc summary::after{content:"";flex:0 0 9px;height:9px;border-right:2px solid #14103A;border-bottom:2px solid #14103A;transform:rotate(45deg) translate(-2px,-2px);transition:transform .25s}
.csl-themed .csl-toc details[open] summary::after{transform:rotate(-135deg) translate(-2px,-2px)}
.csl-themed .csl-toc-eyebrow{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:13px;letter-spacing:.26em;text-transform:uppercase;color:#c45f10}
.csl-themed .csl-toc-count{margin-left:auto;font-size:14px;color:#8a83a6}
.csl-themed .csl-prose .csl-toc ol{list-style:none;margin:0;padding:0 22px 16px;counter-reset:csltoc}
.csl-themed .csl-prose .csl-toc li{counter-increment:csltoc;display:flex;gap:14px;margin:0;padding:9px 0;border-top:1px solid rgba(20,16,58,.07);line-height:1.45}
.csl-themed .csl-prose .csl-toc li::before{content:counter(csltoc,decimal-leading-zero);flex:0 0 22px;padding-top:2px;font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:13px;color:#f47c20}
.csl-themed .csl-prose .csl-toc a{color:#14103A;text-decoration:none;font-size:16.5px;transition:color .2s}
.csl-themed .csl-prose .csl-toc a:hover,.csl-themed .csl-prose .csl-toc a.is-active{color:#c45f10}
.csl-themed .csl-prose .csl-toc a.is-active{font-weight:700}

/* FAQ: <section class="csl-faq"><h2>…</h2><details><summary>Q</summary><p>A</p></details>…</section> */
.csl-themed .csl-prose .csl-faq{margin:3em 0 1em}
.csl-themed .csl-prose .csl-faq details{border-bottom:1px solid rgba(20,16,58,.12)}
.csl-themed .csl-prose .csl-faq details:first-of-type{border-top:1px solid rgba(20,16,58,.12)}
.csl-themed .csl-prose .csl-faq summary{position:relative;display:block;padding:20px 52px 20px 0;cursor:pointer;list-style:none;font-weight:800;font-size:19px;line-height:1.4;color:#14103A}
.csl-themed .csl-prose .csl-faq summary::-webkit-details-marker{display:none}
.csl-themed .csl-prose .csl-faq summary::before,.csl-themed .csl-prose .csl-faq summary::after{content:"";position:absolute;right:13px;top:50%;width:14px;height:2px;margin-top:-1px;background:#f47c20;border-radius:2px;transition:transform .3s}
.csl-themed .csl-prose .csl-faq summary::after{transform:rotate(90deg)}
.csl-themed .csl-prose .csl-faq details[open] summary::after{transform:rotate(0deg)}
.csl-themed .csl-prose .csl-faq summary:hover{color:#c45f10}
.csl-themed .csl-prose .csl-faq summary:focus-visible{outline:3px solid #f47c20;outline-offset:2px;border-radius:6px}
.csl-themed .csl-prose .csl-faq details>:not(summary){margin:0 52px 1em 0;font-size:18px}
.csl-themed .csl-prose .csl-faq details>:last-child{padding-bottom:10px}

/* last updated + About the Center (EEAT) */
.csl-themed .csl-post-article .csl-post-updated{margin:2.6em 0 0;padding-top:18px;border-top:1px solid rgba(20,16,58,.12);max-width:none;font-size:15px;line-height:1.4;color:#7a7396}
.csl-themed .csl-about-box{display:flex;gap:22px;align-items:flex-start;margin:22px 0 0;padding:28px 30px;border-radius:22px;background:#F4EFE4;border:1px solid rgba(20,16,58,.08)}
.csl-themed .csl-about-mark{flex:0 0 60px;height:60px;border-radius:50%;background:#14103A var(--csl-sun) center/72% no-repeat}
.csl-themed .csl-about-box .csl-about-p{margin:0 0 12px;max-width:none;font-size:16.5px;line-height:1.65;color:#2b2650}
.csl-themed .csl-about-box .csl-about-nap{margin:0;max-width:none;font-size:15px;line-height:1.6;color:#4a4568}
.csl-themed .csl-about-box .csl-about-nap a{color:#b4570f;font-weight:700}
@media(max-width:560px){.csl-themed .csl-about-box{flex-direction:column;padding:24px 22px}.csl-themed .csl-about-mark{flex-basis:auto;width:52px;height:52px}}

/* related posts */
.csl-themed .csl-related{background:#F4EFE4;padding:clamp(64px,8vw,104px) clamp(16px,4vw,40px)}
.csl-themed .csl-related-in{max-width:1200px;margin:0 auto}
.csl-themed .csl-related .csl-related-h{margin:0 auto clamp(30px,4vw,48px);text-align:center;text-transform:none;letter-spacing:0;font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(32px,4vw,48px);line-height:1.1;color:#14103A;text-wrap:balance}
.csl-themed .csl-related .csl-related-all{margin:clamp(30px,4vw,44px) 0 0;max-width:none;text-align:center}
.csl-themed .csl-related .csl-related-all a{font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:#c45f10}

/* full-width venue CTA band (venue posts) */
.csl-themed .csl-post-cta{overflow:hidden;background:#14103A;color:#f6f1eb;text-align:center;padding:clamp(80px,10vw,140px) 16px}
.csl-themed .csl-post-cta-bg{position:absolute;inset:0}
.csl-themed .csl-post-cta-bg img{width:100%;height:100%;object-fit:cover;max-width:none;opacity:.32}
.csl-themed .csl-post-cta-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,16,58,.55),rgba(20,16,58,.92))}
.csl-themed .csl-post-cta-in{position:relative;max-width:860px;margin:0 auto}
.csl-themed .csl-post-cta .csl-post-cta-h{margin:0;font-family:'Josefin Sans',sans-serif;font-weight:300;text-transform:uppercase;font-size:clamp(36px,5.6vw,76px);line-height:1;letter-spacing:-.02em;color:#f6f1eb;text-wrap:balance}
.csl-themed .csl-post-cta .csl-post-cta-h em{font-family:inherit;font-style:normal;font-weight:600;color:#f47c20}
.csl-themed .csl-post-cta .csl-post-cta-p{max-width:620px;margin:24px auto 0;font-size:clamp(17px,1.5vw,19px);line-height:1.65;color:rgba(246,241,235,.84)}
.csl-themed .csl-post-cta-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:34px}

@media(max-width:600px){
  .csl-themed .csl-prose,.csl-themed .csl-prose p{font-size:18px}
  .csl-themed .csl-prose>p:first-of-type{font-size:19.5px}
  .csl-themed .csl-prose .csl-faq summary{font-size:18px}
  .csl-themed .csl-prose .csl-faq details>:not(summary){margin-right:0}
  .csl-themed .csl-prose blockquote{padding:22px 22px}
  .csl-themed .csl-post-figure img{border-radius:16px}
  .csl-themed .csl-post-cta-btns>a{width:100%}
  .csl-themed .csl-eyebrow{font-size:12.5px;letter-spacing:.26em;gap:12px}
  .csl-themed .csl-eyebrow>span{flex-basis:24px}
}
/* related: 1–2 posts stay centered instead of hugging the left column */
@media(min-width:640px){.csl-themed .csl-related .csl-blog-grid{grid-template-columns:repeat(auto-fit,minmax(280px,370px));justify-content:center}}

/* 13. Rent Our Space — city planning guides (links to the venue-rental blog series). Scoped under .csl-dc + !important to beat the designed-page type resets. */
body.csl-themed .csl-dc .csl-cityguides{background:#fbf7f2;color:#14103A;padding:clamp(64px,8vw,110px) clamp(20px,4vw,56px)}
body.csl-themed .csl-dc .csl-cityguides .csl-cityguides-in{max-width:1200px;margin:0 auto;text-align:center}
body.csl-themed .csl-dc .csl-cityguides p.csl-cityguides-eyebrow{font-family:'Josefin Sans',sans-serif!important;font-size:14px!important;letter-spacing:.3em!important;text-transform:uppercase!important;color:#b3500a!important;font-weight:700!important;margin:0 0 14px!important;line-height:1.4!important}
body.csl-themed .csl-dc .csl-cityguides h2{font-family:'Josefin Sans',sans-serif!important;font-weight:300!important;text-transform:uppercase!important;letter-spacing:-.01em!important;font-size:clamp(30px,3.6vw,52px)!important;line-height:1.05!important;margin:0 0 18px!important;color:#14103A!important}
body.csl-themed .csl-dc .csl-cityguides p.csl-cityguides-lead{max-width:720px;margin:0 auto 34px!important;font-size:clamp(17px,1.3vw,19px)!important;line-height:1.7!important;color:#3b3631!important}
body.csl-themed .csl-dc .csl-cityguides p.csl-cityguides-lead a{color:#b3500a!important;font-weight:700}
body.csl-themed .csl-dc .csl-cityguides ul.csl-cityguides-list{list-style:none!important;margin:0!important;padding:0!important;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;text-align:left}
body.csl-themed .csl-dc .csl-cityguides ul.csl-cityguides-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0!important;background:#fff;border:1px solid rgba(20,16,58,.08);border-radius:12px;padding:12px 16px!important;font-size:16px!important;line-height:1.3!important}
body.csl-themed .csl-dc .csl-cityguides ul.csl-cityguides-list li::before{content:none!important}
body.csl-themed .csl-dc .csl-cityguides ul.csl-cityguides-list a{color:#14103A!important;font-weight:700!important;text-decoration:none!important;font-size:16px!important}
body.csl-themed .csl-dc .csl-cityguides ul.csl-cityguides-list a:hover{color:#b3500a!important}
body.csl-themed .csl-dc .csl-cityguides ul.csl-cityguides-list span{font-size:13px!important;color:#8a847e!important;white-space:nowrap}

/* Arts patron: a lone tier after the featured one spans the row (Youth tier removed 2026-10-07) */
#caw .caw-tiers>.caw-tier-feat+.caw-tier:last-child{grid-column:1/-1}
