/*
Theme Name: Reborn Dark
Theme URI: https://example.com/
Description: Тёмная VPN-тема с продуктовым каркасом (split-hero с app-карточкой, bento, лента платформ, timeline). Один CSS, один JS, конфиг в inc/config.php.
Version: 1.1.0
Author: Reborn
Text Domain: reborn-dark
*/

/* ===== База ===== */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--font-head);line-height:1.12;margin:0 0 .5em;letter-spacing:-.015em}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
ul{margin:0;padding:0;list-style:none}
.wrap{width:min(1200px,92%);margin:0 auto;position:relative;z-index:2}
.grad{background:linear-gradient(100deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}

/* ===== Mesh-фон ===== */
.bgmesh{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.bgmesh::before,.bgmesh::after{content:"";position:absolute;border-radius:50%;filter:blur(100px)}
.bgmesh::before{width:600px;height:600px;top:-200px;right:-100px;background:radial-gradient(circle,var(--accent2),transparent 65%);opacity:.26}
.bgmesh::after{width:520px;height:520px;top:340px;left:-160px;background:radial-gradient(circle,var(--accent),transparent 65%);opacity:.20}

/* ===== Кнопки ===== */
.btn{display:inline-flex;align-items:center;gap:.55em;padding:13px 24px;border-radius:12px;font-weight:600;font-size:15px;cursor:pointer;border:1px solid transparent;transition:transform .16s,box-shadow .2s,background .2s,border-color .2s;white-space:nowrap}
.btn-primary{background:linear-gradient(100deg,var(--accent),var(--accent2));color:var(--on-accent);box-shadow:0 10px 30px -10px color-mix(in srgb,var(--accent) 70%,transparent)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 40px -10px color-mix(in srgb,var(--accent) 80%,transparent)}
.btn-ghost{background:rgba(255,255,255,.04);color:var(--ink);border-color:rgba(255,255,255,.14)}
.btn-ghost:hover{border-color:var(--accent)}
.btn-sm{padding:9px 16px;font-size:14px;border-radius:10px}
.btn-lg{padding:15px 30px;font-size:16px}
.glass{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.018));border:1px solid rgba(255,255,255,.09)}

