@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#163c40;--ink-deep:#103035;--muted:#596c69;--bg:#f8f7f2;--paper:#fffefa;--accent:#b77d4d;--line:#e3e5df;--cream:#ede7dc;--lime:#e5ead8;--white:#fff;--shadow:0 24px 72px rgba(20,56,57,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--bg);color:var(--ink);line-height:1.62;-webkit-font-smoothing:antialiased}a{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}img{max-width:100%;height:auto}h1,h2,h3,h4{font-family:'Manrope',-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.16;letter-spacing:-.045em;margin:0}h1{font-size:clamp(2.7rem,5.8vw,5.8rem);font-weight:600}h2{font-size:clamp(2rem,3.9vw,3.65rem);font-weight:600}h3{font-size:1.32rem;letter-spacing:-.025em}p{margin:0 0 1.1rem}p:last-child{margin-bottom:0}.wrap{width:min(1192px,calc(100% - 64px));margin-inline:auto}.skip{position:absolute;transform:translateY(-150%);background:var(--white);padding:8px;z-index:100}.skip:focus{transform:translateY(0)}.topline{height:4px;background:linear-gradient(90deg,#163c40,#c2a175,#bbd0ba)}.site-header{position:relative;background:var(--bg);z-index:10;border-bottom:1px solid rgba(22,60,64,.09)}.site-header .wrap{display:flex;justify-content:space-between;align-items:center;min-height:93px;gap:28px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}.brand img{width:45px;height:45px}.brand-title{font-weight:800;font-size:.98rem;letter-spacing:-.035em;line-height:1.12}.brand-sub{display:block;font-weight:500;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:3px}.desktop-nav{display:flex;align-items:center;gap:30px}.desktop-nav a{font-size:.86rem;text-decoration:none;font-weight:700}.desktop-nav a:hover,.footer-links a:hover,.textlink:hover{color:var(--accent)}.header-book{background:var(--ink);color:#fff!important;border-radius:99px;padding:12px 20px;white-space:nowrap}.header-book:hover{background:#27595c;color:#fff!important}.menu-button{display:none;border:1px solid var(--line);background:none;border-radius:10px;padding:8px 13px;color:var(--ink);font-size:1.15rem}.mobile-nav{display:none}.eyebrow{font-weight:800;font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;color:#8d694e;margin-bottom:18px}.eyebrow.light{color:#d7ba8b}.intro-copy{font-size:1.1rem;color:var(--muted);max-width:700px;line-height:1.8}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:99px;font-weight:800;text-decoration:none;font-size:.91rem;line-height:1.2;padding:17px 25px;cursor:pointer;border:1px solid transparent;transition:transform .2s,background .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--ink);color:white}.button.primary:hover{background:#27595c}.button.cream{background:#ece4d3;color:var(--ink)}.button.outline{border-color:rgba(22,60,64,.22);background:transparent;color:var(--ink)}.button.outline-light{border-color:rgba(255,255,255,.4);background:transparent;color:white}.button.small{padding:12px 19px;font-size:.85rem}.textlink{color:var(--ink);font-weight:800;text-decoration-thickness:1px;text-underline-offset:4px}.home-opening{padding:70px 0 56px}.opening-top{display:flex;justify-content:space-between;gap:52px;align-items:end;margin-bottom:45px}.opening-top h1{max-width:850px}.opening-top aside{max-width:275px;min-width:230px;color:var(--muted);font-size:.94rem;padding-bottom:8px}.opening-top aside strong{display:block;color:var(--ink);font-size:1.04rem;margin-bottom:10px}.hero-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(310px,1fr);gap:20px;align-items:stretch}.video-outer{border-radius:24px;overflow:hidden;box-shadow:var(--shadow);background:#103035;min-width:0}.video-stage{position:relative;aspect-ratio:16/10;background:#12343a url('assets/img/wave.svg') center/cover}.video-stage iframe,.video-stage video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:contain;background:black}.video-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:white;padding:32px}.play-icon{width:74px;height:74px;border-radius:50%;border:1px solid rgba(255,255,255,.65);display:grid;place-items:center;background:rgba(255,255,255,.09);backdrop-filter:blur(8px);font-size:1.55rem;padding-left:5px;margin-bottom:22px}.video-placeholder .video-title{font-family:'Manrope',sans-serif;font-size:clamp(1.2rem,2.3vw,2rem);line-height:1.25;max-width:390px;letter-spacing:-.03em;font-weight:600}.video-placeholder .video-note{font-size:.79rem;opacity:.78;margin-top:10px}.video-caption{background:#fffefa;padding:15px 20px;display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:.85rem;color:var(--muted)}.video-caption strong{color:var(--ink)}.booking-panel{border-radius:24px;background:var(--ink);color:white;padding:37px 33px;display:flex;flex-direction:column;align-items:flex-start}.booking-panel h2{font-size:clamp(2.2rem,3vw,3.1rem);margin-bottom:18px;color:white}.booking-panel p{color:#d9e4df;font-size:.97rem}.booking-panel .button{margin:25px 0 23px;width:100%}.booking-panel .divider-light{width:100%;border-top:1px solid rgba(255,255,255,.2);margin-bottom:20px}.booking-panel small{color:#cad8d2;font-size:.79rem}.booking-panel a:not(.button){color:white;text-underline-offset:3px}.detail-strip{display:flex;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding:27px 0 38px;color:var(--muted);font-size:.9rem}.detail-strip span{display:flex;align-items:center;gap:10px}.detail-strip b{color:var(--ink)}.dot{width:7px;height:7px;flex:0 0 7px;background:#a87b4f;border-radius:50%}.section{padding:104px 0}.section-tight{padding:65px 0 85px}.section.tinted{background:#edf0e9}.split-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:42px}.split-heading p{max-width:440px;color:var(--muted);margin-bottom:0}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-card{background:var(--paper);border:1px solid #e5e9e2;border-radius:21px;padding:34px 29px}.info-card .num{display:inline-block;margin-bottom:32px;color:var(--accent);font-size:.8rem;font-weight:800;letter-spacing:.08em}.info-card h3{margin-bottom:15px}.info-card p{color:var(--muted);font-size:.94rem}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.roundel{height:390px;max-width:520px;display:grid;place-items:center;position:relative;margin:auto}.circle{position:absolute;border-radius:50%;border:1px solid rgba(26,75,72,.17)}.circle.one{width:340px;height:340px}.circle.two{width:260px;height:260px}.circle.three{width:177px;height:177px;background:var(--ink)}.circle.four{width:78px;height:78px;border:1px solid rgba(255,255,255,.5)}.ring-label{position:relative;z-index:1;color:white;text-align:center;max-width:145px;line-height:1.22;font-weight:800;font-size:.92rem}.roundel .particle{position:absolute;border-radius:50%;background:#af855f;width:9px;height:9px}.roundel .p1{top:4%;left:52%}.roundel .p2{bottom:9%;left:17%}.roundel .p3{right:5%;top:36%}.bullet-rows{padding:0;list-style:none;margin:28px 0}.bullet-rows li{border-top:1px solid var(--line);padding:15px 0 14px;color:var(--muted)}.bullet-rows strong{color:var(--ink)}.quote-section{padding:73px 0;background:var(--ink-deep);color:white}.quote-section .wrap{display:flex;gap:70px;align-items:center;justify-content:space-between}.quote-section h2{max-width:760px;color:white}.quote-section p{max-width:260px;color:#d4dedc}.section-head-centered{text-align:center;max-width:720px;margin:0 auto 46px}.section-head-centered p{color:var(--muted);margin-top:18px}.faq-stack{max-width:900px;margin:auto;border-top:1px solid var(--line)}details.faq{border-bottom:1px solid var(--line);padding:22px 0}details.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;font-weight:800;font-size:1.06rem;cursor:pointer}details.faq summary::-webkit-details-marker{display:none}details.faq summary:after{content:'+';font-size:1.5rem;font-weight:400;color:var(--accent)}details.faq[open] summary:after{content:'−'}details.faq p{margin:16px 35px 0 0;color:var(--muted);max-width:800px}.contact-band{padding:70px 0}.contact-box{background:var(--lime);border-radius:30px;padding:60px 67px;display:flex;justify-content:space-between;align-items:center;gap:40px}.contact-box h2{margin-bottom:15px}.contact-box p{color:var(--muted);max-width:580px}.contact-actions{display:flex;gap:10px;flex-wrap:wrap}.footer{background:#102f34;color:#d8e6e1;padding:52px 0 28px}.footer .brand{color:white}.footer .brand-sub{color:#bed2ca}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.6fr;gap:54px}.footer h4{font-family:'DM Sans',sans-serif;font-size:.87rem;letter-spacing:0;color:white;margin:0 0 16px}.footer p,.footer a,.footer address{font-size:.86rem;line-height:1.85;color:#c8d7d1;font-style:normal}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-links a{text-decoration:none}.fineprint{border-top:1px solid rgba(255,255,255,.16);margin-top:45px;padding-top:20px;color:#b7cbc5;font-size:.73rem;line-height:1.6}.page-hero{padding:90px 0 75px;background:linear-gradient(125deg,#f8f7f2,#e8eee8)}.page-hero h1{max-width:950px}.page-hero p{max-width:760px;margin-top:26px;font-size:1.1rem;color:var(--muted)}.subnav{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.subnav a{border:1px solid #d6ded5;padding:8px 14px;border-radius:99px;text-decoration:none;font-size:.82rem;font-weight:700}.content-section{padding:75px 0;border-bottom:1px solid var(--line)}.reading{max-width:820px;margin:auto}.reading h2{font-size:2.25rem;margin-bottom:22px}.reading h3{margin:28px 0 13px}.reading p,.reading li{font-size:1rem;color:#465e5c;line-height:1.9}.reading ul{padding-left:23px}.media-block{border-radius:24px;background:#eaf0e9;padding:32px;text-align:center;margin:30px auto}.media-block img{max-width:100%;max-height:325px;border-radius:12px;object-fit:contain}.callout{border-left:3px solid var(--accent);padding:15px 24px;background:#f2f1e9;margin:34px 0;color:var(--muted)}.profile-heading{display:flex;gap:24px;align-items:center}.profile-symbol{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;font-size:2.5rem;background:#dfebe1}.credentials{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.credentials .info-card{min-height:190px}.address-box{background:var(--paper);padding:28px;border-radius:20px;border:1px solid var(--line);margin-top:28px}.address-box a{color:var(--ink);font-weight:800}.resource-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.resource-card{padding:37px;background:var(--paper);border:1px solid var(--line);border-radius:24px;display:flex;flex-direction:column;gap:15px}.resource-card .icon{font-size:1.7rem}.resource-card p{color:var(--muted);font-size:.94rem}.resource-card .button{align-self:flex-start;margin-top:auto}.resource-card .meta{font-size:.75rem;color:#8f765e;font-weight:800;text-transform:uppercase;letter-spacing:.11em}.booking-layout{display:grid;grid-template-columns:1.35fr .75fr;gap:34px;align-items:start;padding:73px 0 85px}.scheduler-shell{background:var(--paper);border:1px solid var(--line);padding:32px;border-radius:25px;min-height:410px}.scheduler-status{background:#f0f0e9;border:1px dashed #c1c9c0;border-radius:17px;min-height:330px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:35px}.scheduler-status .cal{font-size:2.5rem;margin-bottom:22px}.scheduler-status h2{font-size:1.55rem;margin-bottom:15px}.scheduler-status p{color:var(--muted);max-width:430px}.scheduler-iframe{width:100%;min-height:740px;border:0}.booking-side{background:#e9eee7;border-radius:25px;padding:35px}.booking-side h3{margin-bottom:20px}.booking-side .side-item{border-top:1px solid #ccd7cb;padding:17px 0}.booking-side .side-item p{font-size:.92rem;color:var(--muted)}.price-table{border-collapse:collapse;width:100%;margin-top:24px}.price-table th,.price-table td{padding:14px 17px;border-bottom:1px solid var(--line);text-align:left}.price-table th{background:#e8eee7;color:var(--ink);font-size:.86rem}.price-table td{color:#536564}.price-table tr:last-child td{border-bottom:0}.price-table td:last-child{text-align:right;white-space:nowrap;font-weight:800;color:var(--ink)}.price-note{font-size:.83rem;color:var(--muted);margin-top:15px}.sticky-book{display:none}.reveal{opacity:0;transform:translateY(15px);transition:opacity .65s,transform .65s}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:1000px){.desktop-nav{gap:16px}.opening-top{flex-direction:column;align-items:start}.opening-top aside{max-width:600px}.hero-layout{grid-template-columns:1fr 360px}.booking-panel{padding:28px 25px}.two-col{gap:40px}.contact-box{padding:40px}.footer-grid{gap:30px}}
@media(max-width:780px){.wrap{width:min(100% - 36px,600px)}.site-header .wrap{min-height:72px}.brand img{width:40px;height:40px}.brand-title{font-size:.86rem}.brand-sub{font-size:.6rem}.desktop-nav{display:none}.menu-button{display:block}.mobile-nav.is-open{display:flex;flex-direction:column;gap:0;position:absolute;top:72px;left:0;right:0;background:var(--paper);box-shadow:0 14px 28px rgba(0,0,0,.12);padding:8px 18px 18px}.mobile-nav a{font-weight:800;text-decoration:none;padding:12px;border-bottom:1px solid var(--line)}.home-opening{padding:45px 0 29px}.opening-top{margin-bottom:28px;gap:15px}.opening-top aside{font-size:.9rem}.opening-top aside strong{margin-bottom:3px}.hero-layout,.two-col,.booking-layout{grid-template-columns:1fr}.video-stage{aspect-ratio:16/10}.booking-panel{padding:32px}.booking-panel h2{font-size:2.7rem}.booking-panel .button{margin:17px 0 23px}.detail-strip{display:grid;grid-template-columns:1fr;gap:12px;padding:25px 0}.section{padding:64px 0}.section-tight{padding:45px 0 60px}.split-heading{align-items:start;flex-direction:column;gap:18px}.three-grid,.credentials,.resource-grid{grid-template-columns:1fr}.info-card{padding:27px}.info-card .num{margin-bottom:12px}.roundel{height:315px}.circle.one{width:285px;height:285px}.circle.two{width:220px;height:220px}.circle.three{width:154px;height:154px}.circle.four{width:68px;height:68px}.two-col.reverse .roundel{order:1}.two-col.reverse .words{order:2}.quote-section .wrap{flex-direction:column;gap:25px;align-items:start}.contact-box{flex-direction:column;align-items:start;padding:33px 27px}.footer-grid{grid-template-columns:1fr;gap:35px}.footer{padding-bottom:90px}.page-hero{padding:55px 0}.reading h2{font-size:1.95rem}.content-section{padding:52px 0}.booking-layout{padding:45px 0}.scheduler-shell{padding:19px}.booking-side{padding:25px}.sticky-book{display:block;position:fixed;bottom:0;left:0;right:0;background:rgba(255,254,250,.97);backdrop-filter:blur(20px);border-top:1px solid var(--line);padding:10px 18px calc(10px + env(safe-area-inset-bottom));z-index:30}.sticky-book .button{width:100%;padding:14px}.footer p{max-width:400px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   CINEMATIC BRAND SYSTEM — inspired by Buck's final video end card
   Dark midnight • illuminated electric blue • warm molten gold
   All five pages share this layer; original layouts remain intact.
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
:root{
  color-scheme:dark;
  --ink:#f1f6ff;
  --ink-deep:#040b17;
  --muted:#afc0d3;
  --bg:#060e1a;
  --paper:#0c1b2e;
  --accent:#f4b64f;
  --line:#25405c;
  --cream:#ffd079;
  --lime:#102743;
  --white:#ffffff;
  --electric:#4bb9ff;
  --deep-blue:#102b4c;
  --shadow:0 25px 80px rgba(0,0,0,.42);
}
html{scroll-padding-top:88px}
body{
  background:var(--bg);
  color:var(--ink);
  background-image:radial-gradient(ellipse at 93% 3%,rgba(12,64,118,.22),transparent 35%);
}
::selection{color:#07111e;background:#f4b64f}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:var(--electric)}
h1,h2,h3,h4{letter-spacing:-.035em}
h2{font-weight:700}
h3{font-weight:700}
.topline{height:3px;background:linear-gradient(90deg,#0079d6 0%,#36b9ff 37%,#f3b64c 74%,#d38b2f 100%);box-shadow:0 0 19px rgba(67,180,255,.45)}
.site-header{
  background:rgba(4,12,25,.94);
  border-bottom:1px solid rgba(65,151,223,.2);
  box-shadow:0 12px 42px rgba(0,0,0,.15);
  backdrop-filter:blur(16px);
}
.brand img{filter:drop-shadow(0 0 11px rgba(64,177,245,.27));}
.brand-title{color:#f3f7ff;letter-spacing:.025em;font-weight:800;text-transform:uppercase;font-size:.87rem;line-height:1.3}
.brand-sub{color:var(--electric);font-size:.62rem;letter-spacing:.17em;line-height:1.35}
.desktop-nav a{color:#d5e4f4;font-weight:600;letter-spacing:.018em}
.desktop-nav a.current:not(.header-book){color:var(--cream)}
.desktop-nav a:hover,.footer-links a:hover,.textlink:hover{color:var(--electric)}
.header-book{
  color:#fff!important;
  background:linear-gradient(110deg,#073a66,#0b5484);
  border:1px solid #53baf7;
  border-radius:9px;
  box-shadow:inset 0 0 0 1px rgba(190,231,255,.1),0 0 20px rgba(22,143,238,.16);
}
.header-book:hover{background:#12699a;color:white!important;box-shadow:0 0 27px rgba(35,160,248,.28)}
.menu-button{border-color:var(--line);color:var(--ink);background:#0a1d32}
.mobile-nav.is-open{background:#0a1729;border-bottom:1px solid #25527b}
.mobile-nav a{color:var(--ink)}
.eyebrow{color:var(--electric);letter-spacing:.24em;font-size:.7rem}
.eyebrow.light{color:var(--cream)}
.intro-copy{color:var(--muted)}
.button{border-radius:9px;letter-spacing:.017em;box-shadow:none}
.button.primary,.button.cream{
  color:#091521;
  background:linear-gradient(115deg,#ffe0a1 0%,#f4bb58 47%,#d9942b 100%);
  border:1px solid rgba(255,223,148,.72);
  box-shadow:0 7px 25px rgba(235,155,55,.16),inset 0 1px 0 rgba(255,248,225,.5)
}
.button.primary:hover,.button.cream:hover{background:linear-gradient(115deg,#ffefc1,#ffd078 57%,#f3b851);box-shadow:0 10px 30px rgba(244,171,71,.31)}
.button.outline{color:#dbeaff;border-color:rgba(87,182,249,.55);background:rgba(28,92,150,.08)}
.button.outline:hover{border-color:var(--electric);background:rgba(20,107,179,.16)}
.button.outline-light{border-color:rgba(111,195,255,.52)}
.textlink{color:#74c9ff}
.home-opening{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:67px 0 47px;
  background:
   radial-gradient(ellipse at 80% 23%,rgba(22,104,195,.23),transparent 46%),
   radial-gradient(ellipse at 29% 71%,rgba(5,57,112,.17),transparent 47%),
   #050d1a;
}
.home-opening:before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.46;
  background-image:radial-gradient(circle at 12% 21%,#56bbff 0 1px,transparent 2px),radial-gradient(circle at 72% 15%,#f9b750 0 1px,transparent 2px),radial-gradient(circle at 93% 65%,#56bbff 0 1px,transparent 2px);
  background-size:210px 185px,291px 257px,367px 327px;
  mask-image:linear-gradient(180deg,black,transparent 95%);
}
.opening-top{align-items:end;margin-bottom:38px}
.opening-top h1{
  max-width:930px;
  font-size:clamp(3.2rem,6.8vw,6.9rem);
  font-weight:800;
  line-height:.99;
  text-transform:uppercase;
  letter-spacing:.042em;
  text-wrap:balance;
  color:#f6f6f4;
  text-shadow:0 4px 30px rgba(0,0,0,.33);
}
.gold-phrase,.gold-text{
  font-style:normal;
  color:#ffc75c;
  background:linear-gradient(110deg,#ffeba8 0%,#f4bf55 44%,#d48e2d 73%,#fbd37e 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
.opening-top aside{color:#bacfe5;border-left:2px solid rgba(63,168,238,.5);padding:3px 0 3px 18px}
.opening-top aside strong{color:var(--cream);font-size:.98rem;font-weight:800}
.hero-layout{gap:18px;grid-template-columns:minmax(0,1.7fr) minmax(310px,1fr)}
.video-outer{
  background:#061222;
  border:1px solid #2e77b1;
  border-radius:13px;
  box-shadow:0 0 0 1px rgba(43,134,215,.09),0 25px 70px rgba(0,0,0,.4),0 0 35px rgba(23,120,213,.1);
}
.video-stage{
  aspect-ratio:16/9;
  background-color:#031020;
  background-image:url('assets/img/video-ending-slide.png');
  background-position:center;
  background-size:cover;
}
.video-placeholder{
  align-items:flex-start;
  justify-content:flex-end;
  text-align:left;
  background:linear-gradient(0deg,rgba(2,9,20,.8),rgba(2,9,20,.03) 42%,transparent 75%);
  padding:22px 26px;
  pointer-events:none;
}
.film-overlay-tag{
  background:rgba(2,14,30,.83);
  border:1px solid rgba(85,187,251,.6);
  color:#d9efff;
  text-transform:uppercase;
  letter-spacing:.2em;
  font-size:.63rem;
  font-weight:800;
  padding:8px 12px;
  border-radius:4px;
}
.video-placeholder .video-note{margin:8px 0 0;font-size:.76rem;color:#e6effa;opacity:.98;text-shadow:0 1px 6px #000}
.video-caption{background:#0c2139;border-top:1px solid #264b71;color:#b5cee2;padding:16px 20px}
.video-caption strong{color:#fff}
.booking-panel{
  position:relative;isolation:isolate;overflow:hidden;
  background:linear-gradient(148deg,#0a335d 0%,#071a30 61%,#081220 100%);
  border:1px solid rgba(69,160,228,.56);
  border-radius:13px;
  box-shadow:inset 0 0 35px rgba(22,102,186,.13),0 22px 64px rgba(0,0,0,.26);
  padding:34px 30px;
}
.booking-panel:after{content:"";position:absolute;z-index:-1;pointer-events:none;width:270px;height:270px;border-radius:50%;background:radial-gradient(circle,rgba(46,165,252,.2),transparent 68%);top:-153px;right:-118px}
.booking-panel h2{font-size:clamp(2.2rem,3vw,3.25rem);font-weight:800;letter-spacing:-.045em;margin-bottom:17px}
.booking-panel p:not(.eyebrow){color:#c5dcf1}
.booking-panel .button{margin:27px 0 23px;padding:19px 15px;font-size:.95rem}
.booking-panel .divider-light{border-color:rgba(112,185,236,.25)}
.booking-panel small{color:#aebfd2}
.booking-panel a:not(.button){color:#96d9ff}
.detail-strip{border-bottom:1px solid rgba(67,142,212,.27);color:#b1c3d8}
.detail-strip b{color:#eff5ff}
.dot{background:var(--accent);box-shadow:0 0 11px rgba(252,189,81,.52)}
.section{background:#07121f}
.section.tinted,.section-tight.tinted{background:#0a192b}
.section-tight{background:#07121f}
.split-heading p,.section-head-centered p{color:var(--muted)}
.info-card,.resource-card,.address-box{
  background:linear-gradient(145deg,#11243b,#0b1a2a);
  border:1px solid rgba(76,147,204,.31);
  box-shadow:inset 0 1px 0 rgba(134,198,250,.035);
  border-radius:15px;
}
.info-card .num,.resource-card .meta{color:#f5bc5b}
.info-card p,.resource-card p{color:var(--muted)}
.circle{border-color:rgba(67,173,246,.3)}
.circle.one{box-shadow:0 0 32px rgba(29,127,229,.13)}
.circle.two{border-color:rgba(235,174,77,.34)}
.circle.three{background:radial-gradient(circle at 35% 30%,#14477b,#051b33 85%);border:1px solid rgba(82,187,255,.49);box-shadow:0 0 56px rgba(26,112,207,.24)}
.circle.four{border-color:rgba(248,194,99,.48)}
.roundel .particle{background:#f6bf67;box-shadow:0 0 16px rgba(255,190,83,.9)}
.bullet-rows li{color:#b8c8dc;border-color:var(--line)}
.bullet-rows strong{color:#f0f6ff}
.quote-section{
  position:relative;
  overflow:hidden;
  padding:82px 0;
  background:radial-gradient(ellipse at 89% 63%,rgba(14,110,193,.4),transparent 50%),linear-gradient(110deg,#050c19,#092647 76%,#071324);
  border-block:1px solid rgba(67,138,208,.22);
}
.quote-section:after{content:"";position:absolute;right:-160px;bottom:-150px;width:580px;height:580px;border:1px solid rgba(46,155,242,.15);box-shadow:0 0 0 75px rgba(46,155,242,.035),0 0 0 158px rgba(46,155,242,.025);border-radius:50%;pointer-events:none}
.quote-section h2{letter-spacing:-.035em}
.quote-section p{color:#bfd3e9}
.faq-stack,details.faq{border-color:var(--line)}
details.faq p{color:var(--muted)}
.contact-band{background:#060e1a}
.contact-box{
  background:radial-gradient(circle at 100% 0%,rgba(61,153,227,.2),transparent 43%),linear-gradient(120deg,#0d2844,#091829 75%);
  border:1px solid rgba(77,158,228,.42);
  border-radius:16px;
  box-shadow:0 18px 55px rgba(0,0,0,.24);
}
.contact-box p{color:#b9cadc}
.footer{background:#030a13;color:#c5d9ee;border-top:1px solid rgba(68,141,208,.35)}
.footer .brand-sub{color:var(--electric)}
.footer p,.footer a,.footer address{color:#b0c4d9}
.fineprint{color:#95abc0;border-top-color:rgba(98,177,240,.22)}
.page-hero{
  background:radial-gradient(ellipse at 84% 5%,rgba(20,119,198,.26),transparent 60%),linear-gradient(110deg,#07101e,#102640);
  border-bottom:1px solid rgba(66,142,202,.28);
}
.page-hero h1{color:#f7f8ff;font-weight:800}
.page-hero p{color:#bfd0e3}
.subnav a{border-color:#2d5476;color:#d6ecff;background:rgba(43,118,181,.09)}
.subnav a:hover{border-color:var(--electric)}
.content-section{background:#07121f;border-color:var(--line)}
.reading p,.reading li{color:#bac9d9}
.media-block{background:#10273c;border:1px solid #264b6a}
.callout{background:#112b45;color:#d0e0ef;border-color:#edb750}
.profile-symbol{background:linear-gradient(135deg,#1b527f,#0b223b);border:1px solid #3e8cca}
.address-box a{color:#92d5ff}
.resource-card .icon{color:var(--accent)}
.booking-layout{background:#07121f}
.scheduler-shell{background:linear-gradient(145deg,#102239,#0c1a2d);border:1px solid #2c587e}
.scheduler-status{background:#0a1726;border:1px dashed #43719a}
.scheduler-status p{color:#b8c8da}
.booking-side{background:linear-gradient(155deg,#102d4d,#0a1a2e);border:1px solid rgba(70,154,226,.35)}
.booking-side .side-item{border-color:rgba(125,173,221,.25)}
.booking-side .side-item p{color:#b7cbdf}
.price-table th{background:#153452;color:#f0f7ff}
.price-table td{color:#bbcddd}
.price-table td:last-child{color:#ffe0a2}
.sticky-book{background:rgba(4,12,25,.97)!important;border-top-color:#315b7f!important}
@media(max-width:780px){
  .home-opening{padding:44px 0 32px}
  .opening-top{gap:20px;margin-bottom:28px}
  .opening-top h1{font-size:clamp(2.9rem,10.7vw,5.35rem);line-height:1.04;letter-spacing:.025em}
  .opening-top aside{border-left:2px solid rgba(63,168,238,.5);padding:0 0 0 14px}
  .video-placeholder{padding:10px 13px}
  .video-placeholder .video-note{font-size:.63rem}
  .film-overlay-tag{font-size:.57rem;padding:6px 10px}
  .booking-panel{padding:27px 25px}
  .hero-layout{grid-template-columns:minmax(0,1fr)}
  .video-stage{aspect-ratio:16/9}
  .booking-panel h2{font-size:2.7rem}
  .footer-grid{gap:34px}
  .site-header .wrap{gap:12px}
  .brand-title{font-size:.77rem}
  .brand-sub{font-size:.55rem;letter-spacing:.11em}
  .sticky-book{box-shadow:0 -10px 28px rgba(0,0,0,.45)}
}
@media(max-width:390px){
  .brand img{width:34px;height:34px}
  .brand-title{font-size:.69rem}
  .opening-top h1{font-size:clamp(2.55rem,10vw,3.2rem)}
  .video-placeholder .video-note{display:none}
}

/* Light premium brand refinement. Layout and integration hooks are unchanged. */
:root{color-scheme:light;--ink:#0d1b2a;--ink-deep:#0d1b2a;--muted:#506176;--bg:#fff;--paper:#fff;--accent:#d9a441;--line:#d8e5f1;--cream:#d9a441;--lime:#f7fbff;--electric:#1e90ff;--deep-blue:#102b4c;--shadow:0 20px 65px rgba(21,73,120,.08)}
body{background:#fff;color:var(--ink);background-image:none}
::selection{color:#0d1b2a;background:#ffe3a8}
.site-header{background:rgba(255,255,255,.96);border-bottom-color:#dce9f5;box-shadow:0 8px 32px rgba(30,100,170,.04)}
.brand-title,.footer .brand{color:var(--ink)}
.brand-sub,.footer .brand-sub{color:#166bb6}
.brand img{filter:drop-shadow(0 0 8px rgba(30,144,255,.2))}
.desktop-nav a{color:#273c52}
.desktop-nav a.current:not(.header-book){color:#946616}
.desktop-nav a:hover,.footer-links a:hover,.textlink:hover{color:#1266ae}
.header-book{background:linear-gradient(110deg,#102b4c,#164777);border-color:#338dd0;box-shadow:0 0 18px rgba(30,144,255,.14)}
.header-book:hover{background:#164777}
.menu-button{background:#f7fbff;color:var(--ink);border-color:#cbddec}
.mobile-nav.is-open{background:#fff;border-bottom-color:#cbddec}
.mobile-nav a{color:var(--ink)}
.eyebrow{color:#166bb6}.eyebrow.light{color:#946616}
.button.primary,.button.cream{color:#0d1b2a;background:linear-gradient(115deg,#ffe4ab,#e7b656 52%,#d9a441);border-color:#d7a342;box-shadow:0 7px 23px rgba(190,138,37,.15),inset 0 1px 0 rgba(255,255,255,.65)}
.button.primary:hover,.button.cream:hover{background:linear-gradient(115deg,#ffebbe,#efc46e 57%,#e3b04c);box-shadow:0 9px 28px rgba(190,138,37,.23)}
.button.outline,.button.outline-light{color:#174b78;border-color:#91bfe5;background:rgba(30,144,255,.025)}
.button.outline:hover,.button.outline-light:hover{background:#edf6ff;border-color:#1e90ff}
.textlink{color:#1468b0}
.home-opening{background:radial-gradient(ellipse at 85% 20%,rgba(30,144,255,.065),transparent 50%),radial-gradient(ellipse at 24% 76%,rgba(217,164,65,.045),transparent 45%),#fff}
.home-opening:before{opacity:.24;mask-image:linear-gradient(180deg,black,transparent 95%)}
.opening-top h1{color:#0d1b2a;text-shadow:none}
.gold-phrase,.gold-text{color:#9a691a;background:linear-gradient(110deg,#956316,#bd8730 45%,#946017 76%,#b68128);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.opening-top aside{color:#506176;border-left-color:#70b7f1}
.opening-top aside strong{color:#0d1b2a}
.video-outer{background:#fff;border-color:#91bee2;box-shadow:0 0 0 1px rgba(30,144,255,.04),0 20px 60px rgba(21,73,120,.09),0 0 24px rgba(30,144,255,.07)}
/* Keep the supplied film artwork and player colors intact. */
.video-caption{background:#f7fbff;color:#506176;border-top-color:#d4e5f3}
.video-caption strong{color:#0d1b2a}
.booking-panel{background:radial-gradient(ellipse at 100% 0%,rgba(30,144,255,.08),transparent 60%),linear-gradient(145deg,#f7fbff,#fff);border-color:#a7cbe8;box-shadow:inset 0 0 25px rgba(30,144,255,.025),0 18px 50px rgba(21,73,120,.07)}
.booking-panel:after{background:radial-gradient(circle,rgba(30,144,255,.1),transparent 68%)}
.booking-panel h2{color:#0d1b2a}
.booking-panel p:not(.eyebrow),.booking-panel small{color:#506176}
.booking-panel .divider-light{border-color:#d4e5f3}
.booking-panel a:not(.button){color:#1468b0}
.detail-strip{border-bottom-color:#d8e5f1;color:#506176}.detail-strip b{color:#0d1b2a}
.dot{background:#d9a441;box-shadow:0 0 9px rgba(217,164,65,.35)}
.section,.section-tight,.content-section{background:#fff}
.section.tinted,.section-tight.tinted{background:#f7fbff}
.info-card,.resource-card,.address-box{background:linear-gradient(145deg,#fff,#f7fbff);border-color:#d5e4f1;box-shadow:0 8px 26px rgba(21,73,120,.035)}
.info-card .num,.resource-card .meta{color:#946616}
.info-card p,.resource-card p,.split-heading p,.section-head-centered p{color:#506176}
.circle{border-color:rgba(30,144,255,.23)}
.circle.one{box-shadow:0 0 30px rgba(30,144,255,.075)}
.circle.two,.circle.four{border-color:rgba(217,164,65,.42)}
.circle.three{background:radial-gradient(circle at 35% 30%,#fff,#e6f3ff 85%);border-color:#93c7ee;box-shadow:0 0 45px rgba(30,144,255,.13)}
.roundel .particle{background:#d9a441;box-shadow:0 0 14px rgba(217,164,65,.6)}
.bullet-rows li{color:#506176;border-color:#d8e5f1}.bullet-rows strong{color:#0d1b2a}
.quote-section{background:radial-gradient(ellipse at 90% 60%,rgba(30,144,255,.09),transparent 55%),linear-gradient(110deg,#f7fbff,#eef7ff);border-block-color:#d8e5f1;color:#0d1b2a}
.quote-section h2{color:#0d1b2a}.quote-section p{color:#506176}
.quote-section:after{border-color:rgba(30,144,255,.12);box-shadow:0 0 0 75px rgba(30,144,255,.025),0 0 0 158px rgba(30,144,255,.018)}
.faq-stack,details.faq{border-color:#d8e5f1}details.faq p{color:#506176}
.contact-band{background:#fff}
.contact-box{background:radial-gradient(circle at 100% 0%,rgba(30,144,255,.065),transparent 45%),linear-gradient(120deg,#f7fbff,#fff);border-color:#c3ddef;box-shadow:0 16px 45px rgba(21,73,120,.055)}
.contact-box p{color:#506176}
.footer{background:#f7fbff;color:#0d1b2a;border-top-color:#d8e5f1}
.footer h4{color:#0d1b2a}.footer p,.footer a,.footer address{color:#506176}
.footer .brand-title{color:#0d1b2a}
.fineprint{color:#506176;border-top-color:#d8e5f1}
.page-hero{background:radial-gradient(ellipse at 85% 0%,rgba(30,144,255,.075),transparent 60%),linear-gradient(110deg,#fff,#f7fbff);border-bottom-color:#d8e5f1}
.page-hero h1{color:#0d1b2a}.page-hero p{color:#506176}
.subnav a{border-color:#c3ddef;color:#174b78;background:#f7fbff}
.content-section{border-color:#d8e5f1}.reading p,.reading li{color:#506176}
.media-block{background:#f7fbff;border-color:#d8e5f1}
.callout{background:#f7fbff;color:#344e68;border-color:#d9a441}
.profile-symbol{background:linear-gradient(135deg,#f7fbff,#e3f1ff);border-color:#a4cdeb}
.address-box a{color:#1468b0}.resource-card .icon{color:#a57522}
.booking-layout{background:#fff}
.scheduler-shell{background:linear-gradient(145deg,#fff,#f7fbff);border-color:#c3ddef}
.scheduler-status{background:#f7fbff;border-color:#9bbfdb}.scheduler-status p{color:#506176}
.booking-side{background:linear-gradient(155deg,#f7fbff,#eef6ff);border-color:#c3ddef}
.booking-side .side-item{border-color:#d3e3f0}.booking-side .side-item p{color:#506176}
.price-table th{background:#eaf4ff;color:#0d1b2a}.price-table td{color:#506176}.price-table td:last-child{color:#805614}
.sticky-book{background:rgba(255,255,255,.97)!important;border-top-color:#c3ddef!important;box-shadow:0 -8px 28px rgba(21,73,120,.07)}
