/* Base styles */
:root { --bg:#ffffff; --bg-alt:#fff7ed; --text:#0f172a; --muted:#6b7280; --brand:#8E2DE2; --brand-dark:#4A00E0; --accent:#8E2DE2; --line:#e5e7eb; }
* { box-sizing: border-box; }
html, body { margin:0; padding:0; background:var(--bg); color:var(--text); font:16px/1.5 system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, 'Helvetica Neue', Arial; }
.container { max-width: 1080px; margin: 0 auto; padding: 0 16px; }

/* Header */
.site-header { border-bottom:1px solid var(--line); position:sticky; top:0; background:var(--bg); z-index:10; }
.header-inner { display:flex; align-items:center; justify-content:space-between; height:64px; }
.brand { font-weight:700; font-size:20px; color:var(--brand); }
.nav a { color:var(--text); text-decoration:none; margin-left:16px; }
.nav a:hover { color:var(--brand); }

/* Hero (first screen) */
.hero-vg { background: #ffffff; padding: 96px 0 72px; scroll-margin-top: 80px; }
.hero-inner { display: grid; grid-template-columns: 1.1fr 0.9fr; align-items: center; max-width: 1100px; margin: 0 auto; }
.hero-eyebrow { color: #8E2DE2; font-weight: 800; letter-spacing: .3px; margin: 0 0 6px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
.hero-title { font-size: 42px; line-height: 1.15; margin: 0 0 10px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-weight: 700; }
.hero-sub { font-size: 18px; color: #444; margin: 0 0 16px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
/* Styled hero benefits with badges */
.hero-benefits { list-style: none; padding: 0; margin: 16px 0 18px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
.hero-benefits li { position: relative; display: flex; align-items: center; gap: 10px; padding: 10px 12px 10px 46px; background: #fff; border: 1px solid rgba(107, 50, 212, 0.08); border-radius: 14px; box-shadow: 0 6px 18px rgba(0,0,0,.06); color: #333; font-size: 15px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
.hero-benefits li::before { content: "✔"; position: absolute; left: 12px; top: 50%; transform: translateY(-50%); width: 26px; height: 26px; display: flex; align-items: center; justify-content: center; border-radius: 999px; font-size: 14px; color: #fff; background: linear-gradient(135deg, var(--brand,#8E2DE2), var(--brand-dark,#4A00E0)); box-shadow: 0 8px 18px rgba(142,45,226,.25); }
.hero-actions { display: flex; gap: 12px; margin: 10px 0 12px; }
.hero-primary { box-shadow: 0 10px 22px rgba(142,45,226,.25); font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
.hero-secondary { background: #fff; color: #8E2DE2; border: 1px solid rgba(142,45,226,.35); font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
.hero-price { display: flex; align-items: baseline; gap: 12px; margin-top: 8px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
.price-old { color: #999; text-decoration: line-through; font-size: 18px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
.price-new { color: red; font-weight: 800; font-size: 24px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
.hero-badges { display: flex; gap: 10px; margin-top: 14px; }
.hero-right { display:flex; align-items:center; justify-content:center; }
.hero-image { width: 420px; max-width: 90vw; border-radius: 20px; border: 3px solid #e5e7eb; padding: 12px; background: #fff; box-shadow: 0 4px 12px rgba(0,0,0,0.08); }

@media (max-width: 1024px) {
  .hero-title { font-size: 36px; }
  .hero-image { width: 360px; border-radius: 18px; border: 3px solid #e5e7eb; padding: 10px; }
}
@media (max-width: 768px) {
  .hero-vg { padding: 80px 0 56px; }
  .hero-inner { display: flex; flex-direction: column; text-align: center; align-items: center; margin-top: 30px; }
  .hero-left { display: contents; }
  .hero-eyebrow, .hero-title { order: 1; }
  .hero-right { order: 2; }
  .hero-title { margin-bottom: 8px; }
  .hero-sub, .hero-benefits, .hero-actions, .hero-price, .hero-badges { order: 3; }
  .hero-sub { margin-bottom: 12px; }
  .hero-benefits { grid-template-columns: 1fr; gap: 8px; margin: 10px 0 12px; }
  .hero-benefits li { padding: 10px 12px 10px 42px; border-radius: 12px; font-size: 14.5px; }
  .hero-benefits li::before { width: 24px; height: 24px; font-size: 13px; left: 12px; }
  .hero-actions { justify-content: center; flex-direction: column; gap: 8px; margin: 8px 0 8px; }
  .hero-actions .btn { width: 100%; max-width: 420px; margin: 0 auto; }
  .hero-image { width: 300px; border-radius: 16px; margin-bottom: 12px; border: 3px solid #e5e7eb; padding: 10px; }
  .hero-price { justify-content: center; margin-top: 6px; }
  .hero-badges { justify-content: center; margin-top: 10px; }
}
@media (max-width: 520px) {
  .container { padding: 0 12px; }
  .section-title { font-size: 27px; line-height: 1.25; margin-bottom: 16px; }
  .hero-vg { padding: 72px 0 48px; }
  .hero-title { font-size: 28px; margin-bottom: 6px; }
  .hero-sub { font-size: 16px; margin-bottom: 10px; }
  .hero-image { width: 240px; border-radius: 14px; border: 2px solid #e5e7eb; padding: 8px; }
  .hero-actions { flex-direction: column; gap: 8px; margin: 8px 0 8px; }
  .hero-actions .btn { width: 100%; max-width: 420px; }
  .hero-benefits { gap: 7px; margin: 8px 0 10px; }
  .hero-benefits li { padding: 9px 11px 9px 40px; font-size: 15px; }
  .hero-benefits li::before { width: 22px; height: 22px; font-size: 12px; }
  .photo-caption { margin-top: 8px; font-size: 12.5px; }
  .results-list li { font-size: 14px; }
  .feature-item { padding: 14px; }
  .feature-title { font-size: 15px; }
  .feature-text { font-size: 13px; }
  .hero-price { margin-top: 6px; }
  .hero-badges { margin-top: 8px; }
}
.hero .sub { color: var(--muted); margin:0; }

/* Catalog */
.catalog { padding: 24px 0; }
.catalog h2 { margin-top:0; }
.products { display:grid; grid-template-columns: repeat(3, 1fr); gap:16px; }
.product { border:1px solid var(--line); border-radius:12px; overflow:hidden; background:#fff; display:flex; flex-direction:column; }
.product-media { height:160px; background:#f1f5f9; display:flex; align-items:center; justify-content:center; color:var(--muted); font-size:14px; }
.product-content { padding:16px; display:flex; flex-direction:column; gap:12px; }
.product .desc { color:var(--muted); font-size:14px; }
.price-row { display:flex; gap:12px; align-items:baseline; }
.price-current { color:var(--brand); font-weight:700; }
.price-original { color:var(--muted); text-decoration: line-through; }
.btn { appearance:none; border:none; border-radius:25px; padding:12px 22px; background:linear-gradient(135deg, #8E2DE2, #4A00E0); color:#fff; cursor:pointer; font-weight:700; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; }
.btn:hover { filter: brightness(1.05); }
.btn-secondary { background:#334155; color:#fff; }
.btn-secondary:hover { background:#1f2937; }
.label { font-size:14px; color:var(--muted); }
select, input, textarea { width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:8px; font:inherit; }
textarea { min-height:100px; }

/* Cart */
.cart { padding: 24px 0; }
.cart-list { display:flex; flex-direction:column; gap:12px; }
.cart-item { display:grid; grid-template-columns: 1fr auto auto auto; align-items:center; gap:12px; border:1px solid var(--line); border-radius:8px; padding:8px 12px; }
.cart-item-title { font-weight:600; }
.cart-item-qty { display:flex; align-items:center; gap:8px; }
.qty-btn { width:28px; height:28px; border-radius:6px; background:#e2e8f0; border:none; cursor:pointer; }
.qty-btn:hover { background:#cbd5e1; }
.cart-summary { display:flex; align-items:center; justify-content:space-between; margin-top:12px; }
.divider { border:none; border-top:1px solid var(--line); margin:24px 0; }
.status { margin-top:12px; color: var(--brand); font-weight:600; }
.hint { color:var(--muted); font-size:13px; }
.payment-details { margin: 12px 0; }
.requisites { border:1px solid var(--line); border-radius:8px; padding:12px; background:#f8fafc; }

/* Footer */
.site-footer { border-top:1px solid var(--line); padding:16px 0; background:#fafafa; }
.footer-inner { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }

/* Responsive */
@media (max-width: 900px) {
  .products { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .header-inner { flex-direction:column; height:auto; gap:8px; padding:8px 0; }
  .products { grid-template-columns: 1fr; }
  .cart-item { grid-template-columns: 1fr; }
}

/* Promo & advantages */
.promo-bar { background:linear-gradient(135deg, #8E2DE2, #4A00E0); color:#fff; padding:8px 0; border-bottom:1px solid var(--line); }
.promo-bar .timer { font-weight:700; margin-left:8px; }
.advantages { display:grid; grid-template-columns: repeat(3, 1fr); gap:12px; padding:24px 0; }
.adv-card { border:1px solid var(--line); border-radius:8px; padding:12px; background:#f8fafc; }
.checkout-cta { margin-top:16px; }

/* Sticky CTA */
.sticky-cta { position:fixed; right:16px; bottom:16px; background:linear-gradient(135deg, #8E2DE2, #4A00E0); color:#fff; padding:12px 16px; border-radius:999px; box-shadow:0 6px 16px rgba(0,0,0,.15); text-decoration:none; font-weight:700; }
.sticky-cta:hover { background:linear-gradient(135deg, #8E2DE2, #4A00E0); }
.btn:hover { background:linear-gradient(135deg, #8E2DE2, #4A00E0); }
.btn-secondary { background:#334155; }
.btn-secondary:hover { background:#1f2937; }
.label { font-size:14px; color:var(--muted); }
select, input, textarea { width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:8px; font:inherit; }
textarea { min-height:100px; }

/* Cart */
.cart { padding: 24px 0; }
.cart-list { display:flex; flex-direction:column; gap:12px; }
.cart-item { display:grid; grid-template-columns: 1fr auto auto auto; align-items:center; gap:12px; border:1px solid var(--line); border-radius:8px; padding:8px 12px; }
.cart-item-title { font-weight:600; }
.cart-item-qty { display:flex; align-items:center; gap:8px; }
.qty-btn { width:28px; height:28px; border-radius:6px; background:#e2e8f0; border:none; cursor:pointer; }
.qty-btn:hover { background:#cbd5e1; }
.cart-summary { display:flex; align-items:center; justify-content:space-between; margin-top:12px; }
.divider { border:none; border-top:1px solid var(--line); margin:24px 0; }
.status { margin-top:12px; color: var(--brand); font-weight:600; }
.hint { color:var(--muted); font-size:13px; }
.payment-details { margin: 12px 0; }
.requisites { border:1px solid var(--line); border-radius:8px; padding:12px; background:#f8fafc; }

/* Footer */
.site-footer { border-top:1px solid var(--line); padding:24px 0; background:#1f1f1f; color:#fff; }
.footer-inner { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }

/* Responsive */
@media (max-width: 900px) {
  .products { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .header-inner { flex-direction:column; height:auto; gap:8px; padding:8px 0; }
  .products { grid-template-columns: 1fr; }
  .cart-item { grid-template-columns: 1fr; }
}

/* Badges */
.badge { display:inline-block; background:var(--accent); color:#fff; font-size:12px; font-weight:700; padding:6px 10px; border-radius:999px; box-shadow:0 2px 6px rgba(0,0,0,.12); margin: 5px; }
.product { position:relative; }
.product .badge { position:absolute; top:8px; left:8px; }

/* Sticky top timer separators */
.sticky-top-cta .sticky-timer-sep { font-weight:700; line-height:1; font-size:24px; margin:0 6px; opacity:.95; animation: sticky-blink 1s steps(2, start) infinite; }
@keyframes sticky-blink { 50% { opacity: .25; } }

/* Promo Offer Card */
.promo-offer { padding: 48px 0; }
.promo-card {
  background: #ffffff;
  border: 4px solid var(--brand);
  border-radius: 18px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
  padding: 22px 22px 24px;
  text-align: center;
  max-width: 560px;
  margin: 0 auto;
}
.promo-eyebrow { color: var(--brand); font-weight: 800; letter-spacing: .2px; margin: 0 0 10px; }
.promo-timer { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px; }
.promo-timer-sep { font-size: 24px; opacity: 0.85; margin: 0 4px; }
.promo-card .timer-unit { text-align: center; }
.promo-card .timer-number { font-size: 32px; font-weight: 800; display: block; line-height: 1; }
.promo-card .timer-label { font-size: 12px; color: #555; margin-top: 4px; }
.promo-title { font-size: 22px; font-weight: 800; color: var(--text); margin: 8px 0 6px; text-transform: uppercase; }
.promo-sub { color: #444; margin: 0 0 12px; }
.promo-image { max-width: 360px; margin: 0 auto 10px; }
.promo-image img { width: 100%; display: block; border-radius: 14px; box-shadow: 0 6px 18px rgba(0,0,0,0.06); }
.promo-price { display: flex; align-items: baseline; gap: 12px; justify-content: center; margin: 8px 0 12px; }
.promo-actions { margin-top: 8px; }
.promo-btn { background: linear-gradient(135deg, var(--brand), var(--brand-dark)); }

@media (max-width: 768px) {
  .promo-card { padding: 18px 18px 20px; border-radius: 16px; }
  .promo-timer { gap: 6px; margin-bottom: 12px; }
  .promo-timer-sep { font-size: 22px; margin: 0 4px; }
  .promo-card .timer-number { font-size: 28px; }
  .promo-image { max-width: 300px; }
}
@media (max-width: 520px) {
  .promo-card { max-width: 100%; }
  .promo-card .timer-number { font-size: 24px; }
  .promo-timer-sep { font-size: 20px; }
  .promo-image { max-width: 260px; }
}

/* Kit Includes — clean rewrite, number always on the left */
.kit-includes { padding: 56px 0; }
.kit-grid { width: min(760px, 92vw); margin: 0 auto; display: grid; row-gap: 44px; }

/* Item layout: number left, image right */
.kit-item { display: grid !important; grid-template-columns: 76px 1fr !important; grid-template-areas: "number image" "title title" "text text" !important; column-gap: 8px; align-items: center !important; }
/* Force even items to keep number on the left */
.kit-item:nth-child(even) { grid-template-columns: 76px 1fr !important; grid-template-areas: "number image" "title title" "text text" !important; }

/* Pieces */
.kit-number { grid-area: number !important; display: flex; align-items: center; justify-content: center; font-weight: 800; color: #8E2DE2; font-size: 50px; line-height: 1; margin-left: 80px; }
.kit-image { grid-area: image !important; display: flex; justify-content: center; align-items: center; }
.kit-image img { width: 260px; max-width: 60vw; border-radius: 16px; }
.kit-title { grid-area: title !important; margin: 14px 0 6px; font-size: 20px; font-weight: 700; text-align: center; }
.kit-text { grid-area: text !important; margin: 0; font-size: 16px; line-height: 1.6; color: #333; text-align: center; }

/* Mobile */
@media (max-width: 768px) {
  .kit-grid { width: min(600px, 94vw); row-gap: 36px; }
  .kit-item { grid-template-columns: 60px 1fr !important; }
  /* Force even items on mobile too */
  .kit-item:nth-child(even) { grid-template-columns: 60px 1fr !important; grid-template-areas: "number image" "title title" "text text" !important; }
  .kit-number { font-size: 60px; }
  .kit-image img { width: 200px; max-width: 70vw; border-radius: 16px; }
}

  /* Eye Offer */
.eye-offer { padding: 24px 0; }
.eye-offer .offer-card { background:#0f172a; color:#f8fafc; border-radius:18px; padding:26px 18px; box-shadow:0 10px 26px rgba(0,0,0,.2); border:1px solid rgba(255,255,255,.08); position:relative; overflow:hidden; }
.eye-offer .offer-card::before { content:""; position:absolute; top:0; left:0; right:0; height:3px; background: linear-gradient(90deg, #8E2DE2, #4A00E0); opacity:.9; }
.eye-offer .offer-image { text-align:center; margin: 0 0 10px; }
.eye-offer .offer-image img { width:min(680px,90vw); max-width:90vw; border-radius:16px; box-shadow:0 10px 28px rgba(0,0,0,.22); }
.eye-offer .offer-note { color:#cbd5e1; font-size:14px; margin:6px 0 12px; }
.eye-offer .offer-list { list-style:none; padding:0; margin:0 0 12px; display:flex; flex-direction:column; gap:8px; }
.eye-offer .offer-list li { display:flex; gap:10px; align-items:flex-start; font-size:14.5px; line-height:1.4; color:#e5e7eb; }
.eye-offer .offer-list .icon { color:#8E2DE2; font-size:18px; flex:0 0 auto; margin-top:1px; }
.eye-offer .offer-total { text-align:center; font-weight:700; color:#e5e7eb; margin: 8px 0 8px; font-size:14.5px; letter-spacing:.2px; }
.eye-offer .offer-actions { display:flex; justify-content:center; }
.eye-offer .offer-actions .btn { padding:12px 22px; }

@media (max-width: 768px) {
  .eye-offer .offer-card { padding:30px 16px; }
  .eye-offer .offer-list li { font-size:13.5px; }
  .eye-offer .offer-image img { width:min(600px,92vw); }
}
.kit-cta { margin-top: 24px; display:flex; justify-content:center; }
.cta-btn { display:inline-block; padding:12px 24px; border-radius:25px; background:linear-gradient(135deg, #8E2DE2, #4A00E0); color:#fff; font-weight:700; text-decoration:none; box-shadow:0 6px 16px rgba(0,0,0,.15); }
.cta-btn:hover { filter:brightness(1.05); }

@media (max-width: 768px) {
  .kit-grid { gap: 44px; }
  .kit-image img { width: 100px; border-radius: 16px; }
  .kit-title { font-size: 20px; }
  .kit-text { font-size: 15px; }
  /* Mobile: keep order — number left, image right */
  .kit-number { grid-column: 1; }
  .kit-image { grid-column: 2; }
}
@media (max-width: 520px) {
  .kit-grid { gap: 36px; }
  .kit-image img { width: 110px; border-radius: 14px; }
  .kit-title { font-size: 18px; }
  .kit-text { font-size: 14px; }
}

/* Results bottom section */
.results-vg { padding: 64px 0; background:#fff; }
.results-grid { display:flex; align-items:flex-start; justify-content:center; gap:24px; flex-wrap:wrap; }
.result-item { display:flex; flex-direction:column; align-items:center; }
.result-photo { width: 300px; max-width: 42vw; border-radius: 18px; box-shadow: 0 12px 24px rgba(0,0,0,.12); }
.photo-caption { margin-top: 10px; font-size: 14px; color:#555; text-align:center; }
.result-badge { display:inline-flex; align-items:center; justify-content:center; min-width:52px; height:24px; padding:0 10px; border-radius:999px; font-size:12px; font-weight:700; color:#fff; margin-right:8px; box-shadow:0 6px 12px rgba(0,0,0,.12); }
.result-badge-before { background: linear-gradient(135deg, #7f8fa6, #95a5a6); }
.result-badge-after { background: linear-gradient(135deg, var(--brand,#8E2DE2), var(--brand-dark,#4A00E0)); }
.results-list { list-style:none; padding:0; margin: 20px auto 0; max-width: 820px; display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; }
.results-list li { position:relative; padding-left:28px; font-size:16px; color:#333; }
.results-list li::before { content:"✔"; position:absolute; left:0; top:50%; transform:translateY(-50%); width:22px; height:22px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; color:#fff; background: linear-gradient(135deg, var(--brand), var(--brand-dark)); box-shadow: 0 6px 12px rgba(142,45,226,.25); }

@media (max-width: 1024px) {
  .result-photo { width: 260px; max-width: 44vw; }
}
@media (max-width: 768px) {
  .results-list { grid-template-columns: 1fr; }
  .results-grid { gap:18px; }
  .result-photo { width: 240px; max-width: 70vw; border-radius:16px; }
  .photo-caption { font-size: 13px; }
}
@media (max-width: 520px) {
  .results-vg { padding: 48px 0; }
  .result-photo { width: 210px; max-width: 78vw; border-radius:14px; }
  .results-list li { font-size:15px; }
}
/* Features icons section */
.features-vg {
  padding: 56px 0;
  background: #faf8ff;
  border-top: 1px solid rgba(107, 50, 212, 0.1);
}
.features-vg .section-title {
  text-align: center;
  margin-bottom: 28px;
  font-weight: 900;

}
.features-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.feature-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 18px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 6px 22px rgba(0,0,0,0.06);
}
.feature-icon {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--brand-purple,#6B32D4), #9A6CF3);
  color: #fff;
  flex: 0 0 44px;
}
.feature-icon i { font-size: 20px; }
.feature-title { font-size: 16px; font-weight: 700; margin: 0 0 6px; }
.feature-text { font-size: 14px; color: #555; margin: 0; }

/* Tablet */
@media (max-width: 1024px) {
  .features-grid { grid-template-columns: repeat(2, 1fr); }
}
/* Mobile */
@media (max-width: 768px) {
  .features-vg { padding: 44px 0; }
  .features-grid { grid-template-columns: 1fr; gap: 14px; }
  .feature-item { padding: 16px; }
}
@media (max-width: 520px) {
  .feature-icon { width: 40px; height: 40px; }
  .feature-icon i { font-size: 18px; }
}
@media (max-width: 520px) {
  .feature-grid { gap:18px; }
}
@media (max-width: 520px) {
  .feature-vg { padding: 44px 0; }
  .feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
  .feature-list li { font-size:15px; }
}
/* Proof Section */
.proof-vg {  scroll-margin-top: 80px; }
.proof-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 24px; align-items: center; }
.proof-item { margin: 0; }
.proof-photo { width: 100%; display: block; border-radius: 16px; box-shadow: 0 14px 28px rgba(0,0,0,.12); }
.proof-features { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; }
.proof-features li { position: relative; display: flex; align-items: center; gap: 12px; padding: 12px 14px 12px 56px; background: #fff; border: 1px solid rgba(107, 50, 212, 0.12); border-radius: 16px; box-shadow: 0 4px 14px rgba(0,0,0,.05); color: #333; font-size: 16px; }
.proof-icon { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; display:flex; align-items:center; justify-content:center; border-radius: 999px; color: #fff; background: linear-gradient(135deg, var(--brand,#8E2DE2), var(--brand-dark,#4A00E0)); box-shadow: 0 6px 14px rgba(142,45,226,.22); }
.proof-icon i { font-size: 18px; }

@media (max-width: 1024px) {
  .proof-photo { border-radius: 14px; }
}
@media (max-width: 768px) {
  .proof-grid { grid-template-columns: 1fr; }
  .proof-features { grid-template-columns: 1fr; }
  .proof-features li { padding: 10px 12px 10px 48px; font-size: 14.5px; border-radius: 12px; }
  .proof-icon { width: 26px; height: 26px; left: 14px; }
}
@media (max-width: 520px) {
  .proof-features { gap: 9px; }
  .proof-features li { padding: 9px 11px 9px 44px; font-size: 14px; }
  .proof-icon { width: 24px; height: 24px; left: 12px; }
}
.feature-icon { width: 40px; height: 40px; }
.feature-icon i { font-size: 18px; }
.feature-grid { gap:18px; }
.feature-vg { padding: 44px 0; }
.feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
.feature-list li { font-size:15px; }
/* Proof block refinements */
.proof-lead { font-size: 19px; line-height: 1.5; color:#444; margin: 8px 0 18px; }
.proof-features li { font-size: 16.5px; line-height: 1.5; }
.proof-icon i { font-size: 18px; }

@media (max-width: 768px) {
  .proof-lead { font-size: 18px; }
}
@media (max-width: 520px) {
  .proof-lead { font-size: 16.5px; }
  .proof-features li { font-size: 15px; }
}
.feature-icon { width: 40px; height: 40px; }
.feature-icon i { font-size: 18px; }
.feature-grid { gap:18px; }
.feature-vg { padding: 44px 0; }
.feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
.feature-list li { font-size:15px; }
/* Reviews carousel responsive */
.reviews .reviews-carousel { position: relative; }
.reviews .carousel-container { overflow: hidden; }
.reviews .carousel-track { display: flex; gap: 16px; transition: transform 300ms ease; will-change: transform; }
.reviews .review-slide { flex: 0 0 100%; }
.reviews .review-media img { width: 100%; height: auto; display: block; border-radius: 12px; box-shadow: 0 6px 18px rgba(0,0,0,0.08); background: #fff; }

/* Tablet: show 2 */
@media (min-width: 768px) {
  .reviews .review-slide { flex-basis: calc((100% - 16px) / 2); }
}
/* Desktop: show 3 */
@media (min-width: 1024px) {
  .reviews .review-slide { flex-basis: calc((100% - 32px) / 3); }
}

/* Dots styling */
.reviews .carousel-dots { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 12px; }
.reviews .carousel-dots .dot { width: 8px; height: 8px; border-radius: 999px; background: #d9d9d9; border: 0; padding: 0; cursor: pointer; }
.reviews .carousel-dots .dot.active { background: #6b32d4; }
.result-photo { width: 300px; max-width: 42vw; border-radius: 18px; box-shadow: 0 12px 24px rgba(0,0,0,.12); }
.photo-caption { margin-top: 10px; font-size: 14px; color:#555; text-align:center; }
.result-badge { display:inline-flex; align-items:center; justify-content:center; min-width:52px; height:24px; padding:0 10px; border-radius:999px; font-size:12px; font-weight:700; color:#fff; margin-right:8px; box-shadow:0 6px 12px rgba(0,0,0,.12); }
.result-badge-before { background: linear-gradient(135deg, #7f8fa6, #95a5a6); }
.result-badge-after { background: linear-gradient(135deg, var(--brand,#8E2DE2), var(--brand-dark,#4A00E0)); }
.results-list { list-style:none; padding:0; margin: 20px auto 0; max-width: 820px; display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; }
.results-list li { position:relative; padding-left:28px; font-size:16px; color:#333; }
.results-list li::before { content:"✔"; position:absolute; left:0; top:50%; transform:translateY(-50%); width:22px; height:22px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; color:#fff; background: linear-gradient(135deg, var(--brand), var(--brand-dark)); box-shadow: 0 6px 12px rgba(142,45,226,.25); }

@media (max-width: 1024px) {
  .result-photo { width: 260px; max-width: 44vw; }
}
@media (max-width: 768px) {
  .results-list { grid-template-columns: 1fr; }
  .results-grid { gap:18px; }
  .result-photo { width: 240px; max-width: 70vw; border-radius:16px; }
  .photo-caption { font-size: 13px; }
}
@media (max-width: 520px) {
  .results-vg { padding: 48px 0; }
  .result-photo { width: 210px; max-width: 78vw; border-radius:14px; }
  .results-list li { font-size:15px; }
}
/* Features icons section */
.features-vg {
  padding: 56px 0;
  background: #faf8ff;
  border-top: 1px solid rgba(107, 50, 212, 0.1);
}
.features-vg .section-title {
  text-align: center;
  margin-bottom: 28px;
}
.features-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.feature-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 18px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 6px 22px rgba(0,0,0,0.06);
}
.feature-icon {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--brand-purple,#6B32D4), #9A6CF3);
  color: #fff;
  flex: 0 0 44px;
}
.feature-icon i { font-size: 20px; }
.feature-title { font-size: 16px; font-weight: 700; margin: 0 0 6px; }
.feature-text { font-size: 14px; color: #555; margin: 0; }

/* Tablet */
@media (max-width: 1024px) {
  .features-grid { grid-template-columns: repeat(2, 1fr); }
}
/* Mobile */
@media (max-width: 768px) {
  .features-vg { padding: 44px 0; }
  .features-grid { grid-template-columns: 1fr; gap: 14px; }
  .feature-item { padding: 16px; }
}
@media (max-width: 520px) {
  .feature-icon { width: 40px; height: 40px; }
  .feature-icon i { font-size: 18px; }
}
@media (max-width: 520px) {
  .feature-grid { gap:18px; }
}
@media (max-width: 520px) {
  .feature-vg { padding: 44px 0; }
  .feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
  .feature-list li { font-size:15px; }
}
/* Proof Section */
.proof-vg { padding: 60px 0; scroll-margin-top: 80px; }
.proof-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 24px; align-items: center; }
.proof-item { margin: 0; }
.proof-photo { width: 100%; display: block; border-radius: 16px; box-shadow: 0 14px 28px rgba(0,0,0,.12); }
.proof-features { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; }
.proof-features li { position: relative; display: flex; align-items: center; gap: 12px; padding: 12px 14px 12px 56px; background: #fff; border: 1px solid rgba(107, 50, 212, 0.12); border-radius: 16px; box-shadow: 0 4px 14px rgba(0,0,0,.05); color: #333; font-size: 16px; }
.proof-icon { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; display:flex; align-items:center; justify-content:center; border-radius: 999px; color: #fff; background: linear-gradient(135deg, var(--brand,#8E2DE2), var(--brand-dark,#4A00E0)); box-shadow: 0 6px 14px rgba(142,45,226,.22); }
.proof-icon i { font-size: 18px; }

@media (max-width: 1024px) {
  .proof-photo { border-radius: 14px; }
}
@media (max-width: 768px) {
  .proof-grid { grid-template-columns: 1fr; }
  .proof-features { grid-template-columns: 1fr; }
  .proof-features li { padding: 10px 12px 10px 48px; font-size: 14.5px; border-radius: 12px; }
  .proof-icon { width: 26px; height: 26px; left: 14px; }
}
@media (max-width: 520px) {
  .proof-features { gap: 9px; }
  .proof-features li { padding: 9px 11px 9px 44px; font-size: 14px; }
  .proof-icon { width: 24px; height: 24px; left: 12px; }
}
.feature-icon { width: 40px; height: 40px; }
.feature-icon i { font-size: 18px; }
.feature-grid { gap:18px; }
.feature-vg { padding: 44px 0; }
.feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
.feature-list li { font-size:15px; }
/* Proof block refinements */
.proof-lead { font-size: 19px; line-height: 1.5; color:#444; margin: 8px 0 18px; }
.proof-features li { font-size: 16.5px; line-height: 1.5; }
.proof-icon i { font-size: 18px; }

@media (max-width: 768px) {
  .proof-lead { font-size: 18px; }
}
@media (max-width: 520px) {
  .proof-lead { font-size: 16.5px; }
  .proof-features li { font-size: 15px; }
}
.feature-icon { width: 40px; height: 40px; }
.feature-icon i { font-size: 18px; }
.feature-grid { gap:18px; }
.feature-vg { padding: 44px 0; }
.feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
.feature-list li { font-size:15px; }
/* Reviews grid (current) */
.reviews .reviews-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.reviews .reviews-grid img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
  background: #fff;
}

@media (max-width: 1024px) {
  .reviews .reviews-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .reviews .reviews-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.result-photo { width: 300px; max-width: 42vw; border-radius: 18px; box-shadow: 0 12px 24px rgba(0,0,0,.12); }
.photo-caption { margin-top: 10px; font-size: 14px; color:#555; text-align:center; }
.result-badge { display:inline-flex; align-items:center; justify-content:center; min-width:52px; height:24px; padding:0 10px; border-radius:999px; font-size:12px; font-weight:700; color:#fff; margin-right:8px; box-shadow:0 6px 12px rgba(0,0,0,.12); }
.result-badge-before { background: linear-gradient(135deg, #7f8fa6, #95a5a6); }
.result-badge-after { background: linear-gradient(135deg, var(--brand,#8E2DE2), var(--brand-dark,#4A00E0)); }
.results-list { list-style:none; padding:0; margin: 20px auto 0; max-width: 820px; display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; }
.results-list li { position:relative; padding-left:28px; font-size:16px; color:#333; }
.results-list li::before { content:"✔"; position:absolute; left:0; top:50%; transform:translateY(-50%); width:22px; height:22px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; color:#fff; background: linear-gradient(135deg, var(--brand), var(--brand-dark)); box-shadow: 0 6px 12px rgba(142,45,226,.25); }

@media (max-width: 1024px) {
  .result-photo { width: 260px; max-width: 44vw; }
}
@media (max-width: 768px) {
  .results-list { grid-template-columns: 1fr; }
  .results-grid { gap:18px; }
  .result-photo { width: 240px; max-width: 70vw; border-radius:16px; }
  .photo-caption { font-size: 13px; }
}
@media (max-width: 520px) {
  .results-vg { padding: 48px 0; }
  .result-photo { width: 210px; max-width: 78vw; border-radius:14px; }
  .results-list li { font-size:15px; }
}
/* Features icons section */
.features-vg {
  padding: 56px 0;
  background: #faf8ff;
  border-top: 1px solid rgba(107, 50, 212, 0.1);
}
.features-vg .section-title {
  text-align: center;
  margin-bottom: 28px;
}
.features-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.feature-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 18px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 6px 22px rgba(0,0,0,0.06);
}
.feature-icon {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--brand-purple,#6B32D4), #9A6CF3);
  color: #fff;
  flex: 0 0 44px;
}
.feature-icon i { font-size: 20px; }
.feature-title { font-size: 16px; font-weight: 700; margin: 0 0 6px; }
.feature-text { font-size: 14px; color: #555; margin: 0; }

/* Tablet */
@media (max-width: 1024px) {
  .features-grid { grid-template-columns: repeat(2, 1fr); }
}
/* Mobile */
@media (max-width: 768px) {
  .features-vg { padding: 44px 0; }
  .features-grid { grid-template-columns: 1fr; gap: 14px; }
  .feature-item { padding: 16px; }
}
@media (max-width: 520px) {
  .feature-icon { width: 40px; height: 40px; }
  .feature-icon i { font-size: 18px; }
}
@media (max-width: 520px) {
  .feature-grid { gap:18px; }
}
@media (max-width: 520px) {
  .feature-vg { padding: 44px 0; }
  .feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
  .feature-list li { font-size:15px; }
}
/* Proof Section */
.proof-vg { padding: 60px 0; scroll-margin-top: 80px; }
.proof-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 24px; align-items: center; }
.proof-item { margin: 0; }
.proof-photo { width: 100%; display: block; border-radius: 16px; box-shadow: 0 14px 28px rgba(0,0,0,.12); }
.proof-features { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; }
.proof-features li { position: relative; display: flex; align-items: center; gap: 12px; padding: 12px 14px 12px 56px; background: #fff; border: 1px solid rgba(107, 50, 212, 0.12); border-radius: 16px; box-shadow: 0 4px 14px rgba(0,0,0,.05); color: #333; font-size: 16px; }
.proof-icon { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; display:flex; align-items:center; justify-content:center; border-radius: 999px; color: #fff; background: linear-gradient(135deg, var(--brand,#8E2DE2), var(--brand-dark,#4A00E0)); box-shadow: 0 6px 14px rgba(142,45,226,.22); }
.proof-icon i { font-size: 18px; }

@media (max-width: 1024px) {
  .proof-photo { border-radius: 14px; }
}
@media (max-width: 768px) {
  .proof-grid { grid-template-columns: 1fr; }
  .proof-features { grid-template-columns: 1fr; }
  .proof-features li { padding: 10px 12px 10px 48px; font-size: 14.5px; border-radius: 12px; }
  .proof-icon { width: 26px; height: 26px; left: 14px; }
}
@media (max-width: 520px) {
  .proof-features { gap: 9px; }
  .proof-features li { padding: 9px 11px 9px 44px; font-size: 14px; }
  .proof-icon { width: 24px; height: 24px; left: 12px; }
}
.feature-icon { width: 40px; height: 40px; }
.feature-icon i { font-size: 18px; }
.feature-grid { gap:18px; }
.feature-vg { padding: 44px 0; }
.feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
.feature-list li { font-size:15px; }
/* Proof block refinements */
.proof-lead { font-size: 19px; line-height: 1.5; color:#444; margin: 8px 0 18px; }
.proof-features li { font-size: 16.5px; line-height: 1.5; }
.proof-icon i { font-size: 18px; }

@media (max-width: 768px) {
  .proof-lead { font-size: 18px; }
}
@media (max-width: 520px) {
  .proof-lead { font-size: 16.5px; }
  .proof-features li { font-size: 15px; }
}
.feature-icon { width: 40px; height: 40px; }
.feature-icon i { font-size: 18px; }
.feature-grid { gap:18px; }
.feature-vg { padding: 44px 0; }
.feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
.feature-list li { font-size:15px; }
/* Reviews grid (current) */
.reviews .reviews-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.reviews .reviews-grid img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
  background: #fff;
}

@media (max-width: 1024px) {
  .reviews .reviews-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .reviews .reviews-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.result-photo { width: 300px; max-width: 42vw; border-radius: 18px; box-shadow: 0 12px 24px rgba(0,0,0,.12); }
.photo-caption { margin-top: 10px; font-size: 14px; color:#555; text-align:center; }
.result-badge { display:inline-flex; align-items:center; justify-content:center; min-width:52px; height:24px; padding:0 10px; border-radius:999px; font-size:12px; font-weight:700; color:#fff; margin-right:8px; box-shadow:0 6px 12px rgba(0,0,0,.12); }
.result-badge-before { background: linear-gradient(135deg, #7f8fa6, #95a5a6); }
.result-badge-after { background: linear-gradient(135deg, var(--brand,#8E2DE2), var(--brand-dark,#4A00E0)); }
.results-list { list-style:none; padding:0; margin: 20px auto 0; max-width: 820px; display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; }
.results-list li { position:relative; padding-left:28px; font-size:16px; color:#333; }
.results-list li::before { content:"✔"; position:absolute; left:0; top:50%; transform:translateY(-50%); width:22px; height:22px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; color:#fff; background: linear-gradient(135deg, var(--brand), var(--brand-dark)); box-shadow: 0 6px 12px rgba(142,45,226,.25); }

@media (max-width: 1024px) {
  .result-photo { width: 260px; max-width: 44vw; }
}
@media (max-width: 768px) {
  .results-list { grid-template-columns: 1fr; }
  .results-grid { gap:18px; }
  .result-photo { width: 240px; max-width: 70vw; border-radius:16px; }
  .photo-caption { font-size: 13px; }
}
@media (max-width: 520px) {
  .results-vg { padding: 48px 0; }
  .result-photo { width: 210px; max-width: 78vw; border-radius:14px; }
  .results-list li { font-size:15px; }
}
/* Features icons section */
.features-vg {
  padding: 56px 0;
  background: #faf8ff;
  border-top: 1px solid rgba(107, 50, 212, 0.1);
}
.features-vg .section-title {
  text-align: center;
  margin-bottom: 28px;
}
.features-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.feature-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 18px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 6px 22px rgba(0,0,0,0.06);
}
.feature-icon {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--brand-purple,#6B32D4), #9A6CF3);
  color: #fff;
  flex: 0 0 44px;
}
.feature-icon i { font-size: 20px; }
.feature-title { font-size: 16px; font-weight: 700; margin: 0 0 6px; }
.feature-text { font-size: 14px; color: #555; margin: 0; }

/* Tablet */
@media (max-width: 1024px) {
  .features-grid { grid-template-columns: repeat(2, 1fr); }
}
/* Mobile */
@media (max-width: 768px) {
  .features-vg { padding: 44px 0; }
  .features-grid { grid-template-columns: 1fr; gap: 14px; }
  .feature-item { padding: 16px; }
}
@media (max-width: 520px) {
  .feature-icon { width: 40px; height: 40px; }
  .feature-icon i { font-size: 18px; }
}
@media (max-width: 520px) {
  .feature-grid { gap:18px; }
}
@media (max-width: 520px) {
  .feature-vg { padding: 44px 0; }
  .feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
  .feature-list li { font-size:15px; }
}
/* Proof Section */
.proof-vg { padding: 60px 0; scroll-margin-top: 80px; }
.proof-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 24px; align-items: center; }
.proof-item { margin: 0; }
.proof-photo { width: 100%; display: block; border-radius: 16px; box-shadow: 0 14px 28px rgba(0,0,0,.12); }
.proof-features { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; }
.proof-features li { position: relative; display: flex; align-items: center; gap: 12px; padding: 12px 14px 12px 56px; background: #fff; border: 1px solid rgba(107, 50, 212, 0.12); border-radius: 16px; box-shadow: 0 4px 14px rgba(0,0,0,.05); color: #333; font-size: 16px; }
.proof-icon { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; display:flex; align-items:center; justify-content:center; border-radius: 999px; color: #fff; background: linear-gradient(135deg, var(--brand,#8E2DE2), var(--brand-dark,#4A00E0)); box-shadow: 0 6px 14px rgba(142,45,226,.22); }
.proof-icon i { font-size: 18px; }

@media (max-width: 1024px) {
  .proof-photo { border-radius: 14px; }
}
@media (max-width: 768px) {
  .proof-grid { grid-template-columns: 1fr; }
  .proof-features { grid-template-columns: 1fr; }
  .proof-features li { padding: 10px 12px 10px 48px; font-size: 14.5px; border-radius: 12px; }
  .proof-icon { width: 26px; height: 26px; left: 14px; }
}
@media (max-width: 520px) {
  .proof-features { gap: 9px; }
  .proof-features li { padding: 9px 11px 9px 44px; font-size: 14px; }
  .proof-icon { width: 24px; height: 24px; left: 12px; }
}
.feature-icon { width: 40px; height: 40px; }
.feature-icon i { font-size: 18px; }
.feature-grid { gap:18px; }
.feature-vg { padding: 44px 0; }
.feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
.feature-list li { font-size:15px; }
/* Proof block refinements */
.proof-lead { font-size: 19px; line-height: 1.5; color:#444; margin: 8px 0 18px; }
.proof-features li { font-size: 16.5px; line-height: 1.5; }
.proof-icon i { font-size: 18px; }

@media (max-width: 768px) {
  .proof-lead { font-size: 18px; }
}
@media (max-width: 520px) {
  .proof-lead { font-size: 16.5px; }
  .proof-features li { font-size: 15px; }
}
.feature-icon { width: 40px; height: 40px; }
.feature-icon i { font-size: 18px; }
.feature-grid { gap:18px; }
.feature-vg { padding: 44px 0; }
.feature-photo { width: 200px; max-width: 78vw; border-radius:12px; }
.feature-list li { font-size:15px; }