:root{--bg: #0c0e11;--ink: #f2efe7;--ink-dim: rgba(242, 239, 231, .72);--accent: #e8b464;--accent-ink: #1d1508;--glass: rgba(13, 15, 19, .55);--glass-strong: rgba(11, 13, 17, .78);--line: rgba(255, 255, 255, .14);--shadow: 0 18px 50px rgba(0, 0, 0, .45);--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}html{touch-action:manipulation}body{font-family:var(--font);background:var(--bg);color:var(--ink);overflow:hidden;-webkit-font-smoothing:antialiased}#scene{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none}.wordmark,.rowItem,.navArrow,#envBar,#hint,#menuBtn,#menu a,.loader-mark,.loader-sub{user-select:none;-webkit-user-select:none}#loader{position:fixed;inset:0;z-index:60;display:grid;place-content:center;gap:14px;text-align:center;background:radial-gradient(120% 120% at 50% 20%,#171b22 0%,var(--bg) 70%);transition:opacity .8s ease}#loader.loader--done{opacity:0;pointer-events:none}.loader-mark{font-size:clamp(28px,5vw,44px);font-weight:700;letter-spacing:.42em;padding-left:.42em}.loader-sub{color:var(--ink-dim);font-size:14px;letter-spacing:.08em}.loader-bar{margin:18px auto 0;width:160px;height:2px;background:#ffffff1f;overflow:hidden;border-radius:2px}.loader-bar span{display:block;height:100%;width:40%;background:var(--accent);border-radius:2px;animation:loaderSlide 1.1s ease-in-out infinite}@keyframes loaderSlide{0%{transform:translate(-100%)}to{transform:translate(400%)}}#topbar{position:fixed;top:0;left:0;right:0;z-index:40;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:20px;padding:calc(14px + env(safe-area-inset-top)) 22px 30px;background:linear-gradient(to bottom,rgba(8,10,13,.72),transparent);pointer-events:none}.wordmark{grid-column:1;grid-row:1;position:relative;z-index:1;pointer-events:auto;color:var(--ink);text-decoration:none;display:grid;place-content:center;padding:4px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:#0a0c104d;backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px)}.wordmark-logo{display:block;width:40px;height:40px;filter:drop-shadow(0 1px 6px rgba(0,0,0,.6))}#sectionRow{grid-column:1 / 3;grid-row:1;position:relative;padding-left:var(--wordmark-w, 0px);pointer-events:auto;display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;scroll-padding-inline:24px}#sectionRow::-webkit-scrollbar{display:none}.rowItem{flex:0 0 auto;scroll-snap-align:center;appearance:none;border:1px solid transparent;background:transparent;color:#f2efe79e;font-family:var(--font);font-size:12px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;padding:9px 14px;border-radius:999px;cursor:pointer;text-shadow:0 1px 6px rgba(0,0,0,.55);transition:color .3s ease,background .3s ease,border-color .3s ease}.rowItem:hover{color:var(--ink);border-color:var(--line)}.rowItem--active{color:var(--accent);border-color:#e8b4648c;background:#e8b4641a}#menuBtn{grid-column:3;grid-row:1;pointer-events:auto;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);cursor:pointer;display:grid;place-content:center;gap:5px}#menuBtn span{display:block;width:17px;height:2px;background:var(--ink);border-radius:2px;transition:transform .35s ease,opacity .35s ease}.menu-open #menuBtn span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open #menuBtn span:last-child{transform:translateY(-3.5px) rotate(-45deg)}#menu{position:fixed;inset:0;z-index:35;display:grid;place-content:center;background:#080a0dd1;backdrop-filter:blur(22px) saturate(1.1);-webkit-backdrop-filter:blur(22px) saturate(1.1);opacity:0;visibility:hidden;transition:opacity .4s ease,visibility .4s}.menu-open #menu{opacity:1;visibility:visible}#menu ul{list-style:none;text-align:center;display:grid;gap:6px}#menu a{color:var(--ink);text-decoration:none;font-size:clamp(26px,5.6vw,42px);font-weight:650;letter-spacing:.02em;padding:6px 18px;display:inline-block;border-radius:12px;transition:color .25s ease,transform .25s ease}#menu a:hover{color:var(--accent);transform:translate(6px)}.navArrow{position:fixed;top:50%;transform:translateY(-50%);z-index:25;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--ink);cursor:pointer;display:grid;place-content:center;transition:background .25s ease,border-color .25s ease,transform .25s ease}.navArrow--prev{left:18px}.navArrow--next{right:18px}.navArrow:hover{border-color:#e8b46499;background:var(--glass-strong)}.navArrow--prev:hover{transform:translateY(-50%) translate(-2px)}.navArrow--next:hover{transform:translateY(-50%) translate(2px)}#envBar{position:fixed;left:22px;bottom:calc(22px + env(safe-area-inset-bottom));z-index:25;display:flex;align-items:center;gap:12px;padding:9px 14px 9px 10px;border-radius:999px;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}#envAuto{display:grid;place-content:center;width:26px;height:26px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--ink-dim);cursor:pointer;padding:0;transition:color .25s ease,border-color .25s ease}#envAuto:hover{color:var(--accent);border-color:#e8b46480}#envAuto .icon-play{display:none}#envAuto.envAuto--paused .icon-play{display:block}#envAuto.envAuto--paused .icon-pause{display:none}#envDots{display:flex;gap:10px}.envDot{position:relative;width:9px;height:9px;border-radius:50%;border:none;padding:0;background:#ffffff59;cursor:pointer;transition:background .3s ease,transform .3s ease}.envDot:hover{background:#fffc;transform:scale(1.25)}.envDot--active{background:var(--accent);transform:scale(1.45)}.envDot:after{content:attr(data-label);position:absolute;bottom:20px;left:50%;transform:translate(-50%) translateY(4px);padding:5px 10px;border-radius:999px;border:1px solid var(--line);background:var(--glass-strong);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--ink);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}.envDot:hover:after,.envDot:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}#hint{position:fixed;bottom:calc(26px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:24;display:flex;align-items:center;gap:14px;color:var(--ink);padding:12px 24px 12px 18px;border-radius:999px;border:1px solid rgba(232,180,100,.45);background:#0a0c0fb8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 10px 30px #00000059;white-space:nowrap;transition:opacity .8s ease;animation:hintFloat 3.2s ease-in-out infinite}#hint .hint-icon{flex:none;color:var(--accent);animation:hintSwipe 1.6s ease-in-out infinite}#hint .hint-text{display:grid;gap:2px}#hint strong{font-size:16px;font-weight:700;letter-spacing:.02em}#hint .hint-sub{font-size:12.5px;letter-spacing:.04em;color:var(--ink-dim)}#hint .hint-mouse{display:none}@media(hover:hover)and (pointer:fine){#hint .hint-touch{display:none}#hint .hint-mouse{display:inline}}@keyframes hintSwipe{0%,to{transform:translate(-4px)}50%{transform:translate(4px)}}#hint.hidden{opacity:0;pointer-events:none}@keyframes hintFloat{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-5px)}}#cards{position:fixed;inset:0;z-index:30;pointer-events:none}.card{position:absolute;top:50%;right:clamp(20px,5vw,72px);transform:translateY(-50%) translate(26px);width:min(420px,calc(100vw - 40px));max-height:min(72vh,640px);overflow-y:auto;overscroll-behavior:contain;padding:30px 30px 26px;border-radius:20px;border:1px solid var(--line);background:var(--glass-strong);backdrop-filter:blur(22px) saturate(1.15);-webkit-backdrop-filter:blur(22px) saturate(1.15);box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:opacity .55s ease,transform .55s ease,visibility .55s}.card--active{opacity:1;visibility:visible;transform:translateY(-50%) translate(0);pointer-events:auto}.card{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.card::-webkit-scrollbar{width:7px}.card::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:8px}.card::-webkit-scrollbar-track{background:transparent}.card-kicker{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;margin-bottom:10px}.card h1,.card h2{font-size:clamp(24px,3.2vw,30px);line-height:1.15;font-weight:700;letter-spacing:-.01em;margin-bottom:14px}.card p{color:var(--ink-dim);font-size:15px;line-height:1.6;margin-bottom:12px}.card ul{list-style:none;margin:4px 0 14px;display:grid;gap:8px}.card ul li{color:var(--ink-dim);font-size:14.5px;line-height:1.5;padding-left:22px;position:relative}.card ul li:before{content:"";position:absolute;left:2px;top:7px;width:8px;height:8px;background:var(--accent);clip-path:polygon(50% 0,100% 100%,0 100%);opacity:.9}.card-price{color:var(--ink);font-size:17px;font-weight:650;margin:4px 0 14px}.card-price small{color:var(--ink-dim);font-weight:400;font-size:12px}.card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.cta{appearance:none;border:none;cursor:pointer;font-family:var(--font);font-size:14px;font-weight:700;letter-spacing:.03em;padding:13px 22px;border-radius:999px;background:var(--accent);color:var(--accent-ink);text-decoration:none;display:inline-block;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.cta:hover{transform:translateY(-1px);box-shadow:0 8px 24px #e8b46459;background:#f2c37b}.cta--ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}.cta--ghost:hover{box-shadow:none;border-color:#e8b46499;background:#e8b46414}.card-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--ink-dim);font-size:22px;line-height:1;cursor:pointer;transition:border-color .25s ease,color .25s ease}.card-close:hover{color:var(--ink);border-color:var(--line)}.gallery{display:grid;gap:12px;margin:6px 0 10px}.gallery figure{border-radius:12px;overflow:hidden;border:1px solid var(--line)}.gallery img{width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block}.gallery figcaption{font-size:11.5px;color:var(--ink-dim);padding:8px 10px;background:#ffffff0a}.specs{display:grid;gap:10px;margin:6px 0 14px}.specs>div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}.specs dt{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding-top:2px}.specs dd{color:var(--ink);font-size:14.5px;line-height:1.45}.contact-list{margin-bottom:6px}.contact-list a{color:var(--ink);text-decoration:none;border-bottom:1px solid rgba(232,180,100,.5);transition:color .25s ease}.contact-list a:hover{color:var(--accent)}#contactModal{margin:auto;border:none;padding:0;background:transparent;color:var(--ink);width:min(520px,calc(100vw - 32px));max-width:none}#contactModal::backdrop{background:#06080b9e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.contactForm{position:relative;display:grid;gap:14px;text-align:left;padding:32px 30px 26px;max-height:88dvh;overflow-y:auto;border-radius:20px;border:1px solid var(--line);background:var(--glass-strong);backdrop-filter:blur(24px) saturate(1.15);-webkit-backdrop-filter:blur(24px) saturate(1.15);box-shadow:var(--shadow)}.contactForm h2{font-size:clamp(22px,3vw,28px);line-height:1.15;font-weight:700;letter-spacing:-.01em}.contactForm-intro{color:var(--ink-dim);font-size:15px;line-height:1.55;margin-top:-4px}.modal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--ink-dim);font-size:22px;line-height:1;cursor:pointer;transition:border-color .25s ease,color .25s ease}.modal-close:hover{color:var(--ink);border-color:var(--line)}.field{display:grid;gap:6px}.field>span{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim)}.field>span em{font-style:normal;font-weight:500;text-transform:none;letter-spacing:.02em;opacity:.75}.field input,.field textarea{width:100%;font-family:var(--font);font-size:16px;color:var(--ink);background:#ffffff0f;border:1px solid var(--line);border-radius:12px;padding:11px 13px;resize:vertical;transition:border-color .2s ease,background .2s ease}.field input:focus-visible,.field textarea:focus-visible{outline:none;border-color:#e8b464bf;background:#ffffff17}.field input:user-invalid,.field textarea:user-invalid{border-color:#ff9682b3}.contactForm-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.contactForm-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.contactForm button[type=submit]:disabled{opacity:.6;cursor:progress}.contactForm-status{font-size:14px;line-height:1.5;min-height:1.2em;color:var(--ink-dim)}.contactForm-status--success{color:#9fe3b4}.contactForm-status--error{color:#ffb4a2}@media(max-width:720px){.card{inset:auto 0 0;width:100%;max-height:62dvh;border-radius:22px 22px 0 0;border-left:none;border-right:none;border-bottom:none;transform:translateY(30px);padding:26px 22px calc(22px + env(safe-area-inset-bottom))}.card--active{transform:translateY(0)}.card:before{content:"";position:absolute;top:10px;left:50%;transform:translate(-50%);width:42px;height:4px;border-radius:4px;background:#ffffff47}.navArrow--prev{left:10px}.navArrow--next{right:10px}.card-open #hint,.card-open .navArrow{opacity:0;pointer-events:none}.navArrow,#hint{transition:opacity .4s ease}#envBar{left:14px;bottom:auto;top:calc(64px + env(safe-area-inset-top));gap:10px;padding:7px 0;border:none;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;filter:drop-shadow(0 1px 4px rgba(0,0,0,.5))}.envDot:after{bottom:auto;top:20px;transform:translate(-50%) translateY(-4px)}.envDot:hover:after,.envDot:focus-visible:after{transform:translate(-50%) translateY(0)}#topbar{column-gap:10px;padding-left:14px;padding-right:14px}.wordmark-logo{width:30px;height:30px}.rowItem{font-size:11px;letter-spacing:.1em;padding:8px 11px}#hint{bottom:calc(70px + env(safe-area-inset-bottom))}}#css3d{position:absolute;top:0;left:0;z-index:15;pointer-events:none}#css3d .glass{pointer-events:none}#glass2d{position:absolute;top:0;left:0;z-index:15;overflow:hidden;pointer-events:none}#glass2d .glass{position:absolute;top:0;left:0;pointer-events:none}.glass-inner{position:relative;width:560px;padding:44px 52px;text-align:center;color:var(--ink);text-shadow:0 1px 3px rgba(0,0,0,.7),0 2px 18px rgba(0,0,0,.6);pointer-events:none}.glass-head{transition:opacity .4s ease}.glass-body{transition:opacity .45s ease,transform .45s ease}.glass-inner .card-kicker{margin-bottom:12px}.glass-inner h1,.glass-inner h2{font-size:40px;line-height:1.12;font-weight:750;letter-spacing:-.015em;margin-bottom:14px}.glass-body>p{color:#f2efe7f0;font-size:17px;line-height:1.62;margin-bottom:10px}.glass-body>.glass-hint{font-size:12px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;color:#f2efe79e;margin:4px 0 2px}.glass-line,.glass-lede,.glass-hint-mouse,.glass--expanded .glass-hint,.glass-hint--sheet-only{display:none}@media(hover:hover)and (pointer:fine){.glass-hint-touch{display:none}.glass-hint-mouse{display:inline}}.glass-inner .card-actions{justify-content:center;margin-top:20px;pointer-events:none}.glass-inner .cta{box-shadow:0 6px 26px #00000059}.glass-more{display:none;margin-top:6px}.glass--expanded .glass-more{display:block;animation:glassMoreIn .5s ease}@keyframes glassMoreIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.glass-more ul{text-align:left;display:inline-grid;gap:7px;margin:6px auto 10px}.glass-more ul li{font-size:15px;color:#f2efe7eb}.glass-more .card-price{font-size:16px;margin:8px 0 4px}.glass-more p{font-size:15px;color:#f2efe7e6;margin-bottom:6px}.glass-more .specs{text-align:left;margin:10px auto 6px;max-width:440px}.glass-more .specs>div{grid-template-columns:128px 1fr;padding-bottom:7px;border-bottom-color:#ffffff24}.glass-more .specs dd{font-size:14px;text-shadow:0 1px 3px rgba(0,0,0,.6)}.glass-more .gallery{max-width:430px;margin:10px auto 8px}.glass-more .gallery figure{background:#0a0c0f73}.glass-more .gallery{grid-template-columns:1fr 1fr}.glass-more .gallery figure:first-child{grid-column:1 / -1}.glass-more .gallery figure:not(:first-child) img{aspect-ratio:4 / 3}.glass-more .contact-list{display:grid;gap:8px;margin:6px 0 10px}.glass-more .contact-list li{padding-left:0}.glass-more .contact-list li:before{display:none}.glass-more .contact-list a{font-size:17px}@media(min-width:721px){body:not(.no-webgl) #cards{display:none}}@media(max-width:720px){#glass2d{transition:opacity .4s ease}.card-open #glass2d{opacity:.12}.glass-inner{padding:0}.glass-inner .card-kicker{font-size:11px;letter-spacing:.2em;margin-bottom:8px}.glass-inner h1,.glass-inner h2{font-size:24px;margin-bottom:8px}.glass-body>p:not(.glass-hint):not(.glass-lede){display:none}.glass-body>.glass-lede{display:block;font-size:16px;line-height:1.45;margin-bottom:6px}.glass-hint--sheet-only{display:block}.glass-body>.glass-hint{font-size:11px;margin:0 0 2px}.glass-inner .card-actions{margin-top:10px}.glass--lines .glass-head,.glass--lines .glass-body{position:absolute;inset:0}.glass--lines .glass-head>:not(.glass-line),.glass--lines .glass-body>p:not(.glass-line){display:none}.glass-inner .glass-line{display:block;position:absolute;margin:0;white-space:nowrap;text-align:center}.glass--lines [data-mobile-glass=hide]{display:none}.glass--lines .card-actions{position:absolute;display:block;margin:0;text-align:center}.glass-inner .cta{font-size:13px;padding:11px 18px}}#fitDebug{position:fixed;inset:0;z-index:100;pointer-events:none}#fitDebug svg{position:absolute;inset:0}#fitDebug pre{position:absolute;left:8px;bottom:8px;padding:6px 8px;font:11px/1.4 ui-monospace,monospace;color:#fff;background:#000000b3;border-radius:6px}.debug-geo #hint,.debug-geo .navArrow,.debug-geo #envBar,.debug-geo #sectionRow,.debug-geo #cards,.debug-geo #css3d,.debug-geo #glass2d,.no-webgl #scene,.no-webgl #sectionRow,.no-webgl #envBar,.no-webgl #hint,.no-webgl .navArrow{display:none!important}.no-webgl{overflow:auto;background:radial-gradient(90% 60% at 50% 0%,#232a35 0%,var(--bg) 60%)}.no-webgl #cards{position:static;padding:110px 20px 50px;pointer-events:auto}.no-webgl .card{position:static;opacity:1;visibility:visible;transform:none;pointer-events:auto;margin:0 auto 26px;max-width:560px;max-height:none}.no-webgl .card-close{display:none}@media(prefers-reduced-motion:reduce){#hint,#hint .hint-icon{animation:none}.card,.rowItem,#menu,.navArrow,.glass-head,.glass-body{transition-duration:.01s!important}.glass--expanded .glass-more{animation:none}}
