/* Local theme layer. Geometry, fonts and editorial content come from the site. */
html[data-theme="dark"]{
  color-scheme:dark;
  --paper:#221E19;--sand:#28231E;--sand-hi:#302A23;
  --lift:#312B24;--lift-hi:#383129;
  --ink:#F0EBE1;--ink-soft:#C0B8AA;
  --accent:#E8A585;--accent-hi:#F1B79A;--accent-deep:#F0BA9D;--accent-warm:#E8A585;
  --tint:rgba(232,165,133,.1);--dark:#191612;--dark-hi:#26211C;
  --on-dark:#F0EBE1;--on-dark-soft:#C0B8AA;
  --on-accent:#211A15;--on-accent-soft:#30231B;
  --rule:#887B6C;--glow:rgba(232,165,133,.075);
  --focus:0 0 0 4px rgba(232,165,133,.18);
  --surface-shadow:0 1px 2px rgba(0,0,0,.12),inset 0 1px 0 rgba(240,235,225,.055);
  --overlay-shadow:0 28px 80px rgba(0,0,0,.5);
  --dark-shadow:0 24px 55px rgba(0,0,0,.18),inset 0 1px 0 rgba(240,235,225,.055);
  --media-shadow:0 4px 12px rgba(0,0,0,.14),0 24px 58px rgba(0,0,0,.2),inset 0 1px 0 rgba(240,235,225,.06);
  --action-shadow:0 2px 4px rgba(0,0,0,.12),0 9px 20px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.12);
  --text:var(--ink);--text-secondary:var(--ink-soft);--text-accent:var(--accent);--text-inverse:var(--on-dark);--text-inverse-secondary:var(--on-dark-soft);--text-on-accent:var(--on-accent);--bg:var(--paper);--bg-card:var(--lift);--bg-band:var(--sand);--bg-dark:var(--dark);--border:var(--rule);
  background:#221E19;
}
html[data-theme="dark"] body{
  background:radial-gradient(920px 620px at 8% -400px,rgba(232,165,133,.08),transparent 68%),radial-gradient(720px 520px at 94% 1000px,rgba(232,165,133,.045),transparent 68%),var(--bg);
}
html[data-theme="dark"] .nav{background:var(--bg);--safe-header-bg:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;isolation:isolate;border-bottom-color:rgba(240,235,225,.1)}
html[data-theme="dark"] .nav.stuck{box-shadow:0 6px 22px rgba(0,0,0,.18)}
html[data-theme="dark"] :is(.facts-row .fact,.fact){background:linear-gradient(170deg,var(--lift-hi),var(--lift))}
html[data-theme="dark"] :is(.card,.price,.feature,.featured-note,.art-card){background:linear-gradient(168deg,var(--lift-hi),var(--lift))}
html[data-theme="dark"] .price.hi{background:linear-gradient(165deg,#3B2D24,#29211B);box-shadow:inset 0 0 0 1px rgba(232,165,133,.32),var(--dark-shadow)}
html[data-theme="dark"] .band-accent{--on-accent:var(--on-dark);--on-accent-soft:var(--on-dark-soft);background:radial-gradient(ellipse at 85% 0%,rgba(232,165,133,.07),transparent 65%),linear-gradient(160deg,#3B2D25,#2C231D);color:var(--on-dark)}
html[data-theme="dark"] .band-accent :is(h2,h3,.mid){color:var(--on-dark)}
html[data-theme="dark"] .band-accent :is(p,.sub,.plain li){color:var(--on-dark-soft)}
html[data-theme="dark"] .band-accent .eyebrow{color:var(--accent)}
html[data-theme="dark"] .band-accent::after,
html[data-theme="dark"] .band-dark::after{background:radial-gradient(680px 420px at 78% 18%,rgba(232,165,133,.055),rgba(232,165,133,0) 75%);opacity:1}
html[data-theme="dark"] .themes-block::before{width:820px;height:680px;right:-340px;top:-300px;background:radial-gradient(ellipse,rgba(232,165,133,.085) 0%,rgba(232,165,133,.035) 35%,rgba(232,165,133,0) 74%);opacity:1}
html[data-theme="dark"] .final-block::before{background:radial-gradient(ellipse,rgba(232,165,133,.05),rgba(232,165,133,0) 75%);opacity:1}
html[data-theme="dark"] .final-soft{background:radial-gradient(800px 600px at 90% 4%,rgba(232,165,133,.045),rgba(232,165,133,0) 78%),linear-gradient(160deg,var(--sand-hi),var(--sand))}
html[data-theme="dark"] .final-soft::after{background:radial-gradient(720px 520px at 0% 100%,rgba(232,165,133,.035),rgba(232,165,133,0) 78%);opacity:1}
html[data-theme="dark"] .theme-cards .card::after{background:radial-gradient(circle,rgba(232,165,133,.08),transparent 70%)}
html[data-theme="dark"] :is(.track,.process-steps)::before{background:#655B4E}
html[data-theme="dark"] :is(.track,.process-steps)::after{background:linear-gradient(180deg,var(--accent),rgba(232,165,133,.28))}
html[data-theme="dark"] :is(.portrait-frame,.detail-frame,.frame){background:linear-gradient(145deg,#41362B,#302820)}
html[data-theme="dark"] :is(.portrait-frame,.detail-frame,.room-frame)::after{background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(34,30,25,.045))}
html[data-theme="dark"] :is(.doc-label,.doc-dialog img){background:#302B25}
html[data-theme="dark"] :is(.safety-note,.crisis){background:linear-gradient(145deg,rgba(240,235,225,.065),rgba(240,235,225,.025));border-color:rgba(240,235,225,.14)}
html[data-theme="dark"] details.is-open{background:rgba(240,235,225,.04)}
html[data-theme="dark"] :is(.booking-shell,.booking-stage,.booking-loading){background:linear-gradient(150deg,#302A23,#28231E)}
html[data-theme="dark"] :is(.booking-top,.booking-help){background:#2B251F;border-color:var(--border)}
html[data-theme="dark"] :is(.booking-dialog,.privacy-dialog,.doc-dialog){background:var(--bg);border-color:var(--border)}
html[data-theme="dark"] :is(.booking-close,.doc-reset){background:var(--lift);color:var(--text);border-color:var(--border)}
html[data-theme="dark"] :is(.booking-dialog,.privacy-dialog,.doc-dialog)::backdrop{background:rgba(10,8,6,.78)}
html[data-theme="dark"] :is(.btn,.cookie-choice){color:#211A15;background:linear-gradient(180deg,#F1B79A,#E8A585)}
html[data-theme="dark"] .btn-ghost{background:rgba(240,235,225,.04);border-color:var(--border);color:var(--accent)}
html[data-theme="dark"] .btn-ghost:hover{background:rgba(240,235,225,.085);color:var(--accent-deep)}
html[data-theme="dark"] .btn-light{background:linear-gradient(180deg,#F0EBE1,#DCD2C1);color:#221E19}
html[data-theme="dark"] .btn-dark{background:linear-gradient(180deg,#393127,#211D18);color:var(--on-dark)}
html[data-theme="dark"] .cookie-choice-secondary{background:var(--lift);color:var(--text);border-color:var(--border)}
html[data-theme="dark"] :is(a,button,summary,input,select,textarea):focus-visible{outline-color:#F1B79A}
html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{color:var(--text);background:var(--lift);border-color:var(--border)}
html[data-theme="dark"] :is(input,textarea)::placeholder{color:var(--text-secondary);opacity:1}
html[data-theme="dark"] ::selection{background:#704A36;color:#FFF5EB}
html[data-theme="dark"] footer{background:linear-gradient(180deg,#191612,#15120F)}
html[data-theme="dark"] .club-progress{background:#52483C}
html[data-theme="dark"] .club-chapter.is-off{color:#B0A698;opacity:1}
/* The workshop keeps its own blue palette and cut-paper visual language. */
html[data-theme="dark"]:has(.workshop-page){
  --canvas:#EDE5D8;--canvas-deep:#2C2D31;--graphite:#EDE5D8;--ink-muted:#C0B8AA;
  --workshop-line:#817969;--blue:#A8BDD9;--blue-deep:#172238;--red:#E5A28B;--red-dark:#EDB7A0;--olive:#B4B9A3;
}
html[data-theme="dark"] body.workshop-page{background:#172238}
html[data-theme="dark"] :is(.manifesto,.possibilities,.boundaries,.details,.faq,.signup){background:radial-gradient(ellipse at 90% 10%,rgba(221,160,142,.06),transparent 65%),#24252A}
html[data-theme="dark"] .contact-sheet{background:radial-gradient(ellipse at 15% 5%,rgba(221,160,142,.065),transparent 65%),#29292D}
html[data-theme="dark"] .audience-v1{background:radial-gradient(ellipse at 8% 15%,rgba(221,160,142,.06),transparent 65%),#292A2F}
html[data-theme="dark"] .audience-v1-face{background:linear-gradient(145deg,#373438,#2B2B30);color:#EDE5D8}
html[data-theme="dark"] .audience-v1-sheet{--sheet-bg:#2B2B30;--sheet-edge:#61574C;--sheet-layer:#3B3434}
html[data-theme="dark"] :is(.audience-v1-sheet::before,.audience-v1-face::before){opacity:.14}
html[data-theme="dark"] .host-quote{background:#2A303B;color:#EDE5D8}
html[data-theme="dark"] .photo-note{background:rgba(35,36,41,.94);color:#EDE5D8}
html[data-theme="dark"] .section-index{color:#E5A28B}
html[data-theme="dark"] .word-field{color:#EDE5D8}
html[data-theme="dark"] .button-primary{background:linear-gradient(180deg,#EDB7A0,#E5A28B);color:#211A15}
html[data-theme="dark"] .button-primary:hover{background:linear-gradient(180deg,#F3C5B1,#EDB7A0)}
html[data-theme="dark"] .canvas-note{background:#6E3026;color:#FFF7EF}
/* Decorative light spots have page-specific ID rules in the original sheet. */
html[data-theme="dark"] .moving-glow{background:radial-gradient(ellipse at center,rgba(232,165,133,.1) 0%,rgba(232,165,133,.035) 38%,rgba(232,165,133,0) 78%)!important;opacity:.6!important}
html[data-theme="dark"] .hosts{background:radial-gradient(ellipse at 85% 15%,rgba(221,160,142,.055),transparent 65%),#172238}
html[data-theme="dark"] .artist-card{background:#2A303B}
html[data-theme="dark"] .artist-card :is(.host-copy,.host-copy h3,.host-number){color:#EDE5D8}
html[data-theme="dark"] .artist-card .host-copy p{color:#C0B8AA}
html[data-theme="dark"] :is(.topbar-cta,.details-button,.hero-photo-caption){color:#211A15}
html[data-theme="dark"] :is(.topbar-cta,.details-button):hover{background:#EDB7A0;border-color:#EDB7A0;color:#211A15}
html[data-theme="dark"] :is(.topbar-cta,.details-button,.button):focus-visible{outline-color:#F1B79A}
html[data-theme="dark"] :is(.booking-head,.booking-loader){background:#2B251F;color:var(--text)}
html[data-theme="dark"] .booking-stage iframe{background:#28231E}
html[data-theme="dark"] .artist-card .host-site-link{color:#E5A28B}
/* One-action theme toggle in the desktop header and mobile drawer. */
.theme-control{position:relative;flex:none;color:inherit}
.theme-trigger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;border:1px solid rgba(139,130,108,.65);border-radius:50%;background:transparent;color:inherit;cursor:pointer}
.theme-trigger svg{display:block;width:20px;height:20px;flex:none}
.theme-trigger:hover{background:rgba(139,130,108,.1)}
.theme-trigger:focus-visible{outline:2px solid var(--accent,#DDA08E);outline-offset:3px}
.theme-trigger-label{display:none}
.topbar>.theme-control{justify-self:end;color:#F0EBE1}
@media(min-width:1121px){.topbar{grid-template-columns:1fr auto 44px auto;column-gap:24px}.topbar>.brand{grid-column:1}.topbar>nav{grid-column:2}.topbar>.theme-control{grid-column:3}.topbar>.topbar-cta{grid-column:4}}
@media(max-width:1120px){
 .site-nav .links{display:none}.site-nav .burger{display:block}
 .topbar{min-height:68px;grid-template-columns:1fr 1fr;grid-template-rows:68px auto}
 .topbar nav,.topbar .topbar-cta{display:none}.topbar .burger{display:block;justify-self:end}
 .drawer .theme-control{padding-top:12px;width:100%}
 .drawer .theme-trigger{width:100%;min-height:48px;height:auto;justify-content:space-between;border:0;border-radius:0;padding:12px 0;font:400 18px/1.45 'Golos Text',sans-serif;text-align:left}
 .drawer .theme-trigger-label{display:block}
}

html[data-theme="dark"] :is(.topbar-cta,.details-button){background:linear-gradient(180deg,#EDB7A0,#E5A28B);color:#211A15}

/* An expanded mobile drawer has its own opaque surface, including on WebKit. */
@media(max-width:1120px){
 html[data-theme] .nav.open,html[data-theme] .nav.open .nav-in,html[data-theme] .nav.open .drawer{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}
 html[data-theme] .nav.open{isolation:isolate}
 html[data-theme] .nav.open::before,html[data-theme] .nav.open::after{background:var(--bg)}
 html[data-theme] .topbar.open,html[data-theme] .topbar.open .workshop-drawer{background:var(--browser-chrome,#14233F);-webkit-backdrop-filter:none;backdrop-filter:none}
 .drawer .theme-trigger{appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;box-shadow:none}
 .drawer .theme-trigger:hover,.drawer .theme-trigger:active{background:transparent;color:var(--accent,#E8A585)}
 .drawer .theme-trigger:focus-visible{outline:none;box-shadow:none}
 .drawer .theme-trigger:focus-visible svg{outline:2px solid var(--accent,#E8A585);outline-offset:4px;border-radius:50%}
}

/* Shared composition correction in both light and dark previews. */
main > .wrap:has(> .facts-row){padding-bottom:40px}
@media(max-width:620px){main > .wrap:has(> .facts-row){padding-bottom:28px}}

/* Treat booking and menu as a right-aligned group whenever links collapse. */
@media(max-width:1120px){
 .site-nav .nav-in>.btn{margin-left:auto;flex:none}
 .site-nav .nav-in>.burger{flex:none}
}
@media(min-width:621px) and (max-width:1120px){
 .site-nav .nav-in{justify-content:flex-start;gap:12px}
}

html[data-theme="dark"] .topbar{background:var(--browser-chrome,#14233F);-webkit-backdrop-filter:none;backdrop-filter:none}
