  :root{
    --bg:#0B0D10;
    --bg-soft:#14171C;
    --surface:#1A1D23;
    --ink:#F3F4F6;
    --ink-soft:#9AA1AC;
    --line:#262A31;
    --accent:#2E5EFF;
    --accent-dark:#7C9BFF;
    --accent-soft:rgba(46,94,255,0.16);
    --radius:14px;
    --max:1120px;
    --shadow: 0 1px 2px rgba(0,0,0,0.3), 0 8px 24px rgba(0,0,0,0.45);
  }

  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    font-family:'Inter', sans-serif;
    color:var(--ink);
    background:var(--bg);
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,.font-display{
    font-family:'Space Grotesk', sans-serif;
    letter-spacing:-0.02em;
    margin:0;
  }
  p{margin:0;}
  a{color:inherit;text-decoration:none;}
  ul{margin:0;padding:0;list-style:none;}
  img{max-width:100%;display:block;}
  button{font-family:inherit;cursor:pointer;}

  .wrap{
    max-width:var(--max);
    margin:0 auto;
    padding:0 24px;
  }

  .eyebrow{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    font-weight:600;
    color:var(--accent-dark);
    background:var(--accent-soft);
    padding:6px 12px;
    border-radius:999px;
    letter-spacing:0.01em;
  }

  /* ---------- NAV ---------- */
  header{
    position:sticky;
    top:0;
    z-index:50;
    background:rgba(11,13,16,0.85);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  nav.wrap{
    display:flex;
    align-items:center;
    justify-content:space-between;
    height:72px;
  }
  .logo{
    display:flex;
    align-items:center;
    gap:9px;
    font-family:'Space Grotesk', sans-serif;
    font-weight:700;
    font-size:19px;
  }
  .logo-mark{
    width:30px;height:30px;
    border-radius:9px;
    background:linear-gradient(135deg, var(--accent), #7C9BFF);
    position:relative;
    flex-shrink:0;
  }
  .logo-mark::after{
    content:"";
    position:absolute;
    inset:9px;
    border-radius:3px;
    background:var(--bg);
  }
  .nav-links{
    display:flex;
    gap:32px;
    font-size:14.5px;
    font-weight:500;
    color:var(--ink-soft);
  }
  .nav-links a:hover{color:var(--ink);}
  .nav-actions{display:flex;align-items:center;gap:16px;}
  .nav-toggle{display:none;background:none;border:none;padding:4px;}
  .nav-toggle span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;border-radius:2px;}

  .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:11px 20px;
    border-radius:10px;
    font-weight:600;
    font-size:14.5px;
    border:1px solid transparent;
    transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  }
  .btn-primary{
    background:var(--accent);
    color:#fff;
    box-shadow:0 1px 2px rgba(46,94,255,0.15), 0 6px 16px rgba(46,94,255,0.28);
  }
  .btn-primary:hover{background:var(--accent-dark); transform:translateY(-1px);}
  .btn-ghost{
    color:var(--ink);
    border-color:var(--line);
    background:var(--surface);
  }
  .btn-ghost:hover{border-color:#3a4048;}
  .btn-block{width:100%;}

  /* ---------- HERO ---------- */
  .hero{
    padding:72px 0 40px;
  }
  .hero-grid{
    display:grid;
    grid-template-columns:1.05fr 0.95fr;
    gap:56px;
    align-items:center;
  }
  .hero h1{
    font-size:clamp(34px, 4.4vw, 54px);
    line-height:1.05;
    font-weight:700;
  }
  .hero h1 em{
    font-style:normal;
    color:var(--accent-dark);
  }
  .hero-sub{
    margin-top:18px;
    font-size:17px;
    line-height:1.6;
    color:var(--ink-soft);
    max-width:480px;
  }
  .hero-cta{
    margin-top:28px;
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    align-items:center;
  }
  .hero-note{
    margin-top:16px;
    font-size:13px;
    color:var(--ink-soft);
  }

  /* before/after signature element */
  .compare{
    position:relative;
    border-radius:18px;
    overflow:hidden;
    box-shadow:var(--shadow);
    border:1px solid var(--line);
    aspect-ratio:4/3;
    user-select:none;
    background:var(--bg-soft);
  }
  .compare-img{
    position:absolute;
    inset:0;
    background:url('https://picsum.photos/id/1015/900/675') center/cover no-repeat, var(--bg-soft);
  }
  .compare-before:not(.hero-real-img){filter:saturate(0.55) brightness(0.93) contrast(0.92) blur(0.4px);}
  .compare-after:not(.hero-real-img){filter:saturate(1.15) contrast(1.08) brightness(1.04);}
  .hero-real-img.compare-before{filter:none;}
  .hero-real-img.compare-after{filter:none;}
  .compare-before{clip-path:inset(0 var(--pos,50%) 0 0);}
  .compare-label{
    position:absolute;
    top:14px;
    font-size:12px;
    font-weight:600;
    padding:5px 10px;
    border-radius:4px;
    background:#ffffff;
    color:#0B0D10;
    border:1px solid var(--line);
    box-shadow:0 1px 2px rgba(0,0,0,0.15);
    letter-spacing:0.02em;
  }
  .compare-label.before{left:14px;}
  .compare-label.after{right:14px;}

  .hero-real-img{
    display:none;
    object-fit:cover;
    width:100%;
    height:100%;
  }
  .hero-result-hint{
    margin-top:14px;
    font-size:13px;
    color:var(--ink-soft);
    text-align:center;
  }

  .hero-download{
    display:none;
    margin-top:14px;
  }
  .hero-download.visible{display:inline-flex;}

  .compare-handle{
    position:absolute;
    top:0; bottom:0;
    left:var(--pos, 50%);
    width:0;
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .compare-handle::before{
    content:"";
    position:absolute;
    top:0;bottom:0;
    width:2px;
    background:#fff;
    box-shadow:0 0 0 1px rgba(0,0,0,0.15);
  }
  .compare-grip{
    position:relative;
    width:38px;height:38px;
    border-radius:50%;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 2px 10px rgba(0,0,0,0.25);
    cursor:ew-resize;
  }
  .compare-grip svg{width:16px;height:16px;color:var(--accent);}
  .compare-range{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    opacity:0;
    cursor:ew-resize;
    margin:0;
  }

  /* ---------- UPLOAD DROPZONE (used in hero + CTA section) ---------- */
  .dropzone{
    border:1.5px solid var(--line);
    border-radius:20px;
    padding:40px 24px;
    text-align:center;
    background:var(--surface);
    cursor:pointer;
    transition:border-color .15s ease, background .15s ease;
  }
  .dropzone:hover{
    border-color:#3a3f48;
    background:#181B21;
  }
  .dropzone.dragover{
    border-color:var(--accent-dark);
    background:var(--accent-soft);
  }
  .dropzone-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:16px 34px;
    border-radius:999px;
    background:linear-gradient(135deg, var(--accent), #567CFF);
    color:#fff;
    font-size:16px;
    font-weight:700;
    box-shadow:0 2px 6px rgba(46,94,255,0.25), 0 10px 24px rgba(46,94,255,0.32);
    transition:transform .15s ease, box-shadow .15s ease;
    pointer-events:none;
  }
  .dropzone:hover .dropzone-btn{transform:translateY(-1px);}
  .dropzone-btn svg{width:20px;height:20px;stroke:#fff;}
  .dropzone p{font-size:14.5px;color:var(--ink-soft);margin-top:18px;}
  .dropzone strong{color:var(--ink);}
  .dropzone input{display:none;}
  .dropzone-formats{font-size:12.5px;color:#9aa1ac;margin-top:6px;display:block;}

  .upload-head{margin-bottom:16px;}
  .upload-head h2{font-size:20px;font-weight:700;}

  .result-note{font-size:13px;color:var(--ink-soft);}

  .progress-wrap{margin-top:16px;display:none;}
  .progress-track{
    height:6px;
    background:var(--line);
    border-radius:99px;
    overflow:hidden;
  }
  .progress-bar{
    height:100%;
    width:0%;
    background:var(--accent);
    border-radius:99px;
    transition:width .2s ease;
  }
  .progress-text{font-size:12.5px;color:var(--ink-soft);margin-top:8px;}

  /* ---------- SECTIONS ---------- */
  section{padding:88px 0;}
  .section-head{
    max-width:620px;
    margin-bottom:48px;
  }
  .section-head h2{
    font-size:clamp(26px,3vw,36px);
    font-weight:700;
    margin-top:14px;
  }
  .section-head p{
    margin-top:14px;
    font-size:16px;
    color:var(--ink-soft);
    line-height:1.6;
  }
  .section-soft{background:var(--bg-soft);}
  .section-head.center{margin-left:auto;margin-right:auto;text-align:center;}

  /* feature cards */
  .grid-3{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
  }
  .card{
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:28px;
  }
  .card-icon{
    width:42px;height:42px;
    border-radius:10px;
    background:var(--accent-soft);
    display:flex;align-items:center;justify-content:center;
    margin-bottom:18px;
  }
  .card-icon svg{width:20px;height:20px;color:var(--accent);}
  .card h3{font-size:17.5px;font-weight:600;}
  .card p{margin-top:10px;font-size:14.5px;line-height:1.6;color:var(--ink-soft);}

  /* why choose - chip grid */
  .grid-6{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
  }
  .chip{
    padding:22px;
    border-radius:12px;
    background:var(--surface);
    border:1px solid var(--line);
  }
  .chip h3{font-size:15.5px;font-weight:600;}
  .chip p{margin-top:8px;font-size:13.5px;line-height:1.55;color:var(--ink-soft);}

  .why-media{
    border-radius:18px;
    overflow:hidden;
    border:1px solid var(--line);
    aspect-ratio:16/10;
    background:linear-gradient(135deg,#101826,#1c2b45 55%, #24406e);
    position:relative;
    margin:0 auto 44px;
    max-width:640px;
    box-shadow:var(--shadow);
  }
  .why-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
  }
  .why-media::after{
    content:"";
    position:absolute;inset:0;
    background:
      radial-gradient(circle at 25% 70%, rgba(255,255,255,0.14), transparent 45%),
      radial-gradient(circle at 75% 25%, rgba(124,155,255,0.35), transparent 50%);
    mix-blend-mode:overlay;
    pointer-events:none;
  }

  /* how it works */
  .steps{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:32px;
  }
  .step-num{
    font-family:'Space Grotesk',sans-serif;
    font-size:13px;
    font-weight:700;
    color:var(--accent);
    display:flex;align-items:center;gap:10px;
    margin-bottom:14px;
  }
  .step-num::before{
    content:"";
    width:24px;height:1px;
    background:var(--line);
  }
  .step h3{font-size:18px;font-weight:600;}
  .step p{margin-top:10px;font-size:14.5px;line-height:1.6;color:var(--ink-soft);}

  /* testimonials */
  .t-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
  }
  .t-card{
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:24px;
    display:flex;
    flex-direction:column;
    gap:16px;
  }
  .t-card p.quote{font-size:14.5px;line-height:1.6;color:var(--ink);}
  .t-stars{
    display:flex;
    gap:3px;
  }
  .t-stars svg{
    width:15px;height:15px;
    fill:#FFB020;
  }
  .t-person{display:flex;align-items:center;gap:12px;}
  .t-avatar{
    width:38px;height:38px;
    border-radius:50%;
    background:linear-gradient(135deg,var(--accent),#7C9BFF);
    flex-shrink:0;
    overflow:hidden;
  }
  .t-avatar img{
    width:100%;height:100%;
    object-fit:cover;
    display:block;
  }
  .t-person strong{display:block;font-size:13.5px;}
  .t-person span{display:block;font-size:12px;color:var(--ink-soft);margin-top:2px;}

  /* FAQ */
  .faq{max-width:760px;margin:0 auto;}
  .faq-item{
    border-bottom:1px solid var(--line);
  }
  .faq-q{
    width:100%;
    text-align:left;
    background:none;
    border:none;
    padding:20px 0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-size:15.5px;
    font-weight:600;
    color:var(--ink);
  }
  .faq-q .plus{
    width:20px;height:20px;
    flex-shrink:0;
    position:relative;
  }
  .faq-q .plus::before, .faq-q .plus::after{
    content:"";
    position:absolute;
    background:var(--ink-soft);
    transition:transform .2s ease;
  }
  .faq-q .plus::before{top:9px;left:2px;right:2px;height:2px;}
  .faq-q .plus::after{left:9px;top:2px;bottom:2px;width:2px;}
  .faq-item.open .plus::after{transform:scaleY(0);}
  .faq-a{
    max-height:0;
    overflow:hidden;
    transition:max-height .25s ease;
  }
  .faq-a-inner{
    padding-bottom:20px;
    font-size:14.5px;
    line-height:1.65;
    color:var(--ink-soft);
    max-width:640px;
  }

  /* final CTA */
  .cta-band{
    background:linear-gradient(135deg,#161f30, #223e73 60%, #2c4f8f);
    border:1px solid var(--line);
    border-radius:24px;
    padding:64px 48px;
    text-align:center;
    color:#fff;
  }
  .cta-band h2{
    font-size:clamp(24px,3vw,34px);
    font-weight:700;
  }
  .cta-band p{
    margin-top:14px;
    color:rgba(255,255,255,0.7);
    font-size:15.5px;
    max-width:480px;
    margin-left:auto;
    margin-right:auto;
  }
  .cta-band .btn-primary{margin-top:26px;}

  /* footer */
  footer{
    background:#000000;
    border-top:1px solid #1E1E1E;
    padding:48px 0 32px;
  }
  .footer-top{
    display:flex;
    justify-content:space-between;
    gap:40px;
    flex-wrap:wrap;
    padding-bottom:36px;
  }
  .footer-cols{
    display:flex;
    gap:64px;
    flex-wrap:wrap;
  }
  .footer-col h4{
    font-size:13px;
    font-weight:600;
    color:var(--ink-soft);
    margin-bottom:14px;
    text-transform:uppercase;
    letter-spacing:0.04em;
  }
  .footer-col li{margin-bottom:10px;}
  .footer-col a{font-size:14px;color:var(--ink-soft);}
  .footer-col a:hover{color:var(--ink);}
  .footer-brand p{
    margin-top:12px;
    font-size:13.5px;
    color:var(--ink-soft);
    max-width:260px;
    line-height:1.6;
  }
  .footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding-top:24px;
    border-top:1px solid #1E1E1E;
    font-size:13px;
    color:var(--ink-soft);
    flex-wrap:wrap;
    gap:12px;
  }
  .footer-bottom a{margin-left:20px;}
  .footer-bottom a:hover{color:var(--ink);}

  /* toast */
  .toast{
    position:fixed;
    bottom:24px;
    left:50%;
    transform:translate(-50%, 20px);
    background:#1E2229;
    color:#fff;
    padding:12px 20px;
    border-radius:10px;
    font-size:14px;
    font-weight:500;
    opacity:0;
    pointer-events:none;
    transition:opacity .25s ease, transform .25s ease;
    z-index:100;
    display:flex;
    align-items:center;
    gap:10px;
    border:1px solid var(--line);
  }
  .toast.show{opacity:1;transform:translate(-50%,0);}
  .toast svg{width:16px;height:16px;color:#7C9BFF;flex-shrink:0;}

  @media (max-width: 880px){
    .hero-grid{grid-template-columns:1fr;}
    .grid-3, .grid-6, .steps, .t-grid{grid-template-columns:1fr 1fr;}
    .nav-links{
      position:absolute;
      top:72px;left:0;right:0;
      background:var(--bg);
      flex-direction:column;
      padding:20px 24px;
      border-bottom:1px solid var(--line);
      display:none;
      gap:18px;
    }
    .nav-links.open{display:flex;}
    .nav-toggle{display:block;}
    .cta-band{padding:48px 24px;}
  }
  @media (max-width: 620px){
    .grid-3, .grid-6, .steps, .t-grid{grid-template-columns:1fr;}
    section{padding:64px 0;}
    .footer-top{flex-direction:column;}
  }

  /* ---------- WELCOME ANIMATION ---------- */
  .welcome-overlay{
    position:fixed;
    inset:0;
    z-index:300;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg,#0B0D10, #101725 65%, #16213a);
    animation: welcomeOut .5s ease forwards;
    animation-delay:3.5s;
  }
  .welcome-content{
    display:flex;
    align-items:center;
    gap:12px;
    opacity:0;
    transform:translateY(8px) scale(0.96);
    animation: welcomeIn .6s cubic-bezier(.2,.8,.2,1) forwards;
  }
  .welcome-mark{
    width:46px;height:46px;
    border-radius:13px;
    background:linear-gradient(135deg, var(--accent), #7C9BFF);
    position:relative;
    flex-shrink:0;
    box-shadow:0 10px 30px rgba(46,94,255,0.35);
  }
  .welcome-mark::after{
    content:"";
    position:absolute;
    inset:13px;
    border-radius:4px;
    background:var(--bg);
  }
  .welcome-word{
    font-family:'Space Grotesk', sans-serif;
    font-weight:700;
    font-size:26px;
    letter-spacing:-0.02em;
    color:var(--ink);
  }
  .welcome-word em{
    font-style:normal;
    color:var(--accent);
  }

  @keyframes welcomeIn{
    to{ opacity:1; transform:translateY(0) scale(1); }
  }
  @keyframes welcomeOut{
    to{ opacity:0; visibility:hidden; pointer-events:none; }
  }

  @media (prefers-reduced-motion: reduce){
    *{transition:none !important; scroll-behavior:auto !important;}
    .welcome-overlay{animation:none; opacity:0; visibility:hidden; pointer-events:none;}
    .welcome-content{animation:none; opacity:1; transform:none;}
  }

/* ---------- ABOUT PAGE ---------- */
.about-hero{padding:72px 0 8px;}
.about-hero .section-head{margin-bottom:0;max-width:680px;}
.about-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  margin-top:56px;
  padding-top:40px;
  border-top:1px solid var(--line);
}
.about-stat b{
  display:block;
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(28px,3.2vw,38px);
  font-weight:700;
  color:var(--ink);
}
.about-stat span{
  display:block;
  margin-top:6px;
  font-size:13.5px;
  color:var(--ink-soft);
  line-height:1.5;
}
.story-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:56px;
  align-items:center;
}
.story-copy p{font-size:15.5px;line-height:1.75;color:var(--ink-soft);}
.story-copy p + p{margin-top:16px;}
.story-copy strong{color:var(--ink);}
.story-visual{
  border-radius:18px;
  border:1px solid var(--line);
  background:linear-gradient(135deg,#101826,#1c2b45 55%,#24406e);
  aspect-ratio:4/3.4;
  position:relative;
  overflow:hidden;
  box-shadow:var(--shadow);
}
.story-visual::after{
  content:"";
  position:absolute;inset:0;
  background:
    radial-gradient(circle at 22% 75%, rgba(255,255,255,0.14), transparent 45%),
    radial-gradient(circle at 78% 22%, rgba(124,155,255,0.4), transparent 50%);
  mix-blend-mode:overlay;
  pointer-events:none;
}
.story-visual-inner{
  position:relative;
  z-index:1;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:28px;
}
.story-visual-inner .logo-mark{width:38px;height:38px;border-radius:11px;margin-bottom:16px;}
.story-visual-inner h4{font-size:17px;font-weight:700;color:#fff;}
.story-visual-inner p{margin-top:6px;font-size:13.5px;color:rgba(255,255,255,0.75);line-height:1.55;}

.value-list{display:flex;flex-direction:column;gap:22px;}
.value-item{display:flex;gap:18px;}
.value-item .card-icon{flex-shrink:0;margin-bottom:0;}
.value-item h3{font-size:16.5px;font-weight:600;}
.value-item p{margin-top:6px;font-size:14.5px;line-height:1.6;color:var(--ink-soft);}

@media (max-width: 900px){
  .about-stats{grid-template-columns:1fr 1fr;}
  .story-grid{grid-template-columns:1fr;}
  .story-visual{aspect-ratio:16/9;}
}
@media (max-width: 620px){
  .about-stats{grid-template-columns:1fr;}
}

/* ---------- NAV ACTIVE STATE ---------- */
.nav-links a[aria-current="page"]{color:var(--ink);}
.footer-col a[aria-current="page"]{color:var(--ink);}

/* ---------- SIMPLE SUBPAGE HERO (features / how-it-works / reviews / faq) ---------- */
.page-hero{padding:64px 0 8px;}
.page-hero .section-head{max-width:680px;}

/* ---------- CONTACT PAGE ---------- */
.contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:56px;
  align-items:start;
}
.contact-info-item{
  display:flex;
  gap:16px;
  padding:20px 0;
  border-bottom:1px solid var(--line);
}
.contact-info-item:first-child{padding-top:0;}
.contact-info-item .card-icon{flex-shrink:0;margin-bottom:0;}
.contact-info-item h3{font-size:15.5px;font-weight:600;}
.contact-info-item p{margin-top:6px;font-size:14px;line-height:1.55;color:var(--ink-soft);}
.contact-info-item a{color:var(--accent-dark);}

.form-field{margin-bottom:18px;}
.form-field label{
  display:block;
  font-size:13.5px;
  font-weight:600;
  margin-bottom:8px;
  color:var(--ink);
}
.form-field input,
.form-field textarea{
  width:100%;
  padding:12px 14px;
  border-radius:10px;
  border:1.5px solid var(--line);
  background:var(--bg-soft);
  color:var(--ink);
  font-family:inherit;
  font-size:14.5px;
  transition:border-color .15s ease;
}
.form-field input:focus,
.form-field textarea:focus{
  outline:none;
  border-color:var(--accent-dark);
}
.form-field textarea{resize:vertical;min-height:130px;}
.contact-form-note{margin-top:14px;font-size:13px;color:var(--ink-soft);}

.form-success{
  display:none;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:56px 24px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--surface);
}
.form-success.visible{display:flex;}
.form-success-icon{
  width:56px;height:56px;
  border-radius:50%;
  background:rgba(34,197,94,0.12);
  border:1px solid rgba(34,197,94,0.35);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:22px;
}
.form-success-icon svg{width:26px;height:26px;color:#22C55E;}
.form-success h3{font-size:22px;font-weight:700;color:var(--ink);}
.form-success p{
  margin-top:12px;
  font-size:14.5px;
  line-height:1.6;
  color:var(--ink-soft);
  max-width:320px;
}
.form-success .btn{margin-top:24px;}

@media (max-width: 900px){
  .contact-grid{grid-template-columns:1fr;gap:40px;}
}

/* ---------- POLICY PAGES (privacy / terms) ---------- */
.policy-content{max-width:760px;}
.policy-content .updated{
  font-size:13px;
  color:var(--ink-soft);
  margin-bottom:8px;
}
.policy-content h2{
  font-size:20px;
  font-weight:700;
  margin-top:40px;
  margin-bottom:14px;
}
.policy-content h2:first-of-type{margin-top:0;}
.policy-content p{
  font-size:15px;
  line-height:1.75;
  color:var(--ink-soft);
  margin-bottom:14px;
}
.policy-content ul{
  margin:0 0 14px;
  padding-left:20px;
  list-style:disc;
}
.policy-content li{
  font-size:15px;
  line-height:1.75;
  color:var(--ink-soft);
  margin-bottom:8px;
}
.policy-content strong{color:var(--ink);}

/* ---------- LEGAL PAGES (privacy / terms) ---------- */
.legal-content{max-width:760px;padding-top:8px;padding-bottom:16px;}
.legal-content h2{
  font-size:19px;
  font-weight:700;
  margin-top:38px;
  margin-bottom:10px;
}
.legal-content h2:first-child{margin-top:0;}
.legal-content p{
  font-size:15px;
  line-height:1.75;
  color:var(--ink-soft);
}
.legal-content a{color:var(--accent-dark);}

/* ---------- AUTO SWEEP SHOWCASE ---------- */
.showcase{padding:88px 0 96px;}
.auto-compare-strip{
  position:relative;
  overflow:hidden;
  display:flex;
  border-radius:20px;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  height:340px;
  background:var(--surface);
  cursor:default;
}
.ac-blur-row, .ac-sharp-row{
  display:flex;
  width:100%;
  height:100%;
}
.ac-blur-row img{
  flex:1 1 0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:blur(11px) saturate(0.85) brightness(0.92);
  transform:scale(1.08);
}
.ac-sharp-clip{
  position:absolute;
  top:0;
  left:0;
  height:100%;
  width:0;
  overflow:hidden;
}
.ac-sharp-row img{
  flex:1 1 0;
  height:100%;
  object-fit:cover;
  display:block;
}
.ac-compare-line{
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  width:2px;
  background:rgba(255,255,255,0.9);
  box-shadow:0 0 18px rgba(255,255,255,0.55);
  pointer-events:none;
}

/* ---------- RESTORE & COLORIZE SHOWCASE ---------- */
.restore-grid{
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:56px;
  align-items:center;
}
.restore-compare{
  display:flex;
  border-radius:20px;
  overflow:hidden;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  aspect-ratio:16/11;
}
.restore-panel{
  position:relative;
  flex:1 1 0;
  overflow:hidden;
}
.restore-panel img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.restore-panel.before img{filter:grayscale(1) sepia(0.35) contrast(0.95) brightness(0.95);}
.restore-panel.after img{filter:saturate(1.12) contrast(1.06) brightness(1.03);}
.restore-badge{
  position:absolute;
  top:14px;
  left:14px;
  font-size:12px;
  font-weight:600;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(11,13,16,0.65);
  color:#fff;
  backdrop-filter:blur(4px);
  letter-spacing:0.02em;
}
.restore-copy .eyebrow-icon{
  width:34px;height:34px;
  border-radius:10px;
  background:var(--accent-soft);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:16px;
}
.restore-copy .eyebrow-icon svg{width:18px;height:18px;color:var(--accent);}
.restore-copy h2{font-size:clamp(24px,3vw,32px);font-weight:700;line-height:1.2;}
.restore-copy h2 span{color:var(--accent);}
.restore-copy p{
  margin-top:16px;
  font-size:15.5px;
  line-height:1.75;
  color:var(--ink-soft);
  max-width:440px;
}
.restore-copy a{color:var(--accent-dark);}

@media (max-width: 900px){
  .restore-grid{grid-template-columns:1fr;}
  .restore-compare{order:-1;}
}
.ac-compare-line::before{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:38px;
  height:38px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 6px 18px rgba(46,94,255,0.45), 0 0 0 5px rgba(255,255,255,0.12);
}
.ac-compare-line::after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:14px;
  height:14px;
  background:
    linear-gradient(45deg, transparent 45%, #fff 45%, #fff 55%, transparent 55%) left / 7px 100% no-repeat,
    linear-gradient(-45deg, transparent 45%, #fff 45%, #fff 55%, transparent 55%) right / 7px 100% no-repeat;
  opacity:0.9;
}

@media (max-width: 720px){
  .auto-compare-strip{height:240px;border-radius:16px;}
  .ac-compare-line::before{width:30px;height:30px;}
}
