/*
Theme Name: PandaVPN Ru
Theme URI: https://pandavpn.help/
Author: PandaVPN Ru
Description: Тема сайта pandavpn.help. Палитра и ширина сняты с pandavpnpro.com.
Version: 1.0.11
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: pnd-theme
*/

:root{
	--wrap:1300px;
	--pad:24px;

	--green:#47b96d;
	--green-dk:#3ea360;
	--green-tint:#ecf8f0;
	--green-soft:#f0fdf4;
	--gold:#d4af37;

	--ink:#262626;
	--ink-2:#5c5c5c;
	--ink-3:#7f7f7f;
	--line:#e0e0e0;
	--line-2:#efefef;
	--paper:#fbfcfb;
	--panel:#fff;

	--r:999px;
	--r-card:20px;
	--r-sm:12px;

	--sh-cta:0 8px 20px 0 rgba(71,185,109,.28);
	--sh-card:0 4px 18px 0 rgba(38,38,38,.05);

	--f-head:"M PLUS Rounded 1c","Trebuchet MS","Segoe UI",sans-serif;
	--f-body:"Gothic A1","Segoe UI",Tahoma,sans-serif;

	--seg:repeating-linear-gradient(90deg,var(--green) 0 26px,transparent 26px 32px);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
	margin:0;background:var(--paper);color:var(--ink);
	font:400 17px/1.72 var(--f-body);
	overflow-x:hidden;
}
img,svg,video{max-width:100%;height:auto}
a{color:var(--green-dk);text-decoration:none}
a:hover{color:var(--green)}
h1,h2,h3,h4{font-family:var(--f-head);font-weight:800;line-height:1.18;letter-spacing:-.01em;margin:0}
p{margin:0 0 16px}
ul,ol{margin:0 0 16px;padding-left:20px}
li{margin:0 0 8px}
b,strong{font-weight:700}

.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;z-index:99;background:var(--ink);color:#fff;padding:10px 16px;border-radius:var(--r)}
:focus-visible{outline:3px solid var(--green);outline-offset:2px}

