:root{--bg:#0c0d0e;--bg2:#121315;--card:#17181b;--line:rgba(255,255,255,.09);--fg:#f1eee8;--muted:#9c9a95;--accent:#d9c08f;--accent2:#efe2c4;--light:#f3f0ea;--ink:#121212;--r:22px;--ease:cubic-bezier(.2,.7,.1,1);--sans:"Manrope",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;--serif:"Instrument Serif",Georgia,serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-family:var(--sans);font-weight:400;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.locked{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}em{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--accent2);letter-spacing:0}h1,h2,h3{font-weight:500;letter-spacing:-.03em;line-height:1.02}h1{font-size:clamp(44px,7.4vw,112px)}h2{font-size:clamp(36px,5vw,76px)}h3{font-size:22px;letter-spacing:-.01em;line-height:1.2}.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:20px}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:10px;padding:16px 26px;border-radius:999px;background:var(--fg);color:var(--ink);font-weight:600;font-size:15px;transition:transform .3s var(--ease),background .3s}.btn:hover{transform:translateY(-2px);background:var(--accent2)}.btn-ghost{background:transparent;color:var(--fg);box-shadow:inset 0 0 0 1px #ffffff47}.btn-ghost:hover{background:#ffffff14}.btn-sm{padding:11px 18px;font-size:14px}.nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:32px;padding:18px clamp(20px,4vw,56px);transition:background .4s,backdrop-filter .4s,padding .4s}.nav.scrolled{background:#0c0d0eb8;backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px);padding-top:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-weight:300;letter-spacing:.26em;font-size:14px;color:var(--accent)}.brand span{color:var(--accent);font-size:12px;letter-spacing:.34em;padding-top:1px}.brand-logo{display:block;height:18px;width:auto}.links{display:flex;gap:28px;margin-left:auto;font-size:14px;color:#cfccc6}.links a{position:relative}.links a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:var(--accent);transition:right .4s var(--ease)}.links a:hover:after{right:0}.burger{display:none;width:40px;height:40px;position:relative}.burger i{position:absolute;left:10px;right:10px;height:1.5px;background:var(--fg);transition:transform .3s}.burger i:first-child{top:16px}.burger i:last-child{top:23px}.hero{position:relative;min-height:100svh;display:grid;grid-template-rows:1fr auto;padding:120px clamp(20px,4vw,56px) 40px;overflow:hidden;background:radial-gradient(1200px 700px at 70% 55%,#24262a 0%,#141517 45%,var(--bg) 80%)}#hero-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}.hero-copy{position:relative;z-index:1;max-width:760px;align-self:start;margin-top:4vh;pointer-events:none}.hero-copy .cta{pointer-events:auto}.hero .lead{font-size:clamp(17px,1.45vw,20px);color:#cbc8c2;max-width:520px;margin:26px 0 34px}.cta{display:flex;gap:12px;flex-wrap:wrap}.hero-stats{position:relative;z-index:1;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;border-top:1px solid var(--line);padding-top:26px;max-width:900px}.hero-stats b{display:block;font-size:clamp(26px,3vw,40px);font-weight:500;letter-spacing:-.03em}.hero-stats span{font-size:13px;color:var(--muted)}.scroll-cue{position:absolute;right:clamp(20px,4vw,56px);bottom:44px;width:1px;height:70px;background:var(--line);overflow:hidden;z-index:1}.scroll-cue span{position:absolute;inset:0;background:var(--accent);animation:cue 2.2s var(--ease) infinite}@keyframes cue{0%{transform:translateY(-100%)}60%,to{transform:translateY(100%)}}.section{padding:clamp(90px,12vw,170px) clamp(20px,4vw,56px)}.section-head{max-width:880px;margin-bottom:clamp(40px,6vw,80px)}.section-head .muted{font-size:18px;max-width:600px;margin-top:22px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:16px}.card{background:var(--card);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--line);transition:transform .5s var(--ease),border-color .5s}.card:hover{transform:translateY(-6px);border-color:#d9c08f59}.card .ph{aspect-ratio:4/3;overflow:hidden;background:#222;position:relative}.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.card:hover .ph img{transform:scale(1.05)}.card .badge{position:absolute;top:14px;left:14px;background:#0c0d0eb3;backdrop-filter:blur(8px);padding:6px 12px;border-radius:99px;font-size:12px;letter-spacing:.08em}.card .body{padding:24px 24px 26px;display:flex;flex-direction:column;gap:16px;flex:1}.card h3{font-size:28px;letter-spacing:-.03em}.card .tag{color:var(--muted);font-size:14px;margin-top:-8px}.specs{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;font-size:13px;border-top:1px solid var(--line);padding-top:16px}.specs dt{color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.specs dd{font-weight:500}.price{font-size:20px;font-weight:600;letter-spacing:-.01em;margin-top:auto}.price small{font-size:13px;color:var(--muted);font-weight:400}.card .actions{display:flex;gap:8px}.card .actions .btn{flex:1;justify-content:center;padding:13px 14px;font-size:14px}.why{background:var(--light);color:var(--ink)}.why em,.why .eyebrow{color:#8a6d3b}.uses{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#0000001a;border:1px solid rgba(0,0,0,.1);border-radius:var(--r);overflow:hidden}.use{background:var(--light);padding:38px 32px 44px;min-height:240px;transition:background .4s}.use:hover{background:#ebe6dc}.use .num{font-family:var(--serif);font-style:italic;font-size:22px;color:#8a6d3b}.use h3{margin:28px 0 12px;font-size:24px}.use p{color:#55524c;font-size:15px}.build{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(30px,5vw,80px);margin-top:clamp(70px,9vw,130px);align-items:center}.build-img{border-radius:var(--r);overflow:hidden;background:#fff}.build-img img{width:100%}.build-list{list-style:none;display:grid;gap:28px}.build-list h4{font-size:18px;font-weight:600;margin-bottom:6px;letter-spacing:-.01em}.build-list p{color:#55524c;font-size:15px}.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:s}.steps li{border-top:1px solid rgba(255,255,255,.18);padding-top:26px;position:relative}.steps li:before{content:"";position:absolute;top:-1px;left:0;width:0;height:1px;background:var(--accent);transition:width 1.4s var(--ease)}.steps li.in:before{width:100%}.steps span{font-family:var(--serif);font-style:italic;font-size:54px;color:var(--accent);line-height:1}.steps h3{margin:22px 0 10px}.steps p{color:var(--muted);font-size:15px}.fineprint{font-size:13px;color:var(--muted);margin-top:46px}.masonry{columns:3 320px;column-gap:14px}.masonry figure{break-inside:avoid;margin-bottom:14px;border-radius:16px;overflow:hidden;position:relative;background:#1a1b1d;cursor:zoom-in}.masonry img{width:100%;transition:transform 1s var(--ease)}.masonry figure:hover img{transform:scale(1.04)}.masonry figcaption{position:absolute;left:12px;bottom:12px;font-size:12px;background:#0c0d0eb3;padding:5px 10px;border-radius:99px;backdrop-filter:blur(6px)}.lightbox{position:fixed;inset:0;z-index:120;background:#050506eb;display:grid;place-items:center;padding:4vw;cursor:zoom-out;opacity:0;pointer-events:none;transition:opacity .3s}.lightbox.open{opacity:1;pointer-events:auto}.lightbox img{max-height:90vh;border-radius:12px}.contact{background:var(--bg2);border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,100px);align-items:start}.big-link{display:block;font-size:clamp(26px,3.2vw,46px);letter-spacing:-.03em;margin-top:22px;width:max-content;max-width:100%;border-bottom:1px solid var(--line);transition:color .3s,border-color .3s}.big-link:first-of-type{margin-top:46px}.big-link:hover{color:var(--accent2);border-color:var(--accent)}.contact .muted{margin-top:26px}.enquiry{display:grid;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:clamp(22px,3vw,36px)}.enquiry .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.enquiry label{display:grid;gap:6px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.enquiry input,.enquiry select,.enquiry textarea{font:inherit;font-size:15px;letter-spacing:0;text-transform:none;color:var(--fg);background:#0f1011;border:1px solid var(--line);border-radius:12px;padding:13px 14px;outline:none;transition:border-color .3s}.enquiry input:focus,.enquiry select:focus,.enquiry textarea:focus{border-color:var(--accent)}.enquiry fieldset{border:0}.enquiry legend{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips label{display:block;cursor:pointer}.chips input{position:absolute;opacity:0;pointer-events:none}.chips span{display:inline-block;padding:9px 14px;border-radius:99px;border:1px solid var(--line);font-size:14px;letter-spacing:0;text-transform:none;color:var(--fg);transition:all .25s}.chips input:checked+span{background:var(--fg);color:var(--ink);border-color:var(--fg)}.enquiry .btn{justify-content:center;margin-top:6px}.enquiry .fineprint{margin-top:0}.footer{display:flex;flex-wrap:wrap;gap:12px 40px;justify-content:space-between;padding:34px clamp(20px,4vw,56px);font-size:13px;border-top:1px solid var(--line)}.reveal{opacity:0;transform:translateY(28px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}.reveal.in{opacity:1;transform:none}.viewer{position:fixed;inset:0;z-index:100;background:var(--bg);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);opacity:0;pointer-events:none;transition:opacity .45s var(--ease)}.viewer.open{opacity:1;pointer-events:auto}.viewer-top{display:flex;align-items:center;gap:16px;padding:14px clamp(14px,2vw,24px);border-bottom:1px solid var(--line)}.tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;min-width:0;flex:1}.tabs::-webkit-scrollbar{display:none}.tabs button{white-space:nowrap;padding:10px 16px;border-radius:99px;font-size:14px;color:#cfccc6;border:1px solid transparent;transition:all .25s}.tabs button:hover{border-color:var(--line)}.tabs button.active{background:var(--fg);color:var(--ink)}.icon-btn{margin-left:auto;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);flex:none;transition:background .25s}.icon-btn:hover{background:#ffffff14}.viewer-body{display:grid;grid-template-columns:400px minmax(0,1fr);min-height:0;min-width:0}.panel{overflow-y:auto;padding:32px clamp(18px,2vw,30px) 50px;border-right:1px solid var(--line)}.panel h2{font-size:52px}.panel .tag{color:var(--muted);margin:10px 0 24px}.panel .specs{grid-template-columns:1fr 1fr;font-size:15px;gap:14px 18px;padding:20px 0;border-bottom:1px solid var(--line)}.panel .price{margin:22px 0 4px;font-size:30px}.panel .note{font-size:12px;color:var(--muted)}.panel .actions{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 30px}.panel h4{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:32px 0 14px}.panel .feat{display:grid;gap:14px}.panel .feat b{display:block;font-weight:600;font-size:15px}.panel .feat p{font-size:14px;color:var(--muted)}.panel .plan{background:#fff;border-radius:14px;padding:10px}.panel .thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.panel .thumbs img{aspect-ratio:1;object-fit:cover;border-radius:8px;cursor:zoom-in}.panel .addons{display:grid;grid-template-columns:1fr auto;gap:6px 14px;font-size:14px}.panel .addons span:nth-child(2n){color:var(--muted)}.panel .disclaimer{font-size:12px;color:var(--muted);margin-top:28px;line-height:1.5}.stage{position:relative;min-width:0;min-height:0;overflow:hidden}#viewer-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.toolbar{position:absolute;left:50%;bottom:22px;transform:translate(-50%);width:max-content;display:flex;gap:4px;padding:5px;border-radius:99px;background:#0e0f10b8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line)}.tool{padding:11px 18px;border-radius:99px;font-size:14px;color:#d8d5cf;white-space:nowrap;transition:all .25s}.tool.active{background:#ffffff24;color:#fff}.tool.walk-btn{background:var(--accent);color:var(--ink);font-weight:600}.tool.walk-btn:hover{background:var(--accent2)}.hint{position:absolute;top:16px;left:50%;transform:translate(-50%);font-size:12px;color:#fff;background:#0e0f108c;padding:7px 14px;border-radius:99px;backdrop-filter:blur(8px);pointer-events:none}.loading{position:absolute;inset:0;display:grid;place-items:center;background:var(--bg);font-size:14px;color:var(--muted);transition:opacity .4s;pointer-events:none}.loading.hide{opacity:0}.walk-ui{display:none}.stage.walking .walk-ui{display:block}.stage.walking .toolbar,.stage.walking .orbit-hint{display:none}.exit-walk{position:absolute;top:16px;right:16px;padding:11px 18px;border-radius:99px;background:#0e0f10c7;border:1px solid rgba(255,255,255,.2);font-size:14px;font-weight:600;backdrop-filter:blur(10px);z-index:3}.zone{position:absolute;top:18px;left:18px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;background:#0e0f1099;padding:8px 14px;border-radius:99px;backdrop-filter:blur(8px)}.zone:empty{display:none}.walk-help{position:absolute;bottom:20px;left:50%;transform:translate(-50%);font-size:12px;color:#fff;background:#0e0f1099;padding:8px 16px;border-radius:99px;white-space:nowrap;pointer-events:none}.crosshair{position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px;border-radius:50%;background:#ffffffbf;box-shadow:0 0 0 1px #0000004d;pointer-events:none}.unlock-msg{position:absolute;left:50%;top:50%;transform:translate(-50%,24px);font-size:13px;background:#0e0f10b3;padding:8px 14px;border-radius:99px;pointer-events:none;display:none}.stage.walking.unlocked .unlock-msg{display:block}.joystick{position:absolute;left:28px;bottom:70px;width:120px;height:120px;border-radius:50%;background:#ffffff1f;border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(6px);touch-action:none;z-index:3}.joystick .knob{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px;border-radius:50%;background:#ffffffd9;pointer-events:none}.touch-only{display:none!important}@media (pointer:coarse){.touch-only{display:block!important}.desktop-only,.stage.walking.unlocked .unlock-msg{display:none!important}}@media (max-width:1100px){.uses{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr);gap:40px 18px}}@media (max-width:900px){.links{display:none}.burger{display:block;margin-left:auto}.nav .btn-sm{display:none}.nav.menu .links{display:flex;position:fixed;inset:64px 0 auto;flex-direction:column;gap:0;background:#0c0d0ef7;padding:10px 20px 24px;border-bottom:1px solid var(--line)}.nav.menu .links a{padding:14px 0;font-size:20px;border-bottom:1px solid var(--line)}.build,.contact-grid{grid-template-columns:1fr}.viewer-body{grid-template-columns:minmax(0,1fr);grid-template-rows:56svh minmax(0,1fr)}.stage{grid-row:1}.panel{grid-row:2;border-right:0;border-top:1px solid var(--line)}.viewer.walkfull .viewer-body{grid-template-rows:1fr 0}.viewer.walkfull .panel,.viewer.walkfull .viewer-top{display:none}.viewer.walkfull{grid-template-rows:1fr}}@media (max-width:640px){.hero{padding-top:96px;display:flex;flex-direction:column}#hero-canvas{position:relative;inset:auto;height:36svh;min-height:240px;margin:6px 0 10px;order:1}.hero-stats{order:2}.hero-copy{margin-top:0}.hero-stats{grid-template-columns:repeat(2,1fr);row-gap:18px}.uses,.steps,.enquiry .row{grid-template-columns:1fr}.tool{padding:10px 13px;font-size:13px}.panel h2{font-size:42px}.scroll-cue{display:none}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
