/* =====================================================================
   MyPolza · Dolce Vita — дизайн-система редизайна
   Предпросмотр: главная с ?dv=1 (functions.php подключает этот файл).
   Правило: никакого курсива. Акцент — цветом и масштабом, не наклоном.
   ===================================================================== */
/* знак рубля: в наших подмножествах Manrope/Golos его нет, браузер брал системный шрифт */
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('assets/fonts/manrope-rub.woff2') format('woff2');unicode-range:U+20BD}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/fonts/manrope-rub.woff2') format('woff2');unicode-range:U+20BD}
:root{
  --linen:#FBF6EE; --sand:#F4ECDF; --ivory:#FFFDF8; --paper:#FFFFFF;
  --ink:#1D2A33; --text:#3B4750; --muted:#5B656D;
  --azure:#1877BD; --azure-d:#0F5E9A; --azure-soft:#E2EFFA; --navy:#0F2D4A;
  --lemon:#F1D14A; --lemon-d:#C99A12; --lemon-soft:#FBF4D2;
  --rose:#EBBCCF; --rose-soft:#F9E8EF; --lime:#E4E19A; --lime-soft:#F7F6DA; --peach:#F3C6A0; --peach-soft:#FCECDE;
  --line:#E7DCCB; --line-2:#DACDB8;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Golos Text",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --ui:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --r:18px; --r-lg:28px; --pill:999px; --maxw:1200px;
  --shadow:0 30px 70px rgba(29,42,51,.14); --shadow-sm:0 12px 30px rgba(29,42,51,.08);
  /* совместимость со старыми токенами (WooCommerce, отзывы, форма) */
  --cream:var(--linen); --cream-2:var(--ivory); --accent:var(--lemon); --accent-ink:var(--azure);
  --accent-soft:var(--azure-soft); --rose-bg:var(--sand); --green-soft:var(--lime-soft);
}

