:root{--sky:#c6daef;--ink:#172e44;--paper:#e9f0f6;--muted:#5c7083;--line:#172e442b;--pad:clamp(24px,4vw,72px);--ease:cubic-bezier(.19,1,.22,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,p{margin:0}button{color:inherit}svg{width:24px;height:24px;flex-shrink:0}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible,input:focus-visible{outline:3px solid #547baf;outline-offset:6px}button:disabled{cursor:wait}button[hidden],[hidden]{display:none!important}
.masthead{position:absolute;left:0;right:0;top:0;z-index:4;height:106px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-size:32px;letter-spacing:-.065em;font-weight:600;line-height:1}.masthead nav{display:flex;gap:36px;align-items:center;font-size:13px}.masthead nav>a{position:relative;padding:10px 0}.masthead nav>a:after,.text-link:after{content:'';position:absolute;bottom:2px;height:1px;left:0;right:0;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s}.masthead nav>a:hover:after,.text-link:hover:after{transform:scaleX(1)}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:60px;padding:17px 29px;border:0;border-radius:100px;font-size:15px;font-weight:500;line-height:1.25;transition:background .3s,transform .4s var(--ease),box-shadow .3s;position:relative;isolation:isolate}.pill svg{width:19px;height:19px}.pill:hover{transform:translateY(-3px);box-shadow:0 10px 24px #12293c21}.pill:active{transform:translateY(0)}.pill.dark{background:var(--ink);color:#f3f7fb}.pill.dark:hover{background:#294b6b}.pill.light{background:var(--paper);color:var(--ink)}.pill.small{min-height:48px;padding:14px 23px;font-size:12px}.text-link{position:relative;font-size:14px;padding:10px 0;border-bottom:1px solid #172e444f}
.hero{position:relative;isolation:isolate;min-height:820px;height:100svh;max-height:1150px;overflow:hidden;background:var(--sky)}.hero-image{position:absolute;inset:105px 0 0 40%;overflow:hidden;border-radius:105px 0 0 0;clip-path:inset(0 0 0 0 round 105px 0 0 0);animation:portal-reveal 1.6s var(--ease) both}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:65% center;transform:scale(1.055) translateY(calc(var(--hero-shift,0)*1px));will-change:transform;animation:photo-arrive 2.5s var(--ease) both}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#c6daef70,transparent 26%)}.hero-copy{position:relative;z-index:2;padding:clamp(160px,17vh,230px) var(--pad) 0;width:max-content;max-width:100%}.hero h1{font-size:clamp(72px,8.7vw,160px);line-height:.94;letter-spacing:-.075em;font-weight:500;max-width:10ch}.hero h1 span{display:block;animation:type-arrive 1.25s var(--ease) both}.hero h1 span:nth-child(2){animation-delay:.1s}.hero h1 span:nth-child(3){animation-delay:.2s}.hero h1 span:last-child{color:var(--ink)}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:40px;animation:type-arrive 1.3s .3s var(--ease) both}.hero-foot{position:absolute;left:var(--pad);bottom:40px;z-index:2}.scroll-cue{display:block;height:60px;width:25px;margin-bottom:35px}.scroll-cue svg{transform:rotate(90deg);width:25px;height:25px;animation:scroll-nudge 3s ease-in-out 2s 2}.hero-cues{display:flex;gap:0;font-size:12px}.hero-cues a{padding:0 25px;border-right:1px solid #172e4466}.hero-cues a:first-child{padding-left:0}.hero-cues a:last-child{border:0}
.product-section{padding:110px var(--pad);display:grid;grid-template-columns:.95fr 1.15fr;gap:clamp(40px,6vw,110px);align-items:center;background:var(--paper)}.product-copy h2{font-size:clamp(38px,4.5vw,76px);line-height:1.04;letter-spacing:-.065em;font-weight:400;margin-bottom:66px}.product-tabs{display:flex;flex-direction:column;gap:28px}.product-tabs>button{text-align:left;border:0;background:transparent;padding:0 0 0 26px;position:relative}.product-tabs>button:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--ink);position:absolute;left:0;top:23px;transform:scale(0);transition:transform .4s var(--ease)}.product-tabs>button[aria-selected=true]:before{transform:scale(1)}.product-tabs>button>span:first-child{font-size:clamp(28px,3.2vw,48px);line-height:1.2;letter-spacing:-.045em;color:#7e8d9c;transition:color .4s}.product-tabs>button:hover>span:first-child,.product-tabs>button[aria-selected=true]>span:first-child{color:var(--ink)}.tab-description{display:block;color:var(--muted);font-size:14px;line-height:1.8;max-width:31ch;margin-top:14px;max-height:0;opacity:0;overflow:hidden;transition:max-height .55s var(--ease),opacity .35s,margin .45s}.product-tabs>button:not([aria-selected=true]) .tab-description{margin:0}.product-tabs>button[aria-selected=true] .tab-description{max-height:110px;opacity:1}
.product-stage{position:relative;isolation:isolate;height:650px;background:var(--ink);border-radius:28px;overflow:hidden;display:flex;align-items:center;justify-content:center;perspective:1200px}.stage-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:77%;filter:brightness(.54);z-index:-2}.product-stage:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(145deg,#0c2b4655,transparent 70%)}.preview-phone{background:#f5f7fa;width:260px;min-height:505px;border:7px solid #162331;border-radius:40px;box-shadow:0 0 0 1px #bed0df,2px 2px 0 3px #3e5060,20px 35px 40px #07131f70;transform:rotate(9deg) rotateY(-12deg);padding:17px 18px 12px;position:relative;transition:transform .8s var(--ease)}.product-stage:hover .preview-phone,.product-stage:focus-within .preview-phone{transform:rotate(2deg) rotateY(-3deg)}.phone-island{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:75px;height:21px;background:#15202c;border-radius:15px}.phone-top{display:flex;justify-content:space-between;font-size:9px;font-weight:700;margin-bottom:30px}.phone-brand{font-size:18px;font-weight:500;letter-spacing:-.06em;margin-bottom:24px}.phone-person{font-size:27px;letter-spacing:-.04em;line-height:1.2}.phone-meta{font-size:11px;color:#697b8d;margin-top:5px}.door-control{margin-top:22px;background:#fff;border-radius:18px;text-align:center;padding:18px 12px 14px;display:flex;flex-direction:column;gap:16px;align-items:center;font-size:12px}.door-control button{width:93px;height:93px;border:1px solid #f6cc90;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;box-shadow:0 0 28px #e9b26c77;transition:background .4s,box-shadow .4s,transform .4s}.door-control button:hover{transform:scale(1.06)}.door-control button svg{width:33px;height:33px}.door-control button.is-open{background:#47796b;box-shadow:0 0 30px #76b7a070}.door-control button.is-open svg path{transform:translateY(-3px);transition:transform .4s}.door-control #unlock-label{font-size:10px;color:#60768a}.parking-row{display:flex;align-items:center;justify-content:space-between;background:#fff;margin-top:11px;border-radius:13px;padding:16px;font-size:11px}.parking-row svg{width:17px;height:17px}.phone-dock{display:flex;justify-content:space-between;font-size:8px;color:#6d7e8c;padding-top:24px}.phone-dock span:first-child{color:var(--ink)}.preview-caption{position:absolute;bottom:20px;left:0;right:0;text-align:center;font-size:10px;color:#f0f4faab;letter-spacing:.015em}.browser-address{font-size:10px;text-align:center;padding:7px;background:#e6edf5;border-radius:7px;margin-bottom:12px}.guest-photo{height:90px;border-radius:12px;background:url('./assets/entrance-evening-v2.webp') 75% 60% / cover;margin-bottom:18px}.phone-guest .phone-person{font-size:24px}.distance{display:flex;align-items:baseline;gap:8px;margin:22px 0 15px}.distance strong{font-size:60px;line-height:1;letter-spacing:-.07em;font-weight:500}.distance span{font-size:10px;color:var(--muted)}.guest-limits{font-size:10px;display:flex;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line);margin-bottom:7px}.phone-guest .pill{width:100%;font-size:11px;min-height:40px;padding:10px}.guest-browser-note{font-size:9px;color:var(--muted);text-align:center;margin-top:15px}.product-stage[data-preview=guest] .preview-phone{transform:rotate(-6deg) rotateY(8deg)}.committee-preview{position:absolute;inset:0;background:#172e44}.committee-preview canvas{width:100%;height:74%;display:block}.permission-preview{position:absolute;bottom:55px;left:24px;right:24px;color:var(--paper);font-size:12px;text-align:center}.permission-preview>div{display:flex;justify-content:center;gap:7px;margin-top:17px;flex-wrap:wrap}.permission-preview button{border:1px solid #b8cddd77;background:transparent;border-radius:30px;color:#bed0df;padding:10px 12px;font-size:10px;transition:background .3s}.permission-preview button[aria-pressed=true]{background:#dcebdc;color:#173d31;border-color:#dcebdc}.permission-preview p{font-size:10px;color:#c4d5dfb3;margin-top:14px}
.story-invitation{position:relative;min-height:640px;isolation:isolate;overflow:hidden;color:#fff;display:flex;align-items:flex-start;justify-content:space-between;gap:80px;padding:80px var(--pad)}.story-invitation>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% 50%;z-index:-3;transition:transform 1.4s var(--ease)}.story-invitation:has(a:hover)>img{transform:scale(1.025)}.story-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0c203e8a,transparent 85%),linear-gradient(0deg,#0c203e55,transparent 60%)}.story-copy h2{font-size:clamp(48px,6.5vw,108px);line-height:1.02;font-weight:400;letter-spacing:-.06em;margin-bottom:35px}.chapter-links{width:230px;margin-top:10px}.chapter-links a{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:22px 0;border-bottom:1px solid #ffffff77;font-size:14px;transition:padding .4s var(--ease)}.chapter-links a:hover{padding-left:10px}.chapter-links svg{width:18px;height:18px}
.landing-questions{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:110px var(--pad);background:var(--paper)}.questions-heading h2{font-weight:400;font-size:clamp(36px,4.2vw,68px);line-height:1.05;letter-spacing:-.06em}.landing-question-list details{border-bottom:1px solid var(--line)}.landing-question-list details:first-child{border-top:1px solid var(--line)}.landing-question-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:25px;padding:25px 0;font-size:14px;line-height:1.5}.landing-question-list summary::-webkit-details-marker{display:none}.landing-question-list summary svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.3;fill:none;margin-top:3px;transition:transform .4s}.landing-question-list details[open] summary svg{transform:rotate(45deg)}.landing-question-list details p{font-size:13px;line-height:1.9;color:var(--muted);padding:0 35px 25px 0;max-width:53ch;animation:answer-in .4s var(--ease)}
.contact-section{position:relative;isolation:isolate;background:var(--sky);padding:90px var(--pad) 105px;display:flex;align-items:center;justify-content:space-between;gap:40px;overflow:hidden}.contact-section h2{font-size:clamp(44px,6.5vw,108px);line-height:1.04;font-weight:400;letter-spacing:-.065em}.contact-section .pill{flex-shrink:0}.contact-door{position:absolute;width:220px;height:380px;border:1px solid #315d8520;right:20%;bottom:-100px;z-index:-1;transform:rotate(-15deg)}.contact-door i{position:absolute;inset:9px;border:1px solid #315d8525;transform-origin:left;transform:perspective(500px) rotateY(-30deg)}.page-footer{background:var(--sky);display:flex;align-items:center;gap:35px;padding:28px var(--pad);border-top:1px solid #172e4426;font-size:11px}.page-footer>span{margin-right:auto;color:var(--muted)}.page-footer .brand{font-size:28px}
.enquiry-dialog{border:0;border-radius:24px;padding:50px;background:var(--paper);color:var(--ink);width:min(680px,calc(100% - 32px));max-height:calc(100svh - 40px);overflow:auto;box-shadow:0 40px 100px #0d263c33}.enquiry-dialog::backdrop{background:#10263d90;backdrop-filter:blur(12px)}.dialog-close{position:absolute;right:22px;top:18px;background:none;border:0;font-size:26px;padding:4px 10px}.enquiry-dialog h2{font-size:clamp(40px,5vw,65px);line-height:1;letter-spacing:-.06em;font-weight:400;margin-bottom:38px}.enquiry-form{display:grid;gap:23px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.enquiry-form label{display:flex;flex-direction:column;gap:10px;font-size:11px;color:var(--muted)}.enquiry-form input{border:0;border-bottom:1px solid #172e4444;background:transparent;border-radius:0;padding:9px 0;color:var(--ink);font-size:16px;min-width:0;width:100%;outline-offset:3px}.enquiry-submit{border:0;background:var(--ink);color:var(--paper);border-radius:30px;padding:17px 24px;margin-top:7px;display:flex;justify-content:space-between;align-items:center;font-size:13px}.enquiry-status{font-size:10px;line-height:1.7;color:var(--muted)}.enquiry-status[data-state=error]{color:#933d35}.enquiry-status[data-state=success]{color:#336448}
.story-overlay{border:0;padding:0;margin:0;inset:0;width:100%;height:100%;max-width:none;max-height:none;background:#142836;color:var(--paper);overflow:hidden}.story-overlay[open]{display:block;animation:story-enter .65s var(--ease)}.story-overlay::backdrop{background:#142836}.story-exit{position:absolute;left:25px;top:max(22px,env(safe-area-inset-top));z-index:5;display:flex;align-items:center;gap:9px;border:1px solid #ffffff4d;border-radius:25px;background:#142836b8;backdrop-filter:blur(12px);color:#f4f7f8;padding:11px 17px;font-size:12px}.story-exit:hover{background:#2b4656}.story-exit svg{width:17px;height:17px}.story-overlay iframe{border:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .8s;pointer-events:none}.story-overlay.is-ready iframe{opacity:1;pointer-events:auto}.story-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:radial-gradient(ellipse at 50% 45%,#34505a,#142836 65%);z-index:2;transition:opacity .6s,visibility .6s}.story-overlay.is-ready .story-loading{opacity:0;visibility:hidden;pointer-events:none}.loading-portal{position:relative;width:96px;height:150px;border:1px solid #c7d5ce55;border-radius:50px 50px 0 0;margin-bottom:20px;background:linear-gradient(110deg,#f5dba319,#e6b86a33);box-shadow:0 8px 70px #f3d0a018}.loading-portal:after{content:'';position:absolute;width:160px;height:1px;bottom:-1px;left:-32px;background:#e9d4ad80;box-shadow:0 5px 30px 5px #e7c99822}.loading-portal i{position:absolute;inset:4px;border:1px solid #e3d5bc8a;border-radius:45px 45px 0 0;background:#142836;transform-origin:left bottom;animation:loading-door 3s ease-in-out infinite}.loading-brand{font-size:25px;letter-spacing:-.06em}.story-loading p{font-size:12px;color:#becdcf}.loading-line{width:120px;height:1px;background:#ffffff22;position:relative;overflow:hidden;margin-top:7px}.loading-line:after{content:'';position:absolute;inset:0;background:#d8c394;transform:translateX(-100%);animation:loading-line 1.8s ease-in-out infinite}.story-loading .pill{font-size:12px;min-height:42px}
@keyframes type-arrive{from{opacity:0;transform:translateY(45px)}to{opacity:1;transform:none}}@keyframes portal-reveal{from{clip-path:inset(20% 0 0 100% round 105px 0 0 0)}to{clip-path:inset(0 round 105px 0 0 0)}}@keyframes photo-arrive{from{opacity:.5;scale:1.1}to{opacity:1;scale:1}}@keyframes scroll-nudge{0%,100%{translate:0 0}50%{translate:0 10px}}@keyframes answer-in{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}@keyframes story-enter{from{opacity:0;clip-path:inset(12% 18% round 80px)}to{opacity:1;clip-path:inset(0 round 0)}}@keyframes loading-door{0%,100%{transform:perspective(250px) rotateY(-5deg)}50%{transform:perspective(250px) rotateY(-48deg)}}@keyframes loading-line{to{transform:translateX(100%)}}
@media(min-width:1600px){.hero-copy{padding-top:17vh}.hero h1{font-size:156px}.hero-image{left:42%}}
@media(max-width:1000px){.hero{min-height:760px;max-height:950px}.hero-copy{padding-top:175px}.hero h1{font-size:clamp(76px,10.5vw,110px)}.hero-image{left:37%}.hero-actions{gap:24px}.hero .text-link{background:#c6daef99;padding:10px;border-radius:4px}.product-section{gap:30px;padding-block:80px;grid-template-columns:1fr 1fr}.product-copy h2{font-size:42px;margin-bottom:45px}.product-stage{height:570px}.preview-phone{width:235px;min-height:475px;padding-inline:14px;scale:.94}.landing-questions{gap:40px;padding-block:80px}.story-invitation{min-height:570px}.chapter-links{width:200px}}
@media(max-width:700px){:root{--pad:24px}.masthead{height:84px}.brand{font-size:28px}.masthead nav{gap:18px}.masthead nav>a{display:none}.pill.small{min-height:42px;padding:12px 18px;font-size:11px}.hero{height:850px;min-height:780px;max-height:none}.hero-copy{padding-top:126px}.hero h1{font-size:clamp(63px,13.5vw,94px);line-height:.97;font-weight:500;letter-spacing:-.07em}.hero-image{inset:330px 0 0 20%;border-radius:80px 0 0 0;clip-path:inset(0 round 80px 0 0 0)}.hero-image img{object-position:69%;transform:scale(1.055)}.hero-image:after{background:linear-gradient(180deg,#c6daef28,transparent 30%)}.hero-actions{margin-top:25px;gap:22px}.pill{font-size:13px;min-height:52px;padding:15px 23px}.hero .text-link{font-size:12px;background:transparent;padding:8px 0}.hero-foot{bottom:25px;left:24px;right:24px}.scroll-cue{display:none}.hero-cues{background:#c6daefed;border-radius:30px;padding:17px 19px;justify-content:space-between;max-width:420px;font-size:10px}.hero-cues a{padding:0 17px}.hero-cues a:last-child{padding-right:0}.product-section{grid-template-columns:1fr;padding-block:65px;gap:32px}.product-copy h2{font-size:clamp(38px,9vw,58px);margin-bottom:34px}.product-tabs{gap:20px}.product-tabs>button{padding-left:21px}.product-tabs>button:before{top:17px}.product-tabs>button>span:first-child{font-size:32px}.tab-description{font-size:13px;max-width:34ch;margin-top:10px}.product-stage{height:540px;border-radius:22px}.preview-phone{scale:1;width:250px;min-height:490px}.story-invitation{min-height:690px;flex-direction:column;gap:40px;padding-block:50px}.story-copy h2{font-size:53px;margin-bottom:25px}.story-invitation>img{object-position:72%}.story-shade{background:linear-gradient(90deg,#10243cba,transparent 130%)}.chapter-links{width:100%;max-width:350px;margin-top:auto}.chapter-links a{font-size:13px;padding:17px 0}.landing-questions{grid-template-columns:1fr;gap:35px;padding-block:65px}.questions-heading h2{font-size:43px}.landing-question-list summary{font-size:13px;padding-block:23px}.landing-question-list details p{font-size:12px;padding-right:15px}.contact-section{padding-block:65px;align-items:flex-start;flex-direction:column;gap:30px}.contact-section h2{font-size:48px}.contact-door{right:10%;width:150px;height:220px;bottom:-70px}.page-footer{gap:22px;flex-wrap:wrap;padding-block:25px;font-size:10px}.page-footer>span{display:none}.page-footer .brand{margin-right:auto;font-size:26px}.enquiry-dialog{padding:40px 25px 28px;border-radius:20px}.enquiry-dialog h2{font-size:45px;margin-bottom:28px}.form-row{grid-template-columns:1fr;gap:21px}.enquiry-form{gap:21px}.story-exit{left:14px;top:17px;padding:10px 13px;font-size:11px}.permission-preview{left:12px;right:12px}.permission-preview>div{gap:5px}.permission-preview button{padding:9px;font-size:9px}}
@media(max-width:370px){:root{--pad:20px}.hero h1{font-size:60px}.hero-actions{gap:15px}.hero-actions .pill{padding:15px 20px}.hero-image{top:320px}.hero-cues{padding-inline:15px}.hero-cues a{padding-inline:12px}.product-stage{height:510px}.preview-phone{scale:.91}.contact-section h2{font-size:43px}.questions-heading h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-image img{will-change:auto;transform:none}.hero-image{clip-path:none}.preview-phone,.product-stage:hover .preview-phone{transform:none!important}}
@media(max-width:700px){.hero{height:calc(680px + 30vw);min-height:790px}.hero-image{top:calc(235px + clamp(63px,13.5vw,94px)*2.91);left:14%}.hero-actions{position:relative}.hero-cues{font-size:11px}}
@media(max-width:370px){.hero-image{top:410px}}
/* Keep the short explanation readable without operating the preview. */
.product-tabs>button .tab-description,.product-tabs>button:not([aria-selected=true]) .tab-description{max-height:110px;opacity:1;margin-top:10px}.product-tabs{gap:25px}.product-copy h2{margin-bottom:44px}.hero-actions>.pill{min-height:64px;padding-inline:32px;font-size:16px}
@media(max-width:700px){.product-copy h2{margin-bottom:30px}.product-tabs{gap:22px}.hero-actions>.pill{min-height:52px;padding-inline:23px;font-size:13px}}
@media(max-width:700px){.hero h1{font-size:clamp(48px,13.5vw,94px)}.hero h1 span{white-space:nowrap}.hero-image{top:calc(235px + clamp(48px,13.5vw,94px)*2.91)}}
@media(max-width:370px){.hero h1{font-size:clamp(45px,15.5vw,54px)}.hero-image{top:calc(235px + clamp(45px,15.5vw,54px)*2.91)}}
.page-footer .brand{margin-right:auto}
.committee-preview:not(.model-ready):not(.model-unavailable):before{content:'';position:absolute;left:calc(50% - 40px);top:25%;width:80px;height:130px;border:1px solid #d7c49c80;border-radius:45px 45px 0 0;background:linear-gradient(110deg,#ebc58e11,#ebc58e44);box-shadow:0 10px 60px #e5c38b22;animation:loading-door 3s ease-in-out infinite}.committee-preview.model-unavailable{background:#172e44 url('./assets/entrance-evening-v2.webp') 75% / cover}.model-unavailable .permission-preview{background:#142836d9;padding:20px;border-radius:15px}
