:root{
  --bg:#f6fbfb;
  --text:#07182f;
  --muted:#536579;
  --primary:#008f8b;
  --primary-strong:#006a7d;
  --blue:#1f70d1;
  --accent:#ff8a3d;
  --surface:#ffffff;
  --surface-soft:#eef8f8;
  --stroke:rgba(7,24,47,0.12);
  --shadow:0 22px 70px rgba(8,38,58,0.14);
  --shadow2:0 12px 32px rgba(8,38,58,0.10);
  --radius:8px;
}

*{box-sizing:border-box}
html,body{height:100%;scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.6;
  padding-top:76px;
}
img{max-width:100%}
.container{width:min(1200px,92%);margin-inline:auto}

.site-header{
  position:fixed;
  inset:0 0 auto;
  z-index:50;
  background:rgba(255,255,255,0.88);
  border-bottom:1px solid var(--stroke);
  backdrop-filter:blur(14px);
}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0}
.brand{display:flex;align-items:center;gap:.65rem;color:var(--text);font-weight:900;text-decoration:none}
.brand span{font-size:1.08rem}
.nav-links{display:flex;align-items:center;gap:1rem}
.nav-links a{color:var(--muted);font-weight:800;text-decoration:none}
.nav-links a:hover{color:var(--text)}
.nav-actions{display:flex;align-items:center;gap:.6rem}
.toggle,.hamburger{
  border:1px solid var(--stroke);
  background:var(--surface);
  color:var(--text);
  cursor:pointer;
}
.toggle{border-radius:999px;padding:.5rem .75rem;font-weight:900}
.hamburger{display:none;width:42px;height:38px;border-radius:8px;place-items:center}
.hamburger span{display:block;width:20px;height:2px;background:var(--text);border-radius:2px;margin:3px auto}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:.78rem 1rem;
  border-radius:8px;
  border:1px solid var(--stroke);
  font-weight:900;
  text-decoration:none;
  transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}
