/* VALSTASY DESIGN SYSTEM 2026 — Glacier / Midnight / Porcelain */
:root{--vs-midnight:#071c29;--vs-glacier:#86c8e5;--vs-sand:#c8bca5;--vs-white:#f7fafb;--vs-edge:#d9e5ea;--vs-ease:cubic-bezier(.22,1,.36,1)}
body{background:#f5f8f8}h1,h2,h3{letter-spacing:-.036em}a,button{touch-action:manipulation}body.mega-open,body.welcome-open{overflow:hidden}
.hero{min-height:min(940px,100svh);background-position:center 40%;overflow:hidden;isolation:isolate}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,18,31,.77),rgba(4,23,38,.14) 78%),linear-gradient(0deg,rgba(3,13,21,.62),transparent 41%);z-index:0}.hero-content{position:relative;z-index:1;max-width:1100px}.hero h1{font-size:clamp(66px,8.5vw,150px);font-weight:400;line-height:.96;letter-spacing:-.064em}.hero h1 em,.section h2 em,.editorial-right h2 em{font-weight:400;font-style:italic}.hero-content>p{max-width:510px}.hero-scroll-hint{position:absolute;bottom:96px;right:clamp(24px,6vw,95px);z-index:2;color:#fff;font-size:10px;letter-spacing:.24em;display:flex;align-items:center;gap:17px}.hero-scroll-hint span{height:55px;width:1px;background:linear-gradient(#fff,transparent);display:block;animation:hint 2s ease-in-out infinite}@keyframes hint{50%{transform:translateY(9px)}}
.site-header{transition:background .4s,box-shadow .4s,transform .45s var(--vs-ease)}.site-header.scrolled{background:rgba(6,28,42,.92)!important;backdrop-filter:blur(22px);box-shadow:0 12px 50px rgba(0,15,27,.16)}.mega-toggle{padding:12px 17px;border:1px solid rgba(255,255,255,.31);color:#f8fcff;background:rgba(255,255,255,.07);font-size:11px;font-weight:700;letter-spacing:.16em;cursor:pointer;border-radius:3px;transition:background .25s}.mega-toggle:hover{background:rgba(255,255,255,.16)}.mega-toggle span{margin-left:12px}
.mega-backdrop{position:fixed;inset:0;z-index:120;background:rgba(2,13,22,.66);backdrop-filter:blur(14px)}.mega-panel{position:fixed;top:8%;left:5%;width:90%;height:min(620px,83vh);z-index:121;background:#f4f7f7;box-shadow:0 24px 90px #0417228c;display:grid;grid-template-columns:39% 1fr;overflow:auto;border-radius:8px;animation:megaIn .6s var(--vs-ease)}.mega-panel[hidden],.mega-backdrop[hidden]{display:none!important}.mega-intro{background:linear-gradient(135deg,#17394b,#092636 58%,#123d50);color:white;padding:clamp(30px,5vw,80px);display:flex;flex-direction:column;justify-content:center}.mega-intro h2{font-family:Georgia,serif;font-size:clamp(36px,4vw,70px);font-weight:400;line-height:1.05}.mega-intro p{opacity:.7;line-height:1.8}.mega-links{display:flex;flex-direction:column;justify-content:center;padding:40px clamp(25px,5vw,80px)}.mega-links a{display:flex;align-items:center;gap:14px;border-bottom:1px solid #d8e3e7;padding:20px 0;color:#0a3045;text-decoration:none;font-size:24px;transition:padding .25s var(--vs-ease),color .25s}.mega-links a:hover{padding-left:12px;color:#168bb2}.mega-links a span{font-size:11px;color:#8097a3}.mega-links a strong{font-weight:450;flex:1}#megaClose{position:absolute;right:22px;top:20px;background:transparent;border:0;font-size:24px;cursor:pointer;color:#123446}@keyframes megaIn{from{opacity:0;transform:translateY(-14px) scale(.985)}to{opacity:1;transform:none}}
.section{padding-top:clamp(90px,10vw,155px);padding-bottom:clamp(90px,10vw,155px)}.section-head h2{font-size:clamp(40px,5.9vw,89px);line-height:1.05}.section-head p{line-height:1.85}.will-reveal{opacity:0;transform:translateY(34px);transition:opacity .9s var(--vs-ease),transform .9s var(--vs-ease)}.will-reveal.is-revealed{opacity:1;transform:translateY(0)}
.sector-card,.product-card,.destination-feature{transition:transform .65s var(--vs-ease),box-shadow .6s var(--vs-ease),filter .4s}.sector-card:hover,.product-card:hover,.destination-feature:hover{transform:translateY(-7px);box-shadow:0 21px 60px rgba(17,49,71,.13)}
.editorial-journey{background:#e9f0f0;display:grid;grid-template-columns:55% 45%;min-height:740px}.editorial-left{display:grid;grid-template-columns:58% 42%;gap:13px;padding:32px 0 32px 32px}.journey-photo{position:relative;background-size:cover;background-position:center;min-height:640px;cursor:zoom-in;transition:background-size .5s,filter .5s}.journey-photo.one{background-image:url('https://images.unsplash.com/photo-1454496522488-7a8e488e860e?auto=format&fit=crop&w=1200&q=85');margin-top:80px}.journey-photo.two{background-image:url('https://images.unsplash.com/photo-1486911278844-a81c5267e227?auto=format&fit=crop&w=1050&q=85');margin-bottom:80px}.journey-photo:hover{filter:brightness(1.08)}.journey-photo span{position:absolute;bottom:24px;left:23px;color:#fff;font-size:10px;letter-spacing:.15em;text-shadow:0 2px 10px #000}.editorial-right{display:flex;justify-content:center;flex-direction:column;padding:clamp(35px,6vw,110px)}.editorial-right h2{font:400 clamp(48px,5.6vw,91px)/1 Georgia,serif;color:#113343;letter-spacing:-.055em;margin:21px 0}.editorial-right>p{font-size:16px;line-height:1.9;color:#536b75;max-width:450px}.editorial-right button{align-self:start;margin-top:30px}.journey-counter{border-top:1px solid #bbced1;margin-top:65px;display:grid;grid-template-columns:auto 1fr auto 1fr;gap:14px;align-items:baseline}.journey-counter b{font-size:38px;font-weight:400;color:#173c50}.journey-counter span{font-size:10px;letter-spacing:.11em;color:#6b858d}
/* REAL WEBGL 3D viewport plus preserved SVG fallback */
.map-card-3d{position:relative;overflow:hidden;background:#9dbbc5}.terrain-topbar{position:absolute;top:0;left:0;right:0;z-index:15;padding:17px 21px;display:flex;justify-content:space-between;gap:12px;align-items:center;background:linear-gradient(180deg,rgba(4,25,40,.87),rgba(4,25,40,.56));color:white;backdrop-filter:blur(10px)}.terrain-topbar>div:first-child{display:flex;flex-direction:column;gap:3px}.terrain-topbar strong{font:400 25px Georgia,serif}.terrain-kicker{font-size:9px;letter-spacing:.21em;color:#c8e1e8}.terrain-switch{display:flex;border:1px solid rgba(255,255,255,.35);border-radius:3px;padding:3px}.terrain-switch button{background:transparent;color:#e5f0f3;border:0;padding:8px 13px;cursor:pointer;font-size:11px}.terrain-switch button.active{background:#ecf5f7;color:#123849}.terrain-viewport{height:min(650px,67vw);min-height:450px;position:relative;overflow:hidden;background:linear-gradient(#adced6,#d7e7ea)}.terrain-viewport canvas{width:100%;height:100%;display:block;cursor:grab;touch-action:none}.terrain-viewport canvas:active{cursor:grabbing}.terrain-loading{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:15px;color:#24445b;font:12px/1.4 Arial;letter-spacing:.09em;text-align:center;z-index:4;background:linear-gradient(150deg,#dcebee,#a2c7ce)}.terrain-loading[hidden]{display:none}.terrain-loading strong{font:400 32px Georgia,serif;letter-spacing:0}.terrain-spinner{width:48px;height:48px;border:2px solid #668b97;border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.terrain-caption{position:absolute;bottom:15px;left:20px;color:#f4f9fa;background:rgba(5,30,45,.61);padding:9px 11px;font-size:10px;letter-spacing:.09em;pointer-events:none}.terrain-controls{position:absolute;right:18px;bottom:16px;display:flex;gap:8px}.terrain-controls button{width:43px;height:43px;background:rgba(255,255,255,.88);border:0;color:#123d56;font-size:23px;cursor:pointer;box-shadow:0 5px 16px #123a4b44}.terrain-controls button:hover,.terrain-controls button.active{background:#123d56;color:white}.terrain-selection{position:absolute;top:99px;left:18px;width:min(315px,calc(100% - 36px));padding:20px 24px;background:rgba(252,254,254,.95);box-shadow:0 20px 60px #16344955;backdrop-filter:blur(16px);color:#153947;z-index:5}.terrain-selection[hidden]{display:none}.terrain-selection small{font-size:9px;letter-spacing:.16em;color:#6c8894}.terrain-selection h3{font:400 27px Georgia,serif;margin:11px 0}.terrain-selection p{font-size:12px;line-height:1.8}.terrain-selection-close{float:right;background:transparent;border:0;font-size:20px;cursor:pointer}.map-fallback[hidden]{display:none!important}.map-fallback{height:min(650px,67vw);min-height:450px;position:relative}.map-fallback svg{display:block;width:100%;height:100%}.map-card-3d .map-watermark{bottom:12px}
.luxury-welcome{position:fixed;inset:0;z-index:400;display:grid;place-items:center}.luxury-welcome[hidden]{display:none}.welcome-scrim{position:absolute;inset:0;background:rgba(2,17,26,.75);backdrop-filter:blur(15px)}.welcome-card{position:relative;width:min(720px,calc(100% - 36px));min-height:480px;background:linear-gradient(110deg,rgba(7,26,40,.92),rgba(7,26,40,.3)),url('https://images.unsplash.com/photo-1517299321609-52687d1bc55a?auto=format&fit=crop&w=1400&q=82') center/cover;box-shadow:0 20px 100px rgba(0,0,0,.32);color:white;display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,6vw,76px);animation:megaIn .6s var(--vs-ease)}.welcome-card h2{font:400 clamp(49px,6vw,87px)/1.05 Georgia,serif;margin:20px 0}.welcome-card h2 em{font-weight:400}.welcome-card p{max-width:430px;color:#e8f0f2;line-height:1.8}.welcome-card small{position:absolute;bottom:17px;left:clamp(28px,6vw,76px);font-size:10px;opacity:.75}.welcome-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.welcome-card>button{position:absolute;top:19px;right:23px;background:transparent;border:0;color:white;font-size:24px;cursor:pointer}
.gallery-dialog{padding:0!important;background:#0c202b;border:0;width:min(1100px,95vw);max-width:95vw;color:white;max-height:94vh;box-shadow:0 30px 100px #0008}.gallery-dialog::backdrop{background:rgba(0,12,23,.88);backdrop-filter:blur(11px)}.gallery-dialog>button{position:absolute;top:20px;right:25px;border:1px solid #fff7;border-radius:50%;width:40px;height:40px;background:#102c3caa;color:white;font-size:20px;cursor:pointer;z-index:2}.gallery-visual{height:min(68vh,710px);min-height:290px;background-size:cover;background-position:center}.gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px 28px}.gallery-bottom span{font-size:11px;opacity:.64}.gallery-bottom strong{font:400 clamp(17px,2vw,27px) Georgia,serif}.gallery-bottom button{border:1px solid #ffffff55;background:transparent;color:white;padding:11px 15px;cursor:pointer}
@media(max-width:1150px){.mega-toggle{display:none}.editorial-journey{grid-template-columns:1fr 1fr}.terrain-topbar strong{font-size:20px}}
@media(max-width:760px){.editorial-journey{display:block}.editorial-left{height:380px;padding:14px 14px 0}.journey-photo{min-height:0}.journey-photo.one{margin-top:45px}.journey-photo.two{margin-bottom:45px}.editorial-right{padding:55px 24px}.journey-counter{margin-top:40px;grid-template-columns:auto 1fr}.mega-panel{display:block;top:3%;left:3%;width:94%;max-height:93vh;height:auto}.mega-intro{padding:35px}.mega-links{padding:22px}.mega-links a{font-size:17px;padding:14px 0}.terrain-topbar{position:relative;background:#092c40;display:block;padding:15px}.terrain-switch{margin-top:11px;width:max-content}.terrain-viewport,.map-fallback{height:490px;min-height:0}.terrain-selection{top:13px;left:10px;padding:13px;width:min(275px,calc(100% - 20px))}.terrain-selection h3{font-size:22px}.hero h1{font-size:clamp(50px,12vw,84px)}.hero-scroll-hint{display:none}.gallery-bottom{padding:15px}.gallery-bottom strong{font-size:16px}.journey-counter b{font-size:27px}}
@media(prefers-reduced-motion:reduce){.will-reveal{opacity:1;transform:none;transition:none}.hero-scroll-hint span,.terrain-spinner{animation:none}.sector-card,.product-card,.destination-feature{transition:none}.mega-panel,.welcome-card{animation:none}*{scroll-behavior:auto!important}}
