@charset "UTF-8";

:root{
  --bg:#F5F6FB;
  --surface:#FFFFFF;
  --surface-alt:#ECEFF8;
  --ink:#16223A;
  --ink-soft:#5B6480;
  --ink-faint:#8991A8;
  --line:#DCE0ED;
  --magenta:#CC1065;
  --magenta-ink:#A00C50;
  --magenta-soft:#F7E3EE;
  --blue:#3A83F8;
  --blue-soft:#E8EFFE;
  --navy:#16223A;
  --success:#1F9D6C;
  --success-ink:#157D56;
  --success-soft:#DDF3E7;
  --shadow: 0 1px 2px rgba(22,34,58,0.04), 0 12px 32px -16px rgba(22,34,58,0.18);
  --radius:10px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;
  -webkit-font-smoothing:antialiased;
  padding:0 20px;
}
.wrap{max-width:1080px;margin:0 auto;}
h1,h2,h3{
  font-family:'Onest',system-ui,sans-serif;
  text-wrap:balance;
  margin:0;
  letter-spacing:-0.015em;
}
p{margin:0;line-height:1.65;}
.mono{
  font-family:'JetBrains Mono',ui-monospace,monospace;
}
a{color:inherit;}
img,svg{max-width:100%;}

/* ---------- header ---------- */
header{
  position:sticky;top:0;z-index:50;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
  margin:0 -20px;
  padding:0 20px;
}
.header-row{
  max-width:1080px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  height:72px;gap:16px;
}
.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.logo-badge{
  display:inline-flex;align-items:center;
}
.brand-logo{height:38px;width:auto;display:block;}
nav.links{display:flex;align-items:center;gap:28px;font-size:0.92rem;font-weight:600;color:var(--ink-soft);}
nav.links a{text-decoration:none;transition:color .15s;white-space:nowrap;}
nav.links a:hover{color:var(--ink);}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:'Manrope';font-weight:700;font-size:0.92rem;
  padding:11px 22px;border-radius:8px;border:1px solid transparent;
  cursor:pointer;text-decoration:none;white-space:nowrap;
  transition:transform .15s, box-shadow .15s, background .15s;
}
.btn:focus-visible{outline:2px solid var(--blue);outline-offset:2px;}
.btn-cta{
  background:var(--magenta);color:#fff;
  box-shadow:0 6px 16px -6px rgba(204,16,101,0.55);
}
.btn-cta:hover{transform:translateY(-1px);box-shadow:0 10px 20px -6px rgba(204,16,101,0.6);}
.btn-ghost{
  background:transparent;color:var(--blue);
  border:1.5px solid var(--blue);border-radius:100px;
  padding:8px 8px 8px 22px;gap:14px;
}
.btn-ghost:hover{background:var(--blue-soft);}
.btn-ghost::after{
  content:"";flex-shrink:0;width:28px;height:28px;border-radius:50%;
  background-color:var(--blue);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:center;background-size:14px 14px;
}
.header-cta{flex-shrink:0;}
.burger{
  display:none;width:40px;height:40px;flex-shrink:0;
  border:none;background:transparent;cursor:pointer;padding:0;
  flex-direction:column;align-items:center;justify-content:center;gap:5px;
}
.burger span{width:22px;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s;}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ---------- hero ---------- */
.hero{
  padding:76px 0 64px;
  display:grid;grid-template-columns:1.05fr 0.85fr;gap:56px;align-items:center;
}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-family:'Onest';font-size:0.8rem;font-weight:700;
  letter-spacing:0.05em;text-transform:uppercase;color:var(--magenta-ink);
  margin-bottom:20px;
}
h1.headline{font-size:clamp(1.9rem,3.4vw,2.7rem);line-height:1.14;font-weight:700;}
h1.headline .hl{color:var(--magenta);}
.hero-sub{margin-top:22px;font-size:1.08rem;color:var(--ink-soft);max-width:46ch;}
.hero-ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap;}
.hero-stats{display:flex;gap:28px;margin-top:40px;flex-wrap:wrap;}
.stat b{display:block;font-family:'Onest';font-size:1.3rem;color:var(--ink);}
.stat span{font-size:0.82rem;color:var(--ink-faint);}

