/* ===========================================================
   DestonLove — dark + pink + glassmorphism
   =========================================================== */
:root{
  --bg-0:#08060d;
  --bg-1:#0f0a18;
  --bg-2:#160d22;
  --ink:#f5e9ff;
  --ink-2:#c8b6e0;
  --muted:#8d7aa8;
  --line:rgba(255,255,255,.10);
  --line-2:rgba(255,255,255,.06);
  --pink:#ff2e8a;
  --pink-2:#ff5fb1;
  --pink-3:#ffaad4;
  --magenta:#c026d3;
  --grad-pink:linear-gradient(135deg,#ff2e8a 0%,#ff5fb1 50%,#c026d3 100%);
  --grad-glow:linear-gradient(135deg,rgba(255,46,138,.30) 0%,rgba(192,38,211,.20) 100%);
  --shadow-pink:0 18px 60px rgba(255,46,138,.28);
  --shadow-deep:0 24px 80px rgba(0,0,0,.50);
  --glass-bg:rgba(20,12,32,.55);
  --glass-bd:rgba(255,255,255,.10);
  --r-1:14px;
  --r-2:22px;
  --r-3:32px;
}
*{box-sizing:border-box}
html,body{
  margin:0;padding:0;background:var(--bg-0);color:var(--ink);
  font-family:'Inter','Segoe UI',-apple-system,sans-serif;
  font-size:16px;line-height:1.62;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:var(--pink-2);text-decoration:none;transition:color .2s ease}
a:hover{color:var(--pink-3)}
.wrap,.container{width:100%;max-width:1180px;margin:0 auto;padding:0 24px}
h1,h2,h3,h4{font-family:'Playfair Display','Georgia',serif;font-weight:600;line-height:1.18;color:var(--ink);margin:0 0 14px;letter-spacing:-.01em}
h1{font-size:62px;letter-spacing:-1.5px}
h2{font-size:42px;letter-spacing:-.6px}
h3{font-size:24px}
em{font-style:italic;background:var(--grad-pink);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
p{color:var(--ink-2);font-size:17px;margin:0 0 14px}
.muted{color:var(--muted)}
.small{font-size:13px}


/* ============== Animated background ============== */
.bg-deep{
  position:fixed;inset:0;z-index:-3;pointer-events:none;
  background:
    radial-gradient(1200px 600px at 12% 8%, rgba(255,46,138,.18), transparent 60%),
    radial-gradient(1000px 500px at 88% 25%, rgba(192,38,211,.16), transparent 65%),
    radial-gradient(900px 600px at 50% 100%, rgba(255,95,177,.10), transparent 60%),
    linear-gradient(180deg,#08060d 0%,#0f0a18 50%,#08060d 100%);
}
.bg-grain{
  position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.04;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence baseFrequency='0.9' numOctaves='2' seed='5'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
}
.bg-orbs{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.bg-orbs span{
  position:absolute;border-radius:50%;
  background:var(--grad-pink);
  filter:blur(80px);opacity:.18;
  animation:orbFloat 18s ease-in-out infinite;
}
.bg-orbs span:nth-child(1){width:380px;height:380px;top:-100px;left:-80px;animation-duration:22s}
.bg-orbs span:nth-child(2){width:320px;height:320px;top:50%;right:-100px;animation-duration:26s;animation-delay:-8s;background:linear-gradient(135deg,#c026d3,#ff5fb1)}
.bg-orbs span:nth-child(3){width:260px;height:260px;bottom:-50px;left:30%;animation-duration:30s;animation-delay:-15s}
@keyframes orbFloat{
  0%,100%{transform:translate(0,0) scale(1)}
  33%   {transform:translate(40px,-30px) scale(1.05)}
  66%   {transform:translate(-25px,35px) scale(.95)}
}

/* ============== Falling hearts background ============== */
.heart-rain{
  position:fixed;inset:0;z-index:0;
  pointer-events:none;overflow:hidden;
}
.heart-rain .h{
  position:absolute;top:-60px;
  left:var(--x, 50%);
  width:var(--size, 18px);height:var(--size, 18px);
  opacity:0;
  animation:heartFall var(--dur, 12s) linear var(--delay, 0s) infinite;
  transform:translateZ(0);
  will-change:transform, opacity;
  filter:drop-shadow(0 0 12px rgba(255,46,138,.55));
}
.heart-rain .h svg{width:100%;height:100%;display:block}
.heart-rain .h svg path{fill:var(--c, #ff2e8a)}
@keyframes heartFall{
  0%   {transform:translate3d(0,-10vh,0) rotate(var(--r0,-15deg)) scale(var(--scale,1));opacity:0}
  10%  {opacity:var(--op,.85)}
  50%  {transform:translate3d(var(--sway,40px),50vh,0) rotate(var(--r1,15deg)) scale(var(--scale,1))}
  90%  {opacity:var(--op,.85)}
  100% {transform:translate3d(calc(var(--sway,40px) * -1),110vh,0) rotate(var(--r0,-15deg)) scale(var(--scale,1));opacity:0}
}
@media (prefers-reduced-motion: reduce){
  .heart-rain{display:none}
}

/* ============== Header (sticky glass) ============== */
.site-head{
  position:sticky;top:0;z-index:50;
  background:rgba(15,10,24,.72);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  border-bottom:1px solid var(--line);
}
.site-head .row{display:flex;align-items:center;justify-content:space-between;gap:18px;height:72px}
.brand{display:flex;align-items:center;gap:11px;color:var(--ink)}
.brand:hover{color:var(--ink)}
.brand-mark{
  width:42px;height:42px;border-radius:12px;
  background:var(--grad-pink);
  display:grid;place-items:center;color:#fff;
  box-shadow:var(--shadow-pink);
  position:relative;overflow:hidden;
}
.brand-mark svg{width:24px;height:24px;display:block;position:relative;z-index:2}
.brand-mark svg path{fill:#fff}
.brand-mark::after{
  content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;
  background:linear-gradient(110deg,transparent,rgba(255,255,255,.30),transparent);
  animation:shine 4s infinite;z-index:1;
}
@keyframes shine{0%,100%{left:-100%}50%{left:100%}}
.brand-name{font-family:'Playfair Display',serif;font-size:22px;font-weight:600;line-height:1}
.brand-name small{display:block;font-family:'Inter',sans-serif;font-size:11px;color:var(--muted);margin-top:3px;letter-spacing:.7px;text-transform:uppercase}
.menu{display:flex;align-items:center;gap:22px}
.menu a{color:var(--ink-2);font-size:14.5px;transition:color .15s ease}
.menu a:hover{color:var(--pink-2)}
.tag-18{display:inline-block;font-size:11px;font-weight:700;color:var(--pink);border:1px solid var(--pink);padding:3px 9px;border-radius:7px;background:rgba(255,46,138,.10)}
.btn-set{display:flex;gap:10px;align-items:center}
.burger{display:none;background:none;border:none;font-size:26px;color:var(--ink);cursor:pointer;padding:6px 8px}


/* ============== Buttons ============== */
.b{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 24px;border-radius:var(--r-1);
  font-weight:600;font-size:15px;cursor:pointer;
  border:1px solid transparent;font-family:inherit;white-space:nowrap;
  transition:transform .15s ease, box-shadow .2s ease, background .2s ease;
}
.b:hover{transform:translateY(-2px)}
.b-primary{background:var(--grad-pink);color:#fff;box-shadow:var(--shadow-pink)}
.b-primary:hover{box-shadow:0 24px 80px rgba(255,46,138,.45);color:#fff}
.b-ghost{background:rgba(255,255,255,.06);color:var(--ink);border-color:var(--line)}
.b-ghost:hover{background:rgba(255,46,138,.10);border-color:var(--pink)}
.b-glass{
  background:var(--glass-bg);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  color:var(--ink);border-color:var(--glass-bd);
}
.b-glass:hover{border-color:var(--pink-2)}
.b-lg{padding:16px 30px;font-size:16px}
.b-sm{padding:9px 16px;font-size:13.5px}
.b-block{display:flex;width:100%}

/* ============== Hero ============== */
.hero{
  padding:80px 0 70px;position:relative;
  background:url('/hero-bg.jpg') center/cover no-repeat fixed;
}
.hero::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(10,5,20,.70) 0%,rgba(10,5,20,.85) 100%);
  z-index:0;
}
.hero>.container{position:relative;z-index:1}
.hero .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}
.label{
  display:inline-block;font-size:12px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--pink);
  padding:7px 14px;border-radius:99px;
  background:rgba(255,46,138,.12);
  border:1px solid rgba(255,46,138,.30);
  margin-bottom:18px;
}
.hero h1{font-size:62px;letter-spacing:-1.5px;margin-bottom:22px}
.lead{font-size:18px;color:var(--ink-2);margin-bottom:30px;max-width:560px;line-height:1.65}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:38px}
.bullets{display:grid;grid-template-columns:repeat(3,auto);gap:36px}
.bullets .b-num{
  font-family:'Playfair Display',serif;font-size:38px;font-weight:600;line-height:1;
  background:var(--grad-pink);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.bullets .b-lbl{font-size:13px;color:var(--muted);margin-top:7px;letter-spacing:.3px}

/* ============== Realistic iPhone (3D-look, tilted, animated) ============== */
.phones-stage{position:relative;height:600px;perspective:1600px;transform-style:preserve-3d}

.phone-frame{
  position:absolute;width:260px;height:540px;
  background:linear-gradient(135deg,#1a1820 0%,#2a2730 50%,#0f0d14 100%);
  border-radius:46px;padding:10px;
  box-shadow:
    0 30px 80px rgba(0,0,0,.65),
    0 0 0 2px #0a0810,
    inset 0 0 0 2px rgba(255,255,255,.06),
    inset 0 2px 6px rgba(255,255,255,.10),
    inset 0 -2px 6px rgba(0,0,0,.40),
    0 0 60px rgba(255,46,138,.18);
}

/* Боковые кнопки iPhone */
.phone-frame .btn-mute,
.phone-frame .btn-vol-up,
.phone-frame .btn-vol-down,
.phone-frame .btn-power{
  position:absolute;background:linear-gradient(90deg,#0a0810 0%,#1a1820 60%,#0a0810 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), inset 0 -1px 0 rgba(0,0,0,.6);
  z-index:0;
}
.phone-frame .btn-mute    {left:-3px;top:90px; width:4px;height:30px;border-radius:2px 0 0 2px}
.phone-frame .btn-vol-up  {left:-3px;top:140px;width:4px;height:50px;border-radius:2px 0 0 2px}
.phone-frame .btn-vol-down{left:-3px;top:200px;width:4px;height:50px;border-radius:2px 0 0 2px}
.phone-frame .btn-power   {right:-3px;top:130px;width:4px;height:80px;border-radius:0 2px 2px 0}

.phone-screen{
  position:relative;width:100%;height:100%;
  background:#000;
  border-radius:36px;overflow:hidden;
  display:flex;flex-direction:column;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}

/* Glass shine на экране */
.phone-screen::after{
  content:'';position:absolute;inset:0;pointer-events:none;border-radius:36px;
  background:linear-gradient(115deg, rgba(255,255,255,.08) 0%, transparent 25%, transparent 75%, rgba(255,255,255,.04) 100%);
  z-index:5;
}

/* Dynamic Island */
.phone-notch{
  position:absolute;top:8px;left:50%;transform:translateX(-50%);
  width:96px;height:26px;background:#000;border-radius:14px;z-index:3;
  box-shadow:0 1px 3px rgba(0,0,0,.5), inset 0 0 0 1px #1a1820;
}
.phone-notch::before{
  content:'';position:absolute;left:14px;top:50%;transform:translateY(-50%);
  width:7px;height:7px;border-radius:50%;background:#1a1a25;
  box-shadow:inset 0 0 0 1.5px #0a0810, 0 0 4px rgba(50,80,255,.25);
}
.phone-notch::after{
  content:'';position:absolute;right:14px;top:50%;transform:translateY(-50%);
  width:6px;height:6px;border-radius:50%;background:#0a0810;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}

/* Внутренняя iMessage-like разметка */
.phone-bar{
  display:flex;justify-content:space-between;align-items:center;
  padding:14px 24px 0;font-size:13px;color:#fff;font-weight:600;
  position:relative;z-index:2;height:44px;
}
.phone-time{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}
.phone-icons{display:flex;align-items:center;gap:5px}
.phone-icons .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#34c759;box-shadow:0 0 8px rgba(52,199,89,.7)}

.phone-head{
  display:flex;align-items:center;gap:11px;
  padding:14px 18px 12px;
  background:rgba(28,28,32,.85);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(255,255,255,.08);
  position:relative;z-index:2;
}
.phone-ava{
  width:40px;height:40px;border-radius:50%;
  display:grid;place-items:center;
  font-family:'Playfair Display',serif;font-weight:700;font-size:18px;color:#fff;flex-shrink:0;
  box-shadow:0 2px 8px rgba(0,0,0,.40);
}
.phone-ava.ava-f{background:linear-gradient(135deg,#ff2e8a,#c026d3)}
.phone-ava.ava-m{background:linear-gradient(135deg,#5b8def,#3a5ec9)}
.phone-name{font-size:14px;font-weight:600;color:#fff;line-height:1.2}
.phone-status{font-size:11px;color:rgba(255,255,255,.55);margin-top:3px}

.phone-msgs{
  flex:1;min-height:0;padding:14px 12px 18px;display:flex;flex-direction:column;gap:7px;
  overflow-y:auto;overflow-x:hidden;background:#000;
  justify-content:flex-end;
}
.msg{
  max-width:78%;padding:8px 12px;border-radius:18px;
  font-size:13px;line-height:1.4;
  font-family:-apple-system,'Inter',sans-serif;
  word-wrap:break-word;
  animation:msgSlideIn .35s ease backwards;
}
.msg-them{
  align-self:flex-start;
  background:#26262b;color:#fff;
  border-bottom-left-radius:5px;
}
.msg-me{
  align-self:flex-end;
  background:linear-gradient(160deg,#0a84ff 0%,#0a64d6 100%);
  color:#fff;
  border-bottom-right-radius:5px;
  box-shadow:0 1px 3px rgba(10,132,255,.35);
}
@keyframes msgSlideIn{
  from{opacity:0;transform:translateY(8px) scale(.96)}
  to  {opacity:1;transform:none}
}

/* Caret для печатной анимации */
.msg .typing-caret{
  display:inline-block;width:1px;background:currentColor;height:12px;margin-left:1px;
  vertical-align:-2px;animation:caretBlink .8s steps(1) infinite;opacity:.8;
}
@keyframes caretBlink{50%{opacity:0}}

/* Индикатор "печатает" — 3 точки */
.msg-typing{
  align-self:flex-start;background:#26262b;
  display:inline-flex;gap:4px;padding:11px 14px;border-radius:18px;border-bottom-left-radius:5px;
}
.msg-typing span{
  width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.55);
  animation:dotPulse 1.2s infinite ease-in-out;
}
.msg-typing span:nth-child(2){animation-delay:.18s}
.msg-typing span:nth-child(3){animation-delay:.36s}
@keyframes dotPulse{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}

/* Home indicator */
.phone-home-bar{
  position:absolute;bottom:8px;left:50%;transform:translateX(-50%);
  width:120px;height:5px;background:rgba(255,255,255,.85);border-radius:3px;z-index:4;
}

.phone-1{
  top:30px;left:10px;
  transform:rotate(-9deg) rotateY(-4deg);
  animation:phoneSwayLeft 7s ease-in-out infinite;z-index:1;
}
.phone-2{
  top:90px;right:0;
  transform:rotate(10deg) rotateY(5deg);
  animation:phoneSwayRight 8s ease-in-out infinite;z-index:2;
}
@keyframes phoneSwayLeft{
  0%,100%{transform:rotate(-9deg) rotateY(-4deg) translateY(0)}
  50%   {transform:rotate(-6deg) rotateY(-2deg) translateY(-18px)}
}
@keyframes phoneSwayRight{
  0%,100%{transform:rotate(10deg) rotateY(5deg) translateY(0)}
  50%   {transform:rotate(7deg) rotateY(3deg) translateY(-22px)}
}
@media (prefers-reduced-motion: reduce){.phone-1,.phone-2{animation:none}}
@media (max-width:780px){
  .hero{padding:48px 0 40px;background-attachment:scroll}
  .hero .grid{grid-template-columns:1fr;gap:36px}
  .hero h1{font-size:36px}
  .phones-stage{height:560px;max-width:560px;margin:0 auto}
  .phone-1{left:5%}.phone-2{right:5%}
  .bullets{grid-template-columns:repeat(3,1fr);gap:20px}
  .bullets .b-num{font-size:28px}
}
@media (max-width:480px){
  .phones-stage{height:520px}
  .phone-frame{width:220px;height:460px}
}


/* ============== Sections ============== */
section{padding:72px 0;position:relative}
.section-head{text-align:center;max-width:680px;margin:0 auto 48px}
.section-head h2{font-size:42px;margin-bottom:12px}
.section-head p{color:var(--muted);font-size:16px}

/* ============== Glass cards (универсальный стеклянный блок) ============== */
.glass{
  background:var(--glass-bg);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  border:1px solid var(--glass-bd);
  border-radius:var(--r-2);
  box-shadow:0 8px 32px rgba(0,0,0,.30);
}
.glass:hover{border-color:rgba(255,46,138,.30)}

/* ============== Steps ============== */
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step-card{
  background:var(--glass-bg);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid var(--glass-bd);
  border-radius:var(--r-2);padding:32px 28px;
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.step-card:hover{transform:translateY(-4px);border-color:rgba(255,46,138,.35);box-shadow:0 20px 60px rgba(255,46,138,.15)}
.step-num{font-family:'Playfair Display',serif;font-size:42px;font-weight:600;line-height:1;margin-bottom:18px;background:var(--grad-pink);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.step-card h3{margin-bottom:10px}
.step-card p{font-size:15px;color:var(--ink-2)}
@media (max-width:780px){.steps-grid{grid-template-columns:1fr}}

/* ============== Pillars (features) ============== */
.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pillar{
  background:var(--glass-bg);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid var(--glass-bd);
  border-radius:var(--r-2);padding:30px 28px;
  transition:all .25s ease;
}
.pillar:hover{transform:translateY(-3px);border-color:rgba(255,46,138,.30);box-shadow:0 16px 48px rgba(255,46,138,.12)}
.pillar .icon-wrap{
  width:54px;height:54px;border-radius:14px;
  background:rgba(255,46,138,.14);color:var(--pink-2);
  display:grid;place-items:center;margin-bottom:18px;
  border:1px solid rgba(255,46,138,.22);
}
.pillar .icon-wrap svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.7}
.pillar h3{font-size:20px;margin-bottom:10px}
.pillar p{font-size:14.5px;color:var(--ink-2)}
@media (max-width:780px){.pillar-grid{grid-template-columns:1fr}}

/* ============== Story / Quote ============== */
.story{display:grid;grid-template-columns:.95fr 1.05fr;gap:48px;align-items:center}
.story-art{
  position:relative;height:440px;
  background:var(--glass-bg);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--glass-bd);border-radius:var(--r-3);padding:42px;
  display:flex;flex-direction:column;justify-content:center;
  box-shadow:0 20px 60px rgba(0,0,0,.30);
  overflow:hidden;
}
.story-art::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(circle at 20% 30%, rgba(255,46,138,.18), transparent 60%);
  pointer-events:none;
}
.story-art .qt{font-family:'Playfair Display',serif;font-style:italic;font-size:24px;line-height:1.45;color:var(--ink);margin-bottom:18px;position:relative}
.story-art .qt::before{content:'\201C';font-size:90px;line-height:0;color:var(--pink);margin-right:10px;vertical-align:-32px;opacity:.7}
.story-art .author{font-size:14px;color:var(--muted)}
.story-art .badge{
  position:absolute;top:-18px;right:30px;width:64px;height:64px;border-radius:50%;
  background:var(--grad-pink);color:#fff;
  display:grid;place-items:center;
  font-family:'Playfair Display',serif;font-weight:700;font-size:28px;
  box-shadow:var(--shadow-pink);transform:rotate(-8deg);
}
@media (max-width:780px){.story{grid-template-columns:1fr;gap:30px}}

/* ============== Trust ============== */
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.trust .mark{
  background:var(--glass-bg);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid var(--glass-bd);border-radius:var(--r-2);padding:24px;text-align:center;
  transition:all .25s ease;
}
.trust .mark:hover{border-color:rgba(255,46,138,.35);transform:translateY(-2px)}
.trust .mark strong{display:block;font-family:'Playfair Display',serif;font-size:32px;background:var(--grad-pink);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:6px}
.trust .mark span{font-size:13px;color:var(--muted)}
@media (max-width:780px){.trust{grid-template-columns:repeat(2,1fr)}}

/* ============== FAQ ============== */
.faq{max-width:780px;margin:0 auto}
.faq details{
  background:var(--glass-bg);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid var(--glass-bd);border-radius:var(--r-1);
  padding:18px 24px;margin-bottom:11px;cursor:pointer;
  transition:border-color .2s ease,background .2s ease;
}
.faq details[open]{border-color:var(--pink);background:rgba(255,46,138,.06)}
.faq summary{font-family:'Playfair Display',serif;font-size:19px;color:var(--ink);font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font-size:26px;color:var(--pink);transition:transform .2s ease;line-height:1}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .ans{margin-top:14px;color:var(--ink-2);font-size:15px;line-height:1.7}


/* ============== Reviews carousel ============== */
.reviews-section{position:relative;overflow:hidden}
.reviews-stage{
  position:relative;max-width:780px;margin:0 auto;
  height:340px;
}
.review-slide{
  position:absolute;inset:0;
  background:var(--glass-bg);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  border:1px solid var(--glass-bd);
  border-radius:var(--r-2);
  padding:40px 44px;
  opacity:0;visibility:hidden;
  transition:opacity .6s ease, transform .6s ease;
  transform:translateY(20px) scale(.97);
  display:flex;flex-direction:column;
}
.review-slide.is-active{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.review-slide .stars{color:var(--pink-2);font-size:20px;letter-spacing:2px;margin-bottom:14px}
.review-slide .text{font-family:'Playfair Display',serif;font-size:21px;font-style:italic;color:var(--ink);line-height:1.5;margin-bottom:22px;flex:1}
.review-slide .who{display:flex;gap:14px;align-items:center}
.review-slide .ava{width:48px;height:48px;border-radius:50%;background:var(--grad-pink);color:#fff;display:grid;place-items:center;font-family:'Playfair Display',serif;font-weight:700;font-size:20px}
.review-slide .who-name{font-weight:600;color:var(--ink);font-size:15.5px}
.review-slide .who-info{font-size:12.5px;color:var(--muted)}
.reviews-controls{display:flex;justify-content:center;gap:10px;margin-top:24px}
.review-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.18);border:none;cursor:pointer;transition:all .25s ease;padding:0}
.review-dot.is-active{background:var(--pink);width:32px;border-radius:5px}
.review-add{margin-top:36px;text-align:center}
.review-add .b{margin-bottom:14px}

/* Review form modal */
.rmodal-veil{
  position:fixed;inset:0;z-index:200;
  background:rgba(8,6,13,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  display:grid;place-items:center;padding:20px;
}
.rmodal-veil[hidden]{display:none}
.rmodal-card{
  max-width:480px;width:100%;
  background:var(--bg-1);border:1px solid var(--line);
  border-radius:var(--r-2);padding:32px 30px;
  box-shadow:var(--shadow-deep);
  animation:popIn .25s ease;
}
.rmodal-card h3{margin-bottom:16px}
.rmodal-card .stars-pick{display:flex;gap:6px;margin-bottom:16px}
.rmodal-card .star-btn{background:none;border:none;cursor:pointer;font-size:28px;color:rgba(255,255,255,.18);transition:color .15s}
.rmodal-card .star-btn.is-on{color:var(--pink)}
.rmodal-card textarea, .rmodal-card input{
  width:100%;background:rgba(255,255,255,.04);border:1px solid var(--line);
  border-radius:10px;padding:12px 14px;
  color:var(--ink);font-family:inherit;font-size:14.5px;
  margin-bottom:12px;resize:vertical;
}
.rmodal-card textarea:focus,.rmodal-card input:focus{outline:none;border-color:var(--pink)}
.rmodal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}
@keyframes popIn{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}

/* ============== Match (quiz) ============== */
.match-section{position:relative}
.match-shell{
  max-width:640px;margin:0 auto;
  background:var(--glass-bg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--glass-bd);border-radius:var(--r-3);
  padding:38px 34px;box-shadow:var(--shadow-deep);
}
.match-bar{height:5px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden;margin-bottom:14px}
.match-bar-fill{height:100%;background:var(--grad-pink);transition:width .35s ease;border-radius:99px}
.match-info{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);margin-bottom:24px}
.match-step{display:none}
.match-step.is-active{display:block;animation:fadeIn .35s ease}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.match-step h3{margin-bottom:18px;text-align:center}
.match-options{display:grid;gap:11px}
.match-opt{
  background:rgba(255,255,255,.04);border:1px solid var(--line);
  border-radius:var(--r-1);padding:14px 18px;text-align:left;
  display:flex;align-items:center;gap:14px;cursor:pointer;
  transition:all .15s ease;
  font-family:inherit;font-size:14.5px;color:var(--ink-2);
}
.match-opt:hover{border-color:var(--pink);background:rgba(255,46,138,.08);color:var(--ink)}
.match-opt.is-selected{border-color:var(--pink);background:rgba(255,46,138,.14);color:var(--ink)}
.match-opt .ico{width:28px;height:28px;color:var(--pink-2);flex-shrink:0}
.match-opt .ico svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.7}
.match-controls{display:flex;justify-content:space-between;margin-top:24px;gap:10px}
.match-back,.match-next{
  font-family:inherit;font-size:14px;font-weight:600;
  border:1px solid var(--line);background:rgba(255,255,255,.04);
  color:var(--ink-2);padding:11px 20px;border-radius:var(--r-1);cursor:pointer;
  transition:opacity .15s ease;
}
.match-next{background:var(--grad-pink);color:#fff;border-color:transparent;box-shadow:0 8px 24px rgba(255,46,138,.30)}
.match-back:disabled,.match-next:disabled{opacity:.4;cursor:not-allowed}
.match-result{text-align:center}
.match-result .ico{width:72px;height:72px;border-radius:50%;background:rgba(255,46,138,.16);color:var(--pink);display:grid;place-items:center;margin:0 auto 18px;border:1px solid rgba(255,46,138,.30)}
.match-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:18px 0 26px}
.match-tag{background:rgba(255,46,138,.14);color:var(--pink-2);font-size:13px;padding:7px 14px;border-radius:99px;border:1px solid rgba(255,46,138,.22)}


/* ============== Forms ============== */
.form-card{
  max-width:520px;margin:60px auto;
  background:var(--glass-bg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--glass-bd);border-radius:var(--r-2);
  padding:42px 38px;box-shadow:var(--shadow-deep);
}
.form-card h1{font-size:34px;margin-bottom:8px}
.form-card .sub{color:var(--muted);font-size:14.5px;margin-bottom:26px}
.field{margin-bottom:18px}
.field label{display:block;font-size:13px;font-weight:600;color:var(--ink-2);margin-bottom:8px}
.field input,.field select,.field textarea{
  width:100%;padding:12px 16px;
  background:rgba(255,255,255,.04);border:1px solid var(--line);
  border-radius:var(--r-1);font-family:inherit;font-size:15px;color:var(--ink);
  transition:border-color .15s ease;
}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--pink)}
.check{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px;font-size:13.5px;color:var(--ink-2)}
.check input{margin-top:3px;accent-color:var(--pink)}
.alert{padding:12px 14px;border-radius:var(--r-1);font-size:14px;margin-bottom:14px}
.alert-error{background:rgba(255,46,138,.12);color:#ff8fc6;border:1px solid rgba(255,46,138,.30)}
.alert-ok{background:rgba(123,227,139,.12);color:#7be38b;border:1px solid rgba(123,227,139,.22)}
.form-foot{margin-top:18px;text-align:center;font-size:14px;color:var(--muted)}

/* ============== Footer (rich, multi-column) ============== */
.site-foot{
  background:linear-gradient(180deg, rgba(8,6,13,.4) 0%, rgba(8,6,13,.95) 100%);
  border-top:1px solid var(--line);
  padding:60px 0 30px;margin-top:80px;
  position:relative;
}
.foot-grid{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1fr;
  gap:40px;
  margin-bottom:36px;
}
.foot-col h4{
  font-family:'Inter',sans-serif;
  font-size:13px;font-weight:700;
  text-transform:uppercase;letter-spacing:1.5px;
  color:var(--pink);margin-bottom:18px;
}
.foot-col a{
  display:block;color:var(--ink-2);font-size:14px;
  margin-bottom:10px;transition:color .15s ease;
}
.foot-col a:hover{color:var(--pink-2)}
.foot-brand .brand{margin-bottom:16px}
.foot-brand p{font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:14px}
.foot-legal{
  border-top:1px solid var(--line);
  padding-top:24px;font-size:13px;color:var(--muted);line-height:1.7;
}
.foot-legal strong{color:var(--ink-2)}
.foot-legal p{margin:0 0 10px;font-size:13px;color:var(--muted)}
.foot-copy{
  border-top:1px solid var(--line-2);padding-top:16px;margin-top:16px;
  font-size:12px;color:var(--muted);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;
}
@media (max-width:780px){
  .foot-grid{grid-template-columns:1fr 1fr;gap:30px}
  .foot-brand{grid-column:1/-1}
}

/* ============== Age modal ============== */
.age-veil{position:fixed;inset:0;z-index:200;background:rgba(8,6,13,.74);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px}
.age-veil[hidden]{display:none}
.age-card{max-width:440px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-2);padding:36px 32px;text-align:center;box-shadow:var(--shadow-deep);animation:popIn .25s ease}
.age-mark{display:inline-block;font-family:'Playfair Display',serif;font-weight:700;font-size:32px;background:var(--grad-pink);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;padding:8px 18px;border-radius:99px;border:1px solid rgba(255,46,138,.30);background-color:rgba(255,46,138,.10);margin-bottom:14px}
.age-card h2{font-size:26px;margin-bottom:8px}
.age-card p{font-size:14.5px;color:var(--ink-2);margin-bottom:6px}
.age-card .question{font-weight:600;margin:14px 0 18px;color:var(--ink)}
.age-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.age-note{margin-top:16px;font-size:12px;color:var(--muted)}

/* ============== Cabinet ============== */
.cabinet-grid{display:grid;grid-template-columns:280px 1fr;gap:22px;margin-top:18px}
.cab-side{background:var(--glass-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--glass-bd);border-radius:var(--r-2);padding:18px}
.cab-side-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.thread-list .thread-item{display:flex;gap:10px;padding:10px;border-radius:10px;cursor:pointer;transition:background .15s ease}
.thread-item:hover{background:rgba(255,46,138,.08)}
.thread-item.is-active{background:rgba(255,46,138,.18)}
.thread-ava{width:38px;height:38px;border-radius:50%;background:var(--grad-pink);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:700;flex-shrink:0}
.thread-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:2px}
.thread-name{font-weight:600;font-size:14px;color:var(--ink)}
.thread-prev{font-size:12.5px;color:var(--muted)}
.cab-main{background:var(--glass-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--glass-bd);border-radius:var(--r-2);padding:24px}
.cand-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:18px}
.cand-card{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:var(--r-2);padding:18px;transition:border-color .2s}
.cand-card:hover{border-color:rgba(255,46,138,.30)}
.cand-card.is-rec{border-color:var(--pink)}
.cand-row{display:flex;gap:14px}
.cand-ava{width:54px;height:54px;border-radius:50%;background:var(--grad-pink);color:#fff;display:grid;place-items:center;font-weight:700;font-size:18px;flex-shrink:0}
.cand-info{flex:1}
.cand-name{font-family:'Playfair Display',serif;font-size:21px;font-weight:600;color:var(--ink)}
.cand-summary{font-size:14px;color:var(--ink-2);margin:6px 0 10px}
.cand-actions{display:flex;gap:8px}
.heart-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--ink-2);cursor:pointer;display:grid;place-items:center;transition:all .15s ease}
.heart-btn:hover{background:rgba(255,46,138,.10);border-color:var(--pink)}
.heart-btn.is-on{background:var(--grad-pink);color:#fff;border-color:transparent}
.rec-mark{margin-top:12px;padding:10px 12px;background:rgba(255,46,138,.14);border:1px solid rgba(255,46,138,.22);border-radius:10px;font-size:13px;color:var(--pink-2)}
.bio-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.bio-row-full{grid-column:1/-1}
@media (max-width:780px){.cabinet-grid{grid-template-columns:1fr}.cand-grid{grid-template-columns:1fr}.bio-grid{grid-template-columns:1fr}}
.chat-pane{display:flex;flex-direction:column;height:100%;min-height:480px}
.chat-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:14px}
.chat-back-btn{background:none;border:none;color:var(--pink-2);cursor:pointer;font-size:14px;font-family:inherit}
.chat-stream{flex:1;overflow-y:auto;padding:6px 0;display:flex;flex-direction:column;gap:8px;max-height:480px}
.bubble{max-width:72%;padding:10px 14px;border-radius:14px;font-size:14.5px;line-height:1.5}
.bubble-me{background:var(--grad-pink);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.bubble-cand{background:rgba(255,255,255,.06);color:var(--ink-2);border:1px solid var(--line);align-self:flex-start;border-bottom-left-radius:4px}
.bubble-time{font-size:11px;opacity:.7;margin-top:2px}
.chat-form{display:flex;gap:8px;margin-top:12px;padding-top:14px;border-top:1px solid var(--line)}
.chat-form input{flex:1;padding:11px 14px;background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:var(--r-1);font-family:inherit;font-size:14.5px;color:var(--ink)}
.chat-form input:focus{outline:none;border-color:var(--pink)}

/* ============== Legal pages ============== */
.legal-doc{max-width:780px;margin:60px auto;background:var(--glass-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--glass-bd);border-radius:var(--r-2);padding:48px 42px}
.legal-doc h1{font-size:34px;margin-bottom:8px}
.legal-doc .meta{color:var(--muted);font-size:13px;margin-bottom:24px}
.legal-doc h2{font-size:24px;margin-top:30px}
.legal-doc h3{font-size:18px;margin-top:22px}
.legal-doc p,.legal-doc li{font-size:14.5px;color:var(--ink-2);line-height:1.75}
.legal-doc ul,.legal-doc ol{padding-left:22px;margin-bottom:14px}
.legal-doc strong{color:var(--ink)}


/* ============== Requisites section ============== */
.requisites-section{padding:64px 0;position:relative}
.req-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;max-width:1100px;margin:0 auto}
.req-item{
  background:var(--glass-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid var(--glass-bd);border-radius:var(--r-2);padding:24px 26px;
  transition:border-color .2s ease;
}
.req-item:hover{border-color:rgba(255,46,138,.30)}
.req-label{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:1.4px;color:var(--pink);margin-bottom:10px}
.req-value{font-family:'Playfair Display',serif;font-size:19px;font-weight:600;color:var(--ink);line-height:1.4;margin-bottom:6px}
.req-value a{color:var(--pink-2);text-decoration:underline;text-decoration-color:rgba(255,46,138,.30)}
.req-value a:hover{color:var(--pink-3)}
.req-note{font-size:13px;color:var(--muted);line-height:1.6}

/* ============== Support side-panel chat (Beloraka-style) ============== */
#help-fab{
  position:fixed;right:24px;bottom:24px;z-index:90;
  width:60px;height:60px;border-radius:50%;
  background:var(--grad-pink);color:#fff;
  border:none;cursor:pointer;
  display:grid;place-items:center;
  box-shadow:var(--shadow-pink), 0 0 0 6px rgba(255,46,138,.15);
  animation:supPulse 2.5s ease-in-out infinite;
  transition:transform .25s ease;
}
#help-fab:hover{transform:translateY(-3px) scale(1.04)}
#help-fab svg{width:26px;height:26px;fill:#fff}
@keyframes supPulse{
  0%,100%{box-shadow:var(--shadow-pink),0 0 0 6px rgba(255,46,138,.15)}
  50%   {box-shadow:var(--shadow-pink),0 0 0 16px rgba(255,46,138,.0)}
}

#chat-overlay{
  position:fixed;inset:0;z-index:9998;background:rgba(6,1,15,.55);
  backdrop-filter:blur(4px);opacity:0;pointer-events:none;
  transition:opacity .3s ease;
}
#chat-overlay.is-open{opacity:1;pointer-events:auto}

#chat-panel{
  position:fixed;top:0;right:0;bottom:0;
  width:420px;max-width:100vw;z-index:9999;
  background:linear-gradient(180deg,#0e0322 0%,#06010f 100%);
  border-left:1px solid rgba(255,255,255,.08);
  box-shadow:-30px 0 80px rgba(0,0,0,.6);
  transform:translateX(100%);
  transition:transform .35s cubic-bezier(.2,.7,.2,1);
  display:flex;flex-direction:column;
}
#chat-panel.is-open{transform:translateX(0)}

.cp-head{
  padding:22px 24px;border-bottom:1px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;
  background:rgba(255,255,255,.02);flex-shrink:0;
}
.cp-title-wrap{display:flex;align-items:center;gap:12px}
.cp-av{
  width:42px;height:42px;border-radius:50%;
  background:var(--grad-pink);
  display:grid;place-items:center;color:#fff;font-weight:700;font-size:16px;
  box-shadow:var(--shadow-pink);flex-shrink:0;
}
.cp-head h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:16px;font-weight:600;margin:0;color:var(--ink)}
.cp-st{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;margin-top:2px}
.cp-st .dot{width:6px;height:6px;border-radius:50%;background:#3ef58b;box-shadow:0 0 6px #3ef58b}
.cp-close{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  color:var(--ink-2);cursor:pointer;font-size:16px;
  width:34px;height:34px;border-radius:10px;
  display:grid;place-items:center;transition:background .15s;
}
.cp-close:hover{background:rgba(255,255,255,.10)}

.cp-body{
  flex:1;overflow-y:auto;padding:22px 24px;
  display:flex;flex-direction:column;gap:10px;
}
.cp-msg{
  max-width:82%;padding:12px 16px;border-radius:18px;
  font-size:14px;line-height:1.5;
  animation:msgPop .3s cubic-bezier(.2,.7,.2,1) both;
}
.cp-msg.bot{align-self:flex-start;background:rgba(255,255,255,.06);color:var(--ink);border-bottom-left-radius:6px;border:1px solid var(--line)}
.cp-msg.me{align-self:flex-end;background:var(--grad-pink);color:#fff;border-bottom-right-radius:6px;box-shadow:0 8px 20px rgba(255,46,138,.25)}
.cp-msg.typing{display:inline-flex;gap:5px;padding:14px 16px;background:rgba(255,255,255,.06)}
.cp-msg.typing span{width:7px;height:7px;border-radius:50%;background:var(--pink-2);animation:supDot 1.2s infinite ease-in-out}
.cp-msg.typing span:nth-child(2){animation-delay:.18s}
.cp-msg.typing span:nth-child(3){animation-delay:.36s}
@keyframes msgPop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes supDot{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}

.cp-actions{padding:0 24px 14px;display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0}
.cp-quick{
  padding:9px 14px;border-radius:99px;
  background:rgba(255,46,138,.10);
  border:1px solid rgba(255,46,138,.30);
  color:var(--pink-2);font-size:13px;cursor:pointer;
  font-family:inherit;transition:background .15s;
}
.cp-quick:hover{background:rgba(255,46,138,.20)}

.cp-foot{
  padding:18px 24px 22px;border-top:1px solid var(--line);
  background:rgba(255,255,255,.02);flex-shrink:0;
}
.cp-start-cta{
  display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;padding:14px 20px;border-radius:14px;
  background:var(--grad-pink);color:#fff;font-weight:600;font-size:15px;
  border:none;cursor:pointer;font-family:inherit;
  box-shadow:var(--shadow-pink);
  transition:transform .15s ease, box-shadow .15s ease;
}
.cp-start-cta:hover{transform:translateY(-1px);box-shadow:0 14px 32px rgba(255,46,138,.45)}
.cp-start-cta svg{width:18px;height:18px;fill:#fff}
.cp-hint{display:block;color:var(--muted);font-size:12px;margin-top:10px;text-align:center}
.cp-hint a{color:var(--pink-2);text-decoration:none}
.cp-hint a:hover{text-decoration:underline}

@media(max-width:680px){
  #chat-panel{width:100%;border-left:none}
  .cp-head{padding:18px}
  .cp-body{padding:18px}
  .cp-actions{padding:0 18px 10px}
  .cp-foot{padding:14px 18px 18px}
  #help-fab{right:18px;bottom:18px;width:54px;height:54px}
  #help-fab svg{width:22px;height:22px}
}

/* ============== Mobile menu ============== */
@media (max-width:780px){
  .menu{display:none;position:absolute;top:72px;left:0;right:0;background:rgba(15,10,24,.96);backdrop-filter:blur(18px);flex-direction:column;align-items:flex-start;padding:18px 22px;border-bottom:1px solid var(--line);gap:14px}
  .menu.open{display:flex}
  .burger{display:block}
  h1{font-size:42px}h2{font-size:30px}
}

/* ============== Reveal animation ============== */
[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}
[data-reveal].is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none}}


/* ============== Payer table (gradient bordered, glowing) ============== */
.payer-table{
  position:relative;
  margin:24px 0 14px;
  border-radius:var(--r-2);
  padding:2px;
  background:linear-gradient(135deg, rgba(255,46,138,.7) 0%, rgba(192,38,211,.5) 50%, rgba(255,46,138,.6) 100%);
  background-size:200% 200%;
  animation:gradShift 8s ease infinite;
  box-shadow:0 12px 40px rgba(255,46,138,.18), 0 0 60px rgba(255,46,138,.08);
}
@keyframes gradShift{
  0%,100%{background-position:0% 0%}
  50%   {background-position:100% 100%}
}
.payer-table::before{
  content:'';position:absolute;inset:-2px;border-radius:var(--r-2);
  background:linear-gradient(135deg, var(--pink) 0%, var(--magenta) 100%);
  filter:blur(20px);opacity:.25;z-index:-1;
}
.payer-head{
  display:flex;align-items:center;gap:14px;
  padding:22px 26px;
  background:linear-gradient(135deg, rgba(15,10,24,.96) 0%, rgba(20,12,32,.96) 100%);
  border-radius:calc(var(--r-2) - 2px) calc(var(--r-2) - 2px) 0 0;
  border-bottom:1px solid rgba(255,46,138,.20);
}
.payer-icon{
  width:44px;height:44px;border-radius:12px;
  background:var(--grad-pink);color:#fff;
  display:grid;place-items:center;flex-shrink:0;
  box-shadow:0 8px 24px rgba(255,46,138,.40);
}
.payer-title{
  font-family:'Playfair Display',serif;font-size:22px;font-weight:600;color:#fff;line-height:1.2;
}
.payer-sub{font-size:13px;color:var(--ink-2);margin-top:4px}
.payer-rows{
  background:linear-gradient(180deg, rgba(15,10,24,.97) 0%, rgba(8,6,13,.97) 100%);
  border-radius:0 0 calc(var(--r-2) - 2px) calc(var(--r-2) - 2px);
}
.payer-row{
  display:grid;grid-template-columns:240px 1fr;gap:24px;
  padding:14px 26px;
  border-bottom:1px solid rgba(255,255,255,.04);
  transition:background .2s ease;
}
.payer-row:last-child{border-bottom:none}
.payer-row:hover{background:rgba(255,46,138,.04)}
.payer-key{
  font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:1.2px;
  color:var(--pink-2);
  align-self:center;
}
.payer-val{
  font-size:14.5px;color:var(--ink);line-height:1.6;
  align-self:center;
}
.payer-val a{color:var(--pink-2);text-decoration:underline;text-decoration-color:rgba(255,46,138,.30)}
.payer-val a:hover{color:var(--pink-3)}
.payer-strong{
  font-family:'Playfair Display',serif;font-size:18px;font-weight:600;color:#fff;
}
@media (max-width:780px){
  .payer-head{padding:18px 20px}
  .payer-row{grid-template-columns:1fr;gap:6px;padding:14px 20px}
  .payer-key{font-size:11px}
  .payer-val{font-size:14px}
  .payer-strong{font-size:16px}
}
