/* ---------- Landing page (public, promotional) ---------- */

body.lp-body{
  position:relative;
  background:
    radial-gradient(1.2px 1.2px at 14px 14px, color-mix(in srgb, var(--ink) 7%, transparent) 1px, transparent 0),
    radial-gradient(900px 600px at 12% -8%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 60%),
    radial-gradient(760px 520px at 94% 6%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 55%),
    radial-gradient(1000px 680px at 50% 118%, color-mix(in srgb, var(--good) 10%, transparent), transparent 60%),
    var(--bg);
  background-size:28px 28px, auto, auto, auto, auto;
  background-attachment:fixed;
  background-repeat:repeat, no-repeat, no-repeat, no-repeat, no-repeat;
  animation:aurora-shift 22s ease-in-out infinite alternate;
}
@keyframes aurora-shift{
  0%{background-position:0 0, 0% 0%, 100% 0%, 50% 100%, 0 0;}
  100%{background-position:0 0, 4% 3%, 96% 4%, 52% 96%, 0 0;}
}
@media (prefers-reduced-motion: reduce){ body.lp-body{ animation:none; } }

.lp-header{
  display:flex; align-items:center; justify-content:space-between;
  max-width:1120px; margin:0 auto; padding:16px 24px;
  position:sticky; top:0; z-index:20;
  background:color-mix(in srgb, var(--surface) 72%, transparent);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border-soft);
}
.lp-header .brand{padding:0;}
.lp-header nav{display:flex; gap:28px; align-items:center;}
.lp-header nav a{color:var(--ink-dim); text-decoration:none; font-size:16px; font-weight:600;}
.lp-header nav a:hover{color:var(--ink);}
@media (max-width:720px){ .lp-header nav a.lp-nav-link{display:none;} }

.lp-lang-switch{position:relative; display:inline-flex; align-items:center;}
.lp-lang-switch select{
  appearance:none; -webkit-appearance:none;
  background:var(--surface); border:1px solid var(--border); border-radius:99px;
  padding:7px 28px 7px 12px; font-size:16px; font-weight:600; color:var(--ink);
  cursor:pointer; max-width:145px;
}
.lp-lang-switch::after{
  content:""; position:absolute; right:10px; top:50%; width:7px; height:7px; pointer-events:none;
  border-right:1.6px solid var(--ink-faint); border-bottom:1.6px solid var(--ink-faint);
  transform:translateY(-65%) rotate(45deg);
}
.lp-lang-switch select:hover{border-color:var(--ink-faint);}
[dir="rtl"] .lp-lang-switch select{padding:7px 12px 7px 28px;}
[dir="rtl"] .lp-lang-switch::after{right:auto; left:10px;}