/* hero visual: mock admin panel — "you manage it yourself" */
.dash-card{
  background:var(--surface);border:1px solid var(--line);border-radius:16px;
  box-shadow:var(--shadow);overflow:hidden;
}
.dash-topbar{
  display:flex;align-items:center;gap:10px;padding:12px 16px;
  border-bottom:1px solid var(--line);background:var(--surface-alt);
}
.dash-dot{width:8px;height:8px;border-radius:50%;background:var(--line);}
.dash-url{
  margin-left:8px;font-family:'JetBrains Mono';font-size:0.72rem;color:var(--ink-faint);
  background:var(--surface);border:1px solid var(--line);border-radius:6px;
  padding:4px 10px;flex:1;
}
.dash-body{display:grid;grid-template-columns:104px 1fr;min-height:280px;}
.dash-nav{
  border-right:1px solid var(--line);padding:16px 10px;display:flex;flex-direction:column;gap:4px;
}
.dash-nav a{
  font-size:0.78rem;font-weight:600;color:var(--ink-faint);padding:8px 10px;border-radius:7px;
}
.dash-nav a.active{background:var(--magenta-soft);color:var(--magenta-ink);}
.dash-main{padding:18px 20px;}
.dash-main-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.dash-main-head b{font-size:0.92rem;color:var(--ink);}
.dash-add{
  font-family:'JetBrains Mono';font-size:0.7rem;font-weight:600;color:#fff;
  background:var(--magenta);border-radius:6px;padding:5px 10px;
}
.course-list{display:flex;flex-direction:column;gap:8px;}
.course-row{
  display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:9px;
  background:var(--surface-alt);border:1px solid var(--line);
}
.course-row .swatch{width:6px;height:28px;border-radius:4px;flex-shrink:0;}
.course-row .info{flex:1;min-width:0;}
.course-row .info b{display:block;font-size:0.85rem;color:var(--ink);}
.course-row .info span{font-size:0.74rem;color:var(--ink-faint);}
.status-chip{
  font-family:'JetBrains Mono';font-size:0.65rem;font-weight:600;
  padding:3px 8px;border-radius:100px;white-space:nowrap;
}
.status-live{background:var(--success-soft);color:var(--success-ink);}
.status-draft{background:var(--line);color:var(--ink-faint);}
.dash-foot{
  display:flex;padding:14px 16px;border-top:1px solid var(--line);
  background:var(--surface-alt);
}
.dash-foot .f{
  font-size:0.68rem;color:var(--ink-soft);display:flex;align-items:center;gap:4px;
  padding:0 9px;border-right:1px solid var(--line);white-space:nowrap;
}
.dash-foot .f:last-child{border-right:none;padding-right:0;}
.dash-foot .f:first-child{padding-left:0;}
.dash-foot .f b{color:var(--ink);font-weight:700;}
.dash-foot .f svg{flex-shrink:0;color:var(--blue);width:11px;height:11px;}

/* ---------- generic section ---------- */
section{padding:64px 0;border-top:1px solid var(--line);}
.section-head{max-width:640px;margin-bottom:40px;}
.kicker{
  font-family:'Onest';font-size:0.8rem;font-weight:700;
  letter-spacing:0.05em;text-transform:uppercase;color:var(--blue);
  display:flex;align-items:center;gap:8px;margin-bottom:14px;
}
.kicker::before{content:"→";font-weight:700;}
h2.section-title{font-size:clamp(1.5rem,2.6vw,2rem);font-weight:700;}
.section-desc{margin-top:14px;color:var(--ink-soft);font-size:1.02rem;max-width:60ch;}