/* ── Шапка ────────────────────────────────────────────────── */
.top{position:sticky;top:0;z-index:40;background:rgba(251,252,251,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top__in{display:flex;align-items:center;gap:14px;min-height:66px}
.brand{display:inline-flex;align-items:center;gap:9px;font-family:var(--f-head);font-weight:800;font-size:19px;color:var(--ink);letter-spacing:-.02em;flex:0 0 auto}
.brand:hover{color:var(--ink)}
/* Знак бренда — квадратная иконка приложения. Размер задан здесь,
   картинка приходит вдвое плотнее (96/192) и на ретине не мылит.
   Кайма-волосок отделяет зелёную плашку от светлой шапки. */
.brand__m{display:block;width:28px;height:28px;border-radius:22%;flex:0 0 auto;
	box-shadow:0 0 0 1px rgba(38,38,38,.07)}
.brand b{color:var(--green-dk)}

.nav{display:flex;gap:2px;margin-left:auto;flex-wrap:wrap}
.nav a{padding:8px 11px;border-radius:var(--r);color:var(--ink-2);font-size:15px;font-weight:500;white-space:nowrap}
.nav a:hover{background:var(--green-tint);color:var(--ink)}
.nav a[aria-current="page"]{background:var(--ink);color:#fff}
.top__cta{margin-left:auto;flex:0 0 auto}
.burger{display:none;align-items:center;gap:8px;border:1px solid var(--line);background:var(--panel);color:var(--ink);
	border-radius:var(--r);padding:9px 14px;font:600 14px/1 var(--f-body);cursor:pointer}
.burger__ic{width:16px;height:2px;background:var(--ink);position:relative;display:block;border-radius:2px}
.burger__ic::before,.burger__ic::after{content:"";position:absolute;left:0;width:16px;height:2px;background:var(--ink);border-radius:2px}
.burger__ic::before{top:-5px}
.burger__ic::after{top:5px}
.drawer{display:none;border-top:1px solid var(--line);background:var(--panel)}
.drawer.is-on{display:block}
.drawer__g{display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:12px 0 16px}
.drawer__g a{padding:11px 12px;border-radius:var(--r-sm);color:var(--ink-2);font-weight:500;font-size:15px}
.drawer__g a:hover{background:var(--green-tint);color:var(--ink)}

/* ── Кнопки ───────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
	border-radius:var(--r);padding:13px 24px;font:700 16px/1.2 var(--f-body);
	border:1px solid transparent;cursor:pointer;text-align:center;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}
.btn svg{width:17px;height:17px;flex:0 0 auto}
.btn--main{background:var(--green);color:#fff;box-shadow:var(--sh-cta)}
.btn--main:hover{background:var(--green-dk);color:#fff}
.btn--ink{background:var(--ink);color:#fff}
.btn--ink:hover{background:#000;color:#fff}
.btn--ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn--ghost:hover{background:var(--green-tint);color:var(--ink);border-color:var(--green)}
.btn--sm{padding:9px 16px;font-size:14px}
.btn--wide{width:100%}

/* ── Секции ───────────────────────────────────────────────── */
.sec{padding:74px 0}
.sec--tint{background:var(--green-tint)}
.sec--white{background:var(--panel)}
.sec+.sec--white,.sec--white+.sec{border-top:1px solid var(--line-2)}
.h1{font-size:clamp(30px,5.1vw,50px)}
.h2{font-size:clamp(24px,3.4vw,34px);margin-bottom:10px}
.h3{font-size:clamp(19px,2.2vw,22px)}
.lead{font-size:19px;color:var(--ink-2);max-width:760px;margin:0 0 22px}
.sec>.wrap>.h2+p{color:var(--ink-2);max-width:740px;margin-bottom:26px}

/* сегментированный разделитель — «коленца» */
.split{height:4px;border-radius:var(--r);background:var(--seg);opacity:.5;margin:0 0 30px;max-width:220px}

/* ── Первый экран ─────────────────────────────────────────── */
.hero{padding:56px 0 66px;background:linear-gradient(180deg,var(--green-soft),var(--paper) 72%)}
.hero__g{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:start}
.hero__badge{display:inline-flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--green);
	color:var(--green-dk);border-radius:var(--r);padding:7px 15px;font-size:14px;font-weight:700;margin-bottom:18px}
.hero__badge svg{width:15px;height:15px}
.hero h1{margin-bottom:16px}
.hero__btns{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 8px}
.hero__note{font-size:14px;color:var(--ink-3);margin:0}

.facts{list-style:none;margin:30px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:0;
	border:1px solid var(--line);border-radius:var(--r-card);background:var(--panel);overflow:hidden}
.facts__i{margin:0;flex:1 1 130px;padding:15px 16px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:2px}
.facts__i:last-child{border-right:0}
.facts__i b{font-family:var(--f-head);font-size:23px;font-weight:800;color:var(--ink);line-height:1.1}
.facts__i span{font-size:13px;color:var(--ink-3);line-height:1.35}

/* кадр с пандой в правой половине первого экрана: PNG с прозрачным
   фоном лежит прямо на заливке .hero, плашка ему не нужна */
.hero__i{display:block;width:100%;max-width:360px;height:auto;margin:0 auto;justify-self:center}

/* ── Карточки ─────────────────────────────────────────────── */
.grid{display:grid;gap:20px}
.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}

.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card);
	padding:0 0 22px;overflow:hidden;display:flex;flex-direction:column}
.card__top{display:block;height:5px;background:var(--seg);margin-bottom:20px}
.card>h3,.card>p,.card>ul,.card>div:not(.card__top),.card>span:not(.card__top){padding-left:22px;padding-right:22px}
.card h3{font-size:19px;margin-bottom:9px}
.card p{color:var(--ink-2);font-size:16px;margin-bottom:0}
.card p+p{margin-top:12px}
.card--link{transition:border-color .2s ease,box-shadow .2s ease}
.card--link:hover{border-color:var(--green);box-shadow:var(--sh-card);color:inherit}
.card--link h3{color:var(--ink)}
.card__go{margin-top:auto;padding-top:16px;display:inline-flex;align-items:center;gap:6px;color:var(--green-dk);font-weight:700;font-size:15px}
.card__go svg{width:16px;height:16px;transition:transform .2s ease}
.card--link:hover .card__go svg{transform:translateX(3px)}

.fcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card);padding:24px}
.fcard__ic{width:44px;height:44px;border-radius:var(--r-sm);background:var(--green-tint);color:var(--green-dk);
	display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.fcard__ic svg{width:22px;height:22px}
.fcard h3{font-size:18px;margin-bottom:8px}
.fcard p{margin:0;color:var(--ink-2);font-size:16px}

/* ── Тарифы ───────────────────────────────────────────────── */
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.plan{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;display:flex;flex-direction:column}
.plan__top{height:5px;background:var(--seg)}
.plan--best{border-color:var(--green);box-shadow:var(--sh-card)}
.plan--best .plan__top{background:var(--green)}
.plan__b{padding:20px 22px 24px;display:flex;flex-direction:column;flex:1}
.plan__tag{display:inline-flex;align-self:flex-start;background:var(--gold);color:#fff;border-radius:var(--r);
	padding:4px 12px;font-size:12px;font-weight:700;margin-bottom:10px}
.plan__n{font-family:var(--f-head);font-weight:800;font-size:19px;margin-bottom:10px}
.plan__p{font-family:var(--f-head);font-weight:800;font-size:34px;line-height:1.1;color:var(--ink)}
.plan__old{color:var(--ink-3);text-decoration:line-through;font-size:16px;margin-left:8px;font-weight:500}
.pr__rub{display:block;font-family:var(--f-body);font-size:14px;font-weight:500;color:var(--ink-3);margin-top:2px}
.plan__per{font-size:14px;color:var(--green-dk);font-weight:700;margin:8px 0 0}
.plan__cy{font-size:14px;color:var(--ink-3);margin:6px 0 14px}
.plan__l{list-style:none;padding:0;margin:0 0 18px}
.plan__l li{display:flex;gap:9px;align-items:flex-start;font-size:15px;color:var(--ink-2);margin-bottom:8px}
.plan__l svg{width:16px;height:16px;color:var(--green);flex:0 0 auto;margin-top:4px}
.plan__note{font-size:14px;color:var(--ink-3);margin:0 0 18px}
.plan .btn{margin-top:auto}

/* ── Таблицы ──────────────────────────────────────────────── */
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-card);background:var(--panel)}
table{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
th,td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line-2);vertical-align:top}
th{font-family:var(--f-head);font-weight:700;font-size:14px;color:var(--ink);background:var(--green-tint);white-space:nowrap}
tr:last-child td{border-bottom:0}
td b{font-weight:700}

/* ── Шаги ─────────────────────────────────────────────────── */
.steps{list-style:none;padding:0;margin:0;counter-reset:s}
.steps li{counter-increment:s;position:relative;padding:0 0 26px 62px;margin:0}
.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:42px;height:42px;border-radius:50%;
	background:var(--green);color:#fff;font:800 18px/42px var(--f-head);text-align:center}
.steps li::after{content:"";position:absolute;left:20px;top:48px;bottom:6px;width:3px;border-radius:2px;
	background:repeating-linear-gradient(180deg,var(--line) 0 10px,transparent 10px 15px)}
.steps li:last-child{padding-bottom:0}
.steps li:last-child::after{display:none}
.steps h3{font-size:18px;margin-bottom:6px}
.steps p{margin:0;color:var(--ink-2);font-size:16px}

/* ── Отзывы ───────────────────────────────────────────────── */
.stars{position:relative;display:inline-flex;line-height:0;vertical-align:middle}
.stars__bg,.stars__fg{display:flex;gap:2px}
.stars__bg{color:var(--ink-3);opacity:.3}
.stars__fg{position:absolute;top:0;left:0;bottom:0;overflow:hidden;white-space:nowrap;color:var(--gold)}
.stars svg{width:var(--star-size,18px);height:var(--star-size,18px);flex-shrink:0;fill:currentColor;stroke:currentColor}

.score{display:flex;align-items:center;gap:22px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--line);
	border-radius:var(--r-card);padding:24px 26px;margin-bottom:28px}
.score__n{font-family:var(--f-head);font-weight:800;font-size:56px;line-height:1;color:var(--ink)}
.score__r{display:flex;flex-direction:column;gap:6px}
.score__c{font-size:15px;color:var(--ink-2);margin:0}

.crit{list-style:none;padding:0;margin:0}
.crit li{display:grid;grid-template-columns:260px 120px 1fr;gap:16px;align-items:center;
	padding:14px 0;border-bottom:1px solid var(--line-2);margin:0}