.lp-hero{max-width:1120px; margin:0 auto; padding:68px 24px 76px; display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center;}
@media (max-width:900px){ .lp-hero{grid-template-columns:1fr; padding-top:32px; gap:64px;} }
.lp-eyebrow{display:inline-flex; align-items:center; gap:7px; font-size:16px; font-weight:700; color:var(--accent-ink); background:var(--accent-soft); border:1px solid color-mix(in srgb, var(--accent) 25%, transparent); border-radius:99px; padding:5px 13px; margin-bottom:20px;}
.lp-eyebrow svg{width:13px; height:13px;}
.lp-hero h1{font-size:clamp(32px,4.4vw,50px); line-height:1.1; letter-spacing:-.8px; font-weight:800; text-wrap:balance; margin-bottom:20px;}
.lp-hero h1 em{
  font-style:normal;
  background:linear-gradient(100deg, var(--accent-ink), var(--accent) 55%, color-mix(in srgb, var(--accent) 60%, #6dd5c8) 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.lp-hero .lead{font-size:18px; color:var(--ink-dim); line-height:1.7; max-width:46ch; margin-bottom:30px;}
.lp-cta-row{display:flex; gap:12px; flex-wrap:wrap; margin-bottom:20px;}
.lp-btn{
  position:relative; overflow:hidden; isolation:isolate;
  display:inline-flex; align-items:center; gap:8px; padding:13px 24px; border-radius:11px;
  font-size:16px; font-weight:700; text-decoration:none; border:1px solid transparent; cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease, background-color .15s ease, border-color .15s ease;
}
.lp-btn::after{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:linear-gradient(115deg, transparent 30%, rgba(255,255,255,.35) 46%, rgba(255,255,255,.35) 54%, transparent 70%);
  transform:translateX(-130%); transition:transform .55s ease;
}
.lp-btn:hover::after{transform:translateX(130%);}
.lp-btn > *{position:relative; z-index:1;}
.lp-btn svg{width:16px; height:16px; transition:transform .2s ease;}
.lp-btn:hover svg:last-child{transform:translateX(3px);}
.lp-btn.primary{background:linear-gradient(155deg, var(--accent), var(--accent-ink)); color:#fff; box-shadow:0 10px 24px -10px color-mix(in srgb, var(--accent) 65%, transparent);}
.lp-btn.primary:hover{transform:translateY(-2px); box-shadow:0 16px 30px -12px color-mix(in srgb, var(--accent) 70%, transparent);}
.lp-btn.primary:active{transform:translateY(0); box-shadow:0 6px 14px -8px color-mix(in srgb, var(--accent) 65%, transparent);}
.lp-btn.ghost{background:var(--surface); color:var(--ink); border-color:var(--border);}
.lp-btn.ghost:hover{border-color:var(--ink-faint); transform:translateY(-2px);}
.lp-btn.ghost::after{background:linear-gradient(115deg, transparent 30%, color-mix(in srgb, var(--accent) 16%, transparent) 46%, color-mix(in srgb, var(--accent) 16%, transparent) 54%, transparent 70%);}
.lp-trust{font-size:16px; color:var(--ink-faint);}
@media (prefers-reduced-motion: reduce){ .lp-btn::after{transition:none; display:none;} }

/* ---- Hero visual: glow blobs + stacked depth cards ---- */
.lp-hero-visual{position:relative; padding:28px 18px 18px; perspective:900px;}
.lp-glow{position:absolute; border-radius:50%; filter:blur(46px); z-index:0; pointer-events:none;}
.lp-glow-a{width:220px; height:220px; background:color-mix(in srgb, var(--accent) 55%, transparent); top:-30px; right:10%; opacity:.55; animation:drift-a 9s ease-in-out infinite alternate;}
.lp-glow-b{width:180px; height:180px; background:color-mix(in srgb, var(--good) 45%, transparent); bottom:-10px; left:0; opacity:.35; animation:drift-b 11s ease-in-out infinite alternate;}
@keyframes drift-a{ from{ transform:translate(0,0) scale(1); } to{ transform:translate(-14px,16px) scale(1.12); } }
@keyframes drift-b{ from{ transform:translate(0,0) scale(1); } to{ transform:translate(16px,-12px) scale(1.08); } }

.lp-stack-card{
  position:absolute; inset:28px 30px 18px 30px; border-radius:18px;
  background:var(--surface); border:1px solid var(--border);
  animation:float-panel 7s ease-in-out infinite;
}
.lp-stack-1{transform:rotate(-3.5deg) translateY(6px); z-index:1; opacity:.9; animation-delay:-.6s;}
.lp-stack-2{transform:rotate(4.5deg) translateY(2px); z-index:0; opacity:.55; background:var(--surface-2); animation-delay:-2.2s;}

.lp-hero-panel{
  position:relative; z-index:2;
  background:var(--surface); border:1px solid var(--border); border-radius:18px;
  box-shadow:0 2px 4px rgba(18,22,28,.05), 0 30px 60px -22px rgba(18,22,28,.28);
  padding:16px;
  animation:float-panel 7s ease-in-out infinite;
  transition:box-shadow .3s ease;
}
@media (prefers-color-scheme:dark){ .lp-hero-panel{ box-shadow:0 2px 4px rgba(0,0,0,.4), 0 30px 60px -22px rgba(0,0,0,.6); } }
@keyframes float-panel{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-9px); } }
@media (prefers-reduced-motion: reduce){
  .lp-glow-a, .lp-glow-b, .lp-stack-card, .lp-hero-panel{ animation:none; }
}
.lp-panel-head{display:flex; align-items:center; gap:6px; padding:2px 6px 12px; margin-bottom:10px; border-bottom:1px solid var(--border-soft);}
.lp-panel-dot{width:8px; height:8px; border-radius:50%; background:var(--border);}
.lp-panel-dot:nth-child(1){background:var(--crit); opacity:.55;}
.lp-panel-dot:nth-child(2){background:var(--warn); opacity:.55;}
.lp-panel-dot:nth-child(3){background:var(--good); opacity:.55;}
.lp-panel-title{margin-left:8px; font-size:15px; font-weight:600; color:var(--ink-faint);}

.lp-hero-panel .row{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 12px; border-radius:10px;}
.lp-hero-panel .row + .row{margin-top:4px;}
.lp-hero-panel .row .label{display:flex; align-items:center; gap:10px; font-size:16px; font-weight:600;}
.lp-hero-panel .row .ic{width:26px; height:26px; border-radius:7px; background:var(--accent-soft); color:var(--accent-ink); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.lp-hero-panel .row .ic svg{width:14px; height:14px;}
.lp-hero-panel .row.ok{background:var(--good-soft);}
.lp-hero-panel .row.warn-row{background:var(--warn-soft);}
.lp-hero-panel .pill .dot{position:relative;}
.lp-hero-panel .pill .dot::after{
  content:""; position:absolute; inset:-3px; border-radius:50%; background:currentColor; opacity:.5;
  animation:dot-pulse 2.2s ease-out infinite;
}
.lp-hero-panel .pill.warn .dot::after{animation-delay:.6s;}
@keyframes dot-pulse{ 0%{ transform:scale(1); opacity:.45; } 100%{ transform:scale(2.6); opacity:0; } }
@media (prefers-reduced-motion: reduce){ .lp-hero-panel .pill .dot::after{animation:none; display:none;} }

.lp-section{max-width:1120px; margin:0 auto; padding:72px 24px;}
.lp-section-head{max-width:640px; margin:0 auto 44px; text-align:center;}
.lp-section-head .kicker{font-size:16px; font-weight:700; color:var(--accent-ink); text-transform:uppercase; letter-spacing:.6px; margin-bottom:10px; display:block;}
.lp-section-head h2{font-size:20px; font-weight:800; letter-spacing:-.4px; text-wrap:balance; margin-bottom:12px;}
.lp-section-head p{color:var(--ink-dim); font-size:16px; line-height:1.6;}

.lp-feature-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px;}
@media (max-width:900px){ .lp-feature-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .lp-feature-grid{grid-template-columns:1fr;} }
.lp-feature{
  position:relative; overflow:hidden;
  background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:24px;
  box-shadow:0 1px 2px rgba(18,22,28,.04);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.lp-feature::before{
  content:""; position:absolute; top:0; left:0; right:0; height:3px; border-radius:16px 16px 0 0;
  background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 40%, var(--good)));
  transform:scaleX(0); transform-origin:left; transition:transform .25s ease;
}
.lp-feature:hover{transform:translateY(-5px); box-shadow:0 20px 34px -18px rgba(18,22,28,.22); border-color:color-mix(in srgb, var(--accent) 30%, var(--border));}
.lp-feature:hover::before{transform:scaleX(1);}
.lp-feature .ic{
  width:42px; height:42px; border-radius:12px; display:flex; align-items:center; justify-content:center; margin-bottom:16px;
  background:linear-gradient(155deg, var(--accent-soft), color-mix(in srgb, var(--accent) 18%, var(--surface)));
  color:var(--accent-ink);
  box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 20%, transparent);
}
.lp-feature .ic svg{width:20px; height:20px;}
.lp-feature h3{font-size:20px; font-weight:700; margin-bottom:7px;}
.lp-feature p{font-size:16px; color:var(--ink-dim); line-height:1.6;}