/* ===== Плавающий pill-хедер ===== */
.site-header{position:fixed;top:16px;left:0;right:0;z-index:50}
.hd{display:flex;align-items:center;justify-content:space-between;gap:18px;height:60px;padding:0 12px 0 20px;border-radius:50px;background:color-mix(in srgb,var(--bg2) 75%,transparent);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(16px);transition:background .25s,box-shadow .25s}
.site-header.solid .hd{background:color-mix(in srgb,var(--bg2) 92%,transparent);box-shadow:0 12px 40px -18px #000}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--font-head);font-weight:700;font-size:19px;color:var(--ink)}
.logo svg{width:34px;height:34px;flex:none}
.nav{display:flex;align-items:center;gap:8px}
.nav a.lnk{font-weight:500;font-size:14.5px;color:var(--muted);padding:8px 14px;border-radius:50px}
.nav a.lnk:hover{color:var(--ink);background:rgba(255,255,255,.05)}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px}
.burger span{width:24px;height:2.5px;background:var(--ink);border-radius:3px;transition:.25s}
.burger.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ===== Split-hero ===== */
.hero{padding:150px 0 70px}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}
.chip{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--ink);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);padding:6px 14px;border-radius:50px}
.chip .dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent);animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.hero h1{font-size:clamp(32px,4.6vw,52px);font-weight:700;margin:20px 0 16px;letter-spacing:-.02em}
.hero .lead{font-size:clamp(16px,1.4vw,18px);color:var(--muted);max-width:52ch;margin:0 0 28px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-mini{display:flex;gap:22px;margin-top:30px;flex-wrap:wrap}
.hero-mini div{display:flex;flex-direction:column}
.hero-mini b{font-family:var(--font-head);font-size:22px;color:var(--ink)}
.hero-mini span{font-size:13px;color:var(--muted)}

/* ===== App-карточка (визуал hero) ===== */
.appcard{position:relative;border-radius:24px;padding:24px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 80px -40px #000}
.appcard::before{content:"";position:absolute;inset:-1px;border-radius:24px;padding:1px;background:linear-gradient(140deg,color-mix(in srgb,var(--accent) 50%,transparent),transparent 40%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.ac-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.ac-status{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--accent)}
.ac-status .d{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}
.ac-tg{width:44px;height:26px;border-radius:50px;background:color-mix(in srgb,var(--accent) 30%,transparent);position:relative}
.ac-tg::after{content:"";position:absolute;top:3px;right:3px;width:20px;height:20px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}
.ac-shield{text-align:center;padding:14px 0 22px}
.ac-ring{width:118px;height:118px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 22%,transparent),transparent 70%);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);position:relative}
.ac-ring::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent) 25%,transparent);animation:spin 8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.ac-ring svg{color:var(--accent);filter:drop-shadow(0 0 10px color-mix(in srgb,var(--accent) 60%,transparent))}
.ac-time{font-family:var(--font-head);font-weight:700;font-size:24px;letter-spacing:.04em}
.ac-time span{color:var(--muted);font-size:13px;font-weight:500;display:block;letter-spacing:0;margin-top:2px}
.ac-row{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-radius:13px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);margin-top:10px}
.ac-loc{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}
.ac-flag{width:26px;height:18px;border-radius:4px;background:linear-gradient(180deg,#ae1c28 33%,#fff 33% 66%,#21468b 66%)}
.ac-loc small{display:block;color:var(--muted);font-weight:400;font-size:12px}
.ac-ping{color:var(--accent);font-weight:700;font-size:14px}
.ac-speed{margin-top:12px}
.ac-bar{height:8px;border-radius:50px;background:rgba(255,255,255,.07);overflow:hidden}
.ac-bar i{display:block;height:100%;width:76%;border-radius:50px;background:linear-gradient(90deg,var(--accent),var(--accent2))}
.ac-slabs{display:flex;justify-content:space-between;margin-top:9px;font-size:12.5px;color:var(--muted)}
.ac-slabs b{color:var(--ink)}

/* ===== Секции ===== */
.section{padding:78px 0;position:relative;z-index:2}
.shead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:40px;flex-wrap:wrap}
.shead .eyebrow{color:var(--accent);font-weight:700;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}
.shead h2{font-size:clamp(26px,3.2vw,38px);font-weight:700;max-width:20ch}
.shead p{color:var(--muted);max-width:42ch;margin:0}

/* ===== Лента платформ ===== */
.pfstrip{display:flex;border-radius:20px;overflow:hidden}
.pfs{flex:1;display:flex;flex-direction:column;align-items:center;gap:9px;padding:26px 10px;color:var(--ink);border-right:1px solid rgba(255,255,255,.06);transition:background .18s}
.pfs:last-child{border-right:0}
.pfs:hover{background:rgba(255,255,255,.04)}
.pfs .ico{color:var(--accent)}
.pfs .name{font-size:14px;font-weight:600}
.pfs .go{font-size:12px;color:var(--muted)}

/* ===== Bento возможности ===== */
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:16px}
.bt{border-radius:20px;padding:26px;display:flex;flex-direction:column;transition:transform .18s,border-color .18s}
.bt:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}
.bt .fi{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;margin-bottom:16px;color:var(--accent);background:linear-gradient(140deg,color-mix(in srgb,var(--accent) 24%,transparent),color-mix(in srgb,var(--accent2) 20%,transparent));border:1px solid rgba(255,255,255,.1)}
.bt h3{font-size:18px;margin-bottom:7px}
.bt p{margin:0;color:var(--muted);font-size:14.5px}
.bt-lg{grid-column:span 2;grid-row:span 2;background:linear-gradient(150deg,color-mix(in srgb,var(--accent) 12%,var(--bg2)),var(--bg2))}
.bt-lg h3{font-size:24px}
.bt-lg .big{margin-top:auto;font-family:var(--font-head);font-weight:700;font-size:clamp(30px,4vw,44px);background:linear-gradient(100deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}
.bt-wide{grid-column:span 2}

/* ===== Timeline «как это работает» ===== */
.how{display:grid;grid-template-columns:repeat(3,1fr);gap:0;position:relative}
.how::before{content:"";position:absolute;top:26px;left:12%;right:12%;height:2px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 50%,transparent),transparent)}
.hstep{text-align:center;padding:0 20px}
.hnum{width:54px;height:54px;margin:0 auto 20px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-head);font-weight:700;font-size:20px;color:var(--on-accent);background:linear-gradient(140deg,var(--accent),var(--accent2));box-shadow:0 0 0 8px var(--bg),0 10px 24px -8px var(--accent);position:relative;z-index:2}
.hstep h3{font-size:18px}
.hstep p{color:var(--muted);font-size:14.5px;margin:0}

/* ===== Стат-полоса ===== */
.statrow{display:grid;grid-template-columns:repeat(4,1fr);border-radius:20px}
.statrow .st{padding:30px 20px;text-align:center;border-right:1px solid rgba(255,255,255,.07)}
.statrow .st:last-child{border-right:0}
.statrow .num{font-family:var(--font-head);font-weight:700;font-size:clamp(26px,3.4vw,36px);background:linear-gradient(100deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}
.statrow .lab{color:var(--muted);font-size:13.5px;margin-top:4px}

/* ===== FAQ (список с левым акцентом) ===== */
.faq{max-width:900px;margin:0 auto;border-top:1px solid rgba(255,255,255,.08)}
.qa{border-bottom:1px solid rgba(255,255,255,.08)}
.qa button{width:100%;text-align:left;padding:22px 20px 22px 26px;font-family:var(--font-head);font-weight:600;font-size:17px;background:none;border:0;border-left:2px solid transparent;cursor:pointer;display:flex;justify-content:space-between;gap:16px;align-items:center;color:var(--ink);transition:border-color .2s,color .2s}
.qa.open button{border-left-color:var(--accent);color:var(--accent)}
.qa button::after{content:"";width:11px;height:11px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);flex:none;transition:transform .25s;margin-right:6px}
.qa.open button::after{transform:rotate(-135deg)}
.qa .a{max-height:0;overflow:hidden;transition:max-height .3s ease;color:var(--muted)}
.qa .a p{margin:0;padding:0 26px 22px}

