/* ===================== BoostingScore landing page ===================== */

:root{
  --bg:        #f0ede8;
  --card:      #ffffff;
  --border:    #e2e8f0;
  --green:     #2d6a0a;
  --green-dk:  #245608;
  --green-soft:#eaf5e2;
  --navy:      #1e3a5f;
  --navy-dk:   #15294a;
  --ink:       #1a2a3a;
  --body:      #3a5070;
  --muted:     #64748b;
  --good:      #2d6a0a;
  --err:       #c62828;
  --imp:       #b78906;
  --radius:    13px;
  --maxw:      820px;
  --shadow-sm: 0 1px 2px rgba(15,23,42,.04);
  --shadow:    0 6px 20px rgba(15,23,42,.06);
}

*,*::before,*::after{ box-sizing:border-box; }

html{ scroll-behavior:smooth; }

.ld-body{
  margin:0;
  background:var(--bg);
  color:var(--body);
  font-family: "Segoe UI", Arial, sans-serif;
  font-size:15.5px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img,svg{ max-width:100%; display:block; }

/* ---------- Top announcement strip ---------- */
.ld-anno{
  background:#0f1a14; color:#e7efe1;
  border-bottom:.5px solid #1d2b22;
}
.ld-anno__inner{
  max-width:1180px; margin:0 auto;
  padding:9px 22px;
  display:flex; align-items:center; justify-content:center; gap:10px;
  font-size:13px;
}
.ld-anno__dot{
  width:8px; height:8px; border-radius:50%;
  background:#7cd24c; box-shadow:0 0 0 0 rgba(124,210,76,.45);
  animation: ldPulse 1.8s ease-out infinite;
}
@keyframes ldPulse{
  0%   { box-shadow:0 0 0 0 rgba(124,210,76,.55); }
  70%  { box-shadow:0 0 0 8px rgba(124,210,76,0); }
  100% { box-shadow:0 0 0 0 rgba(124,210,76,0); }
}
.ld-anno__link{
  color:#a6e082; text-decoration:none; font-weight:600;
  margin-left:4px;
}
.ld-anno__link:hover{ color:#fff; }

/* ---------- Navbar ---------- */
.ld-nav{
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,.82);
  backdrop-filter: saturate(140%) blur(10px);
  -webkit-backdrop-filter: saturate(140%) blur(10px);
  border-bottom:.5px solid var(--border);
}
.ld-nav__inner{
  max-width:1180px;
  margin:0 auto;
  padding:12px 22px;
  display:flex; align-items:center; gap:20px;
}
.ld-logo{
  font-weight:800; color:var(--ink);
  text-decoration:none; letter-spacing:-.3px; font-size:20px;
}
.ld-logo span{ color:var(--green); }
.ld-logo--sm{ font-size:16px; }

.ld-nav__links{
  display:flex; gap:6px;
  margin:0 auto;
  background:#fff;
  border:.5px solid var(--border);
  border-radius:999px;
  padding:5px;
  box-shadow:var(--shadow-sm);
}
.ld-nav__link{
  color:var(--body); text-decoration:none; font-weight:500; font-size:13.5px;
  padding:7px 14px; border-radius:999px;
  transition: color .15s, background .15s;
}
.ld-nav__link:hover{ color:var(--ink); background:#f6f5f1; }

.ld-nav__right{ display:flex; gap:8px; align-items:center; }

.ld-nav__toggle{
  display:none; background:transparent; border:0; cursor:pointer;
  padding:6px; gap:5px; flex-direction:column;
}
.ld-nav__toggle span{
  display:block; width:22px; height:2px; background:var(--ink); border-radius:2px;
}

/* ---------- Buttons ---------- */
.ld-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  border-radius:999px;
  padding:11px 18px;
  font-weight:600; font-size:14.5px; line-height:1;
  text-decoration:none; cursor:pointer;
  border:1px solid transparent;
  transition: transform .08s ease, background .15s, color .15s, border-color .15s, box-shadow .15s;
  white-space:nowrap;
}
.ld-btn--sm{ padding:8px 14px; font-size:13.5px; }
.ld-btn--lg{ padding:14px 22px; font-size:15.5px; }
.ld-btn--full{ width:100%; margin-top:18px; border-radius:10px; }
.ld-btn--green{ background:var(--green); color:#fff; box-shadow:0 6px 18px rgba(45,106,10,.22); }
.ld-btn--green:hover{ background:var(--green-dk); box-shadow:0 8px 22px rgba(45,106,10,.28); }
.ld-btn--outline{
  background:#fff; color:var(--ink);
  border-color:var(--border);
  border-radius:10px;
}
.ld-btn--outline:hover{ border-color:#cbd5e1; background:#fafafa; }
.ld-btn--ghost{
  background:transparent; color:var(--ink);
  border-color:transparent;
}
.ld-btn--ghost:hover{ background:#f6f5f1; }
.ld-btn:active{ transform:translateY(1px); }

.ld-btn__arrow{
  display:inline-block;
  transition: transform .15s ease;
}
.ld-btn:hover .ld-btn__arrow{ transform: translateX(3px); }

/* ---------- Generic section ---------- */
main{ display:block; }
.ld-sec, .ld-hero, .ld-stats, .ld-how, .ld-faq, .ld-final{
  max-width:var(--maxw);
  margin:0 auto;
  padding:64px 22px;
}
.ld-sec__head{ text-align:center; margin-bottom:34px; }
.ld-eyebrow{
  text-transform:uppercase; letter-spacing:.14em;
  font-size:11.5px; font-weight:700; color:var(--green);
  margin:0 0 10px;
}
.ld-h1{
  font-size:42px; line-height:1.15; letter-spacing:-.6px;
  color:var(--ink);
  margin:18px 0 14px;
  font-weight:800;
}
.ld-h2{
  font-size:30px; line-height:1.2; letter-spacing:-.4px;
  color:var(--ink);
  margin:0 0 10px;
  font-weight:800;
}
.ld-green{ color:var(--green); }
.ld-sub{
  font-size:17px; color:var(--body); margin:0 auto;
  max-width:640px;
}

/* ---------- Hero ---------- */
.ld-hero{
  position:relative;
  background:#fff;
  padding:80px 22px 36px;
  text-align:center;
  overflow:hidden;
  isolation:isolate;
}
.ld-hero::before{
  /* soft radial backdrop */
  content:"";
  position:absolute; inset:-10% -10% auto -10%;
  height:520px;
  background:
    radial-gradient(560px 360px at 20% 20%, rgba(45,106,10,.07), transparent 60%),
    radial-gradient(620px 420px at 85% 30%, rgba(120,180,70,.10), transparent 60%);
  z-index:-1;
}
.ld-hero__inner{
  max-width:880px; margin:0 auto;
}

.ld-pill{
  display:inline-flex; align-items:center; gap:8px;
  background:#fff;
  border:.5px solid var(--border);
  color:var(--ink);
  font-size:12.5px; font-weight:600;
  padding:6px 13px 6px 10px; border-radius:999px;
  letter-spacing:.01em;
  box-shadow:var(--shadow-sm);
}
.ld-pill__dot{
  width:8px; height:8px; border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 0 rgba(45,106,10,.45);
  animation: ldPulse 2s ease-out infinite;
}

.ld-h1{
  font-size:64px;
  line-height:1.04;
  letter-spacing:-1.2px;
  color:var(--ink);
  margin:24px 0 18px;
  font-weight:800;
}
.ld-h1__accent{
  display:inline-block; position:relative;
  color:var(--green);
}
.ld-h1__accent i{
  font-style:italic;
  font-family: "Iowan Old Style","Georgia",serif;
  font-weight:600;
  padding-right:6px;
}
.ld-h1__accent::after{
  /* hand-drawn underline */
  content:"";
  position:absolute; left:2%; right:2%; bottom:-6px;
  height:8px;
  background: radial-gradient(closest-side, rgba(45,106,10,.30) 0%, rgba(45,106,10,0) 70%);
  filter: blur(.3px);
}

.ld-cta{
  display:flex; gap:14px; justify-content:center; flex-wrap:wrap; align-items:center;
  margin-top:8px;
}

.ld-watch{
  display:inline-flex; align-items:center; gap:11px;
  background:transparent;
  color:var(--ink);
  text-decoration:none;
  padding:6px 8px 6px 6px;
  border-radius:999px;
  transition: background .15s;
}
.ld-watch:hover{ background:#f6f5f1; }
.ld-watch__play{
  width:36px; height:36px; border-radius:50%;
  background:var(--ink); color:#fff;
  display:inline-flex; align-items:center; justify-content:center;
  box-shadow:0 4px 12px rgba(15,23,42,.18);
}
.ld-watch__txt{ display:inline-flex; flex-direction:column; align-items:flex-start; line-height:1.1; }
.ld-watch__txt small{ color:var(--muted); font-size:11px; font-weight:500; letter-spacing:.04em; text-transform:uppercase; }
.ld-watch__txt b{ color:var(--ink); font-size:14px; font-weight:600; margin-top:2px; }

.ld-cta__note{
  font-size:13px; color:var(--muted); margin:14px 0 0;
}

/* Trust row */
.ld-trust{
  display:inline-flex; align-items:center; gap:14px;
  margin-top:26px;
  padding:8px 14px 8px 10px;
  background:#fff;
  border:.5px solid var(--border);
  border-radius:999px;
  box-shadow:var(--shadow-sm);
}
.ld-avatars{ display:flex; }
.ld-av{
  width:28px; height:28px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  color:#fff; font-weight:700; font-size:11px;
  border:2px solid #fff;
  margin-left:-8px;
}
.ld-av:first-child{ margin-left:0; }
.ld-av--1{ background:#3a6fa0; }
.ld-av--2{ background:#2d6a0a; }
.ld-av--3{ background:#a35a18; }
.ld-av--4{ background:#5b3a8e; }
.ld-av--5{ background:#1a2a3a; }
.ld-trust__text{
  display:flex; flex-direction:column; align-items:flex-start; line-height:1.15;
  text-align:left;
}
.ld-stars{ color:#f3b829; font-size:13px; letter-spacing:1px; }
.ld-trust__text > span{ font-size:13px; color:var(--body); }
.ld-trust__text b{ color:var(--ink); font-weight:700; }

/* Mini demo card */
.ld-demo{
  max-width:760px;
  margin:46px auto 0;
  background:#fff;
  border:.5px solid var(--border);
  border-radius:18px;
  box-shadow:0 26px 60px -28px rgba(15,23,42,.25), 0 8px 24px rgba(15,23,42,.06);
  padding:18px 22px 22px;
  text-align:left;
}
.ld-demo__top{
  display:flex; align-items:center; gap:8px;
  padding-bottom:12px;
  border-bottom:.5px solid var(--border);
  margin-bottom:14px;
}
.ld-dot{
  width:10px; height:10px; border-radius:50%; background:#e2e8f0; display:inline-block;
}
.ld-dot:nth-child(1){ background:#ff5f57; }
.ld-dot:nth-child(2){ background:#febc2e; }
.ld-dot:nth-child(3){ background:#28c840; }
.ld-demo__title{
  font-size:12.5px; color:var(--muted); margin-left:8px; font-weight:600;
}
.ld-demo__live{
  margin-left:auto;
  font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  color:var(--green);
  background:var(--green-soft);
  border:1px solid #d6e9c7;
  padding:3px 8px; border-radius:999px;
}

/* Marquee strip */
.ld-marquee{
  background:#fff;
  border-top:.5px solid var(--border);
  border-bottom:.5px solid var(--border);
  overflow:hidden;
  margin-top:48px;
  position:relative;
  mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
}
.ld-marquee__track{
  display:inline-flex; gap:28px;
  white-space:nowrap;
  padding:18px 0;
  font-size:14px; color:var(--muted);
  font-weight:600; letter-spacing:.04em; text-transform:uppercase;
  animation: ldMarquee 32s linear infinite;
}
.ld-marquee__track span{ display:inline-block; }
@keyframes ldMarquee{
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
.ld-demo__line{
  font-size:15px; color:var(--ink); margin:6px 0 16px; line-height:1.55;
}
.hl{ font-style:normal; padding:1px 4px; border-radius:4px; font-weight:500; }
.hl--good{ background:#e6f4dd; color:#1d4e07; }
.hl--imp { background:#fdf3d4; color:#8a6a06; }
.hl--err { background:#fde2e2; color:#9b1c1c; text-decoration:line-through; text-decoration-color:#c62828; }
.ld-band{ display:grid; gap:8px; }
.ld-band__row{
  display:grid; grid-template-columns:140px 1fr 40px;
  align-items:center; gap:12px;
  font-size:13px; color:var(--body);
}
.ld-band__row b{ color:var(--ink); font-weight:700; text-align:right; }
.ld-bar{
  height:8px; background:#eef2f7; border-radius:999px; overflow:hidden;
}
.ld-bar i{
  display:block; height:100%; width:0;
  background:linear-gradient(90deg, var(--green), #4a9620);
  border-radius:999px;
  transition: width 1.1s cubic-bezier(.2,.7,.2,1);
}

/* ---------- Stats ---------- */
.ld-stats{ padding-top:28px; padding-bottom:60px; }
.ld-stats__grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:16px;
}
.ld-stat{
  background:var(--card);
  border:.5px solid var(--border);
  border-radius:var(--radius);
  padding:22px 18px;
  text-align:center;
  box-shadow:var(--shadow-sm);
}
.ld-stat__num{
  font-size:30px; font-weight:800; color:var(--green);
  letter-spacing:-.5px;
}
.ld-stat__lbl{
  color:var(--body); font-size:13.5px; margin-top:4px;
}

/* ---------- Features tabs ---------- */
.ld-tabs{
  display:flex; flex-wrap:wrap; gap:8px;
  justify-content:center;
  margin-bottom:22px;
}
.ld-tab{
  background:#fff;
  border:.5px solid var(--border);
  border-radius:999px;
  padding:9px 16px;
  font-size:13.5px; font-weight:600;
  color:var(--body);
  cursor:pointer;
  transition: background .15s, color .15s, border-color .15s, box-shadow .15s;
}
.ld-tab:hover{ background:#fafafa; }
.ld-tab.is-on{
  background:var(--green); color:#fff; border-color:var(--green);
  box-shadow:0 4px 10px rgba(45,106,10,.18);
}
.ld-feat{
  background:#fff;
  border:.5px solid var(--border);
  border-radius:var(--radius);
  padding:28px 28px 26px;
  box-shadow:var(--shadow);
}
.ld-feat__icon{ font-size:32px; }
.ld-feat__title{
  font-size:22px; color:var(--ink); margin:8px 0 4px; font-weight:800;
}
.ld-feat__sub{ color:var(--body); margin:0 0 16px; }
.ld-hidden{ display:none; }

.ld-checks{
  list-style:none; padding:0; margin:0;
  display:grid; gap:10px;
}
.ld-checks li{
  position:relative;
  padding-left:28px;
  color:var(--body);
  font-size:14.5px;
}
.ld-checks li::before{
  content:"✓";
  position:absolute; left:0; top:1px;
  width:20px; height:20px; border-radius:50%;
  background:var(--green-soft); color:var(--green-dk);
  font-weight:800; font-size:12px;
  display:flex; align-items:center; justify-content:center;
}

/* ---------- How it works ---------- */
.ld-how{
  background:#f4f3ef;
  max-width:none; margin:0; padding:64px 22px;
}
.ld-how > .ld-sec__head, .ld-how > .ld-steps{
  max-width:var(--maxw); margin-left:auto; margin-right:auto;
}
.ld-steps{
  list-style:none; padding:0; margin:0;
  display:grid; gap:16px;
  grid-template-columns:repeat(3,1fr);
}
.ld-step{
  background:#fff;
  border:.5px solid var(--border);
  border-radius:var(--radius);
  padding:22px 20px 20px;
  box-shadow:var(--shadow-sm);
}
.ld-step__num{
  display:inline-flex; align-items:center; justify-content:center;
  width:34px; height:34px;
  border-radius:10px;
  background:var(--navy); color:#fff;
  font-weight:800; font-size:15px;
  margin-bottom:12px;
}
.ld-step h3{
  margin:0 0 6px; color:var(--ink); font-size:17px; font-weight:700;
}
.ld-step p{ margin:0; color:var(--body); font-size:14.5px; }

/* ---------- Pricing ---------- */
.ld-price__grid{
  display:grid; grid-template-columns:1fr 1fr; gap:18px;
}
.ld-price{
  position:relative;
  background:#fff;
  border:.5px solid var(--border);
  border-radius:var(--radius);
  padding:26px 24px 24px;
  box-shadow:var(--shadow-sm);
  display:flex; flex-direction:column;
}
.ld-price--pro{
  border:1.5px solid var(--green);
  box-shadow:0 10px 28px rgba(45,106,10,.14);
}
.ld-pro-badge{
  position:absolute; top:-12px; right:18px;
  background:var(--green); color:#fff;
  font-size:12px; font-weight:700;
  padding:5px 12px; border-radius:999px;
  letter-spacing:.02em;
}
.ld-price__name{
  margin:0 0 4px; color:var(--ink); font-size:18px; font-weight:700;
}
.ld-price__amount{
  font-size:34px; font-weight:800; color:var(--ink);
  margin:4px 0 18px; letter-spacing:-.5px;
}
.ld-price__amount span{ color:var(--muted); font-size:14px; font-weight:500; margin-left:2px; }

/* ---------- FAQ ---------- */
.ld-faq__list{ display:grid; gap:10px; }
.ld-q{
  background:#fff;
  border:.5px solid var(--border);
  border-radius:var(--radius);
  padding:0;
  overflow:hidden;
  box-shadow:var(--shadow-sm);
}
.ld-q summary{
  cursor:pointer; list-style:none;
  padding:16px 20px;
  font-weight:600; color:var(--ink);
  display:flex; align-items:center; justify-content:space-between;
  gap:14px;
}
.ld-q summary::-webkit-details-marker{ display:none; }
.ld-q summary::after{
  content:"+";
  font-size:20px; font-weight:600; color:var(--muted);
  line-height:1;
}
.ld-q[open] summary::after{ content:"−"; color:var(--green); }
.ld-q > div{
  padding:0 20px 18px;
  color:var(--body);
  font-size:14.5px;
}

/* ---------- Final CTA ---------- */
.ld-final{
  background:#fff;
  max-width:none; margin:0; padding:70px 22px;
  text-align:center;
}
.ld-final .ld-h2{ margin-bottom:10px; }
.ld-final .ld-sub{ margin:0 auto 24px; }

/* ---------- Footer ---------- */
.ld-footer{
  background:#fff;
  border-top:.5px solid var(--border);
}
.ld-footer__inner{
  max-width:1120px; margin:0 auto; padding:18px 22px;
  display:flex; align-items:center; gap:14px;
}
.ld-footer__links{
  margin:0 auto; display:flex; gap:18px;
}
.ld-footer__links a{
  color:var(--body); text-decoration:none; font-size:13.5px;
}
.ld-footer__links a:hover{ color:var(--ink); }
.ld-footer__copy{ color:var(--muted); font-size:13px; }

/* ---------- Responsive ---------- */
@media (max-width: 980px){
  .ld-h1{ font-size:50px; letter-spacing:-.8px; }
}

@media (max-width: 860px){
  .ld-stats__grid{ grid-template-columns:1fr; }
  .ld-steps{ grid-template-columns:1fr; }
  .ld-price__grid{ grid-template-columns:1fr; }
  .ld-h1{ font-size:40px; letter-spacing:-.6px; }
  .ld-h2{ font-size:25px; }
  .ld-sub{ font-size:16px; }
  .ld-band__row{ grid-template-columns:120px 1fr 36px; font-size:12.5px; }
  .ld-anno{ font-size:12px; }
  .ld-anno__inner{ padding:8px 16px; }
  .ld-anno__link{ display:none; }
}

@media (max-width: 720px){
  .ld-nav__inner{ padding:10px 18px; gap:10px; }
  .ld-nav__links{
    position:absolute; left:0; right:0; top:100%;
    background:#fff; border-bottom:.5px solid var(--border);
    flex-direction:column; gap:0; padding:6px 0;
    display:none;
    border-radius:0; box-shadow:none;
  }
  .ld-nav.is-open .ld-nav__links{ display:flex; }
  .ld-nav__links .ld-nav__link{ padding:12px 22px; border-radius:0; }
  .ld-nav__toggle{ display:flex; }
  .ld-nav__right .ld-btn--ghost{ display:none; }

  .ld-hero{ padding:48px 18px 24px; }
  .ld-h1{ font-size:34px; }
  .ld-cta{ gap:10px; }
  .ld-watch__txt small{ display:none; }
  .ld-watch__txt b{ font-size:13px; }
  .ld-trust{ flex-direction:column; gap:8px; padding:12px 14px; border-radius:14px; }
  .ld-trust__text{ align-items:center; text-align:center; }
  .ld-demo{ margin-top:32px; padding:14px 14px 16px; }
  .ld-marquee__track{ font-size:12px; gap:20px; padding:14px 0; }
  .ld-sec, .ld-stats, .ld-how, .ld-faq, .ld-final{ padding:48px 18px; }
}

@media (prefers-reduced-motion: reduce){
  .ld-bar i, .ld-btn__arrow{ transition:none; }
  .ld-marquee__track{ animation:none; }
  .ld-anno__dot, .ld-pill__dot{ animation:none; }
  html{ scroll-behavior:auto; }
}