.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow2)}
.btn--primary{background:linear-gradient(135deg,var(--primary),#10b7ad);color:#fff;border-color:transparent}
.btn--secondary{background:linear-gradient(135deg,var(--blue),var(--primary-strong));color:#fff;border-color:transparent}
.btn--ghost{background:var(--surface);color:var(--text)}

.hero{
  position:relative;
  min-height:82vh;
  display:grid;
  align-items:end;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(246,251,251,0.98) 0%,rgba(246,251,251,0.88) 31%,rgba(246,251,251,0.22) 68%,rgba(246,251,251,0.06) 100%),
    url("../assets/reupsell-carousel-banner.png") center / cover no-repeat;
}
.hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:26%;
  background:linear-gradient(180deg,rgba(246,251,251,0),var(--bg));
}
.hero__content{position:relative;z-index:1;padding:72px 0 92px}
.eyebrow{
  margin:0 0 .55rem;
  color:var(--primary-strong);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hero h1{
  margin:0;
  font-size:clamp(3.3rem,9vw,7.8rem);
  line-height:.92;
  letter-spacing:0;
}
.hero__lead{
  max-width:670px;
  margin:1.1rem 0 0;
  color:#26384e;
  font-size:clamp(1.05rem,1.5vw,1.28rem);
}
.cta-row{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.3rem 0 1.1rem}
.hero__stats{display:flex;gap:.55rem;flex-wrap:wrap}
.hero__stats span{
  padding:.45rem .65rem;
  border:1px solid rgba(0,143,139,.22);
  border-radius:999px;
  background:rgba(255,255,255,.82);
  color:#064f5b;
  font-weight:900;
  font-size:.9rem;
}

.section{padding:74px 0}
.section--intro{padding-top:38px}
.section--soft{background:linear-gradient(135deg,rgba(31,112,209,.08),rgba(255,138,61,.10))}
.section--pricing{background:#fff}
.section--cta{background:linear-gradient(135deg,#073047,#008f8b);color:#fff}
.section__head{display:grid;gap:.45rem;margin-bottom:1.35rem}
.section__head--center{text-align:center;justify-items:center}
.section__title{font-size:clamp(2rem,3vw,3.2rem);line-height:1.08;margin:0;letter-spacing:0}
.section__subtitle{color:var(--muted);max-width:760px;margin:0;font-size:1.04rem}

.feature-grid,.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.card{
  border:1px solid var(--stroke);
  border-radius:var(--radius);
  background:rgba(255,255,255,.95);
  padding:1.1rem;
  box-shadow:var(--shadow2);
}
.card h3{margin:.55rem 0 .25rem;font-size:1.08rem}
.card p{margin:0;color:var(--muted)}
.icon{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:linear-gradient(135deg,rgba(0,143,139,.16),rgba(31,112,209,.14));
  border:1px solid rgba(0,143,139,.20);
  color:var(--primary-strong);
  font-weight:900;
}
.showcase,.shot{
  margin:1.25rem 0 0;
  border:1px solid var(--stroke);
  border-radius:8px;
  overflow:hidden;
  background:#fff;
  box-shadow:var(--shadow);
}
.showcase img,.shot img{display:block;width:100%;height:auto}

.split{
  display:grid;
  grid-template-columns:.72fr 1fr;
  align-items:center;
  gap:2rem;
}
.split--reverse{grid-template-columns:1fr .72fr}
.split--reverse .split__text{order:2}
.split__text p:not(.eyebrow){margin:.8rem 0 0;color:var(--muted);font-size:1.04rem}
.check-list{display:grid;gap:.6rem;margin-top:1.1rem}
.check-list span{
  padding:.72rem .8rem;
  border-left:4px solid var(--primary);
  background:rgba(255,255,255,.78);
  border-radius:8px;
  font-weight:850;
  box-shadow:0 8px 18px rgba(8,38,58,.06);
}
.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:1.1rem}
.metric-row div{
  padding:.8rem;
  border:1px solid var(--stroke);
  border-radius:8px;
  background:rgba(255,255,255,.88);
}
.metric-row strong{display:block;font-size:1.2rem}
.metric-row span{display:block;color:var(--muted);font-size:.92rem}

.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.step{
  background:#fff;
  border:1px solid var(--stroke);
  border-radius:8px;
  padding:1rem;
  box-shadow:var(--shadow2);
}
.step__num{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:linear-gradient(135deg,var(--accent),#ffc39f);
  color:#331300;
  font-weight:900;
}
.step h3{margin:.65rem 0 .25rem}
.step p{margin:0;color:var(--muted)}

.price{display:flex;flex-direction:column;gap:.7rem}
.price__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.tag{
  border:1px solid var(--stroke);
  border-radius:999px;
  padding:.24rem .5rem;
  color:var(--muted);
  background:#f4f8fb;
  font-size:.82rem;
  font-weight:900;
}
.tag--accent{color:#7a3200;background:#fff0e6;border-color:rgba(255,138,61,.32)}
.price__value{margin:0;font-size:2.05rem;font-weight:900;line-height:1}
.price__value span{font-size:.92rem;color:var(--muted)}
.price ul{margin:.2rem 0 .5rem;padding-left:1.1rem;color:var(--muted)}
.price li{margin:.28rem 0}
.price .btn{margin-top:auto}
.price--accent{border-color:rgba(0,143,139,.34);box-shadow:0 18px 52px rgba(0,143,139,.16)}

.contact{text-align:center}
.contact h2{margin:0;font-size:clamp(2rem,3vw,3.1rem);line-height:1.08}
.contact p{max-width:700px;margin:.8rem auto 1.2rem;color:rgba(255,255,255,.82)}
.contact__actions{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap}
.section--cta .btn--ghost{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.35)}

.site-footer{border-top:1px solid var(--stroke);padding:22px 0;background:#fff}
.foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.foot p{margin:0;color:var(--muted)}
.foot-links a{color:var(--muted);font-weight:850;text-decoration:none}
.foot-links a:hover{color:var(--text)}

:root.dark{
  --bg:#081014;
  --text:#eef8fb;
  --muted:#a6bbc5;
  --surface:#101b22;
  --surface-soft:#111f28;
  --stroke:rgba(255,255,255,.14);
  --shadow:0 22px 70px rgba(0,0,0,.42);
  --shadow2:0 12px 32px rgba(0,0,0,.30);
}
:root.dark body{background:var(--bg)}
:root.dark .site-header{background:rgba(8,16,20,.86)}
:root.dark .card,
:root.dark .step,
:root.dark .shot,
:root.dark .showcase,
:root.dark .metric-row div,
:root.dark .check-list span,
:root.dark .toggle{background:var(--surface)}
:root.dark .section--pricing,
:root.dark .site-footer{background:#0b151b}
:root.dark .hero{
  background:
    linear-gradient(90deg,rgba(8,16,20,.98) 0%,rgba(8,16,20,.84) 35%,rgba(8,16,20,.28) 70%,rgba(8,16,20,.10) 100%),
    url("../assets/reupsell-carousel-banner.png") center / cover no-repeat;
}
:root.dark .hero::after{background:linear-gradient(180deg,rgba(8,16,20,0),var(--bg))}
:root.dark .hero__lead{color:#c5d7de}
:root.dark .hero__stats span{background:rgba(8,16,20,.72);color:#a5f3ed}

@media (max-width:1100px){
  .feature-grid,.price-grid{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .split,.split--reverse{grid-template-columns:1fr}
  .split--reverse .split__text{order:0}
}
@media (max-width:860px){
  body{padding-top:70px}
  .hamburger{display:block}
  .nav-links{display:none}
  .nav-links.open{
    display:flex;
    position:absolute;
    top:64px;
    right:4%;
    flex-direction:column;
    align-items:stretch;
    width:min(280px,92vw);
    padding:.85rem;
    background:var(--surface);
    border:1px solid var(--stroke);
    border-radius:8px;
    box-shadow:var(--shadow);
  }
  .hero{min-height:78vh;background-position:58% center}
  .hero__content{padding:52px 0 76px}
  .hero__lead{max-width:560px}
  .feature-grid,.price-grid,.steps,.metric-row{grid-template-columns:1fr}
}
@media (max-width:560px){
  .container{width:min(100% - 28px,1200px)}
  .section{padding:54px 0}
  .hero{
    min-height:76vh;
    background:
      linear-gradient(180deg,rgba(246,251,251,.98) 0%,rgba(246,251,251,.88) 42%,rgba(246,251,251,.48) 100%),
      url("../assets/reupsell-carousel-banner.png") 62% center / cover no-repeat;
  }
  :root.dark .hero{
    background:
      linear-gradient(180deg,rgba(8,16,20,.98) 0%,rgba(8,16,20,.86) 45%,rgba(8,16,20,.46) 100%),
      url("../assets/reupsell-carousel-banner.png") 62% center / cover no-repeat;
  }
  .cta-row .btn{width:100%}
}