.crit li:last-child{border-bottom:0}
.crit__n{font-weight:700;font-size:16px}
.crit__v{font-family:var(--f-head);font-weight:800;font-size:18px;color:var(--green-dk)}
.crit__t{color:var(--ink-2);font-size:15px}

.voice{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;display:flex;flex-direction:column}
.voice__top{height:5px;background:var(--seg)}
.voice__b{padding:20px 22px 22px}
.voice__h{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.voice__tag{background:var(--green-tint);color:var(--green-dk);border-radius:var(--r);padding:4px 11px;font-size:12px;font-weight:700}
.voice p{color:var(--ink-2);font-size:16px;margin:0 0 14px}
.voice__who{font-family:var(--f-head);font-weight:700;font-size:15px;color:var(--ink)}

/* ── Аккордеон ────────────────────────────────────────────── */
.acc{border:1px solid var(--line);border-radius:var(--r-card);background:var(--panel);overflow:hidden}
.acc__i+.acc__i{border-top:1px solid var(--line-2)}
.acc__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
	background:none;border:0;padding:18px 22px;text-align:left;cursor:pointer;
	font:700 17px/1.4 var(--f-head);color:var(--ink)}
.acc__q svg{width:19px;height:19px;color:var(--green-dk);flex:0 0 auto;transition:transform .25s ease}
.acc__q[aria-expanded="true"] svg{transform:rotate(180deg)}
.acc__w{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}
.acc__q[aria-expanded="true"]+.acc__w{grid-template-rows:1fr}
.acc__a{overflow:hidden}
.acc__a p{padding:0 22px 20px;margin:0;color:var(--ink-2);font-size:16px}

