
:root{--bg:#0a0a0a;--fg:#fff;--mut:#9a9a9a;--red:#e10600;--line:#222;--card:#111;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0a0a0a}}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{background:var(--bg);color:var(--fg);font-family:"Helvetica Neue",Inter,Arial,"Noto Sans SC",sans-serif;line-height:1.6}
header{position:sticky;top:0;z-index:9;display:flex;justify-content:space-between;align-items:center;padding:16px 5vw;background:rgba(10,10,10,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.logo{font-weight:800;letter-spacing:.3em;font-size:14px}.logo b{color:var(--red)}
nav{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
nav a{color:var(--mut);text-decoration:none;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
nav a:hover{color:var(--fg)}
select{background:transparent;color:var(--fg);border:1px solid var(--line);padding:6px 8px;font-size:12px}
section{padding:110px 5vw;max-width:1200px;margin:auto}
.hero{min-height:88vh;display:flex;flex-direction:column;justify-content:center}
h1{font-size:clamp(44px,9vw,120px);line-height:1;font-weight:800;letter-spacing:-.03em}
h1 span{color:var(--red)}
.hero p{max-width:520px;color:var(--mut);margin:28px 0 36px}
.btn{display:inline-block;background:var(--red);color:#fff;padding:14px 32px;text-decoration:none;font-size:13px;letter-spacing:.12em;text-transform:uppercase;border:0;cursor:pointer}
.btn:hover{background:#fff;color:#000}
.tag{color:var(--red);font-size:12px;letter-spacing:.3em;text-transform:uppercase;margin-bottom:14px}
h2{font-size:clamp(30px,5vw,56px);letter-spacing:-.02em;margin-bottom:28px;line-height:1.1}
.story p{max-width:700px;color:var(--mut);font-size:18px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:40px}
.card{background:var(--card);padding:40px 30px;transition:.3s}
.card:hover{background:#000;box-shadow:inset 0 3px 0 var(--red)}
.card small{color:var(--red);font-size:12px;letter-spacing:.2em}
.card h3{font-size:28px;margin:12px 0}
.card p{color:var(--mut);font-size:15px}
.light{background:#fff;color:#000;max-width:none}
.light>div{max-width:1200px;margin:auto}
.light .card{background:#f4f4f4}.light .card p{color:#555}.light .grid{background:#ddd;border-color:#ddd}
.light .card:hover{background:#fff}
.contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:60px}
input,textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #444;color:#fff;padding:14px 0;margin-bottom:18px;font:inherit}
input:focus,textarea:focus{outline:0;border-color:var(--red)}
.info p{color:var(--mut);margin-bottom:10px}
footer{text-align:center;padding:40px;color:var(--mut);font-size:12px;border-top:1px solid var(--line)}

header{top:14px;margin:14px 3vw 0;border:1px solid #2a2a2a;border-radius:999px;padding:10px 14px 10px 26px}
.logo img{height:34px;display:block}
nav a{padding:8px 14px;border-radius:999px;transition:.25s}
nav a:hover{background:#1c1c1c}
select{border-radius:999px;padding:8px 12px;background:#1c1c1c;border-color:#2a2a2a}
.btn{border-radius:999px;padding:16px 34px;transition:.3s;box-shadow:0 10px 40px -10px rgba(225,6,0,.7)}
.btn::after{content:" →"}
.btn:hover{transform:translateY(-2px)}
.btn.ghost{background:transparent;border:1px solid #444;box-shadow:none;margin-left:8px}
.btn.ghost:hover{border-color:#fff;background:#fff}
.hero{position:relative;overflow:hidden;max-width:none;padding-left:8vw}
.hero::before{content:"";position:absolute;right:-10%;top:-10%;width:60vw;height:60vw;background:radial-gradient(circle,rgba(225,6,0,.28),transparent 65%);z-index:-1}
.bigmark{height:70px;width:auto;align-self:flex-start;margin-bottom:28px}
.pill{align-self:flex-start;border:1px solid #333;border-radius:999px;padding:6px 16px;font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--mut);margin-bottom:24px}
.pill::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-right:10px;box-shadow:0 0 10px var(--red)}
.grid{gap:16px;background:none;border:0}
.card{border-radius:32px;border:1px solid #222;padding:44px 34px}
.card:hover{transform:translateY(-6px);box-shadow:0 20px 60px -20px rgba(225,6,0,.5);border-color:var(--red)}
.card small{display:inline-block;border:1px solid currentColor;border-radius:999px;padding:2px 12px}
.light{border-radius:48px;margin:0 2vw;padding-left:3vw;padding-right:3vw}
.light .grid{background:none;border:0}.light .card{border-color:#e5e5e5}
input,textarea{border:1px solid #2a2a2a;border-radius:999px;background:#111;padding:16px 22px}
textarea{border-radius:28px}
.reveal{opacity:0;transform:translateY(30px);transition:.8s}.reveal.in{opacity:1;transform:none}
footer{margin-top:60px}
@media(max-width:760px){header{border-radius:28px;flex-direction:column;gap:8px}nav{justify-content:center;gap:4px}.btn.ghost{margin:10px 0 0}}

#bar{position:fixed;top:0;left:0;height:3px;width:0;background:var(--red);z-index:99}
:focus-visible{outline:2px solid var(--red);outline-offset:3px}
nav a.on{color:#fff;background:#1c1c1c}
.burger{display:none;background:#1c1c1c;color:#fff;border:0;border-radius:999px;width:42px;height:42px;font-size:18px;cursor:pointer}
.marquee{overflow:hidden;border-block:1px solid #1d1d1d;padding:18px 0}
.track{display:flex;gap:40px;width:max-content;animation:mq 30s linear infinite;align-items:center}
.track span{font-size:clamp(22px,3vw,34px);font-weight:800;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1px #555;white-space:nowrap}
.track i{width:10px;height:10px;border-radius:50%;background:var(--red);flex:none}
@keyframes mq{to{transform:translateX(-50%)}}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-block:70px 0}
.stats div{border:1px solid #222;border-radius:28px;padding:28px;text-align:center;background:var(--card)}
.stats b{display:block;font-size:clamp(40px,6vw,72px);line-height:1;color:var(--red)}
.stats span{color:var(--mut);font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.chip{float:right;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);border:1px solid #333;border-radius:999px;padding:3px 12px}
.light .chip{border-color:#ccc}
.card h3{font-size:34px;letter-spacing:-.02em}
.ok{display:none;color:#fff;background:#14301a;border-radius:999px;padding:12px 20px;margin-top:16px;font-size:14px}.ok.show{display:block}
input.bad,textarea.bad{border-color:var(--red)}
.fl{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:18px}.fl a{color:var(--mut);text-decoration:none}.fl a:hover{color:var(--red)}
.ck{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:50;display:flex;gap:16px;align-items:center;background:rgba(20,20,20,.95);backdrop-filter:blur(10px);border:1px solid #2a2a2a;border-radius:999px;padding:10px 10px 10px 24px;font-size:13px;width:max-content;max-width:94vw}
.ck.hide{display:none}.btn.sm{padding:10px 22px;font-size:12px;box-shadow:none}.btn.sm::after{content:""}
@media(max-width:760px){.burger{display:block}header{flex-direction:row;flex-wrap:wrap;justify-content:space-between}nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding-top:8px}nav.open{display:flex}.stats{grid-template-columns:1fr}.ck{border-radius:24px;flex-direction:column;padding:16px;text-align:center}}
@media(prefers-reduced-motion:reduce){.track{animation:none}.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

:root{--bg:#0c0c0d;--card:#131314;--line:#1f1f21}
html{scroll-behavior:smooth}
body{background:radial-gradient(80vw 50vw at 90% 0,rgba(225,6,0,.07),transparent 60%),var(--bg)}
section,.card,.btn,nav a,.chip{--e:cubic-bezier(.22,1,.36,1)}
.card{position:relative;overflow:hidden;border-radius:36px;background:linear-gradient(160deg,#161617,#101011);border-color:#252527;transition:transform .7s var(--e),box-shadow .7s var(--e),border-color .5s}
.card::before{content:"";position:absolute;inset:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0),rgba(225,6,0,.16),transparent 60%);opacity:0;transition:opacity .5s;pointer-events:none}
.card:hover::before{opacity:1}
.light .card::before{display:none}
.card .more{margin-top:14px;font-size:14px;color:#777;border-top:1px solid #232325;padding-top:14px}
.light .card .more{border-color:#ddd;color:#777}
.vals{padding-top:20px}.vals .tag{margin-bottom:20px}
.btn{position:relative;overflow:hidden;transition:transform .5s var(--e),background .4s,color .4s}
.btn::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);transition:transform .9s var(--e)}
.btn:hover::before{transform:translateX(120%)}
.btn.wh{background:#fff;color:#000;box-shadow:0 14px 50px -14px rgba(0,0,0,.6)}.btn.wh:hover{background:#000;color:#fff}
.hero>*{animation:up 1.2s var(--e,ease) both}.hero>:nth-child(2){animation-delay:.1s}.hero>:nth-child(3){animation-delay:.2s}.hero>:nth-child(4){animation-delay:.3s}.hero>:nth-child(5){animation-delay:.4s}.hero>:nth-child(6){animation-delay:.5s}
@keyframes up{from{opacity:0;transform:translateY(40px);filter:blur(8px)}}
.bigmark{animation:up 1.2s both,fl 6s ease-in-out 1.2s infinite}
@keyframes fl{50%{transform:translateY(-10px)}}
.hero::before{transform:translateY(calc(var(--sy,0)*.18px));animation:gl 9s ease-in-out infinite alternate}
@keyframes gl{to{opacity:.6;scale:1.15}}
h1{background:linear-gradient(180deg,#fff 40%,#8c8c8f);-webkit-background-clip:text;background-clip:text;color:transparent}
.reveal{transition:opacity 1.1s var(--e,ease),transform 1.1s var(--e,ease)}
.lang{position:relative}
.lang button{background:#1b1b1d;color:#fff;border:1px solid #2a2a2c;border-radius:999px;padding:9px 16px;font-size:12px;letter-spacing:.08em;cursor:pointer;transition:.3s}
.lang button:hover{border-color:var(--red)}
.lang ul{position:absolute;right:0;top:calc(100% + 12px);list-style:none;padding:8px;margin:0;min-width:180px;background:rgba(22,22,23,.96);backdrop-filter:blur(16px);border:1px solid #2a2a2c;border-radius:22px;box-shadow:0 30px 60px -20px #000;opacity:0;pointer-events:none;transform:translateY(-8px) scale(.97);transition:.35s cubic-bezier(.22,1,.36,1);z-index:20}
.lang.open ul{opacity:1;pointer-events:auto;transform:none}
.lang li{display:flex;justify-content:space-between;gap:20px;padding:11px 14px;border-radius:14px;cursor:pointer;font-size:14px;color:#ccc;transition:.2s}
.lang li em{font-style:normal;font-size:11px;color:#777;letter-spacing:.1em}
.lang li:hover{background:#222224;color:#fff}
.lang li.sel{color:#fff}.lang li.sel em{color:var(--red)}
.ctas{padding-block:40px}
.ctab{position:relative;overflow:hidden;text-align:center;border-radius:48px;padding:clamp(50px,8vw,100px) 6vw;background:radial-gradient(60% 120% at 50% 120%,rgba(225,6,0,.55),transparent 70%),#151516;border:1px solid #2a2a2c}
.ctab h2{max-width:760px;margin:0 auto 18px}.ctab p{color:#aaa;max-width:560px;margin:0 auto 34px}
#totop{position:fixed;right:22px;bottom:22px;width:52px;height:52px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font-size:20px;text-decoration:none;box-shadow:0 14px 40px -10px rgba(225,6,0,.7);opacity:0;transform:translateY(20px) scale(.8);pointer-events:none;transition:.5s cubic-bezier(.22,1,.36,1);z-index:60}
#totop.show{opacity:1;transform:none;pointer-events:auto}
#totop:hover{background:#fff;color:#000;transform:translateY(-4px)}
@media(max-width:760px){.lang ul{left:0;right:auto}.ck{bottom:86px}}

html:not(.go){overflow:hidden}
html:not(.go) .hero>*{animation-play-state:paused}
#ld{position:fixed;inset:0;z-index:999;background:#050505;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;clip-path:inset(0);transition:clip-path 1.1s cubic-bezier(.77,0,.18,1);animation:ldf .1s 8s forwards}
#ld.out{clip-path:inset(0 0 100% 0)}
@keyframes ldf{to{visibility:hidden}}
#ld img{width:min(260px,60vw);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{opacity:.55;transform:scale(.98)}}
.ldt{color:#777;font-size:12px;letter-spacing:.3em;text-transform:uppercase;text-align:center;padding:0 20px}
.ldb{width:min(260px,60vw);height:2px;background:#1c1c1c;border-radius:2px;overflow:hidden}
.ldb i{display:block;height:100%;background:var(--red);transform-origin:left;transform:scaleX(0);box-shadow:0 0 14px var(--red)}
.ldn{position:absolute;right:5vw;bottom:4vh;font-size:clamp(48px,10vw,120px);font-weight:800;color:#161616;line-height:1}
.ldn::after{content:"%"}
img[data-logo]:not([src]),img[data-mark]:not([src]){visibility:hidden}
.hero>canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.75;animation:none;pointer-events:none}
.scroll{position:absolute;left:8vw;bottom:34px;width:24px;height:40px;border:1px solid #444;border-radius:99px;animation:up 1.2s 1.2s both}
.scroll i{position:absolute;left:50%;top:8px;width:3px;height:8px;margin-left:-1.5px;background:var(--red);border-radius:2px;animation:sc 1.8s infinite}
@keyframes sc{60%{transform:translateY(14px);opacity:0}}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:998;opacity:.04;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.proc .tag{margin-bottom:20px}
.proc .grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.pw{display:inline-block;margin-top:8px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#555}
footer{padding-bottom:90px}
@media(prefers-reduced-motion:reduce){#ld img,.scroll i,.bigmark{animation:none}}

#ld{display:block;background:none;clip-path:none;transition:none}
#ld.out{clip-path:none}
.lp{position:absolute;left:0;right:0;height:50.5%;background:#050505;transition:transform 1.1s cubic-bezier(.77,0,.18,1) .25s}
.lp.a{top:0}.lp.b{bottom:0}
#ld.out .lp.a{transform:translateY(-101%)}#ld.out .lp.b{transform:translateY(101%)}
.ldc{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transition:opacity .5s,transform .8s}
#ld.out .ldc,#ld.out .ldn{opacity:0;transform:scale(.96)}
.ldn{z-index:2;transition:opacity .4s}
.ldw{height:34px;overflow:hidden}
.ldw span{display:inline-block;font-size:clamp(18px,3vw,28px);font-weight:700;letter-spacing:.25em;text-transform:uppercase;animation:wd .6s cubic-bezier(.22,1,.36,1)}
@keyframes wd{from{opacity:0;transform:translateY(100%)}}
.hero>h1{background:linear-gradient(110deg,#8c8c8f 20%,#fff 40%,#ff6b63 50%,#fff 60%,#8c8c8f 80%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:up 1.2s cubic-bezier(.22,1,.36,1) .2s both,sh 8s linear 1.6s infinite}
@keyframes sh{from{background-position:100% 0}to{background-position:0 0}}
.tag{display:flex;align-items:center;gap:12px}
.tag::before{content:"";width:0;height:1px;background:var(--red);transition:width 1s .3s cubic-bezier(.22,1,.36,1)}
.tag.in::before{width:36px}
.card::after{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--red);transition:width .8s cubic-bezier(.22,1,.36,1)}
.card:hover::after{width:100%}
.marquee:hover .track{animation-play-state:paused}
.marquee.rev .track{animation-direction:reverse;animation-duration:38s}
.marquee.rev .track span{-webkit-text-stroke:0;color:#1d1d1f}
.quote{padding-block:130px}
.quote p{font-size:clamp(34px,6.5vw,92px);font-weight:800;line-height:1.05;letter-spacing:-.03em;max-width:1000px}
.quote p span{opacity:.15;display:inline-block;margin-right:.25em;transition:opacity .25s}
header{transition:transform .7s cubic-bezier(.22,1,.36,1)}
header.hide{transform:translateY(-150%)}
.ctab::before{content:"";position:absolute;width:60%;aspect-ratio:1;left:-10%;top:-50%;background:radial-gradient(circle,rgba(255,255,255,.09),transparent 60%);animation:orb 12s ease-in-out infinite alternate;pointer-events:none}
@keyframes orb{to{transform:translate(90%,30%)}}
.giant{font-size:clamp(80px,24vw,360px);font-weight:800;line-height:.82;letter-spacing:-.05em;background:linear-gradient(180deg,#2c2c2e,transparent 95%);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:30px;user-select:none}
#totop{background:rgba(20,20,21,.9);backdrop-filter:blur(10px);border:0;box-shadow:0 14px 40px -12px #000}
#totop svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
#totop circle{fill:none;stroke:var(--red);stroke-width:2;stroke-dasharray:151;stroke-dashoffset:151;stroke-linecap:round}
#totop b{position:relative;font-weight:400}
#totop:hover{background:var(--red);color:#fff}
#cd,#cr{position:fixed;left:0;top:0;pointer-events:none;z-index:1000;opacity:0}
#cd{width:6px;height:6px;margin:-3px;border-radius:50%;background:var(--red)}
#cr{width:38px;height:38px;margin:-19px;border-radius:50%;border:1px solid rgba(255,255,255,.5);transition:width .35s,height .35s,margin .35s,background .35s,border-color .35s}
#cr.hov{width:66px;height:66px;margin:-33px;background:rgba(225,6,0,.14);border-color:var(--red)}
.fine,.fine a,.fine button,.fine .card,.fine li,.fine select{cursor:none}
.fine input,.fine textarea{cursor:text}
.fine #cd,.fine #cr{opacity:1}

:root{--red:#e5322d}
html{scrollbar-width:thin;scrollbar-color:#2a2a2c transparent}
::selection{background:var(--red);color:#fff}
body::before{content:"";position:fixed;width:55vw;height:55vw;left:-15vw;top:25vh;z-index:-2;pointer-events:none;background:radial-gradient(circle,rgba(229,50,45,.09),transparent 65%);filter:blur(30px);animation:drift 24s ease-in-out infinite alternate}
@keyframes drift{to{transform:translate(55vw,20vh)}}
section,footer{transition:opacity .25s}
.sw section,.sw footer{opacity:0}
section{padding-block:125px}
h1,.hero>h1{font-weight:700}h2{font-weight:600}.card h3{font-weight:600}.quote p{font-weight:700}.stats b{font-weight:700}
.btn{box-shadow:0 12px 34px -14px rgba(229,50,45,.6);font-weight:500}
.card{box-shadow:0 30px 60px -40px rgba(0,0,0,.8)}
.card p{line-height:1.7}
.light{background:#f5f4f2}
.light .card{background:#fff;border-color:#ebe9e6;box-shadow:0 30px 60px -45px rgba(0,0,0,.25)}
.light .card:hover{box-shadow:0 30px 60px -30px rgba(229,50,45,.35);border-color:var(--red)}
.light .card h3{color:#111}
.ico{width:52px;height:52px;border-radius:18px;border:1px solid #2a2a2c;display:grid;place-items:center;color:var(--red);margin-bottom:22px;background:rgba(255,255,255,.02);transition:.5s cubic-bezier(.22,1,.36,1)}
.ico svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.card:hover .ico{background:var(--red);color:#fff;border-color:var(--red);transform:rotate(-6deg) scale(1.06)}
.light .ico{border-color:#e8e5e1;background:#faf9f7}
.ico.sm{width:40px;height:40px;border-radius:50%;margin:0;flex:none}
.info h3{font-size:30px;font-weight:600;margin-bottom:24px}
.ir{display:flex;align-items:center;gap:16px;padding:10px 24px 10px 10px;border:1px solid #222;border-radius:999px;margin-bottom:12px;color:#cfcfd2;background:#111;transition:.4s cubic-bezier(.22,1,.36,1);width:fit-content;max-width:100%}
.ir:hover{border-color:var(--red);transform:translateX(6px)}
.gchips{position:absolute;right:7vw;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:16px;align-items:flex-end}
.gchip{display:flex;align-items:center;gap:12px;padding:16px 30px;border-radius:999px;background:rgba(255,255,255,.04);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.09);font-size:16px;letter-spacing:.1em;animation:fy 6s ease-in-out infinite;box-shadow:0 20px 50px -25px #000}
.gchip:nth-child(2){margin-right:56px;animation-delay:-2s}.gchip:nth-child(3){animation-delay:-4s}
.gchip i{width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 12px var(--red)}
@keyframes fy{50%{transform:translateY(-12px)}}
@media(max-width:1280px){.gchips{display:none}}
/* soft minimal loader */
.lp{background:#070707;transition:transform 1.3s cubic-bezier(.77,0,.18,1) .3s}
.ldc{gap:34px}
.ldc::before{content:"";position:absolute;width:460px;height:460px;max-width:90vw;border-radius:50%;background:radial-gradient(circle,rgba(229,50,45,.18),transparent 65%);filter:blur(14px);animation:brth 3.4s ease-in-out infinite;z-index:-1}
@keyframes brth{50%{transform:scale(1.18);opacity:.55}}
#ld img{width:min(210px,55vw);animation:lrev 1.6s cubic-bezier(.22,1,.36,1) both}
@keyframes lrev{from{opacity:0;filter:blur(14px);transform:scale(.94)}}
.ldb{width:160px;height:1px;background:#222;overflow:visible}
.ldb i{background:linear-gradient(90deg,transparent,#fff 60%,var(--red));box-shadow:0 0 18px rgba(229,50,45,.8)}
.ldt{opacity:0;animation:fi 1.4s 1s forwards;color:#6f6f73;font-size:11px;letter-spacing:.35em}
@keyframes fi{to{opacity:1}}
.ldn{left:50%;right:auto;bottom:6vh;transform:translateX(-50%);font-size:12px;font-weight:300;letter-spacing:.3em;color:#6f6f73}
#ld.out .ldn{transform:translateX(-50%)}
.lc{position:absolute;z-index:2;top:5vh;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:#4a4a4e;transition:opacity .4s;opacity:0;animation:fi 1.2s .4s forwards}
.lc.l{left:5vw}.lc.r{right:5vw}
#ld.out .lc{opacity:0!important;animation:none}
.fl a{position:relative}
.fl a::after{content:"";position:absolute;left:0;bottom:-3px;height:1px;width:0;background:var(--red);transition:width .4s}
.fl a:hover::after{width:100%}

html,body{overflow-x:clip}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:"Helvetica Neue",Inter,Arial,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif}
.hero{min-height:calc(100vh - 90px);min-height:calc(100svh - 90px)}
.lead{color:var(--mut);max-width:620px;margin:-6px 0 6px;font-size:18px}.light .lead{color:#666}
.tags{margin-top:12px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.ok.err{background:#3a1412}
.faq{max-width:860px}.faq .tag{margin-bottom:14px}
details{border:1px solid #222;border-radius:28px;padding:0 28px;margin-bottom:12px;background:#111;transition:border-color .4s,background .4s}
details[open]{border-color:#343436;background:#141415}
summary{list-style:none;cursor:pointer;padding:24px 0;font-size:19px;display:flex;justify-content:space-between;align-items:center;gap:20px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--red);font-size:28px;line-height:1;transition:transform .5s cubic-bezier(.22,1,.36,1)}
details[open] summary::after{transform:rotate(135deg)}
details p{color:var(--mut);padding:0 0 26px;animation:fi2 .6s cubic-bezier(.22,1,.36,1)}
@keyframes fi2{from{opacity:0;transform:translateY(-8px)}}
#dots{position:fixed;left:20px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:16px;z-index:40}
#dots a{width:8px;height:8px;border-radius:50%;background:#3a3a3d;display:block;transition:.5s cubic-bezier(.22,1,.36,1)}
#dots a.on{background:var(--red);transform:scale(1.6);box-shadow:0 0 14px var(--red)}
@media(max-width:1100px){#dots{display:none}}
.btn .rp{position:absolute;border-radius:50%;background:rgba(255,255,255,.4);transform:scale(0);animation:rp .7s ease-out forwards;pointer-events:none}
@keyframes rp{to{transform:scale(4);opacity:0}}
.reveal{filter:blur(8px);transition:opacity 1.1s var(--e,ease),transform 1.1s var(--e,ease),filter 1.1s var(--e,ease)}
.reveal.in{filter:none}
.hero::before{translate:calc(var(--px,0)*40px) calc(var(--py,0)*40px)}
.gchips{translate:calc(var(--px,0)*-16px) calc(var(--py,0)*-16px)}
.bigmark{translate:calc(var(--px,0)*12px) calc(var(--py,0)*12px)}
@property --a{syntax:"<angle>";initial-value:0deg;inherits:false}
.ctab::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:conic-gradient(from var(--a),transparent 0 72%,var(--red) 86%,transparent);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spn 7s linear infinite;pointer-events:none}
@keyframes spn{to{--a:360deg}}
#totop{bottom:calc(22px + env(safe-area-inset-bottom,0px));right:calc(22px + env(safe-area-inset-right,0px))}
.info a{color:inherit;text-decoration:none;word-break:break-word}
.ir{word-break:break-word}
@media(max-width:900px){
 .burger{display:block;width:46px;height:46px}
 header{flex-direction:row;flex-wrap:wrap;justify-content:space-between;border-radius:30px;padding:10px 12px 10px 22px}
 nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding:8px 0 6px}
 nav.open{display:flex}
 nav a{padding:14px 16px;font-size:14px}
 .lang button{width:100%;padding:14px 16px;text-align:left}
 .lang ul{position:static;margin-top:8px;transform:none;display:none;opacity:1;pointer-events:auto;box-shadow:none}
 .lang.open ul{display:block}
}
@media(max-width:760px){
 section{padding-block:80px}
 .hero{padding-left:6vw;padding-right:6vw}
 .scroll{left:6vw}
 .contact{gap:36px}
 .btn{padding:15px 28px}.btn.ghost{margin:10px 0 0}
 .card{padding:34px 26px;border-radius:30px}
 details{padding:0 22px;border-radius:24px}summary{font-size:17px}
 .quote{padding-block:80px}
 .ctab{border-radius:34px}
 .light{border-radius:34px;margin:0 3vw}
}
@media(max-height:700px){.scroll{display:none}}
@media(hover:none){.card:hover{transform:none}.ir:hover{transform:none}}

/* ================= v9 : soft, ultra modern, every device ================= */
:root{--soft:rgba(255,255,255,.06);--ease:cubic-bezier(.22,1,.36,1)}
*{-webkit-tap-highlight-color:transparent}
html{scroll-padding-top:96px}
main:focus{outline:none}
.skip{position:fixed;left:16px;top:-90px;z-index:1001;background:#fff;color:#000;padding:12px 22px;border-radius:999px;text-decoration:none;font-size:14px;transition:top .35s var(--ease)}
.skip:focus{top:16px}

/* ----- header ----- */
header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;position:sticky;top:14px;margin:14px 3vw 0;padding:9px 10px 9px 24px;border-radius:999px;background:rgba(16,16,17,.55);-webkit-backdrop-filter:blur(22px) saturate(1.4);backdrop-filter:blur(22px) saturate(1.4);border:1px solid rgba(255,255,255,.07);box-shadow:0 24px 60px -34px #000;transition:transform .7s var(--ease),background .6s,padding .6s var(--ease),box-shadow .6s,border-color .6s}
header.sc{padding:6px 8px 6px 20px;background:rgba(12,12,13,.8);border-color:rgba(255,255,255,.1);box-shadow:0 28px 70px -30px #000}
header::after{content:"";position:absolute;left:16%;right:16%;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(229,50,45,.85),transparent);opacity:0;transition:opacity .8s;pointer-events:none}
header.sc::after{opacity:1}
.logo{display:flex;align-items:center;border-radius:12px}
.logo img{height:32px;width:auto;transition:height .6s var(--ease),transform .6s var(--ease)}
.logo:hover img{transform:scale(1.05)}
header.sc .logo img{height:28px}
nav{position:relative;justify-self:center;display:flex;flex-wrap:nowrap;gap:2px;padding:4px;border-radius:999px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}
nav a{position:relative;z-index:1;padding:10px 18px;border-radius:999px;font-size:12px;letter-spacing:.12em;white-space:nowrap;color:#9b9b9f;transition:color .4s}
nav a:hover,nav a.on{color:#fff;background:none}
.ni{position:absolute;left:0;top:4px;bottom:4px;width:0;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 24px -12px rgba(229,50,45,.55),inset 0 1px 0 rgba(255,255,255,.08);opacity:0;pointer-events:none;transition:transform .6s var(--ease),width .6s var(--ease),opacity .35s}
.hr{display:flex;align-items:center;gap:10px;justify-self:end}
.hcta{padding:13px 24px}
.btn.sm.hcta::after{content:" →";display:inline-block;transition:transform .5s var(--ease)}
.btn.sm.hcta:hover::after{transform:translateX(4px)}
.btn.sm.hcta{box-shadow:0 12px 30px -14px rgba(229,50,45,.9)}
.lang button{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);padding:10px 14px 10px 12px;border-radius:999px;color:#ddd;font-size:12px;letter-spacing:.1em;transition:background .4s,border-color .4s}
.lang button:hover{background:rgba(255,255,255,.08);border-color:rgba(229,50,45,.6)}
.lang svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.lang .cv{width:14px;height:14px;opacity:.6;transition:transform .5s var(--ease)}
.lang.open .cv{transform:rotate(180deg)}
.lang ul{border-radius:24px;padding:8px;background:rgba(20,20,21,.92);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.08);box-shadow:0 40px 80px -30px #000;transform:translateY(-10px) scale(.96);transform-origin:top right}
.lang li{border-radius:16px;padding:12px 16px;font-size:14px}
.lang li.sel{background:rgba(255,255,255,.05)}
.burger{display:none;position:relative;width:46px;height:46px;padding:0;border-radius:50%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);font-size:0;cursor:pointer;transition:background .4s}
.burger:hover{background:rgba(255,255,255,.1)}
.burger i{position:absolute;left:14px;right:14px;height:1.5px;border-radius:2px;background:#fff;transition:transform .6s var(--ease),top .6s var(--ease)}
.burger i:nth-child(1){top:19px}.burger i:nth-child(2){top:26px}
.burger.x i:nth-child(1){top:22.5px;transform:rotate(45deg)}.burger.x i:nth-child(2){top:22.5px;transform:rotate(-45deg)}

/* ----- mobile / tablet menu ----- */
html.mo,html.mo body{overflow:hidden}
#mm{position:fixed;inset:0;z-index:8;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:radial-gradient(90vw 55vh at 90% 0,rgba(229,50,45,.2),transparent 62%),radial-gradient(70vw 50vh at 0 100%,rgba(255,255,255,.04),transparent 60%),rgba(9,9,10,.97);clip-path:circle(0 at calc(100% - 46px) 46px);visibility:hidden;transition:clip-path 1s cubic-bezier(.77,0,.18,1),visibility 0s 1s}
html.mo #mm{clip-path:circle(160% at calc(100% - 46px) 46px);visibility:visible;transition:clip-path 1s cubic-bezier(.77,0,.18,1),visibility 0s}
.mm-in{min-height:100%;display:flex;flex-direction:column;justify-content:center;gap:30px;padding:118px 8vw calc(36px + env(safe-area-inset-bottom,0px));max-width:640px;margin:0 auto}
.mm-links a,.mm-lang,.mm-foot,.mm-cta{opacity:0;transform:translateY(26px);transition:opacity .6s,transform .9s var(--ease),color .3s}
.mm-links a{display:flex;align-items:baseline;gap:18px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:clamp(30px,8.5vw,46px);font-weight:600;letter-spacing:-.02em;color:#fff;text-decoration:none}
.mm-links a i{font-style:normal;font-size:12px;font-weight:400;letter-spacing:.2em;color:var(--red)}
.mm-links a.on{color:var(--red)}
html.mo .mm-links a,html.mo .mm-lang,html.mo .mm-foot,html.mo .mm-cta{opacity:1;transform:none}
html.mo .mm-links a:nth-child(1){transition-delay:.3s}html.mo .mm-links a:nth-child(2){transition-delay:.37s}html.mo .mm-links a:nth-child(3){transition-delay:.44s}html.mo .mm-links a:nth-child(4){transition-delay:.51s}html.mo .mm-links a:nth-child(5){transition-delay:.58s}
html.mo .mm-lang{transition-delay:.66s}html.mo .mm-foot{transition-delay:.74s}html.mo .mm-cta{transition-delay:.82s}
.mm-lang{display:flex;flex-wrap:wrap;gap:8px}
.mm-lang button,.mm-lang a{min-height:44px;padding:11px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:#c4c4c8;font:inherit;font-size:13px;letter-spacing:.1em;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;transition:background .3s,border-color .3s,color .3s}
.mm-lang .sel{border-color:var(--red);color:#fff;background:rgba(229,50,45,.14)}
.mm-foot{display:grid;gap:10px}
.mm-c{display:flex;align-items:center;gap:12px;color:#c9c9cd;text-decoration:none;font-size:15px;word-break:break-word}
.mm-c b{font-weight:400}
.mm-c svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--red);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.mm-cta{align-self:flex-start}
html.mo .ck,html.mo #totop,html.mo #dots{opacity:0;pointer-events:none}
@media(min-width:1025px){#mm{display:none}}
@media(max-width:1024px){
 header{grid-template-columns:1fr auto;padding:8px 8px 8px 22px}
 nav,.hcta,.hr .lang{display:none}
 .burger{display:block}
 header.sc{padding:6px 6px 6px 18px}
}

/* ----- hero: sharp vector mark ----- */
.bigmark{width:163px;height:84px;overflow:visible;filter:drop-shadow(0 14px 36px rgba(229,50,45,.4))}
.ring{position:absolute;right:-12vw;top:50%;width:min(52vw,760px);aspect-ratio:1;margin-top:calc(min(52vw,760px)/-2);border-radius:50%;border:1px solid rgba(255,255,255,.05);z-index:-1;pointer-events:none;animation:spin 70s linear infinite}
.ring::before{content:"";position:absolute;inset:11%;border-radius:50%;border:1px dashed rgba(255,255,255,.06)}
.ring i{position:absolute;left:50%;top:-4px;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:var(--red);box-shadow:0 0 18px 4px rgba(229,50,45,.7)}
@keyframes spin{to{transform:rotate(360deg)}}
.marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}

/* ----- soft surfaces ----- */
.card{background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.015));border-color:rgba(255,255,255,.07);box-shadow:0 40px 80px -50px #000}
.card:hover{border-color:rgba(229,50,45,.55)}
.light .card{background:#fff}
.stats div{border-radius:32px;background:linear-gradient(160deg,rgba(255,255,255,.045),rgba(255,255,255,.012));border-color:rgba(255,255,255,.07);transition:transform .8s var(--ease),border-color .5s}
.stats div:hover{transform:translateY(-6px);border-color:rgba(229,50,45,.5)}
.btn{letter-spacing:.1em}
.btn::after{display:inline-block;transition:transform .5s var(--ease)}
.btn:hover::after{transform:translateX(4px)}
.icon,.ico{transition:transform .8s var(--ease),background .5s,color .5s,border-color .5s}
.card:hover .ico{animation:wob 1.2s var(--ease)}
@keyframes wob{40%{transform:rotate(-8deg) scale(1.1)}}
input,textarea{font-size:16px;transition:border-color .4s,background .4s,box-shadow .4s}
input:focus,textarea:focus{background:#141415;box-shadow:0 0 0 4px rgba(229,50,45,.12)}
.ctab{background:radial-gradient(60% 120% at 50% 120%,rgba(229,50,45,.5),transparent 70%),linear-gradient(160deg,#171718,#121213)}

/* ----- FAQ: soft accordion ----- */
.faq{max-width:900px}
.fq{display:grid;gap:14px;margin-top:34px}
.fi{border-radius:30px;border:1px solid rgba(255,255,255,.07);background:linear-gradient(160deg,rgba(255,255,255,.04),rgba(255,255,255,.012));transition:border-color .7s var(--ease),background .7s var(--ease),box-shadow .7s var(--ease),transform .7s var(--ease)}
.fi:hover{border-color:rgba(255,255,255,.14);transform:translateY(-2px)}
.fi.open{border-color:rgba(229,50,45,.32);background:linear-gradient(160deg,rgba(229,50,45,.07),rgba(255,255,255,.015));box-shadow:0 36px 70px -46px rgba(229,50,45,.55)}
.fi h3{margin:0;font-size:inherit;font-weight:inherit}
.fb{width:100%;display:flex;align-items:center;gap:18px;padding:24px 26px;background:none;border:0;border-radius:30px;color:#f2f2f3;font:inherit;font-size:clamp(16px,2.2vw,19px);font-weight:500;text-align:left;cursor:pointer;min-height:64px}
.fb:focus-visible{outline-offset:-3px}
.fn{font-style:normal;font-size:12px;letter-spacing:.2em;color:var(--red);opacity:.8;flex:none}
.fb>span{flex:1}
.pm{position:relative;flex:none;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.12);transition:background .6s var(--ease),border-color .6s,transform .7s var(--ease)}
.pm::before,.pm::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;margin:-.75px 0 0 -6px;background:#fff;border-radius:2px;transition:transform .7s var(--ease)}
.pm::after{transform:rotate(90deg)}
.fi.open .pm{background:var(--red);border-color:var(--red);transform:rotate(180deg)}
.fi.open .pm::after{transform:rotate(0)}
.fa{display:grid;grid-template-rows:0fr;transition:grid-template-rows .8s var(--ease)}
.fi.open .fa{grid-template-rows:1fr}
.fai{min-height:0;overflow:hidden}
.fai p{margin:0;padding:0 26px 28px 66px;color:#a6a6ab;line-height:1.75;opacity:0;transform:translateY(-8px);filter:blur(4px);transition:opacity .5s,transform .8s var(--ease),filter .7s}
.fi.open .fai p{opacity:1;transform:none;filter:none;transition-delay:.12s}
.fine .fb,.fine .burger,.fine .mm-lang button{cursor:none}

/* ----- footer ----- */
footer{padding:50px 5vw calc(90px + env(safe-area-inset-bottom,0px))}
.flogo{height:36px;width:auto;display:block;margin:0 auto 18px}
.ftl{color:#8e8e93;font-size:14px;margin:0 auto 22px;max-width:420px}
.fcopy{margin:0}
.pw{margin-top:10px}

/* ----- 404 ----- */
.nf{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;padding:40px 6vw}
.nf img{height:42px;width:auto;margin-bottom:24px}
.nf .n4{font-size:clamp(90px,22vw,220px);font-weight:700;line-height:1;letter-spacing:-.05em;background:linear-gradient(180deg,#fff,#3a3a3d);-webkit-background-clip:text;background-clip:text;color:transparent}
.nf h1{font-size:clamp(24px,4vw,38px);background:none;color:#fff;animation:none}
.nf p{color:#9a9a9f;max-width:420px;margin-bottom:12px}

/* ----- every device ----- */
@media(max-width:1280px){.ring{right:-22vw}}
@media(max-width:760px){
 header{margin:10px 3vw 0;top:10px}
 .bigmark{width:124px;height:64px}
 .fb{padding:20px 20px;gap:14px}
 .fai p{padding:0 20px 24px 20px}
 .fn{display:none}
 .fi{border-radius:26px}
 .ring{width:90vw;right:-45vw}
 .btn{min-height:48px}
 .lang li,.mm-lang button{min-height:44px}
}
@media(max-width:380px){
 h1,.hero>h1{font-size:clamp(34px,11.5vw,46px)}
 section{padding-inline:5vw}
 .card{padding:30px 22px}
 .hero{padding-left:5vw;padding-right:5vw}
 .logo img{height:28px}
}
@media(min-width:1700px){section{max-width:1400px}.hero{padding-left:calc((100vw - 1400px)/2 + 5vw)}}
@media(hover:none){.fi:hover,.stats div:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.ring,.card:hover .ico{animation:none}.fa,.fai p,.mm-links a,.mm-lang,.mm-foot,.mm-cta,#mm{transition:none}}

/* ----- v9.1 fixes from device testing ----- */
h1,h2,.card h3,.ctab h2,.nf h1{text-wrap:balance}
p,.lead{text-wrap:pretty}
.hero p{max-width:560px}
#mm{background:radial-gradient(90vw 55vh at 90% 0,rgba(229,50,45,.2),transparent 62%),radial-gradient(70vw 50vh at 0 100%,rgba(255,255,255,.04),transparent 60%),#09090a}
.mm-lang{gap:6px}
@media(max-width:760px){
 .mm-lang button,.mm-lang a{padding:10px 14px}
 .ck{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));transform:none;width:auto;max-width:none;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;padding:8px 8px 8px 18px;font-size:12px;line-height:1.4;border-radius:22px;text-align:left}
 .ck .btn.sm{padding:10px 18px;flex:none;min-height:40px}
 html.ckv #totop{bottom:calc(82px + env(safe-area-inset-bottom,0px))}
}

/* ----- WordPress extras ----- */
.admin-bar header{top:calc(46px + 10px)}@media(min-width:783px){.admin-bar header{top:calc(32px + 14px)}}
.card h3 a{color:inherit;text-decoration:none}.card h3 a::after{content:" ↗";color:var(--red);opacity:0;transition:.4s}.card:hover h3 a::after{opacity:1}
.lang li{padding:0}.lang li a{display:flex;flex:1;justify-content:space-between;align-items:center;gap:20px;padding:12px 16px;color:inherit;text-decoration:none}
.info a{color:inherit;text-decoration:none;word-break:break-word}

/* ----- v3.1 fixes: menu robustness on phones ----- */
.burger{touch-action:manipulation;-webkit-tap-highlight-color:transparent;position:relative;z-index:10}
.burger i{pointer-events:none}
#mm[inert]{pointer-events:none}
html.mo #mm{pointer-events:auto}
#ld{animation:ldfs 0s 9s forwards}
@keyframes ldfs{to{opacity:0;visibility:hidden;pointer-events:none}}
