:root{
  --navy:#071528;
  --navy2:#0c2038;
  --blue:#0ea5e9;
  --blue2:#2563eb;
  --cyan:#38bdf8;
  --text:#0f172a;
  --muted:#5b6b80;
  --line:#dbe6f3;
  --soft:#f4f8fc;
  --card:#ffffff;
  --shadow:0 20px 55px rgba(15,23,42,.08);
  --shadow-strong:0 26px 70px rgba(2,8,23,.16);
  --radius:24px;
  --container:min(1180px, calc(100% - 32px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Arial,Helvetica,sans-serif;
  color:var(--text);
  background:#fff;
  line-height:1.65;
  font-size:16px;
}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
p{margin:0 0 1rem;color:var(--muted)}
h1,h2,h3{margin:0;color:var(--text);line-height:1.1;letter-spacing:-.03em}
.container{width:var(--container);margin-inline:auto}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:16px;top:16px;background:#fff;padding:10px 14px;border-radius:12px;z-index:1000}

.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(226,232,240,.9);
}
.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand img{width:205px}
.nav{display:flex;align-items:center;gap:22px;font-weight:750;color:#334155}
.nav a{opacity:.9}
.nav a:hover{color:var(--blue);opacity:1}
.nav-toggle{display:none;border:0;background:transparent;font-size:28px;color:var(--navy)}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  border:0;border-radius:14px;
  padding:15px 22px;
  background:linear-gradient(135deg,var(--blue2),var(--blue));
  color:#fff;font-weight:850;
  box-shadow:0 16px 34px rgba(14,165,233,.23);
  transition:.2s ease;
}
.btn:hover{transform:translateY(-1px);box-shadow:0 18px 40px rgba(14,165,233,.28)}
.btn-small{padding:11px 16px;font-size:.94rem}
.btn-light{background:#fff;color:var(--navy);border:1px solid var(--line);box-shadow:none}
.btn-white{background:#fff;color:var(--navy);box-shadow:none}
.btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);box-shadow:none}
.btn-wide{width:100%}

.hero{
  padding:76px 0 58px;
  background:
    radial-gradient(circle at 82% 8%, rgba(56,189,248,.25), transparent 28%),
    radial-gradient(circle at 5% 20%, rgba(37,99,235,.14), transparent 32%),
    linear-gradient(180deg,#f8fbff 0%,#eef6ff 100%);
}
.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}
.eyebrow{
  display:inline-flex;align-items:center;
  color:var(--blue2);font-weight:850;text-transform:uppercase;
  letter-spacing:.13em;font-size:.78rem;margin-bottom:14px;
}
.eyebrow-light,.eyebrow-blue{color:#ccefff}
.hero h1{font-size:clamp(2.4rem,4.4vw,4.8rem);max-width:760px}
.lead{font-size:1.14rem;margin-top:18px;max-width:650px;color:#475569}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0 20px}
.hero-badges{display:flex;flex-wrap:wrap;gap:10px}
.hero-badges span{
  background:#fff;border:1px solid var(--line);
  border-radius:999px;padding:9px 13px;
  color:#334155;font-weight:750;font-size:.94rem;
  box-shadow:0 10px 28px rgba(15,23,42,.05);
}
.hero-media img{border-radius:30px;box-shadow:var(--shadow-strong)}

.section{padding:90px 0}
.section-soft{background:var(--soft)}
.section-price{background:linear-gradient(135deg,#075985,#0f77bd 48%,#0ea5e9);color:#fff}
.section-price h2{color:#fff}
.section-price p{color:#ddf3ff}
.section-head{max-width:900px;margin:0 auto 38px}
.narrow-center{text-align:center}
.section-head h2,.section-title h2,.price-copy h2,.form-grid h2{
  font-size:clamp(1.95rem,3.1vw,3.2rem);
}

.two-col{display:grid;grid-template-columns:.95fr 1.05fr;gap:42px;align-items:start}
.text-block{
  background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);
}
.problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:26px}
.problem-grid article{
  background:#fff;border:1px solid var(--line);
  border-radius:20px;padding:22px;box-shadow:var(--shadow);
}
.problem-grid strong{display:block;font-size:1.14rem;margin-bottom:6px}
.problem-grid span{color:var(--muted)}

.feature-stack{display:grid;gap:26px}
.feature-panel{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,420px);
  gap:30px;align-items:center;
  background:#fff;border:1px solid var(--line);border-radius:30px;
  padding:32px;box-shadow:var(--shadow);
}
.feature-panel.reverse{grid-template-columns:minmax(330px,420px) minmax(0,1fr)}
.feature-panel.reverse .feature-copy{order:2}
.feature-panel.reverse .feature-media{order:1}
.feature-no{
  display:inline-flex;align-items:center;justify-content:center;
  width:48px;height:48px;border-radius:14px;
  background:#e0f2fe;color:#0369a1;font-weight:900;margin-bottom:18px;
}
.feature-copy h3{font-size:clamp(1.55rem,2vw,2rem);margin-bottom:12px}
.feature-copy p{font-size:1.02rem;max-width:560px}
.feature-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}
.feature-list li{position:relative;padding-left:28px;color:#334155;font-weight:600}
.feature-list li::before{
  content:"✓";position:absolute;left:0;top:0;color:var(--blue2);font-weight:900
}
.phone-card{
  background:linear-gradient(180deg,#f9fcff,#edf4fb);
  border:1px solid #dde9f6;border-radius:28px;
  min-height:100%;padding:16px;
  display:flex;align-items:center;justify-content:center;
}
.phone-card img{
  width:100%;max-width:360px;object-fit:contain;
  filter:drop-shadow(0 22px 48px rgba(15,23,42,.18));
}

.extra-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.extra-card{
  background:#fff;border:1px solid var(--line);border-radius:24px;
  padding:26px;box-shadow:var(--shadow);
}
.extra-icon{
  width:54px;height:54px;border-radius:18px;display:grid;place-items:center;
  font-size:1.5rem;background:#e0f2fe;margin-bottom:18px
}
.extra-card h3{font-size:1.18rem;margin-bottom:10px}
.extra-card p{margin:0}

.price-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:38px;align-items:center}
.price-copy{max-width:600px}
.price-highlight{
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
  margin:26px 0 24px;
}
.price-highlight > div{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.22);
  border-radius:24px;padding:22px;
  backdrop-filter:blur(6px);
}
.price-label{
  display:block;text-transform:uppercase;letter-spacing:.1em;
  font-size:.78rem;font-weight:800;color:#d9f3ff;margin-bottom:10px
}
.price-highlight strong{display:block;font-size:3rem;line-height:1;color:#fff;letter-spacing:-.04em}
.price-highlight small{display:block;margin-top:8px;font-size:1rem;color:#eaf8ff}
.check-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.check-list li{position:relative;padding-left:30px;color:#eaf8ff}
.check-list li::before{content:"✓";position:absolute;left:0;top:0;font-weight:900;color:#fff}
.price-actions{margin-top:28px}
.price-visual{display:grid;gap:16px}
.promo-shot{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.18);
  border-radius:28px;padding:12px;
  box-shadow:var(--shadow-strong)
}
.promo-shot img{border-radius:22px;width:100%;object-fit:cover;aspect-ratio:4/5}
.price-note{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;padding:14px 18px;
  font-weight:700;color:#f4fbff;text-align:center
}

.form-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px;align-items:start}
.contact-links{display:grid;gap:12px;margin-top:22px}
.contact-links a{
  display:inline-flex;width:max-content;
  background:#fff;border:1px solid var(--line);
  border-radius:14px;padding:12px 16px;box-shadow:var(--shadow);
  font-weight:800
}
.contact-form{
  background:#fff;border:1px solid var(--line);
  border-radius:28px;padding:28px;box-shadow:var(--shadow);
  display:grid;gap:16px
}
label{display:grid;gap:7px;font-weight:750;color:#334155}
input,select,textarea{
  width:100%;border:1px solid #dbe3ef;border-radius:14px;
  padding:13px 14px;background:#fff;color:var(--text);font:inherit;
}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(14,165,233,.18);border-color:var(--blue)}
.consent{display:flex;gap:12px;align-items:flex-start;font-weight:650;color:#334155}
.consent input{width:18px;height:18px;margin-top:3px}
.hp{display:none!important}

.site-footer{background:var(--navy);color:#dbeafe;padding:42px 0}
.footer-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:28px}
.site-footer img{width:210px;margin-bottom:12px}
.site-footer p,.site-footer a{color:#dbeafe;margin:0}
.site-footer a{display:block;margin-top:6px}
.site-footer strong{display:block;color:#fff;margin-bottom:8px}

@media (max-width:1100px){
  .hero-grid,.two-col,.price-layout,.form-grid{grid-template-columns:1fr}
  .feature-panel,.feature-panel.reverse{grid-template-columns:1fr}
  .feature-panel.reverse .feature-copy,.feature-panel.reverse .feature-media{order:initial}
  .problem-grid,.extra-grid{grid-template-columns:repeat(2,1fr)}
  .price-copy{max-width:none}
}
@media (max-width:760px){
  body{font-size:15.5px}
  .nav-toggle{display:block}
  .nav{
    display:none;position:absolute;right:16px;top:74px;
    width:min(360px,calc(100% - 32px));background:#fff;
    border:1px solid var(--line);border-radius:18px;
    box-shadow:var(--shadow);padding:16px;
    flex-direction:column;align-items:stretch;gap:6px
  }
  .nav.open{display:flex}
  .nav a{padding:10px 8px}
  .brand img{width:170px}
  .hero{padding:38px 0 44px}
  .section{padding:64px 0}
  .hero h1{font-size:2.45rem}
  .hero-actions{display:grid}
  .hero-media img{border-radius:22px}
  .problem-grid,.extra-grid,.price-highlight,.footer-grid{grid-template-columns:1fr}
  .feature-panel,.extra-card,.contact-form,.text-block{padding:22px}
  .feature-panel{gap:20px}
  .phone-card{padding:10px}
  .phone-card img{max-width:320px}
}


/* v5 hero and promo improvements */
section[id]{scroll-margin-top:96px}
.hero h1 span{color:var(--blue)}
.hero-copy{position:relative;z-index:2}
.hero-pill{
  text-transform:none;letter-spacing:0;font-size:1rem;color:#0c5b8d;
  background:#dff0ff;border:1px solid #cae6fb;border-radius:999px;
  padding:12px 18px;box-shadow:0 12px 28px rgba(14,165,233,.10)
}
.hero-more{display:inline-flex;align-items:center;gap:8px;font-weight:850;color:#0f77bd;margin-top:10px}
.hero-composition{position:relative;min-height:520px;overflow:visible}
.hero-phone{
  position:absolute;top:18px;right:16px;width:min(46%,260px);z-index:3;
  transform:rotate(11deg);filter:drop-shadow(0 30px 54px rgba(15,23,42,.20));
}
.hero-phone img{display:block;width:100%;height:auto}
.hero-desktop{
  position:absolute;right:-50px;bottom:14px;width:min(95%,560px);z-index:1;
  border-radius:32px;overflow:hidden;background:#0a1222;
  border:10px solid #0a1222;box-shadow:0 28px 70px rgba(2,8,23,.22)
}
.hero-desktop img{display:block;width:118%;max-width:none;height:auto;transform:translateX(-2%)}
.promo-band{padding:8px 0 10px;background:var(--soft)}
.promo-band-wrap{border-radius:34px;overflow:hidden;box-shadow:var(--shadow-strong)}
.promo-band-wrap img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.update-strip{
  margin-top:22px;background:linear-gradient(135deg,#e8f4ff,#f8fbff);
  border:1px solid #d8e9fb;border-radius:24px;padding:20px 24px;
  color:#33506b;box-shadow:var(--shadow)
}
.update-strip strong{display:block;color:#0f172a;font-size:1.06rem;margin-bottom:6px}

@media (max-width:1100px){
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);align-items:center}
  .hero-composition{min-height:420px}
  .hero-desktop{right:-28px;width:min(100%,470px)}
}
@media (max-width:760px){
  .hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(132px,.7fr);gap:18px;align-items:start}
  .hero-copy{padding-top:6px}
  .hero h1{font-size:2rem;line-height:1.03}
  .lead{font-size:1rem;margin-top:14px}
  .hero-pill{font-size:.9rem;padding:10px 14px;margin-bottom:12px}
  .hero-actions{margin:24px 0 14px}
  .hero .btn{width:100%;padding:16px 18px}
  .hero-more{font-size:1.05rem;justify-content:center;width:100%}
  .hero-composition{min-height:300px;padding-top:6px}
  .hero-phone{top:6px;right:-6px;width:132px;transform:rotate(10deg)}
  .hero-desktop{right:-42px;bottom:26px;width:220px;border-width:6px;border-radius:20px}
  .promo-band{padding-top:0}
  .promo-band-wrap{border-radius:24px}
}

/* v6 final hero layout - closer to approved reference */
.hero-grid-v6{
  display:block;
}
.hero-copy-v6{
  position:relative;
  z-index:2;
  max-width:920px;
}
.hero-copy-v6 .hero-pill{
  margin-bottom:22px;
  padding:12px 20px;
  font-size:1rem;
}
.hero-copy-v6 h1{
  max-width:900px;
  font-size:clamp(2.7rem,5vw,5rem);
  line-height:1.03;
  letter-spacing:-0.03em;
}
.hero-copy-v6 .lead{
  max-width:780px;
  font-size:1.18rem;
  line-height:1.72;
  margin-top:24px;
}
.hero-actions-v6{
  margin:34px 0 18px;
}
.btn-hero{
  min-width:min(100%,620px);
  padding:22px 34px;
  min-height:74px;
  border-radius:24px;
  font-size:1.18rem;
  box-shadow:0 18px 40px rgba(14,165,233,.22);
}
.hero-copy-v6 .hero-more{
  display:flex;
  justify-content:center;
  width:min(100%,620px);
  max-width:620px;
  font-size:1.05rem;
}
.hero-media-v6{
  margin-top:28px;
  display:flex;
  justify-content:center;
}
.hero-media-v6 img{
  display:block;
  width:min(100%,980px);
  height:auto;
  border-radius:0;
  box-shadow:none;
}
.hero::after{
  content:"";
  position:absolute;
  right:-120px;
  top:120px;
  width:340px;
  height:340px;
  border-radius:50%;
  background:rgba(219,235,251,.75);
  filter:blur(2px);
  pointer-events:none;
}
.hero{position:relative;overflow:hidden}

@media (max-width:1100px){
  .hero-copy-v6 h1{font-size:clamp(2.45rem,6vw,4.3rem)}
}
@media (max-width:760px){
  .hero-copy-v6 .hero-pill{
    font-size:.95rem;
    padding:10px 16px;
    margin-bottom:18px;
  }
  .hero-copy-v6 h1{
    font-size:clamp(2.25rem,10vw,3.55rem);
    line-height:1.05;
  }
  .hero-copy-v6 .lead{
    margin-top:18px;
    font-size:1rem;
    line-height:1.75;
    max-width:100%;
  }
  .hero-actions-v6{
    margin:28px 0 16px;
  }
  .btn-hero{
    width:min(100%,620px);
    min-height:68px;
    border-radius:22px;
    font-size:1rem;
    padding:18px 22px;
  }
  .hero-copy-v6 .hero-more{
    width:100%;
  }
  .hero-media-v6{
    margin-top:24px;
  }
  .hero-media-v6 img{
    width:calc(100% + 8px);
    max-width:none;
    margin-left:-4px;
  }
  .hero::after{
    width:230px;
    height:230px;
    right:-95px;
    top:150px;
  }
}