.lp-why{background:color-mix(in srgb, var(--surface-2) 88%, transparent); border-top:1px solid var(--border-soft); border-bottom:1px solid var(--border-soft);}
.lp-why-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:32px; max-width:1120px; margin:0 auto; padding:0 24px;}
@media (max-width:800px){ .lp-why-grid{grid-template-columns:1fr;} }
.lp-why-item{position:relative; padding-left:22px;}
.lp-why-item::before{content:""; position:absolute; left:0; top:6px; bottom:6px; width:3px; border-radius:3px; background:linear-gradient(var(--accent), transparent);}
.lp-why-item .n{font-size:16px; font-weight:800; color:var(--accent-ink); letter-spacing:.5px; margin-bottom:10px;}
.lp-why-item h3{font-size:20px; font-weight:700; margin-bottom:8px; letter-spacing:-.1px;}
.lp-why-item p{font-size:16px; color:var(--ink-dim); line-height:1.65;}

.lp-cta-band{max-width:1120px; margin:0 auto; padding:72px 24px;}
.lp-cta-card{
  position:relative; overflow:hidden;
  background:linear-gradient(135deg, var(--accent), var(--accent-ink) 120%);
  color:#fff; border-radius:22px; padding:52px 44px;
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
  box-shadow:0 30px 60px -24px color-mix(in srgb, var(--accent) 55%, transparent);
}
.lp-cta-decor{position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(340px 220px at 88% -10%, rgba(255,255,255,.22), transparent 60%),
    radial-gradient(260px 200px at -5% 115%, rgba(255,255,255,.14), transparent 60%);
}
.lp-cta-card > div, .lp-cta-card > a{position:relative; z-index:1;}
.lp-cta-card h2{font-size:20px; font-weight:800; margin-bottom:8px; letter-spacing:-.4px;}
.lp-cta-card p{font-size:16px; opacity:.92; max-width:44ch;}
.lp-cta-card .lp-btn.ghost{background:#fff; color:var(--accent-ink); border-color:#fff; box-shadow:0 10px 24px -12px rgba(0,0,0,.35);}

/* ---- Stats bar ---- */
.lp-stats-wrap{max-width:1120px; margin:0 auto; padding:8px 24px 64px;}
.lp-stats-bar{
  display:grid; grid-template-columns:repeat(4,1fr); gap:16px;
  background:var(--surface); border:1px solid var(--border); border-radius:18px; padding:32px 24px;
  box-shadow:0 1px 2px rgba(18,22,28,.04);
}
@media (max-width:720px){ .lp-stats-bar{grid-template-columns:repeat(2,1fr); gap:28px 16px;} }
.lp-stat-item{text-align:center; position:relative;}
.lp-stat-item + .lp-stat-item::before{content:""; position:absolute; left:0; top:8px; bottom:8px; width:1px; background:var(--border);}
@media (max-width:720px){ .lp-stat-item + .lp-stat-item::before{display:none;} }
.lp-stat-item .num{font-size:30px; font-weight:800; color:var(--accent-ink); letter-spacing:-.8px; line-height:1.1;}
.lp-stat-item .label{font-size:16px; color:var(--ink-dim); margin-top:6px; line-height:1.4;}

/* ---- Results roadmap ---- */
.lp-roadmap-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:28px; position:relative; margin-top:8px;}
.lp-roadmap-grid::before{content:""; position:absolute; top:22px; left:12%; right:12%; height:2px; background:linear-gradient(90deg, var(--border), var(--accent) 50%, var(--border)); opacity:.5;}
@media (max-width:900px){ .lp-roadmap-grid{grid-template-columns:1fr; gap:0;} .lp-roadmap-grid::before{display:none;} }
.lp-roadmap-item{position:relative; padding-top:60px;}
@media (max-width:900px){ .lp-roadmap-item{padding:0 0 28px 60px; min-height:44px;} .lp-roadmap-item:last-child{padding-bottom:0;} }
.lp-roadmap-item .node{
  position:absolute; top:0; left:0; width:44px; height:44px; border-radius:50%; z-index:1;
  background:linear-gradient(155deg, var(--accent), var(--accent-ink)); color:#fff;
  display:flex; align-items:center; justify-content:center; font-weight:800; font-size:15px;
  box-shadow:0 8px 16px -6px color-mix(in srgb, var(--accent) 60%, transparent);
}
.lp-roadmap-item .connector-v{display:none;}
@media (max-width:900px){
  .lp-roadmap-item .connector-v{display:block; position:absolute; top:44px; left:22px; bottom:0; width:2px; background:var(--border);}
  .lp-roadmap-item:last-child .connector-v{display:none;}
}
.lp-roadmap-item .tag{font-size:16px; font-weight:700; color:var(--accent-ink); text-transform:uppercase; letter-spacing:.5px; margin-bottom:6px;}
.lp-roadmap-item h3{font-size:20px; font-weight:700; margin-bottom:7px;}
.lp-roadmap-item p{font-size:16px; color:var(--ink-dim); line-height:1.6;}