/* ===== CTA (angled panel) ===== */
.cta-band{position:relative;overflow:hidden;border-radius:26px;padding:64px 48px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;background:linear-gradient(115deg,color-mix(in srgb,var(--accent) 22%,var(--bg2)),color-mix(in srgb,var(--accent2) 20%,var(--bg2)));border:1px solid rgba(255,255,255,.12)}
.cta-band::after{content:"";position:absolute;width:340px;height:340px;right:-80px;top:-120px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 40%,transparent),transparent 60%);pointer-events:none}
.cta-band h2{font-size:clamp(24px,3vw,34px);max-width:16ch;margin:0}
.cta-band p{color:var(--muted);max-width:40ch;margin:8px 0 0}

/* ===== Шаги (страница «Как подключить») — вертикальный timeline ===== */
.vsteps{max-width:760px;margin:0 auto 50px;position:relative}
.vstep{display:grid;grid-template-columns:56px 1fr;gap:22px;padding-bottom:34px;position:relative}
.vstep:not(:last-child)::before{content:"";position:absolute;left:27px;top:56px;bottom:0;width:2px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 50%,transparent),transparent)}
.vstep .vn{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;font-family:var(--font-head);font-weight:700;font-size:20px;color:var(--on-accent);background:linear-gradient(140deg,var(--accent),var(--accent2))}
.vstep h3{font-size:19px;margin:6px 0 6px}
.vstep p{color:var(--muted);margin:0;font-size:15px}

/* ===== Footer ===== */
.site-footer{background:var(--bg2);border-top:1px solid rgba(255,255,255,.07);padding:54px 0 30px;position:relative;z-index:2}
.ft{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}
.ft .fabout{max-width:320px;color:var(--muted);font-size:14px;margin-top:12px}
.ft .fcol h4{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}
.ft .fcol a{display:block;color:var(--ink);font-size:14.5px;padding:5px 0;opacity:.85}
.ft .fcol a:hover{color:var(--accent);opacity:1}
.ft-copy{border-top:1px solid rgba(255,255,255,.07);margin-top:34px;padding-top:22px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:13px}

/* ===== Reveal / scroll-top ===== */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s,transform .6s}
.reveal.in{opacity:1;transform:none}
.to-top{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border-radius:50%;background:linear-gradient(140deg,var(--accent),var(--accent2));color:var(--on-accent);display:grid;place-items:center;opacity:0;pointer-events:none;transition:.25s;z-index:40;border:0;cursor:pointer;box-shadow:0 8px 24px -8px var(--accent)}
.to-top.show{opacity:1;pointer-events:auto}

/* ===== Адаптив ===== */
@media(max-width:900px){
	.hero-grid{grid-template-columns:1fr;gap:40px}
	.appcard{max-width:420px;margin:0 auto}
	.bento{grid-template-columns:1fr 1fr}
	.bt-lg,.bt-wide{grid-column:span 2}
	.bt-lg{grid-row:auto}
	.how{grid-template-columns:1fr;gap:34px}
	.how::before{display:none}
	.statrow{grid-template-columns:1fr 1fr}
	.statrow .st:nth-child(2){border-right:0}
	.ft{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
	.nav{position:fixed;inset:88px 4% auto 4%;background:color-mix(in srgb,var(--bg2) 96%,transparent);backdrop-filter:blur(16px);flex-direction:column;align-items:stretch;gap:0;padding:12px;border-radius:20px;border:1px solid rgba(255,255,255,.1);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .25s,transform .25s,visibility .25s;z-index:49}
	.nav.open{opacity:1;visibility:visible;transform:none}
	.nav a.lnk{padding:13px 16px}
	.nav .btn{margin-top:8px;justify-content:center}
	.burger{display:flex}
	.pfstrip{flex-wrap:wrap}
	.pfs{flex:1 0 33%;border-bottom:1px solid rgba(255,255,255,.06)}
	.bento{grid-template-columns:1fr}
	.bt-lg,.bt-wide{grid-column:auto}
	.statrow{grid-template-columns:1fr 1fr}
	.ft{grid-template-columns:1fr}
	.cta-band{padding:44px 28px}
}
