@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap');

:root{
  --navy:#08233d;
  --navy-2:#0d3151;
  --blue:#1378cf;
  --blue-soft:#eaf5ff;
  --orange:#ff7a00;
  --orange-dark:#e86900;
  --green:#1a9a69;
  --ink:#172536;
  --muted:#627487;
  --line:#dbe6ef;
  --soft:#f5f9fc;
  --white:#ffffff;
  --shadow:0 20px 60px rgba(8,35,61,.10);
  --shadow-small:0 10px 30px rgba(8,35,61,.08);
  --radius:24px;
  --max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:#fff;
  font-family:"Manrope",Arial,sans-serif;
  line-height:1.65;
}
img{display:block;max-width:100%}
a{color:inherit}
button,input,textarea,select{font:inherit}
.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}
.section{padding:96px 0}
h1,h2,h3,h4{
  margin-top:0;
  color:var(--navy);
  font-family:"Plus Jakarta Sans","Manrope",Arial,sans-serif;
}
h1{
  max-width:760px;
  margin-bottom:24px;
  font-size:clamp(46px,6vw,76px);
  line-height:1.03;
  letter-spacing:-.045em;
}
h2{
  margin-bottom:18px;
  font-size:clamp(34px,4.3vw,54px);
  line-height:1.08;
  letter-spacing:-.035em;
}
h3{line-height:1.25}
p{margin-top:0}
.eyebrow{
  margin-bottom:14px;
  color:var(--blue);
  font-size:13px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.eyebrow.light{color:#9ed4ff}
.section-heading{margin-bottom:45px;text-align:center}
.section-heading.narrow{max-width:790px;margin-right:auto;margin-left:auto}
.section-heading>p:last-child{color:var(--muted);font-size:18px}
.button{
  display:inline-flex;
  min-height:50px;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:999px;
  padding:13px 24px;
  font-weight:800;
  text-decoration:none;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.button:hover{transform:translateY(-2px)}
.button.large{min-height:58px;padding:16px 30px}
.button.primary{
  color:#fff;
  background:var(--orange);
  box-shadow:0 12px 28px rgba(255,122,0,.27);
}
.button.primary:hover{background:var(--orange-dark)}
.button.dark-button{color:#fff;background:var(--navy)}
.button.light-button{color:var(--navy);background:#fff}
.button.outline-button{border:2px solid var(--blue);color:var(--blue);background:#fff}

.announcement{
  display:flex;
  min-height:42px;
  align-items:center;
  justify-content:center;
  gap:28px;
  padding:8px 20px;
  color:#fff;
  background:var(--navy);
  font-size:13px;
  font-weight:700;
}
.announcement span+span:before{
  content:"•";
  margin-right:28px;
  color:#79b9e9;
}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  border-bottom:1px solid rgba(219,230,239,.9);
  background:rgba(255,255,255,.95);
  backdrop-filter:blur(14px);
}
.nav-wrap{
  display:flex;
  min-height:82px;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--navy);
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:21px;
  font-weight:800;
  text-decoration:none;
}
.brand-icon{
  display:grid;
  width:46px;
  height:46px;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:var(--blue);
}
.site-header nav{display:flex;align-items:center;gap:28px}
.site-header nav a{
  color:var(--navy);
  font-size:14px;
  font-weight:750;
  text-decoration:none;
}
.site-header nav a:hover{color:var(--blue)}
.site-header .nav-cta{
  padding:12px 20px;
  border-radius:999px;
  color:#fff;
  background:var(--orange);
}
.site-header .nav-cta:hover{color:#fff;background:var(--orange-dark)}
.menu-button{
  display:none;
  border:0;
  color:var(--navy);
  background:transparent;
  font-size:28px;
  cursor:pointer;
}

.hero{
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 18%,rgba(19,120,207,.14),transparent 31%),
    linear-gradient(135deg,#f8fbfe 0%,#edf7ff 58%,#f8fbfe 100%);
}
.hero-grid{
  display:grid;
  min-height:690px;
  grid-template-columns:1.08fr .92fr;
  align-items:center;
  gap:60px;
  padding:76px 0 84px;
}
.hero-lead{
  max-width:710px;
  margin-bottom:30px;
  color:var(--muted);
  font-size:19px;
}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.text-link{
  color:var(--navy);
  font-weight:800;
  text-decoration:none;
}
.text-link span{color:var(--orange)}
.hero-trust{
  display:grid;
  max-width:690px;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:38px;
}
.hero-trust div{
  padding:15px 17px;
  border:1px solid rgba(8,35,61,.09);
  border-radius:16px;
  background:rgba(255,255,255,.78);
}
.hero-trust b,.hero-trust span{display:block}
.hero-trust b{color:var(--navy);font-size:16px}
.hero-trust span{color:var(--muted);font-size:12px}
.hero-visual{position:relative;min-height:535px}
.hero-glow{
  position:absolute;
  inset:11% 6% 9% 8%;
  border-radius:50%;
  background:rgba(19,120,207,.13);
  filter:blur(18px);
}
.hero-visual picture{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
}
.hero-visual img{
  position:relative;
  z-index:2;
  width:min(100%,570px);
  border-radius:30px;
  box-shadow:0 28px 80px rgba(8,35,61,.16);
}
.floating-card{
  position:absolute;
  z-index:4;
  display:flex;
  align-items:center;
  gap:12px;
  min-width:240px;
  padding:15px 17px;
  border:1px solid rgba(255,255,255,.85);
  border-radius:17px;
  background:rgba(255,255,255,.93);
  box-shadow:var(--shadow-small);
  backdrop-filter:blur(10px);
}
.floating-card>span{
  display:grid;
  width:38px;
  height:38px;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:var(--blue);
}
.floating-card b,.floating-card small{display:block}
.floating-card b{color:var(--navy);font-size:14px}
.floating-card small{color:var(--muted);font-size:11px}
.top-card{top:8%;left:-7%}
.bottom-card{right:-6%;bottom:8%}
.bottom-card>span{background:var(--green)}

.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-grid>div{
  display:grid;
  min-height:132px;
  grid-template-columns:44px 1fr;
  align-content:center;
  column-gap:12px;
  padding:25px 28px;
  border-right:1px solid var(--line);
}
.trust-grid>div:last-child{border-right:0}
.trust-grid span{
  grid-row:1/3;
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  border-radius:13px;
  background:var(--blue-soft);
  font-size:21px;
}
.trust-grid b{color:var(--navy);font-size:14px}
.trust-grid small{color:var(--muted);line-height:1.4}

.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.feature-card{
  padding:30px;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--shadow-small);
}
.feature-icon{
  display:grid;
  width:52px;
  height:52px;
  place-items:center;
  margin-bottom:20px;
  border-radius:15px;
  background:var(--blue-soft);
  font-size:25px;
}
.feature-card h3{margin-bottom:10px;font-size:20px}
.feature-card p{margin:0;color:var(--muted)}

.soft-section{background:var(--soft)}
.split-heading{
  display:grid;
  grid-template-columns:1fr .8fr;
  align-items:end;
  gap:50px;
  margin-bottom:40px;
}
.split-heading>p{margin-bottom:8px;color:var(--muted);font-size:18px}
.topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.topic-grid article{
  display:grid;
  grid-template-columns:54px 1fr;
  gap:18px;
  padding:26px;
  border:1px solid var(--line);
  border-radius:19px;
  background:#fff;
}
.topic-grid article>span{
  display:grid;
  width:52px;
  height:52px;
  place-items:center;
  border-radius:15px;
  color:var(--blue);
  background:var(--blue-soft);
  font-weight:800;
}
.topic-grid h3{margin-bottom:6px;font-size:19px}
.topic-grid p{margin:0;color:var(--muted)}

.dark-section{color:#fff;background:linear-gradient(135deg,#071f36,#0d3455)}
.dark-section h2{color:#fff}
.value-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}
.value-copy>p:not(.eyebrow){color:#d2e0eb;font-size:18px}
.value-list{display:grid;gap:14px}
.value-list>div{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:16px;
  padding:20px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:17px;
  background:rgba(255,255,255,.07);
}
.value-list>div>span{
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  border-radius:13px;
  color:#fff;
  background:rgba(158,212,255,.18);
  font-weight:800;
}
.value-list p{margin:0}
.value-list b,.value-list small{display:block}
.value-list b{color:#fff}
.value-list small{margin-top:4px;color:#c9d8e3}

.product-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:center}
.product-preview{
  padding:16px;
  border:1px solid var(--line);
  border-radius:28px;
  background:#fff;
  box-shadow:var(--shadow);
}
.product-preview img{width:100%;border-radius:18px}
.product-copy>p:not(.eyebrow){color:var(--muted);font-size:18px}
.spec-table{margin:28px 0 0}
.spec-table div{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:20px;
  padding:15px 0;
  border-bottom:1px solid var(--line);
}
.spec-table dt{color:var(--muted);font-weight:700}
.spec-table dd{margin:0;color:var(--navy);font-weight:800}

.preview-section{background:var(--soft)}
.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.preview-card{
  min-height:410px;
  padding:28px;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  box-shadow:var(--shadow-small);
}
.preview-label{
  display:inline-block;
  margin-bottom:22px;
  padding:7px 11px;
  border-radius:999px;
  color:var(--blue);
  background:var(--blue-soft);
  font-size:11px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.preview-card h3{font-size:25px}
.contents-preview ul{padding-left:20px}
.contents-preview li{margin:12px 0;color:var(--muted)}
.lesson-preview{background:linear-gradient(180deg,#fff,#f8fbfe)}
.lesson-number{color:var(--orange);font-size:12px;font-weight:800;letter-spacing:.11em}
.lesson-preview p{color:var(--muted)}
.image-preview{display:flex;flex-direction:column}
.image-preview picture{display:grid;flex:1;place-items:center}
.image-preview img{max-height:290px;border-radius:16px}

.publisher-section{padding-top:42px}
.publisher-card{
  display:grid;
  grid-template-columns:130px 1fr;
  align-items:center;
  gap:32px;
  padding:40px;
  border:1px solid var(--line);
  border-radius:28px;
  background:linear-gradient(135deg,#eef8ff,#fff);
}
.publisher-mark{
  display:grid;
  width:112px;
  height:112px;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:var(--navy);
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:31px;
  font-weight:800;
}
.publisher-card p:not(.eyebrow){color:var(--muted)}

.pricing-section{background:#fff}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.price-card{
  position:relative;
  display:flex;
  flex-direction:column;
  padding:34px 28px 28px;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  box-shadow:var(--shadow-small);
}
.price-card.featured{
  border:3px solid var(--orange);
  box-shadow:0 24px 65px rgba(255,122,0,.16);
  transform:translateY(-10px);
}
.package-number{
  margin-bottom:8px;
  color:var(--blue);
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.price-card h3{margin-bottom:4px;font-size:26px}
.package-subtitle{min-height:52px;color:var(--muted)}
.price{
  margin:8px 0 20px;
  color:var(--navy);
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:54px;
  font-weight:800;
}
.price-card ul{
  display:grid;
  flex:1;
  gap:12px;
  margin:0 0 26px;
  padding:0;
  list-style:none;
}
.price-card li{position:relative;padding-left:25px;color:#435669}
.price-card li:before{
  content:"✓";
  position:absolute;
  left:0;
  color:var(--green);
  font-weight:900;
}
.ribbon{
  position:absolute;
  top:-15px;
  right:20px;
  padding:7px 13px;
  border-radius:999px;
  color:#fff;
  background:var(--orange);
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ribbon.value{background:var(--green)}
.checkout-note{margin:12px 0 0;text-align:center;color:var(--muted);font-size:11px}
.package-note{
  margin-top:28px;
  padding:17px 20px;
  border:1px solid #f2d29e;
  border-radius:15px;
  color:#74501c;
  background:#fff8ea;
  font-size:13px;
}

.guarantee-section{color:#fff;background:var(--navy)}
.guarantee-card{display:block}
.guarantee-card img{display:block;width:100%;max-width:100%;margin:auto;border-radius:20px}
.guarantee-card h2{color:#fff}
.guarantee-card p:not(.eyebrow){color:#d5e2ec;font-size:18px}
.guarantee-card a:not(.button){color:#fff;font-weight:800}

.support-section{background:var(--soft)}
.support-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
  padding:40px;
  border:1px solid var(--line);
  border-radius:27px;
  background:#fff;
  box-shadow:var(--shadow-small);
}
.support-card h2{font-size:clamp(30px,3.5vw,44px)}
.support-card p{margin-bottom:0;color:var(--muted)}
.support-card p a{color:var(--blue);font-weight:800}

.faq-wrap{max-width:850px}
.faq-section details{
  margin:13px 0;
  padding:20px 22px;
  border:1px solid var(--line);
  border-radius:17px;
  background:#fff;
}
.faq-section summary{
  color:var(--navy);
  font-weight:800;
  cursor:pointer;
}
.faq-section details p{margin:14px 0 0;color:var(--muted)}

.final-cta{padding:60px 0 90px;background:#fff}
.final-cta-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  padding:48px;
  border-radius:30px;
  color:#fff;
  background:linear-gradient(135deg,#0b2b49,#104a79);
  box-shadow:var(--shadow);
}
.final-cta-card h2{max-width:760px;color:#fff}
.final-cta-card p:not(.eyebrow){margin:0;color:#d4e3ee}

.site-footer{padding:58px 0 24px;color:#bdd0dc;background:#061b2d}
.footer-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr 1fr;gap:45px}
.site-footer h3,.site-footer h4{color:#fff}
.site-footer a{display:block;margin:8px 0;color:#c8d8e3;text-decoration:none}
.site-footer a:hover{color:#fff}
.site-footer p{color:#aebfcb}
.site-footer b{color:#fff}
.footer-bottom{
  margin-top:36px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.14);
  font-size:12px;
}
.footer-bottom p{margin:6px 0}

.mobile-buy{
  display:none;
  position:fixed;
  right:12px;
  bottom:12px;
  left:12px;
  z-index:60;
  padding:15px;
  border-radius:999px;
  color:#fff;
  background:var(--orange);
  box-shadow:0 12px 35px rgba(0,0,0,.25);
  text-align:center;
  font-weight:800;
  text-decoration:none;
}

@media(max-width:1040px){
  .site-header nav{gap:18px}
  .hero-grid{grid-template-columns:1fr 1fr;gap:35px}
  .top-card{left:0}
  .bottom-card{right:0}
  .trust-grid{grid-template-columns:repeat(2,1fr)}
  .trust-grid>div:nth-child(2){border-right:0}
  .trust-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .feature-grid,.preview-grid{grid-template-columns:repeat(2,1fr)}
  .preview-grid .preview-card:last-child{grid-column:1/-1}
  .pricing-grid{grid-template-columns:1fr;max-width:720px;margin:auto}
  .price-card.featured{transform:none}
}

@media(max-width:860px){
  .site-header nav{
    display:none;
    position:absolute;
    top:82px;
    right:0;
    left:0;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:16px 20px 24px;
    border-top:1px solid var(--line);
    background:#fff;
    box-shadow:var(--shadow);
  }
  .site-header nav.open{display:flex}
  .site-header nav a{padding:12px 6px}
  .site-header .nav-cta{text-align:center}
  .menu-button{display:block}
  .hero-grid,.value-grid,.product-layout,.split-heading{grid-template-columns:1fr}
  .hero-grid{padding:62px 0}
  .hero-visual{min-height:500px}
  .hero-copy{text-align:center}
  .hero-lead{margin-right:auto;margin-left:auto}
  .hero-actions{justify-content:center}
  .hero-trust{margin-right:auto;margin-left:auto;text-align:left}
  .topic-grid{grid-template-columns:1fr}
  .publisher-card,.guarantee-card{grid-template-columns:1fr;text-align:center}
  .publisher-mark{margin:auto}
  .support-card,.final-cta-card{align-items:flex-start;flex-direction:column}
  .footer-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:620px){
  body{padding-bottom:74px}
  .wrap{width:min(100% - 28px,var(--max))}
  .section{padding:70px 0}
  .announcement{gap:0;font-size:11px;text-align:center}
  .announcement span:not(:first-child){display:none}
  .announcement span+span:before{display:none}
  .nav-wrap{min-height:72px}
  .site-header nav{top:72px}
  .brand{font-size:18px}
  .brand-icon{width:40px;height:40px}
  h1{font-size:43px}
  h2{font-size:34px}
  .hero-grid{min-height:auto;padding:48px 0 58px}
  .hero-trust{grid-template-columns:1fr}
  .hero-visual{min-height:400px;margin-top:6px}
  .floating-card{min-width:205px;padding:12px}
  .top-card{top:0}
  .bottom-card{right:0;bottom:0}
  .trust-grid,.feature-grid,.preview-grid,.footer-grid{grid-template-columns:1fr}
  .trust-grid>div{border-right:0;border-bottom:1px solid var(--line)}
  .trust-grid>div:last-child{border-bottom:0}
  .preview-grid .preview-card:last-child{grid-column:auto}
  .spec-table div{grid-template-columns:1fr;gap:4px}
  .publisher-card,.support-card,.final-cta-card{padding:28px 24px}
  .publisher-mark{width:86px;height:86px}
  .guarantee-card img{width:100%;max-width:none}
  .mobile-buy{display:block}
}

.guarantee-banner-link{display:block;width:100%;text-decoration:none}

.guarantee-section{padding-left:0;padding-right:0}
.guarantee-banner-link{width:100.guarantee-section{padding-left:0;padding-right:0}
.guarantee-banner-link{width:100%;max-width:none;margin:0}
.guarantee-card img{width:100%;max-width:none;border-radius:0}
