
:root{color-scheme:dark;--bg:#0c0c0f;--surface:#15171d;--line:#252a38;--text:#f2f5fb;--muted:#a3acbd;--accent:#3d7bff;--accent-ink:#fff;--cool:#6fb0ff;--glow:rgba(61,123,255,.24);
  box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(190px + env(safe-area-inset-top,0px))}
body{margin:0;background:var(--bg);color:var(--text);font:17px/1.6 "Open Sans","Segoe UI",system-ui,-apple-system,sans-serif;overflow-x:hidden}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
h1,h2,h3,.brand{font-family:"Quicksand","Avenir Next","Segoe UI",system-ui,sans-serif;line-height:1.04;letter-spacing:-.02em;margin:0}
h1{font-size:clamp(2.6rem,7.4vw,5.4rem);font-weight:700}
h2{font-size:clamp(2rem,5vw,3.4rem);font-weight:800;margin-bottom:14px}
h3{font-size:1.25rem;font-weight:700;margin-bottom:8px;letter-spacing:-.01em}
p{margin:0 0 14px;max-width:62ch}
.muted{color:var(--muted)}
.btn{display:inline-block;padding:15px 26px;border-radius:12px;font:inherit;font-weight:700;text-decoration:none;border:2px solid #fff;background:#fff;color:#0c0c0f;cursor:pointer;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-3px);box-shadow:0 10px 30px var(--glow),0 0 22px rgba(61,123,255,.55)}
.btn.ghost{background:transparent;color:var(--text);border-color:#3a4766}
.btn.ghost:hover{border-color:var(--cool);box-shadow:none}
:focus-visible{outline:3px solid var(--cool);outline-offset:3px}
#bar{position:fixed;top:0;left:0;height:4px;width:0;background:linear-gradient(90deg,var(--accent),var(--cool));z-index:30}
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;backdrop-filter:blur(14px);background:color-mix(in srgb,var(--bg) 78%,transparent);border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;flex-direction:column;justify-content:center;align-items:center;padding-top:14px;padding-bottom:10px;gap:10px}
.brand{text-decoration:none;display:block;width:min(840px,100%)}
.logo{display:block;height:auto;width:100%}
.flogo{height:auto;width:min(560px,100%);opacity:.95;margin:0 auto 10px}
footer .wrap>span:first-child{width:100%}
.links{display:flex;gap:28px;align-items:center;justify-content:center;flex-wrap:wrap;font-size:.98rem}
.links a{text-decoration:none;color:var(--text);padding:4px 0;border-bottom:2px solid transparent}
.links a:not(.btn):hover{border-color:var(--text)}
.links .btn{padding:10px 18px;color:#0c0c0f}
.hero{position:relative;overflow:hidden;background:radial-gradient(600px circle at var(--mx,70%) var(--my,30%),var(--glow),transparent 60%)}
.facets{position:absolute;inset:0;width:100%;height:100%}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:140px;background:linear-gradient(transparent,var(--bg))}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;padding-top:64px;padding-bottom:84px}
.rot{display:block;color:var(--cool);text-shadow:0 0 30px rgba(61,123,255,.55);transition:opacity .35s,transform .35s;min-height:1.05em}
.rot.out{opacity:0;transform:translateY(14px)}
.lead{font-size:1.2rem;color:var(--muted);margin:24px 0 30px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}
.hint{margin-top:22px;font-size:.92rem;color:var(--muted)}
canvas{width:100%;max-width:440px;aspect-ratio:1/1.05;justify-self:center}
.strip{overflow:hidden;border-block:1px solid var(--line);background:var(--surface);padding:16px 0}
.strip div{display:flex;gap:44px;width:max-content;animation:mq 32s linear infinite;font-weight:700;color:var(--muted)}
.strip span::before{content:"◆";color:var(--accent);margin-right:44px;font-size:.7em}
@keyframes mq{to{transform:translateX(-50%)}}
section{padding:96px 0}
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .7s,transform .7s}
.js .rv.in{opacity:1;transform:none}
.tabs{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;margin-top:36px}
.tablist{display:flex;flex-direction:column;gap:10px}
.tab{text-align:left;font:inherit;font-weight:700;font-size:1.1rem;padding:20px 22px;border-radius:14px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;transition:all .25s}
.tab:hover{color:var(--text);transform:translateX(6px)}
.tab[aria-selected="true"]{background:var(--surface);color:var(--text);border-color:var(--accent);box-shadow:inset 5px 0 0 var(--accent)}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:34px;min-height:300px;animation:pin .45s ease}
@keyframes pin{from{opacity:0;transform:translateY(12px)}}
.sv{margin:-34px -34px 26px;height:290px;overflow:hidden;border-radius:17px 17px 0 0;background:var(--bg)}
.sv img,.sv svg{display:block;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.panel ul{padding:0;margin:18px 0 24px;list-style:none;display:grid;gap:10px}
.panel li::before{content:"✓";color:var(--accent);font-weight:800;margin-right:10px}
.wiz{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--surface) 70%,var(--accent)));border:1px solid var(--line);border-radius:24px;padding:48px 34px}
.opts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0}
.opt{font:inherit;text-align:left;padding:22px;border-radius:14px;border:2px solid var(--line);background:var(--bg);color:var(--text);cursor:pointer;transition:all .25s}
.opt:hover{transform:translateY(-5px);border-color:var(--cool)}
.opt.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--bg))}
.opt b{display:block;font-size:1.1rem;margin-bottom:4px}
.opt span{color:var(--muted);font-size:.93rem}
#res{min-height:96px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 8px}
.chip{font:inherit;padding:9px 18px;border-radius:99px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;font-weight:600}
.chip[aria-pressed="true"]{background:var(--text);color:var(--bg);border-color:var(--text)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}
.tile{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--surface);cursor:pointer;padding:0;font:inherit;color:inherit;text-align:left;transition:transform .3s,opacity .3s}
.tile:hover{transform:translateY(-6px) scale(1.01)}
.tile.hide{display:none}
.ph{aspect-ratio:4/3;display:grid;place-items:center;color:var(--muted);background:repeating-linear-gradient(0deg,transparent 0 9px,var(--line) 9px 10px),radial-gradient(circle at 30% 30%,var(--glow),transparent 60%);transition:transform .5s}
.tile:hover .ph{transform:scale(1.08)}
.cap{padding:16px 18px;background:var(--surface);position:relative}
.cap b{display:block}
.cap span{color:var(--muted);font-size:.92rem}
.ph img{width:100%;height:100%;object-fit:cover;object-position:center 35%;display:block}
dialog{border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--text);max-width:720px;width:calc(100% - 32px);padding:30px}
dialog::backdrop{background:rgba(5,8,14,.75);backdrop-filter:blur(4px)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:40px;position:relative}
.steps::before{content:"";position:absolute;top:21px;left:6%;right:6%;height:2px;background:var(--line)}
.steps::after{content:"";position:absolute;top:21px;left:6%;height:2px;width:calc(88% * var(--p,0));background:var(--accent);transition:width .2s}
.step{position:relative}
.step i{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--bg);border:2px solid var(--accent);font-style:normal;font-weight:800;margin-bottom:16px;position:relative;z-index:1}
details{border-bottom:1px solid var(--line);padding:20px 0}
summary{cursor:pointer;font-weight:700;font-size:1.1rem;list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";float:right;color:var(--accent);font-size:1.5rem;line-height:1;transition:transform .3s}
details[open] summary::after{transform:rotate(45deg)}
details p{margin:12px 0 0;color:var(--muted)}
.band{background:linear-gradient(120deg,#1b46c9,#2f6bff 55%,#4aa0ff);color:#fff;border-radius:28px;padding:64px 34px;text-align:center}
.band h2{max-width:20ch;margin:0 auto 16px}
.band p{margin:0 auto 26px}
.band .cta-row{justify-content:center}
.band .btn{background:#fff;border-color:#fff;color:#0c0c0f}
.band .btn.ghost{background:transparent;color:#fff;border-color:#fff}
footer{padding:30px 0 96px;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}
footer .wrap{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}
.float{display:none}
@media (max-width:860px){
  .hero .wrap,.tabs,.opts,.grid,.steps{grid-template-columns:1fr}
  .hero .wrap{padding-top:36px;padding-bottom:56px}
  canvas{max-width:300px;order:-1}
  .links{gap:18px;font-size:.88rem;flex-wrap:nowrap;overflow-x:auto;max-width:100%}
  .links a{white-space:nowrap}
  .links .btn{display:none}
  .steps::before,.steps::after{display:none}
  section{padding:68px 0}
  .float{display:block;position:fixed;left:14px;right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:25;text-align:center;box-shadow:0 8px 28px rgba(0,0,0,.45)}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}

.view{display:none}.view.on{display:block;animation:pin .4s ease}
.pg{padding:56px 0 96px}
.pt{font-size:clamp(2.1rem,5.2vw,3.6rem);font-weight:700;margin-bottom:26px;max-width:22ch}
.two{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center}
.two img,.blk img{width:100%;border-radius:18px;display:block;border:1px solid var(--line)}
.blk{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;margin:0 0 72px}
.blk:nth-of-type(even) .bi{order:-1}
.ul{padding:0;margin:14px 0;list-style:none;display:grid;gap:8px;color:var(--muted)}
.ul li::before{content:"✓";color:var(--accent);font-weight:800;margin-right:10px}
.note{border-left:4px solid var(--accent);background:var(--surface);padding:14px 18px;border-radius:0 12px 12px 0;color:var(--muted);margin:18px 0}
label{display:block;font-weight:600;margin:14px 0 6px}
input,textarea{width:100%;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px 14px}
input:focus,textarea:focus{border-color:var(--cool);outline:none}
label.chk{display:flex;gap:10px;align-items:flex-start;font-weight:400;margin-top:16px}.chk input{width:auto;margin-top:6px}
.stp{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 26px}.stp span{padding:8px 16px;border-radius:99px;border:1px solid var(--line);color:var(--muted);font-weight:600;font-size:.9rem}.stp span.on{background:var(--accent);border-color:var(--accent);color:#fff}
.err{color:#ff8f8f;margin-top:12px}
.fbox{max-width:640px}
.dlg{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.dc{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:8px}
.dc p{margin:0;color:var(--muted);font-size:.95rem}.dc small{color:var(--muted)}.dc .btn{margin-top:auto;align-self:flex-start;padding:10px 18px}
.cinfo{display:grid;gap:6px;font-size:1.15rem;margin:18px 0 28px}.cinfo a{color:var(--cool)}
.links a[aria-current="page"]{border-color:var(--accent)}
#bsum{min-height:150px;font-size:.95rem}
@media (max-width:860px){.two,.blk,.dlg{grid-template-columns:1fr}.blk .bi{order:-1}.pg{padding:36px 0 80px}.blk{gap:22px;margin-bottom:48px}}

.svc img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px;margin-bottom:14px;display:block}
.svc h3 a{text-decoration:none}.svc>a{display:inline-block;margin-top:8px;color:var(--cool);font-weight:700}
h1.h1s{font-size:clamp(2.2rem,5.6vw,4rem)}
p.rot{font-family:"Quicksand","Avenir Next","Segoe UI",system-ui,sans-serif;font-size:clamp(1.6rem,4vw,2.6rem);font-weight:700;margin:14px 0 0;min-height:1.2em}
.ph img{width:100%;height:100%;object-fit:cover;display:block}
button.tile{font:inherit}
.cap{text-align:left}
.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:34px}
.svc{border-top:4px solid var(--accent);padding-top:18px}
.svc:nth-child(2){border-color:var(--cool)}
.svc:nth-child(3){border-color:var(--text)}
@media (max-width:860px){.cols{grid-template-columns:1fr}}
img{max-width:100%;height:auto}

.prose{max-width:780px}
.prose h2{font-size:1.35rem;margin:36px 0 10px}
.prose p{color:var(--muted);max-width:none}
.prose ul{color:var(--muted);padding-left:22px;margin:0 0 14px}
.prose li{margin:4px 0}
.prose a{color:var(--cool)}

.social{display:flex;gap:14px;justify-content:center;margin:6px 0 18px}
.social a{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;transition:transform .2s,box-shadow .2s}
.social a:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.45)}
.social svg{width:26px;height:26px}
.s-fb{background:#1877f2}.s-ig{background:linear-gradient(45deg,#f9a03f,#e1306c 55%,#833ab4)}.s-ml{background:#e8590c}.s-tel{background:#2fbf71}

.car{position:relative;margin-top:30px}
.car-t{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px;-webkit-overflow-scrolling:touch}
.car-t::-webkit-scrollbar{display:none}
.car-t .tile{flex:0 0 calc((100% - 54px)/4);scroll-snap-align:start}
@media (max-width:1000px){.car-t .tile{flex-basis:calc((100% - 36px)/3)}}
@media (max-width:640px){.car-t{gap:14px}.car-t .tile{flex-basis:82%}.car-b{display:none}}
.car-b{position:absolute;top:calc(50% - 45px);z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(12,12,15,.88);color:#fff;font-size:28px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0 0 3px;backdrop-filter:blur(6px);transition:border-color .2s,transform .2s}
.car-b:hover{border-color:var(--cool);transform:scale(1.06)}
.car-b.prev{left:-14px}.car-b.next{right:-14px}
.car-d{display:flex;gap:8px;justify-content:center;margin-top:18px}
.car-d button{width:9px;height:9px;border-radius:5px;border:0;padding:0;background:var(--line);cursor:pointer;transition:width .25s,background .25s}
.car-d button[aria-current="true"]{background:var(--accent);width:26px}
.tile{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch}
.tile .ph{width:100%;flex:0 0 auto}
.tile .cap{flex:1;width:100%}
