@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-cyrillic-wght-normal.BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-vietnamese-wght-normal.6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-latin-ext-wght-normal.DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-latin-wght-normal.BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-mono-cyrillic-ext-wght-normal.X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-mono-cyrillic-wght-normal.DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-mono-symbols2-wght-normal.CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-mono-vietnamese-wght-normal.DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-mono-latin-ext-wght-normal.Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/astro/geist-mono-latin-wght-normal.XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#fbfbf7;--tint:#f1f3ec;--tint-blue:#e4eee6;--ink:#0b1a13;--body:#46524b;--muted:#7a867e;--line:#e2e6dc;--line-strong:#c8cfc3;--blue:#0f4d3a;--blue-dark:#0a3a2b;--blue-soft:#8cc4a8;--lime:#d6f25c;--ok:#157347;--warn:#8a5a00;--danger:#b42318;--font:"Instrument Sans Variable","Instrument Sans",system-ui,sans-serif;--display:"Bricolage Grotesque Variable","Bricolage Grotesque",var(--font);--shadow:0 1px 2px #0b1a130d,0 18px 40px -16px #0b1a132e}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}body{background:var(--bg);color:var(--body);font:17px/1.7 var(--font);-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3{font-family:var(--display);color:var(--ink);letter-spacing:-.035em;text-wrap:balance;margin:0;font-weight:600;line-height:1.02}h1{font-size:clamp(2.6rem,6.4vw,5.2rem)}h2{font-size:clamp(2rem,4vw,3.2rem)}h3{letter-spacing:-.015em;font-size:1.25rem;line-height:1.25}em{color:var(--ink);background:linear-gradient(transparent 60%,var(--lime) 60%,var(--lime) 92%,transparent 92%);margin:0 -.08em;padding:0 .08em;font-style:normal}p{margin:0}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}.skip{background:var(--ink);color:#fff;z-index:100;border-radius:8px;padding:10px 14px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wrap{width:100%;max-width:1160px;padding-inline:max(22px,env(safe-area-inset-left,0px));margin-inline:auto}.label{color:var(--blue);letter-spacing:-.005em;text-transform:uppercase;letter-spacing:.09em;align-items:center;gap:8px;margin-bottom:22px;font-size:.76rem;font-weight:600;display:inline-flex}.label:before{content:"";background:var(--lime);width:10px;height:10px;box-shadow:0 0 0 3px var(--blue);border-radius:50%}.label a:hover{text-decoration:underline}.lead{max-width:54ch;color:var(--body);margin-top:26px;font-size:1.28rem;line-height:1.6}.link-arrow{color:var(--ink);align-items:center;gap:8px;font-size:.97rem;font-weight:600;display:inline-flex}.link-arrow span{transition:transform .15s}.link-arrow:hover span{transform:translate(4px)}.button{border:1px solid var(--ink);border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 26px;font-size:.97rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.button-solid{background:var(--ink);color:#fff;background:var(--blue);border-color:var(--blue)}.button-ghost{color:var(--ink);border-color:var(--ink);background:0 0}.button-ghost:hover{background:var(--ink);color:#fff}.button:disabled{opacity:.6;cursor:not-allowed}.actions{flex-wrap:wrap;gap:12px;margin-top:38px;display:flex}.site-header{z-index:50;backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#fbfbf7eb;position:sticky;top:0}.nav-row{align-items:center;gap:36px;min-height:76px;display:flex}.brand{color:var(--ink);align-items:center;gap:10px;display:flex}.footer .brand-text{font:700 1.2rem var(--display);letter-spacing:-.02em}.brand-text span{color:var(--muted);font-weight:500}.nav{gap:6px;margin-left:auto;display:flex}.nav a{color:var(--body);border-radius:999px;padding:8px 14px;font-size:.97rem;font-weight:500}.nav a:hover,.nav a[aria-current=page]{color:var(--ink);background:var(--tint)}.header-cta{border-radius:999px;min-height:44px;padding:0 20px}.menu-toggle{border:1px solid var(--line-strong);background:var(--surface);width:46px;height:46px;color:var(--ink);border-radius:50%;place-items:center;margin-left:auto;display:none}.drawer-overlay{z-index:60;background:#0e111666;position:fixed;inset:0}.drawer{background:var(--surface);z-index:61;flex-direction:column;width:min(88vw,360px);padding:20px;display:flex;position:fixed;top:0;bottom:0;right:0}.drawer-head{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.drawer-close{border:1px solid var(--line-strong);background:var(--surface);border-radius:50%;place-items:center;width:46px;height:46px;display:grid}.drawer a.item{border-bottom:1px solid var(--line);font:600 1.6rem var(--display);letter-spacing:-.03em;color:var(--ink);padding:16px 0}.drawer a.item[aria-current=page]{color:var(--blue)}.drawer .button{margin-top:28px}.section-white{background:var(--tint)}.section-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin-bottom:64px;display:grid}.section-head p:not(.label){max-width:52ch;margin-top:18px}.page-head{padding:clamp(72px,10vw,144px) 0 clamp(56px,8vw,104px);position:relative;overflow:hidden}.page-head h1{max-width:15ch}.page-head:after{content:"";background:var(--blue);width:clamp(120px,20vw,260px);height:clamp(150px,25vw,330px);box-shadow:inset 0 0 0 14px var(--bg),inset 0 0 0 15.5px var(--lime);border-radius:999px 999px 0 0;position:absolute;bottom:0;right:max(16px,50% - 580px)}.page-head .wrap{z-index:1;position:relative}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:end;gap:clamp(32px,5vw,80px);padding-top:clamp(56px,8vw,112px);display:grid}.hero-text{padding-bottom:clamp(48px,7vw,96px)}.hero-text h1{font-size:clamp(2.9rem,6.6vw,5.6rem)}.hero-art{aspect-ratio:4/5.4;background:var(--blue);border-radius:999px 999px 0 0;display:block;position:relative;overflow:hidden}.hero-art:before{content:"";z-index:2;pointer-events:none;border:1.5px solid #d6f25c8c;border-bottom:0;border-radius:999px 999px 0 0;position:absolute;inset:14px 14px 0}.hero-art img{border-radius:14px 0 0;width:142%;max-width:none;height:auto;position:absolute;bottom:0;left:-16%;box-shadow:0 -10px 40px #00000059}.hero-art .tag{z-index:3;background:var(--lime);color:var(--ink);border-radius:999px 0 0 999px;padding:9px 16px 9px 18px;font-size:.82rem;font-weight:600;position:absolute;top:30%;right:-1px}.strip{background:var(--ink);color:#c9d6ce}.strip ul{flex-wrap:wrap;justify-content:center;gap:8px 0;padding-block:20px;font-size:.92rem;font-weight:500;display:flex}.strip li:not(:last-child):after{content:"";background:var(--lime);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin:0 24px;display:inline-block}.index{border-top:1px solid var(--line)}.index li{border-bottom:1px solid var(--line);grid-template-columns:72px minmax(0,1fr) minmax(0,1fr) 28px;align-items:baseline;gap:24px;padding:34px 0;transition:padding .2s,background .2s;display:grid}.index .n{color:var(--muted);font-size:.85rem;font-weight:600}.index h3{font-size:clamp(1.5rem,2.8vw,2.2rem)}.index p{color:var(--body)}.index .arrow{color:var(--muted);align-self:center;transition:transform .2s,color .2s}.index a{display:contents}.index li:hover .arrow,.index li:hover .n{color:var(--ink)}.index li:hover .arrow{transform:translate(4px)}.feature{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:24px;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);margin-bottom:32px;display:grid;overflow:hidden}.feature-art{background:var(--tint-blue);place-items:center;min-height:300px;padding:clamp(28px,5vw,60px);display:grid}.feature-art img{box-shadow:var(--shadow);border:1px solid var(--line);border-radius:12px}.art-placeholder{color:var(--muted);text-align:center;place-items:center;gap:12px;font-size:.92rem;font-weight:500;display:grid}.art-placeholder svg{width:48px;height:48px;color:var(--blue)}.feature-body{flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;padding:clamp(28px,4.5vw,56px);display:flex}.feature-body h2,.feature-body h3{font-size:clamp(1.9rem,3.4vw,2.7rem)}.feature-body p{max-width:50ch}.badge-row{flex-wrap:wrap;gap:8px;display:flex}.badge{color:var(--body);background:var(--tint);border-radius:999px;align-items:center;gap:8px;padding:4px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.badge i{background:var(--muted);border-radius:50%;width:7px;height:7px}.badge[data-status=developpement] i,.badge[data-status=beta] i{background:var(--blue)}.badge[data-status=disponible] i{background:var(--ok)}.badge[data-status=concept] i{background:var(--warn)}.filterbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;margin-bottom:40px;display:flex}.filters{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--surface);border:1px solid var(--line-strong);color:var(--body);border-radius:999px;padding:9px 18px;font-size:.92rem;font-weight:500}.chip:hover{border-color:var(--ink);color:var(--ink)}.sort{color:var(--muted);align-items:center;gap:10px;font-size:.9rem;display:flex}.sort select{background:var(--surface);border:1px solid var(--line-strong);color:var(--ink);font:inherit;border-radius:999px;padding:9px 14px}.note{color:var(--muted);max-width:62ch;margin-top:32px;font-size:.92rem}.detail{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:clamp(32px,5vw,88px);display:grid}.detail h2{margin:56px 0 16px;font-size:1.8rem}.detail h2:first-child{margin-top:0}.detail p+p{margin-top:14px}.aside{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:20px;padding:30px;position:sticky;top:108px}.aside dl{gap:26px;margin:0;display:grid}.aside dt{color:var(--blue);margin-bottom:8px;font-size:.82rem;font-weight:600}.aside dd{color:var(--ink);margin:0}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags li{background:var(--tint);border-radius:999px;padding:3px 12px;font-size:.84rem}.ticks{gap:12px;display:grid}.ticks li{padding-left:30px;position:relative}.ticks li:before{content:"";border-left:2px solid var(--blue);border-bottom:2px solid var(--blue);width:12px;height:7px;position:absolute;top:.55em;left:2px;transform:rotate(-45deg)}.fineprint{color:var(--muted);border-top:1px solid var(--line);margin-top:32px;padding-top:16px;font-size:.88rem}.provisional{border:1px dashed var(--line-strong);color:var(--muted);border-radius:16px;padding:28px}.provisional strong{color:var(--warn);margin-bottom:8px;font-size:.8rem;font-weight:600;display:block}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;display:grid}.gallery figure{margin:0}.gallery img{border:1px solid var(--line);box-shadow:var(--shadow);background:var(--surface);border-radius:16px}.gallery figcaption{color:var(--muted);margin-top:14px;font-size:.88rem}.service-block{border-top:1px solid var(--line);grid-template-columns:72px minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(20px,4vw,64px);padding:56px 0;display:grid}.service-block:last-child{border-bottom:1px solid var(--line)}.service-block .n{color:var(--muted);padding-top:12px;font-size:.85rem;font-weight:600}.service-block h2{margin-bottom:14px;font-size:clamp(1.8rem,3vw,2.5rem)}.callout{background:var(--tint-blue);color:var(--ink);border-radius:14px;margin-top:26px;padding:18px 22px;font-size:.96rem}.modes{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.mode{border:1px solid var(--line);background:var(--surface);border-radius:24px;padding:clamp(28px,4.5vw,52px)}.mode h3{margin-bottom:12px;font-size:1.6rem;font-weight:500}.steps{counter-reset:s;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;display:grid}.steps li{counter-increment:s}.steps li:before{content:"0" counter(s);font:700 3.2rem/1 var(--display);letter-spacing:-.04em;color:var(--lime);-webkit-text-stroke:1.5px var(--blue);margin-bottom:18px;display:block}.steps h3{margin-bottom:8px;font-size:1.15rem}.steps p{font-size:.97rem}.split{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:clamp(32px,6vw,112px);display:grid}.values{counter-reset:v;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;display:grid}.values li{border-top:1px solid var(--line);counter-increment:v;padding:24px 0}.values h3:before{content:counter(v,decimal-leading-zero);color:var(--blue);vertical-align:.1em;margin-right:12px;font-size:.8rem;font-weight:600}.values h3{margin-bottom:6px;font-size:1.15rem}.values p{font-size:.97rem}.band{background:var(--blue);color:#cfe3d7;padding:clamp(72px,10vw,136px) 0}.band-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px 64px;display:flex}.band h2{color:#fff;max-width:13ch;font-size:clamp(2.2rem,5vw,4rem)}.band p{max-width:46ch;margin-top:18px}.band em{color:var(--lime);background:0 0}.band .button-solid{background:var(--lime);border-color:var(--lime);color:var(--ink)}.band .button-solid:hover{background:#fff;border-color:#fff}.contact-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:clamp(32px,5vw,88px);display:grid}.mail-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:24px;padding:clamp(28px,5vw,60px)}.mail-address{font:600 clamp(1.5rem,3.6vw,2.6rem)/1.1 var(--display);letter-spacing:-.03em;overflow-wrap:anywhere;color:var(--ink);margin:8px 0 22px}.form{gap:22px;display:grid}.field{gap:8px;display:grid}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.field label{color:var(--ink);font-size:.9rem;font-weight:600}.field input:not([type=checkbox]),.field select,.field textarea{background:var(--surface);border:1px solid var(--line-strong);width:100%;min-height:52px;font:1rem var(--font);color:var(--ink);border-radius:12px;padding:13px 15px}.field textarea{resize:vertical;min-height:180px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 4px #0f4d3a29}.field [aria-invalid=true]{border-color:var(--danger)}.field .error{color:var(--danger);font-size:.88rem}.field .hint{color:var(--muted);font-size:.88rem}.field label.check{color:var(--body);align-items:flex-start;gap:12px;font-size:.94rem;font-weight:400;display:flex}.check input{width:20px;height:20px;accent-color:var(--blue);flex-shrink:0;margin-top:2px}.check a{text-decoration:underline}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.status{border:1px solid var(--line);background:var(--tint);border-radius:12px;padding:14px 16px;font-size:.95rem}.status[data-state=ok]{color:var(--ok);border-color:#9ad3b4}.status[data-state=warn]{color:var(--warn);border-color:#e6cd8c}.status[data-state=error]{color:var(--danger);border-color:#eda9a3}.prose{max-width:760px}.prose h2{margin:52px 0 14px;font-size:1.5rem}.prose h2:first-child{margin-top:0}.prose p+p{margin-top:14px}.prose ul{gap:8px;margin-top:10px;padding-left:20px;list-style:outside;display:grid}.prose mark{color:#4a3200;background:#fff1b8;border-radius:4px;padding:1px 6px;font-size:.92em}.prose dl{grid-template-columns:minmax(150px,220px) 1fr;gap:16px 24px;margin:0;display:grid}.prose dt{color:var(--ink);font-weight:600}.prose dd{overflow-wrap:anywhere;margin:0}.prose a{color:var(--blue);text-decoration:underline}.footer{background:var(--ink);color:#a3b3aa;padding:88px 0 32px;font-size:.97rem}.footer .footer-sign{font:600 clamp(2rem,5vw,3.6rem)/1.05 var(--display);letter-spacing:-.035em;color:#fff;max-width:12ch;margin-bottom:64px}.footer-sign em{color:var(--lime);background:0 0}.footer-grid{border-top:1px solid #ffffff24;grid-template-columns:1.6fr 1fr 1fr;gap:40px;padding-top:40px;display:grid}.footer-grid p{max-width:42ch;margin-top:16px}.footer h2{font:600 .85rem var(--font);color:#fff;letter-spacing:0;margin-bottom:18px}.footer ul{gap:10px;display:grid}.footer-base{color:#7c8494;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:56px;font-size:.85rem;display:flex}@media (width<=960px){.hero-grid{grid-template-columns:1fr}.hero-art{width:100%;max-width:460px;margin-inline:auto}.hero-text{padding-bottom:0}.feature,.detail,.split,.contact-grid,.service-block{grid-template-columns:1fr}.service-block .n{padding:0}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.aside{position:static}.section-head{grid-template-columns:1fr}.index li{grid-template-columns:48px minmax(0,1fr) 22px}.index p{grid-area:2/2/auto/3}}@media (width<=820px){.nav,.header-cta{display:none}.menu-toggle{display:grid}}@media (width<=640px){body{font-size:16px}.modes,.gallery,.field-row,.values,.steps,.footer-grid{grid-template-columns:1fr}.prose dl{grid-template-columns:1fr;gap:4px}.prose dt{margin-top:12px}.filterbar{flex-direction:column;align-items:stretch}.filters{flex-wrap:nowrap;padding-bottom:6px;overflow-x:auto}.chip{flex-shrink:0}.actions .button{width:100%}.strip li:not(:last-child):after{margin:0 12px}.page-head:after{opacity:.6}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}:root{--logo-blue:#0b3f73;--logo-orange:#f5870f;--bg:#fff;--surface:#fff;--tint:#fafafa;--tint-blue:#f4f4f5;--on-ink:#fff;--accent:#0a0a0a;--band:#0a0a0a;--band-text:#a1a1aa;--hover-solid:#2a2a2e;--glow:transparent;--ink:#0a0a0a;--body:#52525b;--muted:#8a8a93;--line:#eaeaec;--line-strong:#d4d4d8;--blue:#0a0a0a;--blue-dark:#000;--blue-soft:#a1a1aa;--lime:#0a0a0a;--font:"Geist Variable","Geist",system-ui,sans-serif;--display:"Geist Variable","Geist",system-ui,sans-serif;--mono:"Geist Mono Variable","Geist Mono",ui-monospace,monospace;--shadow:0 0 0 1px #0a0a0a0a,0 24px 48px -24px #0a0a0a2e}::selection{background:var(--accent);color:var(--on-ink)}body{font-size:16.5px;line-height:1.65}h1,h2,h3{letter-spacing:-.04em;font-weight:500;line-height:1.04}em{color:var(--muted);background:0 0;margin:0;padding:0}:focus-visible{outline-color:var(--ink)}.label{font:500 .74rem var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:28px}.label:before{background:var(--ink);width:6px;height:6px;box-shadow:none;border-radius:0}.lead{color:var(--body);font-size:1.2rem}.link-arrow{font-weight:500}.link-arrow:hover{color:var(--muted)}.button{border-radius:8px;min-height:46px;padding:0 20px;font-weight:500}.button-solid{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.button-solid:hover{background:var(--hover-solid);border-color:var(--hover-solid);color:var(--on-ink)}.button-ghost{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.button-ghost:hover{background:var(--tint);color:var(--ink);border-color:var(--ink)}.site-header{background:color-mix(in srgb,var(--bg) 88%,transparent)}.nav-row{min-height:64px}.brand-text{font:600 1.08rem var(--display);letter-spacing:-.03em}.nav a{border-radius:8px;font-weight:450}.header-cta{border-radius:8px;min-height:38px;padding:0 16px;font-size:.92rem}.menu-toggle,.drawer-close{border-radius:8px}.drawer a.item{font:500 1.5rem var(--display)}.section{padding:clamp(88px,12vw,168px) 0}.section-white{background:var(--tint);border-block:1px solid var(--line)}.page-head:after{display:none}.page-head{border-bottom:1px solid var(--line)}.hero{border-bottom:1px solid var(--line);overflow:visible}.hero-top{padding-top:clamp(72px,11vw,152px)}.hero-top h1{letter-spacing:-.055em;max-width:11ch;font-size:clamp(2.9rem,8vw,7rem);line-height:.98}.hero-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px 64px;margin-top:48px;display:flex}.hero-row .lead{max-width:46ch;margin:0}.hero-row .actions{margin:0}.frame{border:1px solid var(--line);background:var(--tint);margin:clamp(56px,8vw,104px) auto 0;padding:14px;display:block;position:relative}.frame i{border:0 solid var(--ink);width:11px;height:11px;position:absolute}.frame i:first-of-type{border-width:1.5px 0 0 1.5px;top:-6px;left:-6px}.frame i:nth-of-type(2){border-width:1.5px 1.5px 0 0;top:-6px;right:-6px}.frame i:nth-of-type(3){border-width:0 0 1.5px 1.5px;bottom:-6px;left:-6px}.frame i:nth-of-type(4){border-width:0 1.5px 1.5px 0;bottom:-6px;right:-6px}.frame img{border:1px solid var(--line);width:100%;box-shadow:var(--shadow);border-radius:4px}.frame-cap{font:500 .74rem var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:16px;padding:14px 2px 0;display:flex}.strip{background:var(--bg);color:var(--muted);border-top:1px solid var(--line);margin-top:clamp(56px,8vw,104px)}.strip .wrap{max-width:1160px;padding-inline:0}.strip ul{font:500 .76rem var(--mono);letter-spacing:.04em;text-transform:uppercase;grid-template-columns:repeat(6,minmax(0,1fr));justify-content:stretch;gap:0;padding:0;display:grid}.strip li{border-left:1px solid var(--line);text-align:left;padding:20px 16px}.strip li:last-child{border-right:1px solid var(--line)}.strip li:not(:last-child):after{display:none}.index li{padding:30px 0}.index .n{font:500 .78rem var(--mono);color:var(--muted)}.index h3{font-size:clamp(1.4rem,2.6vw,2rem);font-weight:500}.index li:hover h3{color:var(--ink)}.index li:hover{background:var(--tint);padding-left:12px}.service-block .n,.values h3:before{font-family:var(--mono)}.values h3:before{color:var(--muted)}.steps li:before{font:500 .8rem var(--mono);letter-spacing:.04em;color:var(--muted);-webkit-text-stroke:0;margin-bottom:16px}.feature,.mode,.aside,.mail-card{box-shadow:none;border-radius:12px}.feature-art{background:var(--tint)}.feature-art img,.gallery img{box-shadow:var(--shadow);border-radius:6px}.callout{background:var(--tint);border:1px solid var(--line);border-radius:8px}.badge{font:500 .74rem var(--mono);letter-spacing:.02em;border:1px solid var(--line);background:var(--surface);border-radius:6px}.chip{border-radius:8px}.chip[data-state=on]{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.sort select{border-radius:8px}.tags li{font-family:var(--mono);border:1px solid var(--line);background:var(--surface);border-radius:6px;font-size:.78rem}.aside dt{font:500 .72rem var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.ticks li:before{border-color:var(--ink)}.mail-address{font:500 clamp(1.5rem,3.6vw,2.6rem)/1.1 var(--display);letter-spacing:-.04em}.mail-address a{background:linear-gradient(var(--line-strong),var(--line-strong)) 0 100%/100% 1px no-repeat}.mail-address a:hover{color:var(--muted)}.field input:not([type=checkbox]),.field select,.field textarea{border-radius:8px}.band{background:var(--band);color:var(--band-text)}.band h2{letter-spacing:-.045em;font-weight:500}.band em{color:#71717a}.band .button-solid{color:#0a0a0a;background:#fff;border-color:#fff}.band .button-solid:hover{color:#0a0a0a;background:#e4e4e7;border-color:#e4e4e7}.footer{background:var(--bg);color:var(--body);border-top:1px solid var(--line)}.footer .brand,.footer .brand-text{color:var(--ink)}.footer .brand-text span{color:var(--muted)}.footer .footer-sign{font:500 clamp(2rem,5vw,3.6rem)/1 var(--display);letter-spacing:-.055em;color:var(--ink)}.footer-sign em{color:var(--muted)}.footer-grid{border-top:1px solid var(--line)}.footer h2{font:500 .72rem var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.footer li a:hover,.footer p a:hover{color:var(--ink)}.footer-base{color:var(--muted);font-family:var(--mono);font-size:.76rem}@media (width<=960px){.strip ul{grid-template-columns:repeat(3,minmax(0,1fr))}.strip li{border-top:1px solid var(--line)}.strip li:nth-child(-n+3){border-top:0}.strip li:nth-child(3n){border-right:1px solid var(--line)}}@media (width<=640px){.strip ul{grid-template-columns:repeat(2,minmax(0,1fr))}.strip li{border-top:1px solid var(--line)!important;border-right:0!important}.strip li:nth-child(2n){border-right:1px solid var(--line)!important}.strip li:nth-child(-n+2){border-top:0!important}.frame{padding:8px}.hero-row{margin-top:36px}}html{background:var(--bg)}body{transition:background .4s,color .4s}html[data-project]{--accent-fg:var(--accent)}html[data-project] em{color:var(--accent)}html[data-project] .label:before{background:var(--accent)}html[data-project] .link-arrow:hover,html[data-project] .mail-address a:hover{color:var(--accent)}html[data-project] .ticks li:before{border-color:var(--accent)}html[data-project] .aside dt{color:var(--accent)}html[data-project] .button-ghost:hover{background:var(--tint);color:var(--ink)}html[data-project] .section-white{background:var(--tint)}html[data-project] .page-head{background:radial-gradient(70% 140% at 85% -10%,var(--glow),transparent 70%);position:relative;overflow:hidden}html[data-project] .page-head .wrap{z-index:1;position:relative}html[data-project] .page-head:after{content:"";pointer-events:none;width:auto;height:auto;box-shadow:none;background:0 0;border-radius:0;display:block;position:absolute;inset:auto}@keyframes soft{0%{opacity:0}to{opacity:1}}html[data-project=card-grade-worth]{--bg:#060b16;--surface:#0d1626;--tint:#0a111f;--tint-blue:#0f1a2e;--ink:#eaf3ff;--body:#9db0ce;--muted:#6c82a6;--line:#18253d;--line-strong:#2a3c5e;--accent:#3ddcff;--on-ink:#04111c;--hover-solid:#7be8ff;--blue:#3ddcff;--band:#0b2a3d;--band-text:#9dc4d9;--glow:#3ddcff29;--logo-blue:#bfd9ff;--logo-orange:#3ddcff;--shadow:0 0 0 1px #3ddcff14,0 24px 48px -24px #000000b3}html[data-project=card-grade-worth] .page-head:after{background:linear-gradient(90deg,transparent,var(--accent),transparent);width:auto;height:2px;animation:3.6s ease-in-out .8s infinite scan;top:0;left:0;right:0;box-shadow:0 0 24px 4px #3ddcff80}@keyframes scan{0%{opacity:0;transform:translateY(0)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translateY(clamp(260px,34vw,420px))}}html[data-project=metal-hunter-vr]{--bg:#14100b;--surface:#1d1812;--tint:#191410;--tint-blue:#221b14;--ink:#f5ebd9;--body:#bcaf9a;--muted:#8c7f6b;--line:#2b241b;--line-strong:#40372a;--accent:#e8a83a;--on-ink:#1a1208;--hover-solid:#f4c268;--blue:#e8a83a;--band:#2a1f10;--band-text:#cdb88f;--glow:#e8a83a24;--logo-blue:#f5ebd9;--logo-orange:#e8a83a;--shadow:0 0 0 1px #e8a83a14,0 24px 48px -24px #000000b3}.radar{display:none}html[data-project=metal-hunter-vr] .radar{pointer-events:none;z-index:0;width:420px;height:420px;display:block;position:absolute;bottom:-120px;right:max(8%,50% - 540px)}html[data-project=metal-hunter-vr] .radar:before{content:"";border:1.5px solid var(--accent);opacity:0;border-radius:50%;animation:3.2s linear .8s infinite ping;position:absolute;inset:40%}html[data-project=metal-hunter-vr] .radar b{width:calc(var(--r)*2);height:calc(var(--r)*2);margin:calc(var(--r)*-1) 0 0 calc(var(--r)*-1);border:1px solid #e8a83a17;border-radius:50%;position:absolute;top:50%;left:50%}html[data-project=metal-hunter-vr] .radar i{left:calc(50% + var(--x));top:calc(50% - var(--y));background:radial-gradient(circle,var(--accent) 0 16%,#e8a83a66 18%,#e8a83a00 70%);opacity:0;border-radius:50%;width:26px;height:26px;margin:-13px 0 0 -13px;animation:3.2s linear infinite blip;position:absolute}@keyframes ping{0%{opacity:.7;inset:40%}to{opacity:0;inset:-25%}}@keyframes blip{0%{opacity:0}3%{opacity:1}12%{opacity:.9}45%{opacity:.35}75%,to{opacity:0}}html[data-project=metal-hunter-vr] .page-head{background:radial-gradient(70% 140% at 85% 110%,var(--glow),transparent 70%)}@media (prefers-reduced-motion:reduce){html[data-project] .page-head *,html[data-project] .page-head :before,html[data-project] .page-head :after,html[data-project] .page-head:after{animation:none!important}.radar{display:none!important}}.back{border:1px solid var(--line-strong);background:var(--surface);width:fit-content;color:var(--ink);border-radius:8px;align-items:center;gap:10px;margin-bottom:36px;padding:9px 16px 9px 14px;font-size:.92rem;font-weight:500;transition:border-color .15s,transform .15s;display:flex}.back span{transition:transform .15s}.back:hover{border-color:var(--accent)}.back:hover span{transform:translate(-4px)}.page-head .back+.label{margin-top:0}html[data-project=card-grade-worth] .page-head .back,html[data-project=card-grade-worth] .page-head .lead,html[data-project=card-grade-worth] .page-head .badge-row{animation:.6s both soft}html[data-project=card-grade-worth] .page-head .back{animation-delay:calc(var(--d,0s) + .1s)}html[data-project=card-grade-worth] .page-head .lead{animation-delay:calc(var(--d,0s) + 1.1s)}html[data-project=card-grade-worth] .page-head .badge-row{animation-delay:calc(var(--d,0s) + 1.3s)}html[data-project=card-grade-worth] .page-head h1{background:linear-gradient(100deg,var(--ink) 0 42%,var(--accent) 50%,var(--ink) 58% 100%) 100% 0/260% 100%;color:#0000;-webkit-text-fill-color:transparent;width:fit-content;max-width:100%;animation:shine 1.5s cubic-bezier(.55,0,.25,1) calc(var(--d,0s) + .25s) both;-webkit-background-clip:text;background-clip:text;position:relative}@keyframes shine{0%{opacity:0;background-position:100% 0}12%{opacity:1}to{opacity:1;background-position:0 0}}html[data-project=card-grade-worth] .page-head h1:after{content:"";pointer-events:none;--c:var(--accent);background:linear-gradient(var(--c),var(--c)) 0 0/16px 2px,linear-gradient(var(--c),var(--c)) 0 0/2px 16px, linear-gradient(var(--c),var(--c)) 100% 0/16px 2px,linear-gradient(var(--c),var(--c)) 100% 0/2px 16px, linear-gradient(var(--c),var(--c)) 0 100%/16px 2px,linear-gradient(var(--c),var(--c)) 0 100%/2px 16px, linear-gradient(var(--c),var(--c)) 100% 100%/16px 2px,linear-gradient(var(--c),var(--c)) 100% 100%/2px 16px;animation:lock 1.1s cubic-bezier(.2,.8,.2,1) calc(var(--d,0s) + .2s) both;background-repeat:no-repeat;position:absolute;inset:-12px -18px}@keyframes lock{0%{opacity:0;inset:-70px -110px}30%{opacity:1}to{opacity:.55;inset:-12px -18px}}html[data-project=metal-hunter-vr] .page-head .back,html[data-project=metal-hunter-vr] .page-head .lead,html[data-project=metal-hunter-vr] .page-head .badge-row{animation:.7s both soft}html[data-project=metal-hunter-vr] .page-head .back{animation-delay:.1s}html[data-project=metal-hunter-vr] .page-head .lead{animation-delay:calc(var(--d,0s) + 1.2s)}html[data-project=metal-hunter-vr] .page-head .badge-row{animation-delay:calc(var(--d,0s) + 1.4s)}html[data-project=metal-hunter-vr] .page-head h1{animation:detect 1.3s steps(1,end) calc(var(--d,0s) + .3s) both,detect-settle 1.3s ease calc(var(--d,0s) + .3s) both}@keyframes detect{0%{opacity:0}8%{opacity:1}16%{opacity:.15}26%{opacity:1}34%{opacity:.3}46%,to{opacity:1}}@keyframes detect-settle{0%{color:var(--accent);text-shadow:0 0 36px #e8a83ae6}to{color:var(--ink);text-shadow:0 0 #e8a83a00}}:root{--header-h:65px}html.veil-in{--d:.4s}@property --p{syntax:"<percentage>";inherits:false;initial-value:0%}@property --r{syntax:"<length>";inherits:false;initial-value:0}@property --y{syntax:"<length>";inherits:false;initial-value:100vh}.veil,html.veil-in:after{content:"";bottom:0;left:0;right:0;top:var(--header-h);z-index:40;pointer-events:none;position:fixed}html:not(.veil-in):after{content:none}.veil[data-veil=card-grade-worth]{background:linear-gradient(to bottom,#060b16 calc(var(--p) - 2px),#3ddcff calc(var(--p) - 2px) var(--p),transparent var(--p)),linear-gradient(to bottom,transparent calc(var(--p) - 2px),#3ddcff40 calc(var(--p) - 2px),transparent calc(var(--p) + 70px));animation:.55s cubic-bezier(.6,0,.3,1) both cgwcover}html.veil-in[data-veil=card-grade-worth]:after{background:linear-gradient(to bottom,transparent calc(var(--p) - 2px),#3ddcff calc(var(--p) - 2px) var(--p),#060b16 var(--p)),linear-gradient(to bottom,transparent calc(var(--p) - 70px),#3ddcff40 calc(var(--p) - 2px),transparent var(--p));animation:.75s cubic-bezier(.6,0,.3,1) both cgwcover}@keyframes cgwcover{0%{--p:0%}to{--p:104%}}.veil[data-veil=metal-hunter-vr]{background:radial-gradient(circle at 78% 55%,#14100b calc(var(--r) - 2px),#e8a83a calc(var(--r) - 2px) var(--r),transparent var(--r));animation:.6s cubic-bezier(.5,0,.4,1) both mhwave}html.veil-in[data-veil=metal-hunter-vr]:after{background:radial-gradient(circle at 78% 55%,transparent calc(var(--r) - 2px),#e8a83a calc(var(--r) - 2px) var(--r),#14100b var(--r));animation:.8s cubic-bezier(.5,0,.4,1) both mhwave}@keyframes mhwave{0%{--r:0px}to{--r:150vmax}}.veil[data-veil=arch]{animation:.55s cubic-bezier(.5,0,.6,1) both archrise}html.veil-in[data-veil=arch]:after{animation:.8s cubic-bezier(.35,0,.5,1) both archpass}.veil[data-veil=arch],html.veil-in[data-veil=arch]:after{background:radial-gradient(ellipse 75% 38vh at 50% 100%,#0a0a0a 99%,transparent 100%) 0 var(--y)/100% 38vh no-repeat, linear-gradient(#0a0a0a,#0a0a0a) 0 calc(var(--y) + 38vh)/100% 120vh no-repeat, radial-gradient(ellipse 75% 38vh at 50% 0,#0a0a0a 99%,transparent 100%) 0 calc(var(--y) + 158vh)/100% 38vh no-repeat}@keyframes archrise{0%{--y:100vh}to{--y:-48vh}}@keyframes archpass{0%{--y:-48vh}to{--y:-200vh}}@media (prefers-reduced-motion:reduce){.veil,html.veil-in:after{display:none}}.logo-mark{flex-shrink:0;width:auto;display:block}.brand{gap:12px}.site-header,.site-header .brand-text,.site-header .brand-text span,.site-header .nav a,.site-header .header-cta,.site-header .menu-toggle{transition:background-color .3s,border-color .3s,color .3s}.logo-mark path{transition:fill .3s}html{transition:background-color .3s}