/* ---- FAQ ---- */
.lp-faq-list{max-width:760px; margin:0 auto; display:flex; flex-direction:column; gap:10px;}
.lp-faq-item{background:var(--surface); border:1px solid var(--border); border-radius:12px; padding:2px 22px; transition:border-color .2s ease;}
.lp-faq-item[open]{border-color:color-mix(in srgb, var(--accent) 30%, var(--border));}
.lp-faq-item summary{cursor:pointer; padding:17px 0; font-weight:700; font-size:20px; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px;}
.lp-faq-item summary::-webkit-details-marker{display:none;}
.lp-faq-item summary .plus{flex-shrink:0; width:20px; height:20px; position:relative;}
.lp-faq-item summary .plus::before, .lp-faq-item summary .plus::after{content:""; position:absolute; background:var(--ink-faint); border-radius:2px; top:50%; left:50%; transform:translate(-50%,-50%);}
.lp-faq-item summary .plus::before{width:12px; height:2px;}
.lp-faq-item summary .plus::after{width:2px; height:12px; transition:transform .2s ease;}
.lp-faq-item[open] summary .plus::after{transform:translate(-50%,-50%) rotate(90deg) scaleY(0);}
.lp-faq-item p{padding:0 0 18px; margin:0; color:var(--ink-dim); font-size:16px; line-height:1.65;}