/* ---------- база ---------- */
body.dv{background:var(--linen);color:var(--text);font-family:var(--sans)}
.dv em,.dv i,.dv cite,.dv blockquote{font-style:normal}
.dv h1,.dv h2{font-family:var(--serif);font-weight:600;letter-spacing:-.005em;color:var(--ink);line-height:1.02}
.dv h1{font-size:clamp(44px,5.1vw,74px)}
.dv h1,.dv h2{text-wrap:balance}
.dv h2{font-size:clamp(38px,4.8vw,62px)}
.dv h3{font-family:var(--ui);font-weight:700;letter-spacing:-.01em;color:var(--ink);line-height:1.2}
.dv .hl{color:var(--azure)}
.dv .lead{color:var(--text);font-size:clamp(17px,1.6vw,20px);line-height:1.6}
.dv .eyebrow{font-family:var(--ui);font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--azure);gap:10px}
.dv .eyebrow::before{content:"";width:16px;height:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3.4' fill='%23F1D14A'/%3E%3Cg stroke='%23C99A12' stroke-width='1.3' stroke-linecap='round'%3E%3Cpath d='M8 1v2M8 13v2M1 8h2M13 8h2M3 3l1.4 1.4M11.6 11.6L13 13M13 3l-1.4 1.4M4.4 11.6L3 13'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
.dv section{padding:clamp(60px,7.4vw,116px) 0;position:relative}
.dv .sec-head{max-width:780px;margin:0 auto clamp(32px,4.2vw,56px)}
.dv .sec-head h2{margin-top:14px}
.dv .sec-head .lead{margin:16px auto 0}

/* ---------- кнопки ---------- */
.dv .btn{font-family:var(--ui);font-weight:700;font-size:15.5px;padding:16px 28px}
.dv .btn-primary{background:var(--ink);color:#fff;border-color:var(--ink)}
.dv .btn-primary:hover{background:var(--azure-d);border-color:var(--azure-d)}
.dv .btn-ghost{background:rgba(255,253,248,.72);border-color:var(--line-2);color:var(--ink);backdrop-filter:blur(6px)}
.dv .btn-ghost:hover{border-color:var(--ink)}
.dv .btn-lemon{background:var(--lemon);color:var(--ink);border-color:var(--lemon)}
.dv .btn-lemon:hover{background:#F6DC6A}

/* ---------- шапка / подвал ---------- */
.dv .site-header{background:rgba(251,246,238,.84);border-bottom:1px solid var(--line)}
.dv .brand{font-family:var(--serif);font-size:31px;font-weight:600;letter-spacing:0;color:var(--ink)}
.dv .brand b{color:var(--azure);font-weight:600}
.dv .nav a{font-family:var(--ui);font-size:14px;font-weight:600;color:var(--text)}
.dv .nav a:hover{color:var(--azure)}
.dv .hdr-phone{font-family:var(--ui)}
.dv .hdr-cart .cart-count{background:var(--azure)}
.dv .site-footer{background:var(--navy);color:#AEBCC6;border-top:0}
.dv .site-footer h3,.dv .foot-brand{color:#fff}
.dv .foot-brand{font-family:var(--serif);font-size:32px}
.dv .foot-brand span{color:var(--lemon)!important}
.dv .site-footer a{color:#C9D4DC}.dv .site-footer a:hover{color:var(--lemon)}
.dv .foot-req{color:#93A4B0}
.dv .foot-bottom{border-color:rgba(255,255,255,.12);color:#93A4B0}

/* ---------- фирменные мотивы ---------- */
/* майолика: тонкая лента плитки */
.tiles{height:30px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Crect width='60' height='60' fill='%23FFFDF8'/%3E%3Cg fill='none' stroke='%231877BD' stroke-width='2'%3E%3Ccircle cx='30' cy='30' r='12'/%3E%3Cpath d='M30 9c5 7 5 13 0 21c-5-8-5-14 0-21zM30 51c5-7 5-13 0-21c-5 8-5 14 0 21zM9 30c7-5 13-5 21 0c-8 5-14 5-21 0zM51 30c-7-5-13-5-21 0c8 5 14 5 21 0z'/%3E%3C/g%3E%3Ccircle cx='30' cy='30' r='4.5' fill='%23F1D14A'/%3E%3Cpath fill='%231877BD' d='M0 0h10a10 10 0 0 1-10 10zM60 0v10a10 10 0 0 1-10-10zM0 60v-10a10 10 0 0 1 10 10zM60 60h-10a10 10 0 0 1 10-10z'/%3E%3C/svg%3E") repeat-x center/30px 30px;border-top:1px solid var(--azure-soft);border-bottom:1px solid var(--azure-soft)}
/* маркиза: полосатый навес с фестонами */
.awning{height:46px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 68 46'%3E%3Cpath d='M0 0H34V28A17 17 0 0 1 0 28Z' fill='%231877BD'/%3E%3Cpath d='M34 0H68V28A17 17 0 0 1 34 28Z' fill='%23FFFFFF'/%3E%3C/svg%3E") repeat-x 0 0/68px 46px;filter:drop-shadow(0 7px 8px rgba(29,42,51,.14));position:relative;z-index:3}
/* солнечные тени листвы */
.leafy::after{content:"";position:absolute;inset:0;background:url("assets/dv/dv-shadow.webp") center/cover no-repeat;mix-blend-mode:multiply;opacity:.3;pointer-events:none;z-index:0}
.leafy>.wrap{position:relative;z-index:1}
/* бегущая строка */
.marq{background:var(--azure);color:#fff;overflow:hidden;padding:16px 0}
.marq.lemon{background:var(--lemon);color:var(--ink)}
.marq-track{display:flex;width:max-content;animation:dvmarq 42s linear infinite}
.marq span{font-family:var(--serif);font-size:25px;font-weight:600;white-space:nowrap;padding:0 24px;display:inline-flex;align-items:center;gap:24px}
.marq span::after{content:"✦";color:var(--lemon);font-size:15px}
.marq.lemon span::after{color:var(--azure)}
@keyframes dvmarq{to{transform:translateX(-50%)}}

/* ---------- HERO: крупные пачки ---------- */
.dvh{padding:0!important;min-height:min(92vh,840px);display:flex;align-items:center;overflow:hidden;background:var(--linen)}
.dvh-img{position:absolute;top:0;right:0;bottom:0;left:17%;z-index:0;margin:0}
.dvh-img img{width:100%;height:100%;object-fit:cover;object-position:68% center}
.dvh::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,var(--linen) 0%,var(--linen) 17%,rgba(251,246,238,.92) 26%,rgba(251,246,238,.55) 38%,rgba(251,246,238,0) 50%)}
.dvh .wrap{position:relative;z-index:2;width:100%}
.dvh-txt{max-width:480px;padding:64px 0}
.dvh-seal{width:108px;height:108px;margin-bottom:10px;filter:drop-shadow(0 8px 18px rgba(29,42,51,.14))}
.dvh h1{margin:18px 0 20px}
.dvh .lead{max-width:31em}
.dvh-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.dvh-tastes{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.taste{display:inline-flex;align-items:center;gap:9px;padding:9px 16px 9px 10px;border-radius:var(--pill);background:rgba(255,253,248,.82);border:1px solid var(--line);font-family:var(--ui);font-size:13.5px;font-weight:700;color:var(--ink);backdrop-filter:blur(6px);transition:.2s}
.taste:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.taste i{width:18px;height:18px;border-radius:50%;display:block;box-shadow:inset 0 -2px 4px rgba(0,0,0,.08)}
.taste.reg i{background:var(--rose)} .taste.avn i{background:var(--lime)} .taste.aen i{background:var(--peach)}

/* ---------- СОСТАВ ---------- */
.dvs{background:var(--sand)}
.dvs-stat{display:flex;align-items:flex-start;justify-content:center;gap:clamp(16px,3vw,40px);margin:4px auto clamp(36px,4.6vw,60px);flex-wrap:wrap;text-align:center}
/* у Cormorant цифры старостильные: 2, 5, запятая уходят под базовую линию.
   При line-height .9 хвосты наезжали на подпись, поэтому строка не сжимается ниже 1.02 + запас снизу */
.dvs-stat b{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(66px,9vw,124px);line-height:1.02;padding-bottom:.06em;color:var(--azure)}
.dvs-stat .eq{font-family:var(--serif);font-size:clamp(44px,5.4vw,76px);line-height:1.1;color:var(--lemon-d)}
.dvs-stat small{display:block;font-family:var(--ui);font-size:12px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:14px}
/* расшифровка «2,5 г ≈ 14 г» */
.dvs-calc{max-width:720px;margin:-8px auto clamp(40px,5vw,64px);background:rgba(255,253,248,.9);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px clamp(20px,3.4vw,36px) 28px;box-shadow:var(--shadow-sm);backdrop-filter:blur(4px)}
.dvs-calc-h{display:flex;align-items:center;gap:14px;font-family:var(--ui);font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--ink);padding-bottom:14px;border-bottom:1px solid var(--line)}
.dvs-calc-h span{font-size:20px;letter-spacing:0;color:var(--lemon-d);line-height:1}
.dvs-calc-row{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:16px;color:var(--text)}
.dvs-calc-row .eq{text-align:center;color:var(--muted);font-family:var(--ui)}
.dvs-calc-row b{text-align:right;font-family:var(--ui);font-weight:700;color:var(--ink);font-variant-numeric:lining-nums}
.dvs-calc-sum{margin-top:20px;font-family:var(--serif);font-weight:600;font-size:clamp(26px,3vw,34px);line-height:1.15;color:var(--ink)}
.dvs-calc-sum b{color:var(--azure);font-weight:700}
@media(max-width:560px){.dvs-calc-row{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);font-size:14.5px}}
.feat{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.fcard{background:var(--ivory);border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 26px;transition:.3s}
.fcard:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.fcard svg{width:74px;height:74px;margin-bottom:18px;display:block}
.fcard h3{font-size:19px;margin-bottom:8px}
.fcard p{font-size:15px;color:var(--muted);line-height:1.55}

/* ---------- ТЕХНОЛОГИЯ ---------- */
.dvt{background:var(--ivory)}
.dvt-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(30px,5vw,72px);align-items:center}
.dvt-img{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);position:relative;margin:0}
.dvt-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.dvt-img figcaption{position:absolute;left:18px;bottom:18px;background:rgba(255,253,248,.9);backdrop-filter:blur(6px);padding:9px 14px;border-radius:12px;font-family:var(--ui);font-size:11.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}
.dvt h2{margin:14px 0 0}
.quote{margin:26px 0 22px;padding:4px 0 4px 22px;border-left:3px solid var(--lemon)}
.quote p{font-family:var(--serif);font-size:clamp(25px,2.4vw,33px);line-height:1.18;color:var(--ink);font-weight:500}
.quote cite{display:block;margin-top:10px;font-family:var(--ui);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--azure);font-weight:800}
.dvt-txt>p{color:var(--text);font-size:16.5px;line-height:1.65}
.duo{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.duo span{display:inline-flex;gap:8px;align-items:center;padding:9px 15px;border-radius:var(--pill);background:var(--azure-soft);color:var(--azure-d);font-family:var(--ui);font-size:13.5px;font-weight:700}
.steps4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:clamp(42px,5vw,66px)}
.st{background:var(--linen);border:1px solid var(--line);border-radius:var(--r);padding:26px 22px}
.st .n{font-family:var(--serif);font-size:46px;font-weight:600;color:var(--azure);line-height:1.1}
.st h3{font-size:16.5px;margin:10px 0 6px}
.st p{font-size:14.5px;color:var(--muted);line-height:1.5}

/* ---------- ФАКТЫ (ночная Ривьера) ---------- */
.dvf{background:radial-gradient(1100px 480px at 88% -12%,rgba(241,209,74,.22),transparent 60%),linear-gradient(180deg,#0F2D4A,#123A5E);color:#E9F0F6}
.dvf h2{color:#fff}.dvf .eyebrow{color:var(--lemon)}.dvf .lead{color:#C9D8E4}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.12);border-radius:var(--r-lg);overflow:hidden;border:1px solid rgba(255,255,255,.12)}
.fact{background:#113352;padding:32px 26px;transition:background .3s;container-type:inline-size;min-width:0}
.fact:hover{background:#15406A}
/* значение всегда в одну строку: размер от ширины карточки (22cqi ≈ «35-50 °C» во всю ширину) */
.fact b{display:block;font-family:var(--ui);font-weight:800;font-size:clamp(28px,3.3vw,50px);font-size:min(54px,22cqi);letter-spacing:-.025em;line-height:1;color:var(--lemon);white-space:nowrap;font-variant-numeric:lining-nums}
.fact span{display:block;margin-top:12px;font-size:14.5px;line-height:1.5;color:#D6E2EC}
.fact small{display:block;margin-top:8px;font-size:12px;color:#9DB5C9;line-height:1.45}
.dvf .src{margin-top:22px;font-size:12.5px;color:#9DB5C9;text-align:center}

/* ---------- сравнение и аминокислоты (переопределения) ---------- */
.dv #compare{background:var(--linen)}
.dv .cmp{background:var(--ivory);border-color:var(--line)}
.dv .cmp thead th{background:var(--azure-soft);font-family:var(--ui)}
.dv .cmp thead th.us{color:var(--azure-d)}
.dv .cmp td.us{background:#FFF9E6}
.dv .cmp td.ok{color:#2D7650}
.dv #amino{background:url("assets/dv/dv-pearl.webp") center/cover no-repeat}
.dv #amino::before{content:"";position:absolute;inset:0;background:rgba(251,246,238,.84)}
.dv #amino>.wrap{position:relative;z-index:1}
.dv .amino-wrap{background:var(--ivory);box-shadow:var(--shadow-sm)}
.dv table.amino tr.peptide{background:var(--lemon-soft)}
.dv table.amino tr.peptide th{color:var(--azure-d)}

/* ---------- ПРОДУКТЫ ---------- */
.dvp{background:var(--linen);padding-top:clamp(40px,5vw,72px)!important}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.pc{background:var(--ivory);border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);display:flex;flex-direction:column;transition:.35s}
.pc:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.pc-img{aspect-ratio:4/5;overflow:hidden;position:relative;margin:0}
.pc-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.pc:hover .pc-img img{transform:scale(1.04)}
.pc-tag{position:absolute;top:16px;left:16px;padding:8px 14px;border-radius:var(--pill);background:rgba(255,253,248,.92);font-family:var(--ui);font-size:11.5px;font-weight:800;letter-spacing:.16em;color:var(--ink)}
.pc-body{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1}
.pc.reg .pc-body{background:linear-gradient(180deg,var(--rose-soft),var(--ivory) 72%)}
.pc.avn .pc-body{background:linear-gradient(180deg,var(--lime-soft),var(--ivory) 72%)}
.pc.aen .pc-body{background:linear-gradient(180deg,var(--peach-soft),var(--ivory) 72%)}
.pc h3{font-family:var(--ui);font-weight:800;font-size:27px;letter-spacing:.06em;line-height:1.05;text-transform:uppercase}
.pc h3 .pn-c{color:var(--azure)}
.pc-purpose{font-family:var(--ui);font-weight:700;color:var(--ink);margin:8px 0 12px;font-size:16px}
.flav{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--text);margin-bottom:16px}
.flav i{width:12px;height:12px;border-radius:50%}
.pc.reg .flav i{background:#D98BAB}.pc.avn .flav i{background:#C9C247}.pc.aen .flav i{background:#E7A46C}
.dv .p-list li::before{border-color:var(--azure)}
.pc .p-price{font-family:var(--ui);font-size:34px;font-weight:800;letter-spacing:-.02em;color:var(--ink);line-height:1;font-variant-numeric:lining-nums;white-space:nowrap}
.pc .p-price .rub{font:inherit;letter-spacing:0;margin-left:.14em;position:static}
.pc .p-price small{font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:0;color:var(--muted);margin-left:4px}
.pc .p-meta{margin:6px 0 16px}
.dv .p-consult:hover{color:var(--azure)}
.dv .p-card a.ajax_add_to_cart.added{background:var(--azure-d)}
.dv .disclaimer{background:var(--ivory)}

/* обязательные сведения о товаре в карточке */
.specs{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.specs>summary{list-style:none;cursor:pointer;font-family:var(--ui);font-size:13px;font-weight:700;color:var(--azure);display:flex;align-items:center;gap:6px}
.specs>summary::-webkit-details-marker{display:none}
.specs>summary::after{content:"▾";font-size:10px}
.specs[open]>summary::after{content:"▴"}
.specs dl{margin:12px 0 0;display:grid;gap:9px}
.specs dt{font-family:var(--ui);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.specs dd{margin:3px 0 0;font-size:14.5px;line-height:1.5;color:var(--text);overflow-wrap:anywhere}

/* ---------- РИТУАЛ ---------- */
.dvr{background:var(--lemon-soft)}
.dvr-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1fr);gap:clamp(30px,5vw,72px);align-items:center}
.dvr-img{margin:0}
.dvr-img img{border-radius:var(--r-lg);box-shadow:var(--shadow);aspect-ratio:4/5;object-fit:cover;width:100%}
.rsteps{list-style:none;counter-reset:s;margin:26px 0 22px;display:grid;gap:12px}
.rsteps li{display:flex;gap:16px;align-items:center;background:rgba(255,253,248,.8);border:1px solid var(--line);border-radius:var(--r);padding:14px 18px}
.rsteps li::before{counter-increment:s;content:counter(s);flex:0 0 42px;height:42px;border-radius:50%;background:var(--ink);color:var(--lemon);font-family:var(--ui);font-size:17px;font-weight:800;line-height:1;font-variant-numeric:lining-nums tabular-nums;display:flex;align-items:center;justify-content:center}
.rsteps b{display:block;font-family:var(--ui);color:var(--ink);font-size:16px}
.rsteps span{font-size:14.5px;color:var(--muted)}
.dose{margin:22px 0 4px;background:rgba(255,253,248,.86);border:1px solid var(--line);border-radius:var(--r);padding:20px 22px}
.dose-h{font-family:var(--ui);font-size:12px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.dose-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.dose-grid>div{min-width:0}
.dose-grid b{display:block;font-family:var(--ui);font-weight:800;font-size:clamp(22px,2.2vw,30px);line-height:1;letter-spacing:-.02em;color:var(--azure);font-variant-numeric:lining-nums}
.dose-grid span{display:block;margin-top:7px;font-size:14px;line-height:1.4;color:var(--muted)}
.dose-note{margin-top:16px;font-size:15px;line-height:1.55;color:var(--text)}
@media(max-width:560px){.dose-grid{grid-template-columns:1fr;gap:14px}.dose-grid b{font-size:22px}.dose-grid span{margin-top:4px}}
.dv .mark{background:var(--ivory)}

/* ---------- отзывы, форма ---------- */
.dv #reviews{background:var(--sand)}
.dv .rev-card{background:var(--ivory)}
.dv .rev-card blockquote::before{color:var(--lemon-d);opacity:1}
.dv .rev-ava{background:linear-gradient(135deg,#3796DD,#0F5E9A)}
.dv .rev-name{color:var(--azure)}
.dv .rc-nav{color:var(--azure)}
.dv #zayavka{background:linear-gradient(180deg,var(--linen),var(--peach-soft))}
.dv .form-wrap{background:var(--ivory)}
.dv .consent a,.dv .form-note a{color:var(--azure)}

/* ---------- ЖИВЫЕ КАДРЫ (видео) ---------- */
.dve{background:var(--ivory)}
.ev-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.ev{position:relative;display:block;width:100%;padding:0;border:6px solid var(--paper);border-radius:24px;overflow:hidden;background:var(--navy);aspect-ratio:9/16;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .35s,box-shadow .35s}
.ev:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.ev:focus-visible{outline:3px solid var(--azure);outline-offset:3px}
.ev video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ev::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,45,74,0) 58%,rgba(15,45,74,.5));pointer-events:none}
.ev-play{position:absolute;left:12px;bottom:12px;z-index:1;width:44px;height:44px;border-radius:50%;background:var(--lemon);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 18px rgba(0,0,0,.22);transition:transform .25s}
.ev:hover .ev-play{transform:scale(1.08)}
.ev-play svg{width:15px;height:15px;margin-left:3px;fill:var(--ink)}
.ev-note{margin-top:18px;text-align:center;font-family:var(--ui);font-size:13px;font-weight:700;color:var(--muted)}
.ev-lb{position:fixed;inset:0;z-index:1000;background:rgba(9,26,43,.93);display:flex;align-items:center;justify-content:center;padding:20px}
.ev-lb[hidden]{display:none!important}
.ev-lb video{max-height:88vh;max-width:min(92vw,520px);width:auto;border-radius:18px;background:#000}
.ev-lb button{position:absolute;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:30px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.ev-lb button:hover{background:var(--lemon);color:var(--ink)}
.ev-lb .ev-x{top:18px;right:18px}
.ev-lb .ev-prev{left:18px;top:50%;transform:translateY(-50%)}
.ev-lb .ev-next{right:18px;top:50%;transform:translateY(-50%)}
@media(max-width:900px){
  .ev-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:4px 16px 16px;scrollbar-width:none}
  .ev-track::-webkit-scrollbar{display:none}
  .ev{flex:0 0 min(58%,260px);scroll-snap-align:center}
  .ev:hover{transform:none}
  .ev-lb .ev-prev,.ev-lb .ev-next{top:auto;bottom:18px;transform:none}
}

/* ---------- появление при прокрутке ---------- */
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.marq-track{animation:none}.js .rv{opacity:1;transform:none;transition:none}}

/* ---------- адаптив ---------- */
@media(max-width:1000px){
  .feat,.steps4,.facts{grid-template-columns:repeat(2,1fr)}
  .pgrid{grid-template-columns:1fr;max-width:520px;margin:0 auto}
  .dvt-grid,.dvr-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
  .dvh{display:block;min-height:0}
  .dvh::before{display:none}
  .dvh-img{position:relative;inset:auto;aspect-ratio:4/3}
  .dvh-img img{object-position:80% center}
  .dvh-txt{padding:30px 0 46px}
  .dvh-seal{display:none}
}
@media(max-width:560px){
  .feat,.steps4{grid-template-columns:1fr}
  .fact{padding:24px 18px}
  .marq span{font-size:21px}
  .dv .btn{padding:15px 22px}
  .dvh-cta .btn{flex:1 1 auto}
}
