:root{
  --ink:#080a0b;--charcoal:#0f1214;--charcoal2:#15191c;--ivory:#f1efe9;--ivory2:#e5e1da;
  --ice:#eef2f4;--ice-soft:#cfd7dc;--steel:#89959c;--steel-dark:#68747b;
  --line:rgba(238,242,244,.18);--dark-line:rgba(20,24,27,.14);
  --sans:'Helvetica Neue',Arial,sans-serif;--serif:Baskerville,'Iowan Old Style','Times New Roman',serif
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;background:var(--ink);color:#f6f3ee;font-family:var(--sans);font-weight:300;line-height:1.65;overflow-x:hidden}body.menu-open,body.lightbox-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.shell{width:min(1420px,calc(100% - 64px));margin:auto}.narrow{width:min(920px,calc(100% - 64px));margin:auto}
.eyebrow{font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--ice-soft);font-weight:600}.display{font-family:var(--serif);font-size:clamp(48px,6.5vw,98px);line-height:.94;font-weight:400;letter-spacing:-.035em;margin:0}.section-title{font-family:var(--serif);font-size:clamp(42px,5.4vw,78px);line-height:.98;font-weight:400;margin:.28em 0 .3em;letter-spacing:-.03em}.body-lg{font-size:clamp(17px,1.45vw,21px);line-height:1.7;color:#d9d9d5}.ice-line{width:56px;height:1px;background:var(--ice-soft);margin:0 0 20px}.btn{display:inline-flex;align-items:center;gap:18px;border:1px solid rgba(238,242,244,.64);padding:15px 22px;font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;transition:.3s ease;background:rgba(8,10,11,.22);color:#fff}.btn:hover,.btn:focus-visible{background:var(--ice);color:#0a0c0d;transform:translateY(-1px)}.btn span{font-size:15px}.text-link{display:inline-flex;align-items:center;gap:14px;margin-top:22px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ice)}.text-link span{font-size:17px;transition:transform .25s}.text-link:hover span{transform:translateX(4px)}.reveal{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}

.site-header{position:fixed;z-index:100;top:0;left:0;right:0;height:92px;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,rgba(5,6,7,.93),rgba(5,6,7,.66),transparent);backdrop-filter:blur(8px);transition:height .3s,background .3s}.site-header.scrolled{height:74px;background:rgba(7,9,10,.94)}.nav{display:flex;align-items:center;justify-content:space-between;width:min(1500px,calc(100% - 56px));margin:auto}.brand-crop{width:126px;height:78px;display:flex;align-items:center}.brand-crop img{width:100%;height:100%;object-fit:contain}.nav-links{display:flex;align-items:center;gap:28px;font-size:9px;letter-spacing:.22em;text-transform:uppercase}.nav-links a{opacity:.68;position:relative;transition:.25s}.nav-links a:after{content:'';position:absolute;left:0;right:100%;bottom:-10px;height:1px;background:var(--ice);transition:right .3s}.nav-links a:hover,.nav-links a.is-active{opacity:1}.nav-links a:hover:after,.nav-links a.is-active:after{right:0}.menu-btn{display:none;background:none;border:0;color:#fff;font-size:24px;padding:8px}.scroll-progress{position:absolute;left:0;bottom:-1px;width:100%;height:1px;background:transparent}.scroll-progress span{display:block;width:0;height:100%;background:var(--ice);box-shadow:0 0 12px rgba(238,242,244,.5)}

.hero{min-height:100svh;position:relative;display:flex;align-items:center;isolation:isolate;overflow:hidden}.hero-bg{position:absolute;inset:-4%;z-index:-3;background-image:url('/assets/images/hero-reaction.webp');background-size:cover;background-position:center center;transform:scale(1.04);will-change:transform}.hero:before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(4,5,6,.40),rgba(4,5,6,.14) 34%,rgba(4,5,6,.32) 70%,rgba(4,5,6,.78)),linear-gradient(90deg,rgba(4,5,6,.17),rgba(4,5,6,.03) 48%,rgba(4,5,6,.16))}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 50% 48%,rgba(0,0,0,.01),rgba(0,0,0,.12) 50%,rgba(0,0,0,.40))}.hero-inner{width:min(1080px,calc(100% - 56px));padding-top:108px;margin:auto;text-align:center}.hero-copy{max-width:980px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.hero-logo{width:clamp(300px,38vw,570px);max-height:45vh;object-fit:contain;margin:0 auto clamp(16px,2vh,26px);filter:drop-shadow(0 8px 30px rgba(0,0,0,.52))}.hero .display{font-size:clamp(40px,5.2vw,74px);line-height:1.01;max-width:980px;text-wrap:balance;text-shadow:0 3px 18px rgba(0,0,0,.45)}.hero-subtitle{font-family:var(--serif);font-size:clamp(17px,1.85vw,26px);font-weight:400;line-height:1.36;max-width:760px;margin:17px auto 29px;color:#eeeae4;text-wrap:balance;text-shadow:0 2px 15px rgba(0,0,0,.55)}.hero .btn{backdrop-filter:blur(6px)}.hero-mark{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:#cbd1d4;display:flex;align-items:center}.scroll-line{display:inline-block;width:1px;height:42px;background:linear-gradient(var(--ice),transparent);margin-right:14px}

.intro{background:var(--ivory);color:#141617;padding:80px 0 74px}.intro-grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(460px,1.1fr);gap:clamp(55px,8vw,120px);align-items:center}.intro .eyebrow{color:var(--steel-dark)}.intro .section-title{font-size:clamp(42px,4.3vw,64px);line-height:1.01;margin:.25em 0 0;max-width:590px}.intro .body-lg{color:#41474a;font-size:clamp(16px,1.25vw,19px);line-height:1.62;margin:0;max-width:680px}.intro .ice-line{background:var(--steel)}.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:20px 34px;margin-top:34px;padding-top:23px;border-top:1px solid #cbd0d2}.fact strong{display:block;font-family:var(--serif);font-size:32px;font-weight:500;line-height:1}.fact span{display:block;margin-top:7px;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#687177}

.moments-carousel{background:#090b0c;padding:56px 0 64px;overflow:hidden;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}.moments-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.moments-title{font-family:var(--serif);font-size:clamp(34px,3.5vw,54px);font-weight:400;line-height:1;margin:.2em 0 0}.moments-actions{display:flex;align-items:center;gap:18px}.moments-head p{max-width:360px;margin:0;color:#949ba0;font-size:12px;letter-spacing:.06em;text-align:right}.gallery-arrows{display:flex;gap:8px;flex:0 0 auto}.gallery-arrow{width:42px;height:42px;border:1px solid rgba(238,242,244,.34);border-radius:50%;background:rgba(9,11,12,.72);color:var(--ice);display:grid;place-items:center;font-size:18px;line-height:1;cursor:pointer;transition:background .25s,border-color .25s,transform .25s}.gallery-arrow:hover,.gallery-arrow:focus-visible{background:rgba(238,242,244,.1);border-color:rgba(238,242,244,.72);transform:translateY(-1px)}.moments-viewport{width:100%;overflow-x:auto;scrollbar-width:none;outline:none;cursor:default;padding-bottom:4px;scroll-behavior:smooth}.moments-viewport::-webkit-scrollbar{display:none}.moments-track{display:flex;gap:12px;width:max-content;padding:0 32px}.moment-card{position:relative;border:0;padding:0;background:#111;overflow:hidden;width:clamp(260px,26vw,430px);height:clamp(180px,20vw,300px);cursor:zoom-in;flex:0 0 auto;color:#fff}.moment-card:nth-child(3n+2){width:clamp(220px,21vw,350px)}.moment-card:nth-child(4n){width:clamp(300px,29vw,470px)}.moment-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.92) brightness(.94);transition:transform .7s ease,filter .45s ease}.moment-card:after{content:'';position:absolute;inset:0;border:1px solid rgba(238,242,244,.12);pointer-events:none}.moment-card:hover img,.moment-card:focus-visible img{transform:scale(1.028);filter:saturate(1) brightness(1)}.moment-card span{position:absolute;right:12px;bottom:12px;width:31px;height:31px;border:1px solid rgba(255,255,255,.62);border-radius:50%;display:grid;place-items:center;background:rgba(4,5,6,.4);font-size:17px;backdrop-filter:blur(5px)}

.why-story{background:#0f1214;padding:92px 0 64px;position:relative;overflow-x:clip;overflow-y:visible}.story-intro{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);gap:clamp(54px,8vw,128px);align-items:end;margin-bottom:38px;padding:0 0 42px;border-bottom:1px solid rgba(238,242,244,.13);position:relative;z-index:2}.story-intro-heading{max-width:690px}.story-intro .section-title{font-size:clamp(46px,4.7vw,68px);line-height:.98;max-width:680px;margin:.32em 0 0}.story-intro-copy{max-width:560px;padding-bottom:4px}.story-intro-copy .ice-line{width:42px;margin-bottom:18px}.story-intro .body-lg{max-width:560px;margin:0;font-size:clamp(16px,1.25vw,19px);line-height:1.65;color:#d7dddf}.story-cue{margin-top:22px;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#7f898f}.why-layout{--why-side:clamp(260px,22vw,340px);--why-gap:clamp(48px,6vw,92px);display:grid;grid-template-columns:var(--why-side) minmax(0,1fr);column-gap:var(--why-gap);align-items:start;position:relative;z-index:2}.why-nav{grid-column:1;grid-row:1;position:sticky;top:96px;align-self:start;height:max-content;padding:12px 0 30px;z-index:30}.why-nav-line{position:absolute;left:0;top:12px;bottom:30px;width:1px;background:rgba(238,242,244,.15)}.why-nav-line span{display:block;width:1px;height:16.666%;background:var(--ice);transition:transform .55s cubic-bezier(.2,.7,.2,1);transform-origin:top}.why-nav-item{width:100%;display:grid;grid-template-columns:44px 1fr;gap:8px;align-items:start;text-align:left;border:0;background:none;color:#a4adb2;padding:13px 0 13px 22px;cursor:pointer;font-size:12px;line-height:1.45;transition:color .3s,transform .3s;text-shadow:0 1px 8px rgba(0,0,0,.55)}.why-nav-item span{font-family:var(--serif);font-size:14px;color:#7f898f}.why-nav-item.is-active{color:#fff;transform:translateX(5px)}.why-nav-item.is-active span{color:var(--ice)}.why-panels{grid-column:1/-1;grid-row:1;position:relative;z-index:1}.why-panel{--why-bg:none;--why-y:0px;--why-focus:50%;position:relative;min-height:46svh;display:flex;flex-direction:column;justify-content:center;border-top:1px solid rgba(238,242,244,.13);padding:44px 0 48px calc(var(--why-side) + var(--why-gap));opacity:.5;transform:translateY(10px);transition:opacity .45s,transform .45s;isolation:isolate;overflow:visible}.why-panel::before{content:"";position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);width:100vw;background-image:var(--why-bg);background-size:cover;background-position:center calc(var(--why-focus) + var(--why-y));z-index:-2;opacity:.64;filter:saturate(1) contrast(1.02);will-change:background-position}.why-panel::after{content:"";position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);width:100vw;background:linear-gradient(90deg,rgba(7,9,10,.75) 0%,rgba(7,9,10,.66) 23%,rgba(7,9,10,.46) 50%,rgba(7,9,10,.58) 76%,rgba(7,9,10,.70) 100%);z-index:-1}.why-panel:last-child{border-bottom:1px solid rgba(238,242,244,.13)}.why-panel.is-active{opacity:1;transform:none}.why-panel>*{position:relative;z-index:2;text-shadow:0 3px 20px rgba(0,0,0,.45)}.why-number{font-family:var(--serif);font-size:clamp(48px,6.4vw,88px);line-height:.8;color:rgba(238,242,244,.16);margin-bottom:14px}.why-panel h3{font-family:var(--serif);font-size:clamp(38px,4.25vw,58px);font-weight:400;line-height:1.02;margin:0 0 16px;max-width:860px}.why-panel p{font-size:clamp(16px,1.3vw,19px);line-height:1.62;color:#d7dddf;max-width:760px;margin:0}.why-detail{margin-top:24px;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#bcc4c8}

.events-story{background:var(--ivory);color:#161819;padding:110px 0 0}.events-heading{padding-bottom:70px}.events-heading .eyebrow{color:var(--steel-dark)}.events-heading .body-lg{color:#4a5155;max-width:720px}.event-sequence{position:relative;background:#090b0c}.event-stage{position:sticky;top:0;height:100svh;overflow:hidden;background:#090b0c;z-index:1}.event-scroll-track{position:relative;margin-top:-100svh;z-index:0;pointer-events:none}.event-scroll-step{height:88svh}.event-scene{position:absolute;inset:0;height:100%;overflow:hidden;background:#090b0c;opacity:0;pointer-events:none;transition:opacity 1.05s cubic-bezier(.22,.61,.36,1);z-index:0}.event-scene.is-active{opacity:1;pointer-events:auto;z-index:2}.event-scene img{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover;transform:translate3d(0,var(--event-shift,0px),0) scale(1.035);filter:saturate(.94) brightness(.88);will-change:transform;transition:filter 1s ease}.event-scene.is-active img{filter:saturate(1) brightness(.94)}.event-shade{position:absolute;inset:0;background:radial-gradient(circle at 50% 48%,rgba(5,7,8,.48) 0%,rgba(5,7,8,.34) 28%,rgba(5,7,8,.18) 58%,rgba(5,7,8,.12) 100%),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.26))}.event-scene-inner{height:100%;display:flex;align-items:center;justify-content:center;padding-top:clamp(24px,4vh,50px);padding-bottom:clamp(70px,9vh,120px);position:relative;z-index:2}.event-scene-copy{max-width:720px;margin:0 auto;text-align:center;transform:translateY(18px);opacity:0;transition:opacity .9s ease,transform 1.05s cubic-bezier(.2,.7,.2,1)}.event-scene.is-active .event-scene-copy{transform:translateY(0);opacity:1}.event-index{font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--ice-soft);margin-bottom:16px}.event-scene h3{font-family:var(--serif);font-size:clamp(44px,6vw,86px);font-weight:400;line-height:.98;margin:0 0 24px;letter-spacing:-.025em;color:var(--ice);text-shadow:0 3px 22px rgba(0,0,0,.48)}.event-scene p{font-size:clamp(16px,1.4vw,20px);line-height:1.65;color:#e0e2e1;max-width:640px;margin:0 auto}.event-scene .text-link{justify-content:center}

.booking{background:#090b0c;padding:120px 0}.booking-layout{display:grid;grid-template-columns:minmax(320px,.68fr) minmax(0,1.32fr);gap:clamp(58px,7vw,110px);align-items:start}.booking-sticky{position:sticky;top:130px;z-index:5}.booking-sticky .section-title{max-width:580px}.booking-sticky .body-lg{max-width:480px}.booking-progress{width:1px;height:160px;background:rgba(238,242,244,.13);margin-top:44px}.booking-progress span{display:block;width:1px;height:0;background:var(--ice);box-shadow:0 0 10px rgba(238,242,244,.45);transition:height .12s linear}.booking-steps{position:relative}.booking-step{--booking-photo-opacity:0;--booking-photo-y:18px;--booking-photo-x:-24px;position:relative;display:grid;grid-template-columns:minmax(360px,1.12fr) minmax(300px,.88fr);gap:clamp(24px,3vw,48px);align-items:center;min-height:42svh;padding:34px 0;border-top:1px solid rgba(238,242,244,.12);isolation:isolate}.booking-step:last-child{border-bottom:1px solid rgba(238,242,244,.12)}.booking-step:nth-child(2n){--booking-photo-x:24px;grid-template-columns:minmax(300px,.88fr) minmax(360px,1.12fr)}.booking-step-media{grid-column:1;grid-row:1;position:relative;z-index:1;margin:0;justify-self:start;width:100%;max-width:680px;opacity:var(--booking-photo-opacity);transform:translate(var(--booking-photo-x),var(--booking-photo-y));transition:opacity 1.25s cubic-bezier(.2,.7,.2,1),transform 1.25s cubic-bezier(.2,.7,.2,1);pointer-events:none;filter:drop-shadow(0 22px 55px rgba(0,0,0,.24))}.booking-step:nth-child(2n) .booking-step-media{grid-column:2;grid-row:1;justify-self:end}.booking-step-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,7,8,.06),rgba(5,7,8,.18));pointer-events:none;border-radius:2px}.booking-step-media img{display:block;width:100%;height:auto;object-fit:contain;filter:saturate(.98) brightness(.88);transition:filter 1.6s ease}.booking-step.is-active .booking-step-media{opacity:1;transform:translate(0,0)}.booking-step.is-active .booking-step-media img{filter:saturate(1) brightness(.98)}.booking-step-content{grid-column:2;grid-row:1;position:relative;z-index:2;max-width:620px;opacity:.42;transform:translateY(14px);transition:opacity 1.05s cubic-bezier(.2,.7,.2,1),transform 1.05s cubic-bezier(.2,.7,.2,1);text-shadow:0 3px 22px rgba(0,0,0,.3)}.booking-step:nth-child(2n) .booking-step-content{grid-column:1;grid-row:1}.booking-step.is-active .booking-step-content{opacity:1;transform:none}.booking-step-content>span{display:block;font-family:var(--serif);font-size:17px;color:var(--ice-soft);margin-bottom:16px}.booking-step h3{font-family:var(--serif);font-size:clamp(38px,4.25vw,62px);font-weight:400;line-height:1.02;margin:0 0 14px;color:var(--ice)}.booking-step p{max-width:580px;font-size:18px;color:#d1d6d8;margin:0;line-height:1.65}

.founders{padding:130px 0 90px;background:#0f1214}.people-heading{max-width:940px;margin-bottom:90px}.people-heading .body-lg{max-width:760px}.founder-profile{width:min(1420px,calc(100% - 64px));margin:0 auto 130px;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(55px,8vw,120px);align-items:center;min-height:78svh}.founder-profile.reverse{grid-template-columns:.92fr 1.08fr}.founder-profile.reverse .founder-image{order:2}.founder-image{aspect-ratio:4/5;overflow:hidden;position:relative;background:#080a0b}.founder-image img{width:100%;height:112%;object-fit:cover;object-position:center;transform:translateY(-5%);filter:saturate(.82) contrast(1.03);will-change:transform}.founder-image:after{content:'';position:absolute;inset:0;border:1px solid rgba(238,242,244,.15);pointer-events:none}.founder-copy{max-width:570px}.founder-copy h3{font-family:var(--serif);font-size:clamp(44px,5vw,70px);font-weight:400;line-height:1.02;margin:12px 0 22px}.founder-copy p{color:#c0c5c7;font-size:16px;line-height:1.75}.founder-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.founder-tags span{border:1px solid rgba(238,242,244,.18);padding:7px 10px;font-size:8px;letter-spacing:.15em;text-transform:uppercase;color:#cbd2d6}

.logos{background:#f6f4ef;color:#17191a;padding:68px 0;overflow:hidden}.logos-head{position:relative}.logos-label{text-align:center;font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:#5d666b;margin-bottom:34px}.logo-gallery-controls{display:none}.logo-viewport{overflow:hidden}.logo-track{display:flex;width:max-content;gap:66px;align-items:center;animation:marquee 34s linear infinite}.logo-track img{width:145px;height:70px;object-fit:contain;filter:grayscale(1) contrast(.9);opacity:.7}.logos:hover .logo-track{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-50%)}}

.reviews{padding:130px 0;background:var(--ivory);color:#161819}.reviews-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(60px,8vw,130px);align-items:start}.reviews .eyebrow{color:var(--steel-dark)}.review-stage{min-height:480px;display:flex;flex-direction:column;justify-content:space-between;border-top:1px solid #c8ced1;border-bottom:1px solid #c8ced1;padding:36px 0 26px}.stars{letter-spacing:.2em;color:#6d777d;font-size:16px}.review-slides{position:relative;flex:1;min-height:280px}.review-slide{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;opacity:0;transform:translateY(18px);pointer-events:none;transition:opacity .55s,transform .55s}.review-slide.is-active{opacity:1;transform:none;pointer-events:auto}.review-slide blockquote{font-family:var(--serif);font-size:clamp(34px,4.3vw,62px);line-height:1.08;font-weight:400;margin:0;max-width:900px}.review-type{margin-top:26px;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#6f777c}.review-controls{display:flex;align-items:center;justify-content:space-between;gap:20px}.review-prev,.review-next{width:44px;height:44px;border:1px solid #b9c0c4;border-radius:50%;background:transparent;color:#141719;cursor:pointer;transition:.25s}.review-prev:hover,.review-next:hover{background:#141719;color:#fff}.review-dots{display:flex;gap:9px;align-items:center;justify-content:center;flex:1}.review-dot{width:24px;height:1px;border:0;padding:0;background:#c0c6c9;cursor:pointer;transition:.3s}.review-dot.is-active{width:46px;background:#202527}

.showreel{padding:130px 0;background:#090b0c}.showreel-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}.showreel-head p{max-width:420px;color:#929a9f;font-size:14px;margin:0}.showreel-frame{aspect-ratio:16/9;position:relative;overflow:hidden;border:1px solid rgba(238,242,244,.16);background:#060708}.showreel-frame img{width:100%;height:100%;object-fit:cover;filter:brightness(.62) saturate(.84);transition:1.2s}.showreel-frame:hover img{transform:scale(1.016);filter:brightness(.7) saturate(.92)}.play{position:absolute;inset:0;display:grid;place-items:center}.play-button{width:96px;height:96px;border:1px solid var(--ice-soft);border-radius:50%;display:grid;place-items:center;backdrop-filter:blur(5px);background:rgba(0,0,0,.23)}.play-button:after{content:'';width:0;height:0;border-top:9px solid transparent;border-bottom:9px solid transparent;border-left:14px solid #fff;margin-left:5px}.showreel-note{position:absolute;bottom:22px;left:24px;font-size:9px;letter-spacing:.23em;text-transform:uppercase;color:#e9ecee}.showreel-embed{position:absolute;inset:0;width:100%;height:100%;border:0;display:none}

.contact{padding:130px 0;background:#0f1214}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(70px,9vw,140px);align-items:start}.contact-copy{position:sticky;top:130px}.contact-copy .body-lg{max-width:520px}.contact-meta{color:#8f989d;font-size:12px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:26px 20px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:9px;letter-spacing:.19em;text-transform:uppercase;color:#929ba0}.field input,.field textarea,.field select{width:100%;border:0;border-bottom:1px solid rgba(238,242,244,.24);background:transparent;color:#fff;border-radius:0;padding:13px 0;outline:0}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--ice)}.field select option{background:#111;color:#fff}.field textarea{min-height:140px;resize:vertical}.field input[type=date]{color-scheme:dark}.form-status{grid-column:1/-1;color:#bfc7cb;font-size:12px}

.footer{background:#070809;padding:75px 0 28px;border-top:1px solid rgba(255,255,255,.07)}.footer-grid{display:grid;grid-template-columns:1.6fr .7fr .7fr;gap:60px;padding-bottom:55px}.footer-logo{width:230px;margin:0 0 14px}.footer p{color:#8d969b;font-size:13px}.footer h4{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#dbe0e3;margin:0 0 16px}.footer-links a{display:block;padding:6px 0;color:#8f989d;font-size:12px}.footer-links a:hover{color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.07);padding-top:22px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#697278}

.image-lightbox{position:fixed;inset:0;z-index:500;background:rgba(4,5,6,.95);display:grid;place-items:center;padding:clamp(20px,4vw,60px);opacity:0;visibility:hidden;transition:opacity .28s,visibility .28s;backdrop-filter:blur(10px)}.image-lightbox.open{opacity:1;visibility:visible}.image-lightbox img{max-width:min(1500px,94vw);max-height:88vh;width:auto;height:auto;box-shadow:0 30px 80px rgba(0,0,0,.45)}.lightbox-close{position:absolute;top:18px;right:22px;width:46px;height:46px;border:1px solid rgba(238,242,244,.5);border-radius:50%;background:rgba(0,0,0,.2);color:#fff;font-size:29px;line-height:1;cursor:pointer}

/* Supporting SEO/location + journal pages */
.location-hero{padding:180px 0 100px;background:linear-gradient(90deg,rgba(5,6,7,.84),rgba(5,6,7,.44)),url('/assets/images/event-corporate.webp') center/cover;min-height:70vh;display:flex;align-items:end}.location-main{padding:100px 0;background:var(--ivory);color:#17191a}.location-main .eyebrow{color:var(--steel-dark)}.location-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:100px}.location-main p{font-size:17px;color:#454b4e}.location-side{border-left:1px solid #c8ced1;padding-left:34px}.location-side a{display:block;padding:12px 0;border-bottom:1px solid #d5d9db;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.location-cta{padding:90px 0;background:#0b0d0e;text-align:center}.journal-hero{padding:180px 0 70px}.posts{padding:30px 0 120px}.post-card{padding:35px 0;border-top:1px solid rgba(255,255,255,.12)}.post-card h2{font-family:var(--serif);font-size:42px;font-weight:400;margin:8px 0}.post-meta{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--ice-soft)}

@media(max-width:1040px){
  .shell,.narrow{width:min(100% - 38px,940px)}.site-header{height:78px}.site-header.scrolled{height:70px}.nav{width:calc(100% - 28px)}.brand-crop{width:102px;height:68px}.menu-btn{display:block}.nav-links{position:fixed;inset:70px 0 0;background:rgba(8,10,11,.98);display:flex;flex-direction:column;justify-content:center;gap:28px;font-size:12px;transform:translateX(100%);transition:.35s}.menu-open .nav-links{transform:none}.hero-inner{padding-top:96px}.hero-logo{width:clamp(270px,55vw,500px);max-height:40vh}.hero .display{font-size:clamp(38px,7vw,64px)}
  .intro-grid,.reviews-layout,.contact-grid,.location-grid{grid-template-columns:1fr;gap:44px}.intro-heading{max-width:720px}.intro-copy{max-width:780px}.story-intro{grid-template-columns:1fr;gap:26px;align-items:start;padding-bottom:30px;margin-bottom:26px}.story-intro-copy{max-width:700px}.story-intro .section-title{max-width:650px}.why-layout{grid-template-columns:1fr}.why-nav{grid-column:1;grid-row:1;position:sticky;top:70px;z-index:20;background:rgba(15,18,20,.74);backdrop-filter:blur(8px);padding:12px 0 10px;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid rgba(238,242,244,.12)}.why-panels{grid-column:1;grid-row:2}.why-panel{padding-left:0;min-height:50svh}.why-nav::-webkit-scrollbar{display:none}.why-nav-line{display:none}.why-nav-item{display:block;min-width:max-content;padding:9px 12px;border:1px solid rgba(238,242,244,.11);font-size:10px}.why-nav-item span{margin-right:7px}.why-nav-item.is-active{transform:none;background:#fff;color:#0a0c0d}.why-nav-item.is-active span{color:#0a0c0d}.why-panel{min-height:54svh}.booking-layout{grid-template-columns:1fr;gap:30px}.booking-sticky{position:static}.booking-progress{width:100%;height:1px;margin:32px 0 0}.booking-progress span{height:1px;width:0}.booking-step,.booking-step:nth-child(2n){grid-template-columns:1fr;gap:22px;min-height:auto;padding:34px 0}.booking-step-media,.booking-step:nth-child(2n) .booking-step-media{grid-column:1;grid-row:auto;justify-self:start;max-width:min(760px,100%);transform:translateY(var(--booking-photo-y))}.booking-step-content,.booking-step:nth-child(2n) .booking-step-content{grid-column:1;grid-row:auto;max-width:760px}.founder-profile,.founder-profile.reverse{grid-template-columns:1fr;gap:42px;min-height:auto}.founder-profile.reverse .founder-image{order:0}.founder-image{max-height:820px}.contact-copy{position:static}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.event-scroll-step{height:78svh}
}

@media(max-width:640px){
  .shell,.narrow{width:calc(100% - 28px)}.display{font-size:50px}.section-title{font-size:43px}.hero{min-height:94svh}.hero-bg{background-position:73% center}.hero-inner{width:calc(100% - 28px);padding-top:84px}.hero-logo{width:min(85vw,390px);margin-bottom:14px}.hero .display{font-size:clamp(34px,10.2vw,47px)}.hero-subtitle{font-size:17px;margin:13px auto 23px}.hero .btn{padding:13px 17px;font-size:9px}.hero-mark{display:none}
  .intro{padding:62px 0 56px}.intro-grid{gap:28px}.intro .section-title{font-size:clamp(38px,10.8vw,49px)}.facts{grid-template-columns:1fr 1fr;gap:22px 16px}.fact strong{font-size:27px}
  .moments-carousel{padding:44px 0 48px}.moments-head{align-items:start;flex-direction:column}.moments-actions{width:100%;justify-content:space-between}.moments-head p{text-align:left}.gallery-arrow{width:40px;height:40px}.moments-track{padding:0 14px;gap:10px}.moment-card,.moment-card:nth-child(3n+2),.moment-card:nth-child(4n){width:78vw;height:54vw;max-height:280px}
  .why-story,.booking,.founders,.reviews,.showreel,.contact{padding:76px 0}.story-intro{margin-bottom:22px;padding-bottom:24px;gap:20px}.story-intro .section-title{font-size:clamp(39px,11vw,50px);max-width:440px}.story-intro .body-lg{font-size:16px;line-height:1.6}.story-cue{margin-top:16px}.why-layout{width:100%}.why-nav{padding-left:14px;padding-right:14px}.why-panels{padding:0}.why-panel{min-height:54svh;padding:42px 0}.why-panel::before,.why-panel::after{left:50%;width:100vw}.why-panel h3{font-size:clamp(39px,12vw,55px)}.why-panel p{font-size:17px}.why-number{font-size:66px}
  .events-story{padding-top:80px}.events-heading{padding-bottom:50px}.event-scroll-step{height:82svh}.event-shade{background:radial-gradient(circle at 50% 48%,rgba(5,7,8,.48) 0%,rgba(5,7,8,.36) 35%,rgba(5,7,8,.22) 70%,rgba(5,7,8,.18) 100%),linear-gradient(180deg,rgba(5,7,8,.10),rgba(5,7,8,.42))}.event-scene-inner{align-items:center;justify-content:center;padding:0 20px}.event-scene-copy{max-width:620px;margin:0 auto;text-align:center;transform:translateY(14px)}.event-scene.is-active .event-scene-copy{transform:translateY(0)}.event-scene h3{font-size:clamp(42px,12vw,58px)}.event-scene p{font-size:16px}
  .booking-step{padding:28px 0}.booking-step-media{max-width:100%!important}.booking-step-media:after{background:rgba(5,7,8,.18)}.booking-step h3{font-size:clamp(39px,12vw,54px)}.booking-step p{font-size:17px}.founder-profile,.founder-profile.reverse{width:calc(100% - 28px);margin-bottom:84px}.people-heading{margin-bottom:62px}.founder-copy h3{font-size:45px}.founder-copy p{font-size:15px}.reviews-layout{gap:32px}.review-stage{min-height:430px}.review-slides{min-height:280px}.review-slide blockquote{font-size:clamp(31px,9vw,43px)}.showreel-head{align-items:start;flex-direction:column}.play-button{width:68px;height:68px}.contact-form{grid-template-columns:1fr}.field{grid-column:1/-1}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.copyright{flex-direction:column;gap:10px}.logo-track{gap:38px}.logo-track img{width:120px}.location-hero{min-height:60vh;padding:150px 0 70px}
}

.brand-mark-inline{display:block;width:clamp(42px,3.8vw,58px);height:auto;object-fit:contain;opacity:.72;margin:0 0 22px;filter:drop-shadow(0 4px 18px rgba(0,0,0,.28))}.reviews-heading .brand-mark-inline,.contact-copy .brand-mark-inline{margin-bottom:18px}.booking-sticky .brand-mark-inline{margin-bottom:20px}.story-intro-heading .brand-mark-inline{margin-bottom:18px}@media(max-width:760px){.brand-mark-inline{width:42px;margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}.logo-track{animation:none}.hero-bg,.event-scene img,.founder-image img,.booking-step-media{transform:none!important}.why-panel,.booking-step,.event-scene-copy,.review-slide{transition:none}}

/* Compatibility for supporting pages */
.gold-line{width:56px;height:1px;background:var(--ice-soft);margin:22px 0}.btn.dark{border-color:#737d82;color:#171a1c;background:transparent}.btn.dark:hover,.btn.dark:focus-visible{background:#171a1c;color:#fff;border-color:#171a1c}

.event-scene .text-link{color:var(--ice);text-shadow:0 2px 12px rgba(0,0,0,.45)}

/* V17 refinement pass — simplified brand mark, persistent CTA, clearer hero and editable editorial details */
.brand-crop{width:58px;height:58px;flex:0 0 58px}.brand-crop img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 14px rgba(0,0,0,.28))}
.availability-cta{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:10px 16px;border:1px solid rgba(238,242,244,.58);font-size:8px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;white-space:nowrap;background:rgba(8,10,11,.38);transition:background .25s,color .25s,border-color .25s,transform .25s}
.availability-cta:hover,.availability-cta:focus-visible{background:var(--ice);color:#090b0c;border-color:var(--ice);transform:translateY(-1px)}
.hero-logo{width:clamp(310px,37vw,550px);max-height:none;margin-bottom:8px}
.hero-brandline{font-size:clamp(10px,.8vw,12px);letter-spacing:.3em;text-transform:uppercase;color:#f0ede7;font-weight:600;margin:0 auto 22px;text-shadow:0 2px 15px rgba(0,0,0,.62)}
.hero-subtitle{font-family:var(--sans);font-size:clamp(15px,1.25vw,19px);letter-spacing:.03em;line-height:1.55;max-width:650px;margin:14px auto 27px;color:#e9e8e4}
.hero-mark{position:static;left:auto;bottom:auto;transform:none;margin-top:24px;opacity:.8;transition:opacity .25s}.hero-mark:hover{opacity:1}.scroll-line{height:28px}
.why-nav-item em{font-style:normal;color:inherit}
.event-index{display:flex;align-items:baseline;justify-content:center;gap:12px;font-family:var(--serif);font-size:clamp(20px,1.9vw,28px);line-height:1.1;letter-spacing:.025em;text-transform:none;color:#f4f1eb;margin-bottom:18px;text-shadow:0 2px 14px rgba(0,0,0,.5)}
.event-index span{font-family:var(--sans);font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--ice-soft)}
.logo-track{gap:76px}.logo-track img{width:176px;height:84px;filter:grayscale(1) saturate(.3) contrast(.92);opacity:.76;transition:filter .35s ease,opacity .35s ease,transform .35s ease}.logo-track img:hover{filter:grayscale(0) saturate(1) contrast(1);opacity:1;transform:scale(1.055)}
.intro + .showreel{padding:92px 0 100px}.intro + .showreel .showreel-head{margin-bottom:32px}
.thank-you-page{min-height:100svh;display:grid;place-items:center;padding:140px 28px 80px;background:radial-gradient(circle at 50% 28%,rgba(238,242,244,.055),transparent 34%),#090b0c}.thank-you-card{width:min(820px,100%);text-align:center}.thank-you-mark{width:84px;margin:0 auto 28px;opacity:.9}.thank-you-card h1{font-family:var(--serif);font-size:clamp(48px,7vw,86px);font-weight:400;line-height:.96;letter-spacing:-.035em;margin:0 0 24px}.thank-you-card p{font-size:clamp(17px,1.5vw,21px);line-height:1.7;color:#cfd5d8;max-width:620px;margin:0 auto 34px}

@media(max-width:1040px){
  .brand-crop{width:50px;height:50px;flex-basis:50px}
  .availability-cta{margin-left:auto;margin-right:10px;padding:9px 12px;font-size:7.5px}
  .nav-links{order:4}
  .menu-btn{order:3}
  .hero-logo{width:clamp(280px,55vw,470px)}
  .event-index{font-size:clamp(19px,3vw,25px)}
}
@media(max-width:760px){
  .brand-crop{width:44px;height:44px;flex-basis:44px}
  .availability-cta{padding:8px 10px;letter-spacing:.14em;font-size:7px}
  .hero-brandline{font-size:8px;letter-spacing:.22em;margin-bottom:16px}
  .hero-mark{display:flex;margin-top:18px;font-size:8px}
  .scroll-line{height:22px}
  .logo-track img{width:138px;height:72px}
  .event-index{font-size:20px;margin-bottom:14px}
}

/* V18 logo placement — exact new supplied transparent logos */
.brand-crop{width:156px;height:58px;flex:0 0 156px}
.brand-crop img{width:100%;height:100%;object-fit:contain}
.hero-logo{width:clamp(470px,58vw,860px);max-height:none;margin-bottom:10px}
.brand-mark-inline{width:clamp(105px,8vw,138px);opacity:.82;margin-bottom:22px}
.reviews-heading .brand-mark-inline,.contact-copy .brand-mark-inline,.booking-sticky .brand-mark-inline,.story-intro-heading .brand-mark-inline{margin-bottom:18px}
.footer-logo{width:260px;height:auto;object-fit:contain}
.thank-you-mark{width:min(230px,60vw);height:auto;object-fit:contain;margin-bottom:30px}
@media(max-width:1040px){
  .brand-crop{width:132px;height:50px;flex-basis:132px}
  .hero-logo{width:clamp(420px,68vw,720px)}
  .brand-mark-inline{width:112px}
}
@media(max-width:760px){
  .brand-crop{width:108px;height:44px;flex-basis:108px}
  .hero-logo{width:min(94vw,560px);margin-bottom:10px}
  .brand-mark-inline{width:96px;margin-bottom:16px}
  .footer-logo{width:220px}
}


/* V23: compact event-type preview cards + separated hero scroll prompt */
.event-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:42px}
.event-overview-card{position:relative;display:block;height:clamp(170px,17vw,235px);overflow:hidden;background:#0b0d0e;color:#fff;border:1px solid rgba(22,24,25,.10);isolation:isolate}
.event-overview-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.94) brightness(.88);transform:scale(1.01);transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .45s ease}
.event-overview-card:nth-child(1) img{object-position:center 43%}
.event-overview-card:nth-child(2) img{object-position:center 46%}
.event-overview-card:nth-child(3) img{object-position:center 46%}
.event-overview-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,7,8,.05) 15%,rgba(5,7,8,.18) 52%,rgba(5,7,8,.78) 100%);z-index:1}
.event-overview-copy{position:absolute;z-index:2;left:22px;right:22px;bottom:19px;display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:11px}
.event-overview-copy small{font-family:var(--serif);font-size:13px;color:var(--ice-soft);padding-bottom:4px}
.event-overview-copy strong{font-family:var(--serif);font-weight:400;font-size:clamp(25px,2.35vw,38px);line-height:1;color:#fff}
.event-overview-copy em{font-style:normal;font-size:8px;letter-spacing:.2em;text-transform:uppercase;color:#d8dcde;padding-bottom:4px;white-space:nowrap}
.event-overview-copy b{font-weight:400;margin-left:5px}
.event-overview-card:hover img,.event-overview-card:focus-visible img{transform:scale(1.045);filter:saturate(1) brightness(.97)}
.event-overview-card:focus-visible{outline:1px solid var(--ice);outline-offset:3px}


/* Editorial conversion points */
.journey-cta{border-top:1px solid rgba(238,242,244,.08);border-bottom:1px solid rgba(238,242,244,.08)}
.journey-cta-dark{background:#0b0d0e;color:var(--ice)}
.journey-cta-ice{background:var(--ivory);color:#17191a;border-color:var(--dark-line)}
.journey-cta-inner{min-height:210px;display:flex;align-items:center;justify-content:space-between;gap:52px;padding-top:42px;padding-bottom:42px}
.journey-cta-inner>div{max-width:760px}
.journey-cta .eyebrow{margin-bottom:10px}
.journey-cta-ice .eyebrow{color:var(--steel-dark)}
.journey-cta h3{font-family:var(--serif);font-size:clamp(34px,3.8vw,58px);font-weight:400;line-height:1;margin:0 0 12px;letter-spacing:-.025em}
.journey-cta p{margin:0;max-width:640px;font-size:15px;line-height:1.65;color:#cdd2d4}
.journey-cta-ice p{color:#4d5559}
.journey-cta-compact .journey-cta-inner{min-height:170px}

/* Keep the scroll prompt visually separate from the primary hero CTA. */
.hero .hero-mark{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);margin:0;display:flex;align-items:center;gap:11px;z-index:4;opacity:.72;font-size:8px;letter-spacing:.26em;white-space:nowrap}
.hero .hero-mark .scroll-line{width:26px;height:1px;margin:0;background:linear-gradient(90deg,transparent,var(--ice));display:inline-block}
.hero .hero-mark:after{content:'↓';font-size:12px;letter-spacing:0;margin-left:1px;color:var(--ice)}
.hero .hero-mark:hover{opacity:1}

@media(max-width:1040px){
  .event-overview-grid{gap:12px;margin-top:32px}
  .event-overview-card{height:190px}
  .event-overview-copy{left:16px;right:16px;bottom:16px;grid-template-columns:auto 1fr}
  .event-overview-copy em{display:none}
}
@media(max-width:700px){
  .event-overview-grid{grid-template-columns:1fr;gap:10px;margin-top:28px}
  .event-overview-card{height:150px}
  .event-overview-copy strong{font-size:30px}
  .hero .hero-mark{display:none}
}

/* V28 — dedicated mobile polish pass */
@media(max-width:760px){
  html{-webkit-text-size-adjust:100%;scroll-padding-top:72px}
  body{overflow-x:hidden}
  .shell,.narrow{width:calc(100% - 40px)}

  /* Header: keep logo, availability CTA and menu comfortable even on narrow phones. */
  .site-header,.site-header.scrolled{height:68px;background:rgba(7,9,10,.95);backdrop-filter:blur(10px)}
  .nav{width:calc(100% - 20px);gap:7px}
  .brand-crop{width:96px;height:42px;flex:0 0 96px}
  .availability-cta{min-height:36px;padding:8px 9px;margin-left:auto;margin-right:0;font-size:6.7px;letter-spacing:.12em}
  .menu-btn{width:40px;height:40px;display:grid;place-items:center;padding:0;font-size:22px;flex:0 0 40px}
  .nav-links{inset:68px 0 0;gap:24px;font-size:12px;padding:28px 22px}

  /* Hero */
  .hero{min-height:100svh;align-items:center}
  .hero-inner{width:calc(100% - 36px);padding:84px 0 34px}
  .hero-logo{width:min(96%,520px);margin-bottom:8px}
  .hero-brandline{font-size:7.5px;letter-spacing:.19em;line-height:1.5;margin-bottom:14px}
  .hero .display{font-size:clamp(35px,10vw,46px);line-height:1.02}
  .hero-subtitle{font-size:15.5px;line-height:1.5;margin:12px auto 20px;max-width:330px}
  .hero .btn{min-height:44px;padding:12px 15px;font-size:8px;letter-spacing:.16em}

  /* Keep early sections concise on a phone. */
  .intro{padding:58px 0 54px}
  .intro-grid{gap:24px}
  .intro .section-title{font-size:clamp(38px,10.4vw,48px)}
  .intro .body-lg{font-size:16px}
  .facts{margin-top:26px;padding-top:20px;gap:20px 14px}
  .intro + .showreel{padding:62px 0 68px}
  .intro + .showreel .showreel-head{margin-bottom:24px}

  /* Galleries: native finger swipe is the primary mobile interaction. */
  .moments-carousel{padding:40px 0 46px}
  .moments-head{gap:16px;margin-bottom:20px}
  .moments-title{font-size:38px}
  .moments-actions{width:100%;gap:12px;align-items:center}
  .moments-head p{font-size:11px;line-height:1.45;max-width:230px;text-align:left}
  .gallery-arrows{margin-left:auto}
  .gallery-arrow{width:44px;height:44px;touch-action:manipulation}
  .moments-viewport{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:8vw;scroll-behavior:smooth}
  .moments-track{gap:10px;padding:0 8vw}
  .moment-card,.moment-card:nth-child(3n+2),.moment-card:nth-child(4n){width:84vw;height:58vw;max-height:290px;scroll-snap-align:center;scroll-snap-stop:normal;touch-action:pan-x pan-y}
  .moment-card span{width:34px;height:34px;right:10px;bottom:10px}

  /* Why Magic: align it with the rest of the mobile page, while keeping photography full bleed. */
  .why-story{padding:64px 0 46px}
  .why-story>.story-intro,.why-story>.why-layout{width:calc(100% - 40px);margin-left:auto;margin-right:auto}
  .story-intro{margin-bottom:18px;padding-bottom:22px;gap:18px}
  .story-intro .section-title{font-size:clamp(38px,10.5vw,48px);max-width:100%}
  .story-intro .body-lg{font-size:16px;line-height:1.58}
  .story-cue{margin-top:13px}
  .why-layout{display:grid;grid-template-columns:1fr;column-gap:0}
  .why-nav{grid-column:1;grid-row:1;position:relative;top:auto;z-index:5;width:100%;margin:0;padding:10px 0 11px;gap:7px;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;overscroll-behavior-x:contain;scroll-snap-type:none;transform:none}
  .why-nav-item{min-height:38px;padding:9px 11px;border-radius:999px;scroll-snap-align:none;background:rgba(8,11,12,.38);border-color:rgba(238,242,244,.15);transition:color .18s ease,border-color .18s ease,background-color .18s ease}
  .why-nav-item.is-active{transform:none;background:rgba(238,242,244,.09);color:var(--ice);border-color:rgba(238,242,244,.42)}
  .why-nav-item.is-active span{color:var(--ice)}
  .why-panels{grid-column:1;grid-row:2;width:100%;padding:0;margin:0}
  .why-panel,.why-panel.is-active{min-height:50svh;padding:38px 0 42px;transform:none;opacity:1;transition:none}
  .why-panel::before{background-position:center var(--why-focus);will-change:auto;opacity:.62;filter:none;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translate3d(-50%,0,0)}
  .why-panel::after{backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translate3d(-50%,0,0)}
  .why-panel h3{font-size:clamp(38px,11.5vw,51px);max-width:100%;margin-bottom:14px}
  .why-panel p{font-size:16px;line-height:1.58;max-width:100%}
  .why-detail{font-size:8px;line-height:1.55;letter-spacing:.17em;margin-top:20px}
  .why-number{font-size:60px;margin-bottom:12px}

  /* Events */
  .events-story{padding-top:66px}
  .events-heading{padding-bottom:38px}
  .events-heading .section-title{font-size:clamp(40px,11vw,50px)}
  .event-overview-grid{grid-template-columns:1fr;gap:9px;margin-top:22px}
  .event-overview-card{height:148px}
  .event-overview-copy{left:15px;right:15px;bottom:14px;grid-template-columns:auto 1fr auto;gap:9px}
  .event-overview-copy strong{font-size:29px}
  .event-overview-copy em{display:block;font-size:7px;letter-spacing:.16em;padding-bottom:3px}
  .event-overview-card img{filter:saturate(.95) brightness(.94)}
  .event-stage{height:92svh}
  .event-scroll-step{height:145svh}
  .event-scene{transition:opacity 1.35s cubic-bezier(.22,.61,.36,1)}
  .event-scene-inner.shell{width:100%;padding:0 22px}
  .event-scene-copy{max-width:350px}
  .event-index{font-size:18px}
  .event-scene h3{font-size:clamp(39px,11.2vw,51px);margin-bottom:17px}
  .event-scene p{font-size:15.5px;line-height:1.58}
  .event-scene .text-link{margin-top:18px}

  /* Conversion points stay compact and thumb-friendly on mobile. */
  .journey-cta-inner{min-height:0;display:block;padding-top:34px;padding-bottom:36px}
  .journey-cta h3{font-size:clamp(34px,9.5vw,44px);margin-bottom:10px}
  .journey-cta p{font-size:14.5px;line-height:1.55}
  .journey-cta .btn{margin-top:22px;min-height:44px;padding:12px 14px;font-size:7.8px;letter-spacing:.14em}
  .journey-cta-compact .journey-cta-inner{min-height:0}

  /* How it works */
  .booking{padding:66px 0}
  .booking-layout{gap:24px}
  .booking-sticky .section-title{font-size:clamp(40px,11vw,50px)}
  .booking-progress{margin-top:24px}
  .booking-step,.booking-step:nth-child(2n){gap:18px;padding:26px 0}
  .booking-step-media,.booking-step:nth-child(2n) .booking-step-media{max-width:100%;border-radius:1px}
  .booking-step-content>span{margin-bottom:10px}
  .booking-step h3{font-size:clamp(38px,10.8vw,50px);margin-bottom:10px}
  .booking-step p{font-size:16px;line-height:1.58}

  /* Founders */
  .founders{padding:70px 0 48px}
  .people-heading{margin-bottom:46px}
  .people-heading .section-title{font-size:clamp(40px,11vw,50px)}
  .founder-profile,.founder-profile.reverse{width:calc(100% - 40px);gap:26px;margin-bottom:64px}
  .founder-image{aspect-ratio:4/4.7;max-height:none}
  .founder-copy h3{font-size:clamp(38px,10.5vw,47px);margin:9px 0 15px}
  .founder-copy p{font-size:15.5px;line-height:1.67}
  .founder-tags{margin-top:20px;gap:7px}
  .founder-tags span{font-size:7.5px;padding:6px 8px}

  /* Logos — native mobile carousel, with more organisations visible at once. */
  .logos{padding:42px 0 46px;overflow:hidden}
  .logos-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;margin-bottom:22px}
  .logos-label{margin:0;padding:0;text-align:left;line-height:1.45;max-width:190px}
  .logo-gallery-controls{display:flex;gap:8px;flex:0 0 auto}
  .logo-gallery-controls button{width:40px;height:40px;border:1px solid rgba(23,25,26,.22);border-radius:50%;background:transparent;color:#17191a;font-size:18px;display:grid;place-items:center;padding:0;cursor:pointer}
  .logo-gallery-controls button:active{transform:scale(.96)}
  .logo-viewport{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;touch-action:pan-x;padding:0 20px}
  .logo-viewport::-webkit-scrollbar{display:none}
  .logo-track{gap:18px;animation:none!important;transform:none!important;padding-right:20px}
  .logo-track img{flex:0 0 calc((100vw - 76px)/3);width:calc((100vw - 76px)/3);max-width:118px;min-width:88px;height:58px;scroll-snap-align:start;filter:grayscale(.85) contrast(.94);opacity:.82}
  .logo-track img[aria-hidden="true"]{display:none}
  .logos:hover .logo-track{animation-play-state:running}

  /* Reviews */
  .reviews{padding:68px 0}
  .reviews-layout{gap:26px}
  .reviews-heading .section-title{font-size:clamp(40px,11vw,50px)}
  .review-stage{min-height:390px;padding:28px 0 22px}
  .review-slides{min-height:245px}
  .review-slide blockquote{font-size:clamp(30px,8.5vw,40px);line-height:1.1}
  .review-type{margin-top:20px}
  .review-prev,.review-next{width:44px;height:44px}
  .review-dots{gap:6px}
  .review-dot{width:18px}
  .review-dot.is-active{width:34px}

  /* Showreel / contact / footer */
  .showreel{padding:68px 0}
  .showreel-head{gap:18px;margin-bottom:24px}
  .showreel-head .section-title{font-size:clamp(40px,11vw,50px)}
  .showreel-head p{font-size:13px;line-height:1.55}
  .play-button{width:64px;height:64px}
  .showreel-note{left:14px;bottom:13px;font-size:7.5px}
  .contact{padding:70px 0}
  .contact-grid{gap:34px}
  .contact-copy .section-title{font-size:clamp(40px,11vw,50px)}
  .contact-form{gap:22px}
  .field input,.field textarea,.field select{font-size:16px;padding:12px 0}
  .field textarea{min-height:120px}
  .footer{padding:54px 0 24px}
  .footer-grid{gap:30px;padding-bottom:38px}
  .footer-logo{width:205px}
  .copyright{gap:10px;line-height:1.6}

  /* Lightbox is easier to close with a thumb. */
  .image-lightbox{padding:58px 14px 20px}
  .image-lightbox img{max-width:96vw;max-height:80svh}
  .lightbox-close{top:10px;right:10px;width:48px;height:48px}
}

@media(max-width:370px){
  .availability-cta{font-size:6.2px;padding:7px 7px;letter-spacing:.09em}
  .brand-crop{width:88px;flex-basis:88px}
  .hero-inner{width:calc(100% - 28px)}
  .hero .display{font-size:34px}
  .moment-card,.moment-card:nth-child(3n+2),.moment-card:nth-child(4n){width:86vw;height:61vw}
}

/* V33 — hero viewport safety for short laptops / MacBooks.
   Keep all hero elements in normal flow so the CTA and scroll hint can never overlap. */
.hero{
  min-height:100svh;
  min-height:100dvh;
  padding:0;
  align-items:stretch;
}
.hero-inner{
  min-height:100svh;
  min-height:100dvh;
  width:min(1080px,calc(100% - 56px));
  padding:clamp(94px,11vh,122px) 0 clamp(24px,4vh,46px);
  display:flex;
  align-items:center;
  justify-content:center;
  margin:auto;
}
.hero-copy{width:100%}
.hero-logo{
  width:min(58vw,860px,78vh);
  max-width:94vw;
  max-height:none;
  margin:0 auto clamp(7px,1.1vh,12px);
}
.hero-brandline{margin-bottom:clamp(10px,1.6vh,18px)}
.hero .display{
  font-size:min(clamp(40px,5.2vw,74px),7.4vh);
  line-height:1.01;
}
.hero-subtitle{
  font-size:min(clamp(15px,1.25vw,19px),2.25vh);
  margin:clamp(8px,1.4vh,14px) auto clamp(14px,2.4vh,25px);
}
.hero .btn{flex:0 0 auto}
.hero .hero-mark{
  position:static;
  left:auto;
  bottom:auto;
  transform:none;
  margin:clamp(12px,2vh,22px) auto 0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  opacity:.72;
  font-size:8px;
  letter-spacing:.26em;
  white-space:nowrap;
}

/* Typical smaller laptop / MacBook viewport heights. */
@media (min-width:761px) and (max-height:820px){
  .site-header{height:78px}
  .site-header.scrolled{height:68px}
  .hero-inner{padding-top:82px;padding-bottom:22px}
  .hero-logo{width:min(54vw,700px,72vh);margin-bottom:5px}
  .hero-brandline{font-size:9px;letter-spacing:.24em;margin-bottom:10px}
  .hero .display{font-size:min(clamp(36px,4.6vw,58px),7vh)}
  .hero-subtitle{font-size:15px;line-height:1.45;margin:8px auto 15px}
  .hero .btn{min-height:42px;padding:11px 17px}
  .hero .hero-mark{margin-top:11px;font-size:7.5px}
}

/* Very shallow browser windows: preserve conversion CTA; drop only the decorative hint. */
@media (min-width:761px) and (max-height:650px){
  .hero-inner{padding-top:72px;padding-bottom:16px}
  .hero-logo{width:min(48vw,590px,66vh)}
  .hero-brandline{font-size:8px;margin-bottom:7px}
  .hero .display{font-size:min(clamp(34px,4.2vw,50px),6.6vh)}
  .hero-subtitle{font-size:14px;margin:7px auto 11px}
  .hero .hero-mark{display:none}
}

/* Narrow desktops / tablets keep the same no-overlap flow. */
@media (min-width:761px) and (max-width:1366px){
  .hero-inner{width:min(980px,calc(100% - 46px))}
  .hero-logo{width:min(56vw,720px,76vh)}
  .hero .display{max-width:860px}
}

/* Mobile already hides the scroll hint; preserve the dedicated V28+ phone composition. */
@media(max-width:760px){
  .hero{min-height:100svh;min-height:100dvh;align-items:center}
  .hero-inner{min-height:0;width:calc(100% - 36px);padding:84px 0 34px;display:block}
  .hero-logo{width:min(96%,520px);max-width:none;margin-bottom:8px}
  .hero .display{font-size:clamp(35px,10vw,46px)}
  .hero-subtitle{font-size:15.5px;margin:12px auto 20px}
  .hero .hero-mark{display:none}
}

/* V36 — MyHQ enquiry embed + branded loading state */
.myhq-enquiry-wrap{min-width:0;width:100%}.myhq-enquiry-host{position:relative;width:100%;min-height:520px;isolation:isolate;overflow:hidden}.myhq-enquiry-host iframe{position:relative;z-index:2;display:block;width:100%;height:900px;border:0;background:transparent;overflow:hidden;opacity:1;transition:opacity .48s ease}.myhq-enquiry-host.is-loading iframe{opacity:0}.myhq-enquiry-loader{position:absolute;z-index:1;inset:0;min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:48px 28px;text-align:center;background:radial-gradient(circle at 50% 42%,rgba(238,229,208,.055),transparent 34%);opacity:1;visibility:visible;transition:opacity .48s ease,visibility .48s ease}.myhq-enquiry-host.is-ready .myhq-enquiry-loader{opacity:0;visibility:hidden}.myhq-loader-mark{position:relative;width:94px;height:94px;display:grid;place-items:center}.myhq-loader-mark:before{content:"";position:absolute;inset:0;border:1px solid rgba(238,242,244,.14);border-top-color:rgba(238,229,208,.82);border-radius:50%;animation:myhqLoaderSpin 2.6s linear infinite}.myhq-loader-mark:after{content:"";position:absolute;inset:10px;border:1px solid rgba(238,229,208,.08);border-radius:50%}.myhq-loader-mark img{display:block;width:58px;height:auto;animation:myhqLoaderPulse 2.2s ease-in-out infinite}.myhq-loader-copy{display:grid;gap:7px;max-width:410px}.myhq-loader-copy strong{font-family:var(--serif);font-size:clamp(23px,2.4vw,31px);font-weight:400;color:var(--ice);letter-spacing:-.01em}.myhq-loader-copy span{font-size:11px;line-height:1.6;color:#7f898e;letter-spacing:.035em}.myhq-enquiry-note{margin:12px 0 0;color:#747d82;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.contact-grid:has(.myhq-enquiry-wrap:not([hidden])){grid-template-columns:.72fr 1.28fr}.myhq-enquiry-wrap[hidden]{display:none!important}[data-local-enquiry-fallback][hidden]{display:none!important}@keyframes myhqLoaderSpin{to{transform:rotate(360deg)}}@keyframes myhqLoaderPulse{0%,100%{opacity:.72;transform:scale(.98)}50%{opacity:1;transform:scale(1.035)}}
@media(max-width:1040px){.contact-grid:has(.myhq-enquiry-wrap:not([hidden])){grid-template-columns:1fr}.myhq-enquiry-host{min-height:580px}}
@media(max-width:760px){.myhq-enquiry-host{width:calc(100% + 40px);margin-left:-20px;min-height:620px}.myhq-enquiry-host iframe{min-height:620px}.myhq-enquiry-note{padding:0 4px;line-height:1.5}}

@media(prefers-reduced-motion:reduce){.myhq-loader-mark:before,.myhq-loader-mark img{animation:none!important}.myhq-enquiry-host iframe,.myhq-enquiry-loader{transition:none!important}}

/* Managed showreel visibility: hidden removes the section from document flow. */
.showreel[hidden]{display:none!important}