.lp-footer{max-width:1120px; margin:0 auto; padding:32px 24px 48px; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; border-top:1px solid var(--border);}
.lp-footer .brand{padding:0;}
.lp-footer .contact{font-size:16px; color:var(--ink-dim); display:flex; gap:18px; flex-wrap:wrap;}
.lp-footer .contact a{color:inherit; text-decoration:none;}
.lp-footer .contact a:hover{color:var(--accent-ink);}

/* ---- Scroll reveal ---- */
.lp-reveal{opacity:0; transform:translateY(18px); transition:opacity .55s ease, transform .55s ease;}
.lp-reveal.in{opacity:1; transform:translateY(0);}
.lp-feature-grid .lp-feature:nth-child(2){transition-delay:.05s;}
.lp-feature-grid .lp-feature:nth-child(3){transition-delay:.1s;}
.lp-feature-grid .lp-feature:nth-child(4){transition-delay:.15s;}
.lp-why-grid .lp-why-item:nth-child(2){transition-delay:.08s;}
.lp-why-grid .lp-why-item:nth-child(3){transition-delay:.16s;}
@media (prefers-reduced-motion: reduce){
  .lp-reveal{opacity:1; transform:none; transition:none;}
  .lp-feature, .lp-btn{transition:none;}
}

/* ---- Dark split feature showcase ---- */
.lp-split{max-width:1120px; margin:0 auto; padding:72px 24px;}
.lp-split-grid{
  position:relative;
  display:grid; grid-template-columns:1fr 1fr;
  border:1px solid rgba(255,255,255,.08); border-radius:20px; overflow:hidden;
  background:#15181D;
  box-shadow:0 30px 60px -30px rgba(18,22,28,.35);
}
@media (prefers-color-scheme:dark){ .lp-split-grid{box-shadow:0 30px 60px -30px rgba(0,0,0,.6);} }
@media (max-width:860px){ .lp-split-grid{grid-template-columns:1fr;} }
.lp-split-arches{
  position:absolute; top:0; left:0; right:0; height:44px; z-index:0; pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='90'%3E%3Ccircle cx='60' cy='60' r='54' fill='none' stroke='%233FB8B0' stroke-opacity='0.3' stroke-width='1.4'/%3E%3C/svg%3E");
  background-repeat:repeat-x; background-size:120px 90px; background-position:center top;
}
.lp-split-panel{padding:44px 40px; position:relative; z-index:1;}
.lp-split-panel + .lp-split-panel{border-top:1px solid rgba(255,255,255,.08);}
@media (min-width:861px){
  .lp-split-panel + .lp-split-panel{border-top:none; border-left:1px solid rgba(255,255,255,.08);}
}
.lp-split-panel h3{color:#F3F4F6; font-size:20px; font-weight:800; letter-spacing:-.3px; line-height:1.3; margin-bottom:16px; text-wrap:balance;}
.lp-split-panel .lp-split-link{display:inline-flex; align-items:center; gap:5px; color:#8FE3D6; font-size:16px; font-weight:700; text-decoration:none; margin-bottom:36px;}
.lp-split-panel .lp-split-link svg{width:13px; height:13px; transition:transform .2s ease;}
.lp-split-panel .lp-split-link:hover svg{transform:translateX(3px);}

.lp-badge-grid{display:flex; flex-wrap:wrap; gap:10px;}
.lp-ai-badge{
  display:inline-flex; align-items:center; gap:9px; padding:9px 16px 9px 10px; border-radius:99px;
  background:#1D2128; border:1px solid rgba(255,255,255,.08); color:#D7DAE0; font-size:16px; font-weight:600;
}
.lp-ai-badge .mark{width:22px; height:22px; border-radius:7px; display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:800; color:#0B0D10; flex-shrink:0;}

.lp-browser-mock{background:#1D2128; border:1px solid rgba(255,255,255,.08); border-radius:14px; padding:16px; margin-bottom:22px;}
.lp-browser-mock .dots{display:flex; gap:5px; margin-bottom:14px;}
.lp-browser-mock .dots span{width:7px; height:7px; border-radius:50%; background:rgba(255,255,255,.14);}
.lp-browser-mock .ln{height:8px; border-radius:4px; background:rgba(255,255,255,.09); margin-bottom:9px;}
.lp-browser-mock .ln.hi{background:#3FB8B0; opacity:.55;}

.lp-score-row{display:flex; align-items:center; gap:18px;}
.lp-score-ring{
  --pct:95;
  position:relative;
  width:74px; height:74px; border-radius:50%; flex-shrink:0;
  background:conic-gradient(#3FB8B0 calc(var(--pct)*1%), rgba(255,255,255,.08) 0);
  display:flex; align-items:center; justify-content:center;
}
.lp-score-ring::before{
  content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:58px; height:58px; border-radius:50%; background:#1D2128;
}
.lp-score-ring span{position:relative; z-index:1; color:#F3F4F6; font-size:19px; font-weight:800;}
.lp-score-label{color:#9AA1AC; font-size:16px; line-height:1.5;}
.lp-score-label b{color:#F3F4F6; display:block; font-size:16px; margin-bottom:2px;}

/* ---- Pricing cards ---- */
.lp-pricing-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:stretch;}
@media (max-width:900px){ .lp-pricing-grid{grid-template-columns:1fr; max-width:420px; margin:0 auto;} }
.lp-price-card{
  position:relative; display:flex; flex-direction:column;
  background:var(--surface); border:1px solid var(--border); border-radius:18px; padding:28px 26px;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.lp-price-card:hover{transform:translateY(-4px); box-shadow:0 20px 34px -18px rgba(18,22,28,.22);}
.lp-price-card.featured{border-color:color-mix(in srgb, var(--accent) 45%, var(--border)); box-shadow:0 20px 40px -20px color-mix(in srgb, var(--accent) 40%, transparent);}
.lp-price-badge{position:absolute; top:-13px; left:26px; background:linear-gradient(135deg, var(--accent), var(--accent-ink)); color:#fff; font-size:14px; font-weight:700; padding:5px 12px; border-radius:99px; letter-spacing:.2px;}
.lp-price-name{font-size:20px; font-weight:700; margin-bottom:6px;}
.lp-price-amount{display:flex; align-items:baseline; gap:5px; margin-bottom:6px;}
.lp-price-amount .num{font-size:34px; font-weight:800; letter-spacing:-.6px;}
.lp-price-amount .cycle{font-size:16px; color:var(--ink-faint);}
.lp-price-desc{font-size:16px; color:var(--ink-dim); line-height:1.6; margin-bottom:18px; min-height:40px;}
.lp-price-list{list-style:none; padding:0; margin:0 0 22px; display:flex; flex-direction:column; gap:10px; flex:1;}
.lp-price-list li{display:flex; align-items:center; gap:9px; font-size:16px; color:var(--ink);}
.lp-price-list li svg{width:16px; height:16px; color:var(--good); flex-shrink:0;}

/* ---- Order form ---- */
.lp-order-section{background:color-mix(in srgb, var(--surface-2) 88%, transparent); border-top:1px solid var(--border-soft); border-bottom:1px solid var(--border-soft);}
.lp-order-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px;}
@media (max-width:640px){ .lp-order-grid{grid-template-columns:1fr;} }
.lp-order-card{background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:28px;}
.lp-bank-card{background:var(--accent-soft); border:1px solid color-mix(in srgb, var(--accent) 25%, transparent); border-radius:14px; padding:18px 20px; margin-bottom:20px;}
.lp-bank-card h4{font-size:20px; font-weight:700; margin-bottom:10px; color:var(--accent-ink);}
.lp-bank-row{display:flex; justify-content:space-between; gap:12px; font-size:16px; padding:5px 0; border-bottom:1px dashed color-mix(in srgb, var(--accent) 22%, transparent);}
.lp-bank-row:last-child{border-bottom:none;}
.lp-bank-row .k{color:var(--ink-dim);}
.lp-bank-row .v{font-weight:700; font-family:var(--font-mono, monospace);}
