:root{--ink:#071725;--muted:#536876;--paper:#edf5fa;--orange:#8fdcff;--line:#c8dce8}body{padding-bottom:75px;background:#06111d}header{background:#f7fbfe;height:112px}.brand-logo{width:126px;height:100px}.utility{background:#06111d}.button{border-radius:3px;background:#9ee2ff}.button:hover{background:#d1f0ff}.eyebrow{font-size:12px}.showroom{color:#eef8ff;background:#06111d;position:relative;overflow:hidden;scroll-margin-top:0}.showroom-top{display:flex;align-items:center;justify-content:space-between;padding:18px 4%;border-bottom:1px solid #accfe728;font-size:12px;letter-spacing:.14em}.showroom-top button{font-size:12px;background:transparent;border:1px solid #a3c9e64d;color:#cee5f3;padding:5px 10px;border-radius:20px;letter-spacing:0}.lobby-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;padding:32px 4% 30px}.lobby-heading h1{font-size:clamp(56px,6.1vw,96px);line-height:.97;margin:0;letter-spacing:-.02em}.lobby-heading .eyebrow{color:#a4bdcf;margin-bottom:12px}.lobby-heading>p{font-size:16px;color:#d4e1ea;max-width:370px;padding-bottom:3px}.lobby-heading>p span{display:block;color:#8fdcff;margin-top:12px}.portals{display:flex;gap:3px;padding:0 4%;height:clamp(340px,43vh,570px)}.portal{min-width:0;flex:1;position:relative;overflow:hidden;border:1px solid #b6d8f340;background:#132e43;color:white;text-align:left;padding:0;transition:flex .6s cubic-bezier(.2,.7,.2,1),border-color .3s}.portal img{position:absolute;inset:0;height:100%;filter:saturate(.65) brightness(.65);transition:transform 1.2s,filter .6s}.portal:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#06111dfa,transparent 75%);pointer-events:none}.portal:before{content:'';position:absolute;inset:-40%;background:linear-gradient(110deg,transparent 44%,#c8edff45 49%,transparent 54%);transform:translateX(-80%);z-index:2;pointer-events:none}.portal:hover:before,.portal:focus-visible:before{animation:light-sweep 1.2s ease}.portal:hover,.portal:focus-visible{flex:1.45;border-color:#a8e2ff}.portal:hover img,.portal:focus-visible img{transform:scale(1.06);filter:saturate(1) brightness(.9)}.portal-number{position:absolute;top:20px;left:20px;z-index:3;font-size:14px;color:#dcf3ff}.portal-caption{position:absolute;bottom:24px;left:24px;right:18px;z-index:3}.portal-caption small{display:block;font-size:13px;color:#cadce8;margin-bottom:8px}.portal-caption strong{display:block;font:600 clamp(29px,3.1vw,49px)/1.05 'Barlow Condensed',sans-serif}.enter-label{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #cce9fa55;margin-top:20px;padding-top:12px;font-size:14px}.enter-label b{font-size:24px;color:#9ae0ff}.showroom-controls{padding:20px 4%;display:flex;align-items:center;gap:25px}.floor-readout{font:500 12px/1.4 'DM Sans',sans-serif;letter-spacing:.1em;color:#a6d8f2;min-width:145px}.world-nav{display:flex!important;gap:4px;margin:0 0 0 auto}.world-nav button{background:transparent;border:1px solid transparent;color:#a7bece;font-size:13px;padding:8px 12px;display:flex;align-items:center;gap:8px}.world-nav button>span{width:27px;height:27px;border:1px solid #82b6d254;border-radius:50%;display:grid;place-items:center;font-size:12px}.world-nav button[aria-pressed=true]{color:white;border-color:#9ad9f357;background:#93d7ff0c}.world-nav button[aria-pressed=true]>span{color:#06111d;background:#a7e6ff;box-shadow:0 0 18px #82d6ff60}.world-stage{position:relative;min-height:610px;isolation:isolate;overflow:hidden}.world-stage[hidden],#lobby[hidden]{display:none}.world-image{position:absolute;inset:0;z-index:-3;height:100%;object-position:25% 50%;width:70%;filter:brightness(.85)}.world-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,transparent 15%,#07172522 40%,#071725 72%),linear-gradient(0deg,#071725 0%,transparent 25%)}.world-copy{margin-left:56%;padding:55px 7% 55px 2%;max-width:850px}.world-copy h2{font-size:clamp(52px,5vw,80px);white-space:pre-line;line-height:1}.world-copy>p:not(.eyebrow){color:#c6d9e6;margin:22px 0;font-size:16px;max-width:430px}.world-copy .eyebrow{color:#96d4f2}.world-copy ul{list-style:none;padding:0;margin:25px 0;color:#e3eff7;font-size:14px}.world-copy li{border-top:1px solid #b1d3e72b;padding:9px 0}.world-copy .button{width:100%;text-align:left}.world-projects{color:#b7e8ff;background:transparent;border:0;border-bottom:1px solid #b7e8ff66;margin-top:18px;padding:8px 0;font-size:14px}.scene-detail{position:absolute;top:46%;left:28%;background:#071725c9;border:1px solid #b6e9ff77;color:white;border-radius:40px;padding:8px 18px 8px 8px;display:flex;align-items:center;gap:12px;backdrop-filter:blur(12px);text-align:left}.scene-detail>span{display:grid;place-items:center;width:42px;height:42px;background:#abdeff;border-radius:50%;color:#071725;font-size:25px;box-shadow:0 0 0 8px #abe5ff16}.scene-detail strong{font-size:14px;font-weight:500}.scene-detail small{display:block;font-size:12px;color:#bcd3e3}.arriving .world-image{animation:scene-arrive 1s cubic-bezier(.15,.7,.2,1)}.arriving .world-copy{animation:copy-arrive .65s ease}.next-chapter{background:#091d2e;color:#a7c3d5;display:flex;justify-content:space-between;gap:20px;padding:24px 4%;font-size:14px;border-top:1px solid #9ccef42b}.next-chapter>span{font-size:12px;letter-spacing:.1em}.next-chapter a{color:#def2ff}.maintenance{background:#edf5fa}.builder{border:1px solid #c8dce8;box-shadow:0 30px 80px #122d4212}.estimate{background:radial-gradient(ellipse at 100% 0%,#174463,#071725 75%)}.price-note{color:#9de0ff}.price strong{font-size:clamp(64px,7vw,92px)}.about{background:#fff}.reasons article>span,.check-list li:before{color:#176ab5}.projects{background:#0a1c2c;color:white}.projects .section-head>p{color:#afc9db}.filters button{border-color:#a3c6dc50;color:#bed4e3}.filters button[aria-pressed=true]{background:#b6e6ff;color:#081827;border-color:#b6e6ff}.gallery{grid-template-columns:repeat(3,1fr);gap:24px}.gallery button{background:#10293d;color:white;overflow:hidden;position:relative}.gallery button:nth-child(3n+2){transform:translateY(36px)}.gallery img{height:300px;transition:transform .6s,filter .6s}.gallery button:hover img{transform:scale(1.035);filter:brightness(1.12)}.gallery .caption{background:#10293d;position:relative;z-index:1}.gallery .caption small{color:#9cc6df;font-size:12px}.gallery .caption strong{font-size:29px}.projects{padding-bottom:130px}.contact{background:#c3e9fc}.contact h2 em{color:#1261a0}.contact .eyebrow{color:#275168}footer{padding-bottom:50px}.call-dock{position:fixed;z-index:20;bottom:12px;left:50%;transform:translateX(-50%);padding:12px 24px;display:flex;gap:24px;align-items:center;background:#e2f6fff2;border:1px solid #ffffffbf;box-shadow:0 5px 35px #0004;border-radius:50px;backdrop-filter:blur(20px);white-space:nowrap;color:#082a42}.call-dock span{font-size:11px;letter-spacing:.08em}.call-dock strong{font-size:17px}.mascot{position:fixed;left:20px;bottom:12px;width:88px;height:112px;z-index:30;pointer-events:none;filter:drop-shadow(0 7px 5px #0004);will-change:transform}.mascot img{width:100%;height:100%;object-fit:contain;transform-origin:50% 85%}.mascot.running img{animation:mascot-run .14s infinite alternate}.mascot.pushing img{animation:mascot-push .22s ease}.mascot-bubble{position:absolute;bottom:105px;left:10px;background:#e9f8ff;color:#0b2940;border-radius:14px 14px 14px 0;padding:9px 12px;font-size:13px;width:160px;opacity:0;transform:translateY(7px);transition:opacity .3s,transform .3s}.mascot.speaking .mascot-bubble{opacity:1;transform:translateY(0)}.mascot-tools{position:fixed;left:12px;bottom:126px;z-index:22}.mascot-tools button{background:#d3efff;color:#12334c;border:1px solid #96c8e4;border-radius:30px;padding:5px 10px;font-size:12px}.pushed{animation:button-push .28s ease!important}.secret-star{position:absolute;right:27px;top:110px;background:transparent;border:0;color:#a7e4ff;font-size:24px;opacity:0;visibility:hidden}.secret-star.discovered{opacity:1;visibility:visible;animation:star-glint 4s ease-in-out infinite}.secret-star:focus-visible{opacity:1}.motion-off *, .motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off .mascot{display:none}.motion-off .mascot-tools{bottom:20px}.motion-off .secret-star.discovered{opacity:1}@keyframes light-sweep{to{transform:translateX(80%)}}@keyframes scene-arrive{from{transform:scale(1.1);filter:brightness(.25)}to{transform:scale(1);filter:brightness(.85)}}@keyframes copy-arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes mascot-run{from{transform:translateY(0) rotate(-8deg)}to{transform:translateY(-10px) rotate(7deg)}}@keyframes mascot-push{50%{transform:translateX(12px) rotate(15deg) scale(.94)}}@keyframes button-push{50%{scale:.96;box-shadow:0 0 26px #b4e9ff80}}@keyframes star-glint{0%,100%{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}
@media(min-width:1600px){.lobby-heading,.showroom-top,.showroom-controls{padding-left:6%;padding-right:6%}.portals{padding-left:6%;padding-right:6%}}
@media(max-width:1000px){.world-nav button{font-size:12px;padding:6px}.floor-readout{min-width:90px;font-size:11px}.portal-caption{left:16px}.portal-caption small{font-size:12px}.lobby-heading>p{max-width:260px}.world-copy{margin-left:50%;padding-right:5%}.world-image{width:80%}.scene-detail{left:15%}}
@media(max-width:700px){header{height:95px}.brand-logo{width:100px;height:80px}.showroom-top{font-size:10px;letter-spacing:.03em}.lobby-heading{display:block;padding:26px 6%}.lobby-heading h1{font-size:58px}.lobby-heading>p{margin-top:20px;max-width:100%;font-size:14px}.lobby-heading>p span{display:inline;margin-left:8px}.portals{display:grid;grid-template-columns:1fr 1fr;height:auto;padding:0 6%;gap:8px}.portal{height:255px}.portal-caption strong{font-size:33px}.portal-caption small{font-size:12px}.portal-caption{bottom:16px}.portal-number{top:12px;left:16px}.enter-label{margin-top:14px}.showroom-controls{display:block;padding:18px 6%}.floor-readout{margin-bottom:12px}.world-nav{overflow-x:auto;margin:0;gap:8px;padding-bottom:8px}.world-nav button{flex-shrink:0;flex-direction:column;gap:4px;min-width:61px;font-size:12px}.next-chapter{padding:22px 6%;flex-wrap:wrap;font-size:13px}.next-chapter>span{width:100%}.world-stage{min-height:0;padding-top:330px}.world-image{width:100%;height:410px;object-position:center}.world-shade{background:linear-gradient(0deg,#071725 0%,#071725 12%,transparent 70%);height:430px}.world-copy{margin:0;padding:25px 7% 30px;background:#071725}.world-copy h2{font-size:58px}.scene-detail{top:225px;left:8%}.gallery{gap:14px}.gallery button:nth-child(3n+2){transform:none}.gallery img{height:220px}.gallery .caption strong{font-size:24px}.gallery .caption small{font-size:12px}.call-dock{left:auto;right:10px;transform:none;bottom:10px;padding:12px 18px;gap:0}.call-dock span{display:none}.call-dock strong{font-size:16px}.mascot{width:68px;height:92px;left:10px}.mascot-tools{bottom:108px;left:10px}.mascot-bubble{bottom:88px;width:145px}.section{padding-top:65px;padding-bottom:65px}.equipment-name small,.builder-help,.fine{font-size:13px}.equipment-name strong{font-size:14px}.equipment-icon{display:none}.secret-star{top:64px;right:15px}}
@media(max-width:400px){.lobby-heading h1{font-size:50px}.portal{height:230px}.portal-caption strong{font-size:29px}.portal-caption small{font-size:12px}.gallery{grid-template-columns:1fr}.showroom-top p{max-width:185px}.world-copy h2{font-size:49px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* Keep navigation available without covering anchor destinations. */
header{position:sticky;top:0;z-index:40;box-shadow:0 4px 20px #06111d18}html{scroll-padding-top:128px}.showroom{scroll-margin-top:0}@media(max-width:700px){html{scroll-padding-top:110px}} 
@media(max-width:800px){header{height:auto;display:grid;grid-template-columns:1fr auto;gap:8px;padding:8px 5%}header .brand-logo{width:88px;height:70px}header>nav{display:flex;grid-column:1/-1;grid-row:2;overflow-x:auto;gap:22px;margin:0;padding:5px 0 8px;font-size:14px}header>nav a{white-space:nowrap}header>.button{justify-self:end}html{scroll-padding-top:145px}}
/* A headline entrance, naturally paced typing, then opening service slats. */
.story-accessible{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:pre;border:0}#world-title{white-space:normal}.headline-line{display:block}.arriving .headline-line{animation:headline-rise .85s cubic-bezier(.2,.75,.2,1) both;animation-delay:calc(var(--line)*140ms)}.headline-line:last-child{color:#a6e3ff}.typed-char{opacity:0;position:relative}.typed-char.is-visible{opacity:1}.typing-caret:after{content:'';position:absolute;right:-2px;top:.1em;width:1px;height:1em;background:#b4e9ff;box-shadow:0 0 5px #b4e9ff}#world-services{perspective:700px}#world-services li{transform-origin:50% 0%;backface-visibility:hidden}.telling #world-services li{opacity:0;transform:translateY(-10px) rotateX(-88deg)}.services-opening #world-services li{animation:service-slat 1.3s cubic-bezier(.18,.8,.2,1) both}.services-opening #world-services li:nth-child(2){animation-delay:200ms}.services-opening #world-services li:nth-child(3){animation-delay:400ms}.arriving .world-copy{animation:none}@keyframes headline-rise{from{opacity:0;transform:translateY(16px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes service-slat{0%{opacity:0;transform:translateY(-10px) rotateX(-88deg)}70%{opacity:1;transform:translateY(2px) rotateX(5deg)}100%{opacity:1;transform:translateY(0) rotateX(0)}}.motion-off .typed-char{opacity:1}.motion-off #world-services li{opacity:1;transform:none}.motion-off .typing-caret:after{display:none}@media(prefers-reduced-motion:reduce){.typed-char{opacity:1}#world-services li{opacity:1;transform:none}.typing-caret:after{display:none}}
/* Original horizontal frost artwork, at its natural proportions. */
header{height:90px;gap:22px}.brand-logo{width:290px;height:auto;max-height:55px}footer .brand-logo{width:240px;height:auto}html{scroll-padding-top:108px}@media(max-width:1100px){header .brand-logo{width:220px}}@media(max-width:800px){header{height:auto;gap:8px}header .brand-logo{width:clamp(135px,42vw,220px);height:42px;object-fit:contain}header>.button{font-size:12px;padding:10px;gap:8px}html{scroll-padding-top:112px}}
