/* Helena — v5 preview (Iris, Amber Marquee / Fraunces + Jost). PLACEHOLDER BUILD */
@font-face{font-family:Fraunces;src:url(fonts/fraunces.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Fraunces;src:url(fonts/fraunces-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:Jost;src:url(fonts/jost.woff2) format("woff2");font-weight:100 900;font-display:swap}
@view-transition{navigation:auto}
:root{--bg:#1A1210;--surface:#2A1C14;--text:#FFEECE;--muted:#E6D3B3;--gold:#DEAC54;--link:#F0C878;--focus:#FFD678;--line:#46342A;--err:#FF9E8A;
--serif:Fraunces,Georgia,serif;--sans:Jost,system-ui,sans-serif;--ease:cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:400 1rem/1.65 var(--sans);-webkit-font-smoothing:antialiased}
body.fade-in{animation:pagein .6s var(--ease) both}body.fade-out{opacity:0;transition:opacity .35s var(--ease)}
@keyframes pagein{from{opacity:0}to{opacity:1}}
h1,h2,h3,.serif{font-family:var(--serif);font-optical-sizing:auto;font-variation-settings:"SOFT" 0,"WONK" 0;line-height:1.08;margin:0}
h1{font-weight:400;font-size:2.25rem}h2{font-weight:500;font-size:1.75rem}h3{font-weight:500;font-size:1.25rem}
em{font-style:italic;font-weight:400}
a{color:var(--link);text-decoration:none}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-999px;top:8px;background:var(--gold);color:var(--bg);padding:.6rem 1rem;z-index:99}.skip:focus{left:8px}
.wrap{width:min(1200px,100% - 2.5rem);margin-inline:auto}
.label{font:500 .8125rem/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--link);margin:0 0 1rem}
.muted{color:var(--muted)}
.ph-note{font:500 .8125rem/1.4 var(--sans);color:var(--muted);border:1px dashed var(--line);padding:.5rem .8rem;display:inline-block;margin:1rem 0}
/* links with arrow + animated underline */
.tlink{font-weight:500;background:linear-gradient(var(--focus),var(--focus)) 0 100%/0 1px no-repeat;transition:background-size .35s var(--ease),color .25s;padding-bottom:2px;display:inline-block}
.tlink:hover,.tlink:focus-visible{background-size:100% 1px;color:var(--focus)}
.tlink .arr{display:inline-block;transition:transform .3s var(--ease)}.tlink:hover .arr{transform:translateX(4px)}
/* buttons */
.btns{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 1.6rem;border-radius:4px;font:500 1rem var(--sans);border:1.5px solid var(--gold);cursor:pointer;position:relative;overflow:hidden;transition:transform .25s var(--ease),background-color .25s,color .25s}
.btn--p{background:var(--gold);color:var(--bg)}.btn--p:hover{background:var(--focus);border-color:var(--focus)}
.btn--s{background:transparent;color:var(--link)}.btn--s:hover{color:var(--bg);background:var(--gold)}
.btn:hover{transform:translateY(-2px)}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,238,206,.18) 50%,transparent 70%);transform:translateX(-120%)}
.btn:hover::after{transform:translateX(120%);transition:transform .7s var(--ease)}
/* header */
.hdr{position:sticky;top:0;z-index:100;background:rgba(26,18,16,.94);border-bottom:1px solid transparent;transition:border-color .3s}
.hdr::before{content:"";position:absolute;inset:0;z-index:-1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}
.hdr .wrap{position:relative;z-index:2}
.hdr.scrolled{border-color:var(--line)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.wordmark{font:500 1.5rem var(--serif);color:var(--text);background:linear-gradient(100deg,var(--text) 0 40%,var(--focus) 50%,var(--text) 60% 100%) 0 0/250% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 2.4s var(--ease) .6s 1 both;view-transition-name:wordmark}
@keyframes shimmer{0%{background-position:100% 0}100%{background-position:0 0}}
.nav{display:flex;gap:2rem;align-items:center}
.nav a{font:500 .9375rem var(--sans);color:var(--text)}.nav a[aria-current]{color:var(--link)}
.nav a.cta{color:var(--link)}
.menu-btn{display:none;background:none;border:0;color:var(--text);font:500 .9375rem var(--sans);min-height:44px;cursor:pointer;letter-spacing:.1em;text-transform:uppercase}
@media (max-width:860px){.menu-btn{display:block}
.nav{position:fixed;top:72px;left:0;right:0;bottom:0;height:calc(100dvh - 72px);z-index:1000;background:#1a1210;background:var(--bg,#1a1210);overflow-y:auto;overscroll-behavior:contain;flex-direction:column;align-items:flex-start;padding:2rem 1.25rem;gap:1.25rem;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .35s var(--ease),transform .35s var(--ease),visibility 0s .35s}
.nav.open{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.nav a{font:400 2rem var(--serif)}.nav.open a{animation:up .5s var(--ease) both}
.nav.open a:nth-child(2){animation-delay:.05s}.nav.open a:nth-child(3){animation-delay:.1s}.nav.open a:nth-child(4){animation-delay:.15s}.nav.open a:nth-child(5){animation-delay:.2s}}
@keyframes up{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* bulb row — the single ornament per screen */
.bulbs{display:flex;gap:14px;margin:2.5rem 0 0;padding:0;list-style:none}
.bulbs li{width:5px;height:5px;border-radius:50%;background:var(--gold);animation:twinkle 4s ease-in-out infinite}
.bulbs li:nth-child(3n){animation-delay:-1.3s}.bulbs li:nth-child(3n+1){animation-delay:-2.6s}.bulbs li:nth-child(5n){animation-delay:-.7s}
.bulbs li.off{background:var(--line);animation:none}
@keyframes twinkle{0%,100%{opacity:1}50%{opacity:.35}}
/* photo slots */
.slot{position:relative;background:#5a4a3c;overflow:hidden;border:1px solid var(--line)}
.slot__in{position:absolute;inset:-8% 0;background:linear-gradient(135deg,#5f4e3f,#4c3d31);will-change:transform}
.slot__in::before,.slot__in::after{content:"";position:absolute;inset:8% 0;background:linear-gradient(to top right,transparent calc(50% - .5px),rgba(222,172,84,.25) 50%,transparent calc(50% + .5px))}
.slot__in::after{transform:scaleX(-1)}
.slot span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--bg);color:var(--link);font:500 .8125rem var(--sans);padding:.35rem .7rem;white-space:nowrap;border:1px solid var(--gold)}
.r45{aspect-ratio:1080/1350}.r32{aspect-ratio:1600/1067}
/* reveal */
.rv{transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d,0s)}
html.js .rv{opacity:0;transform:translateY(28px)}
html.js .rv.in{opacity:1;transform:none}
html.js .slot.rv{transform:scale(.97)}html.js .slot.rv.in{transform:none}
.hair{border:0;border-top:1px solid var(--line);margin:0}
/* sections */
section{padding:4rem 0}
.hero{padding-top:3rem}
.hero h1{font-size:2.75rem}.hero h1 em{display:block}
.grid2{display:grid;gap:2.5rem}
.quote{text-align:center;max-width:48rem;margin:auto}
.quote blockquote{margin:0;font:italic 400 1.625rem/1.3 var(--serif)}
.quote cite{display:block;font:500 .9375rem var(--sans);font-style:normal;color:var(--muted);margin:1.2rem 0}
.show{border-bottom:1px solid var(--line);padding:1rem 0}.show .label{margin:0 0 .3rem}
.measure{max-width:65ch}
.ftr{border-top:1px solid var(--line);padding:3rem 0 4rem;margin-top:2rem}
.ftr .wrap{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between}
.ftr nav{display:flex;flex-wrap:wrap;gap:1.2rem}.ftr nav a{color:var(--muted);font-weight:500}
.ftr nav a:hover{color:var(--focus)}
.listrow{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;border-top:1px solid var(--line);padding-top:2rem}
.day{display:grid;grid-template-columns:1fr auto;gap:.2rem 1rem;border-bottom:1px solid var(--line);padding:1.1rem 0}
.day.off{color:var(--muted)}.day.off .serif{color:var(--muted)}
.day .serif{font-size:1.25rem}
.card{display:grid;gap:.75rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}
.card h3 a{color:var(--text);transition:color .25s}.card:hover h3 a{color:var(--focus)}
.card .slot__in{transition:transform .8s var(--ease)}.card:hover .slot__in{transform:scale(1.04)}
ul.expect{padding-left:1.2rem}ul.expect li{margin:.4rem 0}
form .f{display:grid;gap:.35rem;margin:1rem 0}form label{font:500 .8125rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--link)}
input,select,textarea{font:400 1rem var(--sans);background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:4px;padding:.75rem;min-height:48px}
input:disabled,select:disabled,textarea:disabled,button:disabled{opacity:.55;cursor:not-allowed}
.btn:disabled:hover{transform:none;box-shadow:none}
@media (min-width:861px){
 h1{font-size:4rem}h2{font-size:3rem}h3{font-size:1.75rem}body{font-size:1.125rem}.label{font-size:.9375rem}
 .hero h1{font-size:6.5rem}.quote blockquote{font-size:3.25rem}
 .grid2{grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
 .hero .grid2{grid-template-columns:1.25fr .85fr}
 .g-left{grid-template-columns:1fr 1fr;align-items:start}
 .offset{margin-top:4rem}
 section{padding:4.5rem 0}.hero{padding-top:3rem}.day .serif{font-size:1.75rem}
 .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
}
/* age gate */
.gate{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:1.25rem;background:#1A1210;transition:opacity .9s var(--ease),filter .9s var(--ease),visibility 0s .9s}
.gate.gone{opacity:0;filter:blur(12px);visibility:hidden}
.gate__p{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:2.5rem 2rem;max-width:30rem;width:100%;text-align:center;animation:up .8s var(--ease) both;transition:transform .9s var(--ease)}
.gate.gone .gate__p{transform:scale(1.06)}
.gate .bulbs{justify-content:center;margin:0 0 1.75rem}
.gate .wordmark{font-size:2.75rem;display:inline-block}
.gate .btns{justify-content:center;flex-direction:column}
html.gated body>*:not(.gate){visibility:hidden}
html.gated{overflow:hidden}
@media (prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 html.js .rv{opacity:1;transform:none}.wordmark{-webkit-text-fill-color:var(--text)}
 @view-transition{navigation:none}
}
::view-transition-old(root),::view-transition-new(root){animation-duration:.45s;animation-timing-function:var(--ease)}

@media (max-width:860px){.hero-slot{order:-1}}
.slot.photo{background:var(--bg)}.photo .slot__in{background:none}.photo .slot__in::before,.photo .slot__in::after{display:none}.photo img{width:100%;height:100%;object-fit:cover;display:block}
.live-pill{display:inline-flex;align-items:center;gap:.5em;padding:.3em .85em;border:1px solid rgba(217,170,90,.55);border-radius:999px;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#e8c27a;background:rgba(217,170,90,.08);white-space:nowrap}
.live-pill[hidden]{display:none}
.live-pill--hero{margin:0 0 1.1rem}
.live-dot{width:.55em;height:.55em;border-radius:50%;background:#e8b04a;box-shadow:0 0 0 0 rgba(232,176,74,.6);animation:livepulse 1.8s ease-out infinite}
@keyframes livepulse{0%{box-shadow:0 0 0 0 rgba(232,176,74,.6)}70%{box-shadow:0 0 0 .6em rgba(232,176,74,0)}100%{box-shadow:0 0 0 0 rgba(232,176,74,0)}}
@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}
.live-pill--hdr{margin-left:.8rem;margin-right:auto;font-size:.62rem}

html.menu-open{overflow:hidden}html.menu-open body{touch-action:none}html.menu-open .nav{touch-action:pan-y}
@media (max-width:860px){.menu-btn{position:relative;z-index:1001}html.menu-open .hdr{position:fixed;top:0;left:0;right:0;background:#1a1210}html.menu-open body{padding-top:72px}}
.sched{margin:2rem 0 2.5rem;padding:1.6rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sched-line{font-family:var(--serif);font-size:clamp(1.6rem,5.5vw,2.4rem);line-height:1.3;margin:0;color:var(--text)}
.sched-line--sm{font-size:1.5rem;margin-top:1.5rem}.nw{white-space:nowrap;color:var(--link)}
.watch{padding-top:1rem;scroll-margin-top:72px}.watch h2{margin:.3rem 0 .4rem}
.plats{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:1.8rem 0 1.2rem}
.plat{display:flex;flex-direction:column;gap:.35rem;padding:1.6rem 1.5rem;min-height:132px;border:1px solid var(--line);border-radius:6px;background:linear-gradient(160deg,rgba(217,170,90,.10),rgba(217,170,90,.02));color:var(--text);transition:border-color .3s,transform .3s var(--ease),background-color .3s}
.plat:hover,.plat:focus-visible{border-color:var(--gold);transform:translateY(-2px)}
.plat__k{font:500 .72rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.plat__n{font-family:var(--serif);font-size:clamp(1.7rem,4vw,2.3rem);line-height:1.1}
.plat__a{margin-top:auto;color:var(--link);font-weight:500}
.small{font-size:.85rem}
.watch.flash .plat{animation:platflash 1.4s var(--ease) 2}
@keyframes platflash{50%{border-color:var(--gold);box-shadow:0 0 0 3px rgba(232,176,74,.25)}}
@media (max-width:560px){.plats{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.watch.flash .plat{animation:none;border-color:var(--gold)}}
.r23{aspect-ratio:2/3}
.slot.full{width:100%;max-width:440px;margin-inline:auto}
.slot.full .slot__in{inset:0!important;transform:none!important}
.slot.full img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:720px){.slot.full{max-width:100%}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.signup{align-items:flex-start}
.sub{flex:1 1 340px;max-width:460px}
.sub__row{display:flex;gap:.75rem;align-items:center;border-bottom:1px solid var(--gold);padding-bottom:.35rem}
.sub input[type=email]{flex:1;min-width:0;background:transparent;border:0;color:var(--text);font:400 1.0625rem var(--sans);padding:.6rem 0}
.sub input[type=email]::placeholder{color:var(--muted);opacity:.7}
.sub input[type=email]:focus{outline:none}.sub__row:focus-within{border-color:var(--focus)}
.sub__btn{background:none;border:0;color:var(--link);font:500 1rem var(--sans);cursor:pointer;white-space:nowrap;padding:.6rem 0}
.sub__ok{display:flex;gap:.6rem;align-items:flex-start;margin-top:.9rem;color:var(--muted);font-size:.9375rem;line-height:1.45;cursor:pointer}
.sub__ok input{accent-color:var(--gold);width:1.1rem;height:1.1rem;margin-top:.15rem;flex:none}
.sub__msg{margin:.8rem 0 0;min-height:1.4em;font-size:.9375rem;color:var(--link)}.sub__msg.err{color:var(--err)}
.sub.done .sub__row,.sub.done .sub__ok{display:none}.sub.done .sub__msg{font-family:var(--serif);font-size:1.25rem;color:var(--text)}
.sub__ok{text-transform:none;letter-spacing:normal;font-family:var(--sans);font-weight:400}
.sub .sub__ok{font-size:.9375rem;line-height:1.45;align-items:flex-start}
.wk{list-style:none;margin:1.4rem 0 1.2rem;padding:0}
.wk__d{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1.5rem;padding:.95rem 0;border-top:1px solid var(--line)}
.wk__d:first-child{border-top:0}
.wk__day{font-family:var(--serif);font-size:1.35rem;color:var(--text)}
.wk__t{font-family:var(--sans);font-size:1.0625rem;font-weight:500;display:flex;flex-wrap:wrap;gap:.3rem .7rem}
.wk__sep{color:var(--muted)}
.wk__nx{font-size:.7rem;color:var(--muted);vertical-align:super;font-weight:400}
.wk__tz{margin:.6rem 0 0}
.wk__d{display:grid;grid-template-columns:11rem 1fr;align-items:baseline;gap:.4rem 1.5rem}
.wk__t{justify-content:flex-end}
@media (max-width:720px){.wk__d{grid-template-columns:1fr}.wk__t{justify-content:flex-start}}

/* Fan Mail pop-up */
.sub__fine{font-size:.875rem;color:var(--muted);margin:.4rem 0 0}
.fm{position:fixed;right:1.25rem;bottom:1.25rem;z-index:60;width:min(24rem,calc(100vw - 2.5rem));max-height:calc(100vh - 2.5rem);overflow:auto;background:var(--surface);border:1px solid var(--gold);border-radius:6px;padding:1.5rem 1.5rem 1.25rem;box-shadow:0 18px 50px rgba(0,0,0,.55);transform:translateY(120%);opacity:0;transition:transform .45s var(--ease),opacity .45s var(--ease)}
.fm.on{transform:none;opacity:1}
.fm__x{position:absolute;top:.4rem;right:.4rem;width:44px;height:44px;border:0;background:none;color:var(--link);font-size:1.75rem;line-height:1;cursor:pointer;border-radius:4px}
.fm__x:hover{color:var(--focus)}
.fm__h{font-size:1.6rem;margin:.2rem 2rem .5rem 0}.fm__h:focus{outline:none}
.fm__d{margin:0 0 1rem;color:var(--muted)}
.fm .sub__row{flex-wrap:wrap}.fm .sub__row input{min-width:0;flex:1 1 12rem}
@media (max-width:720px){.fm{left:0;right:0;bottom:0;width:auto;border-radius:12px 12px 0 0;border-width:1px 0 0;max-height:70vh;padding:1.25rem 1.25rem calc(1rem + env(safe-area-inset-bottom))}}
@media (prefers-reduced-motion:reduce){.fm{transition:none}}
.fm__no{display:block;margin:.9rem auto 0;min-height:44px;padding:0 .75rem;background:none;border:0;color:var(--muted);font:inherit;font-size:.9375rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.fm__no:hover{color:var(--link)}

/* consent checkbox: visible on dark brown */
.sub__ok input[type=checkbox]{-webkit-appearance:none;appearance:none;accent-color:var(--gold);width:22px;height:22px;min-width:22px;margin:.05rem 0 0;border:2px solid var(--gold);border-radius:4px;background:rgba(222,172,84,.08);display:inline-grid;place-content:center;cursor:pointer;transition:background-color .15s}
.sub__ok input[type=checkbox]::before{content:"";width:11px;height:6px;border:solid var(--bg);border-width:0 0 2.5px 2.5px;transform:translateY(-2px) rotate(-45deg) scale(0);transition:transform .12s}
.sub__ok input[type=checkbox]:checked{background:var(--gold)}.sub__ok input[type=checkbox]:checked::before{transform:translateY(-2px) rotate(-45deg) scale(1)}
.sub__ok input[type=checkbox]:hover{background:rgba(222,172,84,.2)}
.sub__ok input[type=checkbox]:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
@media (max-width:720px){.fm{padding:.85rem 1rem calc(.5rem + env(safe-area-inset-bottom))}.fm .label{margin:0}.fm__h{font-size:1.35rem;margin:.1rem 2.5rem .3rem 0;line-height:1.2}.fm__d{margin:0 0 .4rem;font-size:.9375rem;line-height:1.4}
.fm .sub__ok{margin-top:.55rem;font-size:.875rem;line-height:1.4}.fm .sub__fine{margin:.3rem 0 0;font-size:.875rem}.fm__no{margin:.1rem auto 0}.fm__x{top:.15rem;right:.15rem}.fm .sub__row input,.fm .sub__btn{min-height:44px}}
.fm .label{font-size:.875rem}@media (max-width:720px){.fm{padding-top:.65rem}.fm__d{margin-bottom:.2rem}.fm .sub__ok{margin-top:.4rem}.fm .sub__fine{display:inline-block;margin-right:.5rem}.fm__no{display:inline-flex;align-items:center;margin:0;padding:0 .4rem;float:right}}
.sub__ok input[type=checkbox]{box-sizing:border-box;width:22px!important;height:22px!important;flex:0 0 22px;align-self:flex-start}@media (max-width:720px){.fm__no{float:none;display:flex;margin:0 0 0 auto}.fm .sub__fine{display:block}}
.sub__ok input[type=checkbox]{min-height:0;padding:0}.fm .sub__msg:empty{min-height:0;margin:0}.fm__no{margin-top:.3rem}
.bio-icons{display:flex;gap:1rem;margin:1rem 0 0;color:var(--gold)}.bio-icons svg{width:28px;height:28px}
.bio-icons{list-style:none;padding:0;margin:1.5rem 0 0;display:flex;flex-wrap:wrap;gap:1.25rem 1.75rem}.bio-icons li{display:flex;flex-direction:column;align-items:center;gap:.5rem;min-width:5.5rem;text-align:center;font-size:.9375rem;color:var(--text)}.bio-icons img{width:44px;height:44px}
@media (max-width:720px){.bio-icons{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}}
@media (max-width:720px){.bio-icons{display:flex;flex-wrap:wrap;justify-content:center;gap:1.25rem 0}.bio-icons li{flex:0 0 33.333%;min-width:0}}

/* Fan Club merged section (Iris mock v2) */
@media (min-width:901px){.tiers .grid2{align-items:center}.tiers .offset{margin:0}.tiers .slot.full{max-width:480px;margin-inline:auto 0}}.fc-intro{padding-top:calc(var(--k)*50px)}
.tiers .label{font:500 calc(var(--k)*42px)/1.2 var(--sans);color:var(--gold);margin:0 0 calc(var(--k)*40px)}
.tiers #fc-h{font:400 calc(var(--k)*96px)/calc(var(--k)*110px) var(--serif);color:var(--text);margin:0 0 calc(var(--k)*20px)}
.fc-tag{font:italic 400 calc(var(--k)*60px)/1.3 var(--serif);color:var(--link);margin:0 0 calc(var(--k)*24px)}
.fc-all{font:400 calc(var(--k)*44px)/calc(var(--k)*64px) var(--sans);color:var(--muted);margin:0}
/* Fan Club tiers (Iris spec "Amber Marquee"); --k = CSS px per spec px (spec mocks are 2x renders) */
.tiers{--k:.5;--c-sol:#33221A;--c-lord:#3A2B1A;--c-pri:#22160F;--e-sol:#C08A4E}
.tiers__in{text-align:center;margin-top:calc(var(--k)*130px)}
.tiers__grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--k)*40px);align-items:stretch;text-align:left}
.tier,html.js .tier.rv.in{position:relative;border-radius:calc(var(--k)*12px);padding:calc(var(--k)*40px);margin-top:calc(var(--k)*24px)}
.tier--soldier{background:var(--c-sol);border:calc(var(--k)*3px) solid var(--e-sol);color:var(--e-sol)}
.tier--lord,html.js .tier--lord.rv.in{background:var(--c-lord);border:calc(var(--k)*6px) solid var(--gold);color:var(--gold);margin-top:0;margin-bottom:calc(var(--k)*24px)}
.tier--prince{background:var(--c-pri);border:calc(var(--k)*6px) solid var(--focus);color:var(--focus)}
.tier__slot{height:calc(var(--k)*82px)}.tier__tag{text-transform:uppercase}
.tier__tag{display:inline-block;font:500 calc(var(--k)*30px)/calc(var(--k)*52px) var(--sans);padding:0 calc(var(--k)*20px);border-radius:calc(var(--k)*26px)}
.tier--lord .tier__tag{background:var(--gold);color:var(--bg)}
.tier--prince .tier__tag{background:var(--c-pri);color:var(--focus);box-shadow:inset 0 0 0 calc(var(--k)*3px) var(--focus)}
.tier__em{display:block;height:calc(var(--k)*60px);width:calc(var(--k)*60px);margin:0 0 calc(var(--k)*24px);fill:none;stroke:currentColor;stroke-width:5;stroke-linejoin:round;stroke-linecap:round;overflow:visible}
.tier__n{font:400 calc(var(--k)*72px)/calc(var(--k)*84px) var(--serif);color:var(--text);margin:0 0 calc(var(--k)*16px)}
.tier__p{margin:0 0 calc(var(--k)*24px)}
.tier__pr{display:block;white-space:nowrap;font:500 calc(var(--k)*48px)/calc(var(--k)*62px) var(--sans);color:var(--link)}
.tier--prince .tier__pr{color:var(--focus)}
.tier__mo{display:block;font:500 calc(var(--k)*42px)/calc(var(--k)*56px) var(--sans);color:var(--muted)}
.tier__perk{font:400 calc(var(--k)*44px)/calc(var(--k)*56px) var(--sans);color:var(--text);margin:0}
.tiers__fine{font:400 calc(var(--k)*40px)/calc(var(--k)*56px) var(--sans);max-width:calc(var(--k)*1100px);color:var(--muted);margin:calc(var(--k)*40px) auto calc(var(--k)*50px)}
.tiers__cta{margin:0}
.tiers__btn{display:inline-flex;align-items:center;height:calc(var(--k)*100px);padding:0 calc(var(--k)*60px);border-radius:calc(var(--k)*50px);background:var(--gold);color:var(--bg);font:500 calc(var(--k)*46px)/1 var(--sans);box-shadow:none}
.tiers__btn:hover{background:var(--focus)}.tiers__btn:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
@media (max-width:900px){.tiers__grid{grid-template-columns:1fr}.tier,.tier--lord,html.js .tier.rv.in,html.js .tier--lord.rv.in{margin:0}}
@media (min-width:901px){.tiers__fine{margin-top:calc(var(--k)*110px)}}

@media (min-width:901px){.g-mid{align-items:center}.g-mid .offset{margin-top:0;padding-top:0}.g-mid .tlink{display:inline-block}}.g-mid .sched-line+p{margin-top:24px}
.nobr{white-space:nowrap}


/* Meet Ember guest section (Iris v3 / Option B stack on phone) */
.ember{--copper:#C8703A;position:relative;overflow:hidden}
.ember::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 70% 80% at 18% 50%,rgba(200,112,58,.22),transparent 70%)}
.ember .wrap{position:relative}
.ember__grid{align-items:center}
.ember-frame{margin:0;padding:10px;border:3px solid var(--gold);box-shadow:0 0 0 1px var(--copper);background:var(--bg);position:relative;max-width:420px;justify-self:center}
.ember-frame::before,.ember-frame::after{content:"";position:absolute;left:6px;right:6px;height:8px;background:radial-gradient(circle closest-side,#FFEECE 98%,transparent) 0 50%/22px 8px repeat-x;pointer-events:none}
.ember-frame::before{top:-1px}
.ember-frame::after{bottom:-1px}
.ember-frame img{width:100%;height:auto;display:block;vertical-align:middle}
.ember__copy h2{font-size:clamp(2.5rem,8vw,4.5rem);font-weight:400;line-height:1.05;margin:0 0 .2rem}
.ember__copy h2 em{font-style:italic;font-weight:400;color:#F2D296;display:block}
.ember__rule{border:0;border-top:2px solid var(--gold);width:7.5rem;margin:1.25rem 0 1.25rem}
.ember__copy p{margin:0;max-width:28rem;color:var(--text);font-size:1.125rem}
.ember__tagwrap{margin:1.1rem 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}
.ember-tag{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 .95rem;border-radius:999px;border:1.5px solid var(--copper);color:#F2D296;font:500 .8125rem/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;transition:background-color .25s,color .25s,border-color .25s}
.ember-tag:hover,.ember-tag:focus-visible{background:var(--copper);color:var(--bg);border-color:var(--copper)}
.ember__btns{margin-top:1.75rem} /* ~28px gap under tag */
.ember__btns .btn{align-self:flex-start}
@media (min-width:861px){
 .ember__grid{grid-template-columns:.9fr 1.1fr;gap:4rem}
 .ember-frame{max-width:460px;justify-self:end}
 .ember__copy h2{font-size:5rem}
}
@media (max-width:860px){
 .ember-frame{max-width:min(360px,100%);justify-self:center}
 .ember__copy{text-align:center}
 .ember__rule{margin-inline:auto}
 .ember__copy p{margin-inline:auto}
 .ember__copy .btns{justify-content:center}
 .ember__tagwrap{justify-content:center}
}
/* writing articles */
.card__img{margin:0}.card__img .slot__in{inset:0!important;transform:none!important}.card:hover .card__img .slot__in{transform:none!important}
.art{max-width:820px}
.art__t{font-size:clamp(2.2rem,6vw,3.6rem)}
.art__img{width:100%;margin:1.5rem 0 2rem}.art__img .slot__in{inset:0!important;transform:none!important}
.art__body p{line-height:1.7}.art__lead{font-size:1.2rem}
.art__h{font-size:1.5rem;margin:2rem 0 .5rem}
.art__songs{padding-left:1.2rem;margin:0}
.art__nav{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:2rem}

/* Duo home teaser banner */
.duo-banner__card{position:relative;display:grid;align-items:center;aspect-ratio:1600/640;border-radius:6px;overflow:hidden;background:#1a1210;color:#FFEECE;text-decoration:none;transition:transform .3s var(--ease)}
.duo-banner__card::before{content:"";position:absolute;inset:14px;border:1.5px solid #DEAC54;border-radius:2px;pointer-events:none;z-index:2}
.duo-banner__card:hover,.duo-banner__card:focus-visible{transform:translateY(-2px)}
.duo-banner__card:focus-visible{outline:2px solid var(--focus);outline-offset:4px}
.duo-banner__bg{position:absolute;inset:0}
.duo-banner__bg img{width:100%;height:100%;object-fit:cover;object-position:right center;display:block}
.duo-banner__body{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;max-width:58%;padding:clamp(2rem,4.5vw,4.5rem)}
.duo-banner__pill{font:500 .75rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#DEAC54;border:1.5px solid #DEAC54;border-radius:999px;padding:.45rem .8rem}
.duo-banner__kick{font:500 .85rem/1.2 var(--sans);letter-spacing:.35em;text-transform:uppercase;color:#DEAC54;margin-top:.4rem}
.duo-banner__h{font-size:clamp(2.3rem,5vw,4.4rem);font-weight:500;color:#F2D296;margin:0}
.duo-banner__line{font-family:var(--serif);font-style:italic;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.45;color:#FFEECE}
.duo-banner__btn{margin-top:.6rem;letter-spacing:.04em}
.duo-banner__card:hover .btn::after{transform:translateX(120%);transition:transform .7s var(--ease)}
@media (max-width:700px){.duo-banner__card{aspect-ratio:auto;display:block}.duo-banner__bg{position:static;display:block}.duo-banner__bg img{height:auto;aspect-ratio:1080/1350;object-position:center top}.duo-banner__body{max-width:none;margin-top:-42%;padding:0 1.75rem 2.25rem}}
@media (min-width:701px) and (max-width:1100px){.duo-banner__card{aspect-ratio:auto;min-height:340px}.duo-banner__body{max-width:62%}}