/* ── Финальный блок ───────────────────────────────────────── */
.final{background:var(--ink);color:#fff;border-radius:var(--r-card);padding:40px 40px 44px;text-align:center;position:relative;overflow:hidden}
.final::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--seg)}
.final h2{color:#fff;margin-bottom:12px}
.final p{color:rgba(255,255,255,.76);max-width:620px;margin:0 auto 24px}
.final__btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.final .btn--ghost{color:#fff;border-color:rgba(255,255,255,.3)}
.final .btn--ghost:hover{background:rgba(255,255,255,.1);color:#fff;border-color:#fff}

/* ── Врезка ───────────────────────────────────────────────── */
.note{background:var(--green-tint);border-radius:var(--r-card);padding:20px 24px;margin:24px 0}
.note p{margin:0;color:var(--ink-2);font-size:16px}
.note p+p{margin-top:10px}
.note--warn{background:#fffbeb}

/* ── Хлебные крошки ───────────────────────────────────────── */
.crumbs{padding:16px 0 0;font-size:14px;color:var(--ink-3)}
.crumbs .wrap{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.crumbs span[aria-hidden]{color:var(--line)}
.crumbs__now{color:var(--ink-2)}

/* ── Заголовок страницы ───────────────────────────────────── */
.phead{padding:26px 0 12px}
.phead h1{margin-bottom:14px}

/* ── Иллюстрации ──────────────────────────────────────────────
   Кадры серии — PNG с прозрачным фоном, кроме akkaunt-qr.jpg.
   Прозрачным плашка и рамка не нужны: они лежат прямо на фоне
   секции. Ширина в CSS всегда меньше натуральной ширины файла,
   растягивать кадры нельзя. */

/* Кадр в шапке внутренней страницы: вторая колонка справа от
   заголовка. Правая половина .phead пустует по построению. */
.phead--img .phead__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);
	gap:36px;align-items:center}
.phead--img .phead__t{min-width:0}
.phead__i{display:block;width:100%;height:auto;justify-self:end}

/* Карта сети: во всю ширину колонки текста, но не шире файла. */
.figmap{display:block;width:100%;max-width:697px;height:auto;margin:0 auto 26px}

/* Кадр со сплошным белым фоном — единственный в серии. Рамка и
   радиус карточки нужны, чтобы белый прямоугольник не сходился
   встык с бумажным фоном секции. */
.figframe{display:block;width:100%;max-width:760px;height:auto;margin:24px auto 0;
	border:1px solid var(--line);border-radius:var(--r-card);background:var(--panel)}

/* Кадр на 404: закрывает стык между .phead и сеткой карточек. */
.e404{display:flex;justify-content:center;padding:14px 0 6px}
.e404__i{display:block;width:100%;max-width:360px;height:auto}

/* ── Подвал ───────────────────────────────────────────────── */
.foot{background:var(--panel);border-top:1px solid var(--line);padding:52px 0 30px;margin-top:10px}
.foot__g{display:grid;grid-template-columns:1.15fr 2fr;gap:40px;padding-bottom:30px;border-bottom:1px solid var(--line)}
.foot__brand{display:flex;align-items:center;gap:10px;font-family:var(--f-head);font-weight:800;font-size:20px;margin-bottom:12px}
.foot__brand b{color:var(--green-dk)}
.foot__m{display:block;width:32px;height:32px;border-radius:22%;flex:0 0 auto;
	box-shadow:0 0 0 1px rgba(38,38,38,.07)}
.foot__ab{color:var(--ink-3);font-size:15px;margin-bottom:18px}
.foot__c{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.foot__c h3{font-family:var(--f-head);font-size:14px;font-weight:700;margin-bottom:12px;color:var(--ink)}
.foot__c a{display:block;color:var(--ink-3);font-size:15px;margin-bottom:9px}
.foot__c a:hover{color:var(--green-dk)}
.foot__e{padding-top:22px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--ink-3);font-size:14px}

/* ── Мобильный CTA ────────────────────────────────────────── */
.mcta{display:none;position:fixed;left:0;right:0;bottom:0;z-index:45;background:rgba(251,252,251,.97);
	border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom))}

/* ── Появление блоков ─────────────────────────────────────── */
.rev{opacity:0;transform:translateY(20px);transition:opacity .55s ease,transform .55s cubic-bezier(.16,1,.3,1)}
.rev.is-in{opacity:1;transform:none}

/* ── Брейкпоинты (лестница офсайта) ───────────────────────── */
@media(max-width:1180px){
	.nav a{padding:8px 9px;font-size:14px}
}
@media(max-width:1023px){
	.nav{display:none}
	.burger{display:inline-flex}
	.top__cta{margin-left:0}
	.top__in{gap:10px}
	.hero__g{grid-template-columns:1fr;gap:28px}
	.hero__i{max-width:280px}
	.grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
	.foot__g{grid-template-columns:1fr;gap:28px}
	.crit li{grid-template-columns:1fr 80px;grid-template-areas:"n v" "t t";gap:6px 16px}
	.crit__n{grid-area:n}
	.crit__v{grid-area:v;text-align:right}
	.crit__t{grid-area:t}
	.phead--img .phead__g{grid-template-columns:1fr;gap:20px}
	.phead__i{justify-self:start;max-width:320px}
}
@media(max-width:819px){
	body{font-size:16px}
	.sec{padding:54px 0}
	.grid--3,.plans{grid-template-columns:1fr}
	.foot__c{grid-template-columns:repeat(2,minmax(0,1fr))}
	.final{padding:32px 24px 36px}
}
@media(max-width:700px){
	.grid--2{grid-template-columns:1fr}
	.facts__i{flex:1 1 45%;border-right:0;border-bottom:1px solid var(--line)}
	.facts__i:nth-child(odd){border-right:1px solid var(--line)}
	.mcta{display:block}
	body{padding-bottom:74px}
}
@media(max-width:540px){
	:root{--pad:16px}
	.grid--4{grid-template-columns:1fr}
	.drawer__g{grid-template-columns:1fr}
	.top__cta .btn{padding:9px 13px;font-size:13px}
	.score__n{font-size:44px}
	.steps li{padding-left:52px}
	.steps li::before{width:36px;height:36px;line-height:36px;font-size:16px}
	.steps li::after{left:17px;top:42px}
	.hero__i{max-width:230px}
	.phead__i{max-width:260px}
	.e404__i{max-width:280px}
}
@media(max-width:414px){
	.brand{font-size:17px}
	.brand__m{width:24px;height:24px}
	.hero__btns .btn{width:100%}
	.facts__i{flex:1 1 100%;border-right:0}
	.facts__i:nth-child(odd){border-right:0}
}
@media(max-width:360px){
	.top__cta .btn{padding:8px 11px;font-size:12px}
	.burger span:not(.burger__ic){display:none}
}

@media(prefers-reduced-motion:reduce){
	*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
	.rev{opacity:1;transform:none}
}