/* curriculum module list */
.modules{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
.module{
  background:var(--surface);padding:20px 22px;display:flex;gap:16px;align-items:flex-start;
}
.module .idx{
  font-family:'Manrope';font-size:0.85rem;font-weight:700;color:var(--ink-faint);
  padding-top:2px;flex-shrink:0;
}
.module p{font-size:0.94rem;font-weight:600;color:var(--ink);}

/* license banner */
.license{
  background:linear-gradient(120deg, var(--magenta-soft), var(--blue-soft));
  border:1px solid var(--line);border-radius:16px;
  padding:34px 36px;display:flex;align-items:center;gap:28px;flex-wrap:wrap;
}
.license .amount{
  font-family:'Onest';font-weight:800;font-size:2.6rem;color:var(--magenta);flex-shrink:0;
  line-height:1;
}
.license-text{flex:1;min-width:240px;}
.license-text b{display:block;font-size:1.05rem;margin-bottom:6px;}
.license-text p{color:var(--ink-soft);font-size:0.94rem;}

.guarantee{
  display:flex;align-items:center;gap:18px;
  background:var(--success-soft);border:1px solid var(--line);border-radius:14px;
  padding:22px 28px;
}
.guarantee-icon{
  width:44px;height:44px;border-radius:50%;flex-shrink:0;
  background:var(--surface);display:flex;align-items:center;justify-content:center;
  box-shadow:var(--shadow);
}
.guarantee p{font-size:1.02rem;color:var(--ink);}

/* two column */
.twocol{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
.twocol .feature-num{
  font-family:'Onest';font-size:0.78rem;font-weight:700;color:var(--blue);
  letter-spacing:0.05em;margin-bottom:10px;
}

/* protection section (dark) */
.protect{
  background:var(--navy);color:#EEF0F8;border-radius:20px;padding:48px 44px;
  display:grid;grid-template-columns:1fr 1fr;gap:40px;
}
.protect .kicker{color:#7EA9FF;}
.protect h2{color:#fff;}
.protect p{color:rgba(238,240,248,0.72);}
.protect-list{display:flex;flex-direction:column;gap:16px;}
.protect-item{
  display:flex;gap:12px;padding:16px;border-radius:10px;
  background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);
}
.protect-item .mark{
  width:26px;height:26px;border-radius:50%;flex-shrink:0;
  background:rgba(204,16,101,0.25);color:#FF8FC1;
  display:flex;align-items:center;justify-content:center;font-size:0.8rem;font-weight:700;
  font-family:'Manrope';
}
.protect-item p{font-size:0.9rem;color:rgba(238,240,248,0.85);}

/* manifesto */
.manifesto{
  text-align:center;max-width:720px;margin:0 auto;padding:20px 0;
}
.manifesto .strike{color:var(--ink-faint);text-decoration:line-through;font-weight:600;}
.manifesto h2{font-size:clamp(1.4rem,2.8vw,2.1rem);margin-top:10px;}
.manifesto p{margin-top:16px;color:var(--ink-soft);font-size:1.02rem;}

/* marketing tags */
.tag-grid{display:flex;flex-wrap:wrap;gap:12px;}
.tag{
  display:flex;align-items:center;gap:9px;
  background:var(--surface-alt);border:1px solid var(--line);border-radius:100px;
  padding:11px 18px;font-size:0.9rem;font-weight:600;color:var(--ink);
}
.tag .n{font-family:'Manrope';font-weight:700;font-size:0.78rem;color:var(--blue);}


/* pricing */
.price-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:24px;}
.price-card{
  background:var(--navy);color:#fff;border-radius:18px;padding:40px 40px;
  position:relative;overflow:hidden;
}
.price-card::after{
  content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;
  background:radial-gradient(circle, rgba(204,16,101,0.35), transparent 70%);
}
.price-label{font-family:'Manrope';font-weight:700;font-size:0.78rem;letter-spacing:0.06em;text-transform:uppercase;color:#9FB4E0;position:relative;}
.price-headline{font-family:'Onest';font-weight:700;font-size:1.7rem;line-height:1.3;margin-top:14px;position:relative;color:#fff;text-wrap:balance;}
.price-note{margin-top:14px;color:rgba(255,255,255,0.65);font-size:0.92rem;max-width:40ch;position:relative;}
.price-includes{margin-top:26px;display:flex;flex-direction:column;gap:10px;position:relative;}
.price-includes li{list-style:none;display:flex;gap:10px;font-size:0.88rem;color:rgba(255,255,255,0.85);}
.price-includes li::before{content:"+";color:var(--magenta-ink);font-weight:800;}

.timeline-card{
  background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:36px;
  display:flex;flex-direction:column;
}
.timeline-card .price-label{color:var(--blue);}
.timeline-value{font-family:'Onest';font-weight:800;font-size:2.6rem;margin-top:10px;color:var(--ink);}
.timeline-card p.note{margin-top:14px;color:var(--ink-soft);font-size:0.9rem;}
.timeline-track{margin-top:24px;display:flex;flex-direction:column;gap:0;}
.tstep{display:flex;gap:14px;position:relative;padding-bottom:18px;}
.tstep:last-child{padding-bottom:0;}
.tstep .line{
  position:absolute;left:5px;top:14px;bottom:0;width:1px;background:var(--line);
}
.tstep:last-child .line{display:none;}
.tstep .bullet{width:11px;height:11px;border-radius:50%;background:var(--blue);flex-shrink:0;margin-top:3px;position:relative;z-index:1;}
.tstep p{font-size:0.86rem;color:var(--ink-soft);}
.tstep b{color:var(--ink);}

/* final cta */
.final-cta{
  background:linear-gradient(135deg, var(--navy) 0%, #0F1729 100%);
  color:#fff;border-radius:22px;padding:56px 48px;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:18px;
}
.final-cta h2{color:#fff;font-size:clamp(1.5rem,3vw,2.15rem);max-width:22ch;}
.final-cta .tagchips{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:6px;}
.final-cta .tagchips span{
  font-size:0.85rem;font-family:'Manrope';font-weight:600;color:#B9C6E8;
  background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);
  padding:6px 14px;border-radius:100px;
}
.final-cta .domain{
  margin-top:14px;font-family:'Onest';font-weight:700;color:#fff;font-size:1.1rem;
}

footer{
  padding:32px 0 48px;display:flex;justify-content:space-between;align-items:flex-start;
  color:var(--ink-faint);font-size:0.85rem;flex-wrap:wrap;gap:12px;
}
.footer-col{display:flex;flex-direction:column;gap:6px;}
.footer-col-right{align-items:flex-end;text-align:right;}
footer a{color:var(--ink-faint);text-decoration:underline;text-underline-offset:2px;}
footer a:hover{color:var(--ink-soft);}
.social-row{display:flex;gap:10px;margin-top:4px;}
.social-link{
  color:var(--navy);width:32px;height:32px;border-radius:50%;
  background:var(--surface-alt);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;transition:background .15s;
}
.social-link:hover{background:var(--blue-soft);color:var(--navy);}

/* contact / offer form */
.contact-grid{display:grid;grid-template-columns:1.3fr 0.7fr;gap:32px;align-items:start;}
.offer-form{
  background:var(--surface);border:1px solid var(--line);border-radius:16px;
  padding:30px 32px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow);
}
.field-row{display:flex;gap:16px;}
.field-row .field{flex:1;min-width:0;}
.field{display:flex;flex-direction:column;gap:6px;}
.field label{font-size:0.82rem;font-weight:700;color:var(--ink-soft);}
.field input,.field textarea{
  font-family:'Manrope';font-size:0.94rem;color:var(--ink);
  background:var(--surface-alt);border:1px solid var(--line);border-radius:8px;
  padding:11px 13px;resize:vertical;
}
.field input:focus,.field textarea:focus{outline:2px solid var(--blue);outline-offset:1px;}
.offer-form .btn{align-self:flex-start;margin-top:4px;}
.consent{
  display:flex;align-items:flex-start;gap:8px;font-size:0.82rem;color:var(--ink-soft);
  cursor:pointer;margin-top:-4px;
}
.consent input{margin:2px 0 0;width:16px;height:16px;flex-shrink:0;accent-color:var(--blue);}
.consent a{color:var(--blue);text-decoration:underline;text-underline-offset:2px;}
.form-status{font-size:0.88rem;font-weight:600;margin:0;}
.form-status.ok{color:var(--success-ink);}
.form-status.err{color:var(--magenta-ink);}
.contact-person{
  background:var(--surface-alt);border:1px solid var(--line);border-radius:16px;
  padding:30px 26px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;
}
.person-photo{
  width:88px;height:88px;border-radius:50%;margin-bottom:10px;
  object-fit:cover;
  background:linear-gradient(135deg, var(--magenta), var(--blue));
  color:#fff;font-family:'Onest';font-weight:700;font-size:1.4rem;
  display:flex;align-items:center;justify-content:center;
}
.contact-person b{font-size:1.02rem;color:var(--ink);}
.contact-person > span{font-size:0.82rem;color:var(--ink-faint);margin-bottom:8px;}
.person-link{font-size:0.9rem;color:var(--blue);text-decoration:none;}
.person-link:hover{text-decoration:underline;}
@media (max-width:720px){
  .contact-grid{grid-template-columns:1fr;}
  .field-row{flex-direction:column;}
}

@media (max-width:1024px){
  .burger{display:flex;}
  nav.links{
    display:none;flex-direction:column;align-items:stretch;gap:0;
    position:absolute;top:72px;left:0;right:0;
    background:var(--surface);border-bottom:1px solid var(--line);
    padding:8px 20px 20px;box-shadow:0 16px 28px -16px rgba(22,34,58,0.25);
  }
  nav.links.open{display:flex;}
  nav.links a{padding:14px 0;border-bottom:1px solid var(--line);color:var(--ink);}
  nav.links a.header-cta{
    border-bottom:none;margin-top:14px;width:100%;padding:12px 22px;color:#fff;
  }
}

@media (max-width:820px){
  .hero{grid-template-columns:1fr;padding-top:44px;}
  .twocol{grid-template-columns:1fr;gap:32px;}
  .modules{grid-template-columns:1fr;}
  .protect{grid-template-columns:1fr;padding:32px 24px;}
  .price-grid{grid-template-columns:1fr;}
  .license{padding:26px;}
  .final-cta{padding:40px 24px;}
}
