:root{
    --blue-900:#153f74;
    --blue:#1f5fa6;
    --blue-600:#2a6cb5;
    --blue-light:#6aa4d4;
    --blue-soft:#e9f1f9;
    --blue-soft2:#f2f7fc;
    --gold:#eab938;
    --gold-600:#dca91f;
    --gold-soft:#f9f0c9;
    --gold-band:#f7eeba;
    --paper:#ffffff;
    --ground:#f5f7fa;
    --ink:#1d2733;
    --ink-2:#39434f;
    --muted:#5c6672;
    --faint:#8a929c;
    --line:#e3e8ee;
    --line-2:#d3dae2;
    --ok:#2f8f5b;
    --shadow-sm:0 1px 2px rgba(21,40,60,.06);
    --shadow:0 2px 6px rgba(21,40,60,.06),0 12px 30px -14px rgba(21,40,60,.22);
    --radius:12px;
    --maxw:1160px;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;background:var(--ground);color:var(--ink);
    font-family:"Source Sans 3","Segoe UI",system-ui,sans-serif;
    font-size:17.5px;line-height:1.6;-webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,h4{font-family:"Source Serif 4",Georgia,serif;color:var(--blue-900);line-height:1.15;text-wrap:balance;margin:0}
  p{margin:0}
  a{color:var(--blue);text-decoration:none}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}

  /* ---------- UTILITY BAR ---------- */
  .util{background:var(--gold-band);color:var(--blue-900);font-size:14.5px}
  .util .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:8px;padding-bottom:8px}
  .util .hot{display:flex;align-items:center;gap:9px;font-weight:600}
  .util .hot .lbl{font-weight:400;color:var(--ink-2)}
  .util .hot .num{font-size:16px;font-weight:700;letter-spacing:.01em}
  .util .flags{display:flex;gap:6px}
  .util .flags .fl{width:24px;height:16px;border-radius:2px;border:1px solid rgba(0,0,0,.12);font-size:0;background:#ccc}
  .fl.at{background:linear-gradient(#c8102e 33%,#fff 33% 66%,#c8102e 66%)}
  .fl.sk{background:linear-gradient(#fff 33%,#0b4ea2 33% 66%,#c8102e 66%)}
  .fl.hu{background:linear-gradient(#c8102e 33%,#fff 33% 66%,#2e7d32 66%)}
  .fl.hr{background:linear-gradient(#c8102e 33%,#fff 33% 66%,#0b4ea2 66%)}

  /* ---------- HEADER ---------- */
  header.site{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
  header.site .wrap{display:flex;align-items:center;gap:20px;padding-top:14px;padding-bottom:14px}
  .brand{display:flex;align-items:center;gap:13px;cursor:pointer}
  .crest{width:52px;height:52px;border-radius:50%;background:#fff;border:2px solid var(--blue-light);display:grid;place-items:center;flex:none;box-shadow:var(--shadow-sm)}
  .crest span{font-family:"Source Serif 4",serif;font-weight:700;color:var(--blue);font-size:17px;letter-spacing:.02em}
  .brand .bt{line-height:1.05}
  .brand .bt .org{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-600);font-weight:700}
  .brand .bt .nm{font-family:"Source Serif 4",serif;font-size:20px;font-weight:700;color:var(--blue-900)}
  nav.main{margin-left:auto;display:flex;align-items:center;gap:4px}
  nav.main a{font-size:15.5px;font-weight:600;color:var(--ink-2);padding:9px 13px;border-radius:8px;letter-spacing:.01em}
  nav.main a:hover{background:var(--blue-soft);color:var(--blue-900)}
  nav.main a.active{color:var(--blue);background:var(--blue-soft)}
  .btn{display:inline-flex;align-items:center;gap:9px;font-family:"Source Sans 3",sans-serif;font-weight:700;font-size:16px;padding:12px 20px;border-radius:9px;border:2px solid transparent;cursor:pointer;line-height:1;transition:transform .04s ease}
  .btn:active{transform:translateY(1px)}
  .btn.gold{background:var(--gold);color:var(--blue-900);border-color:var(--gold)}
  .btn.gold:hover{background:var(--gold-600);border-color:var(--gold-600)}
  .btn.blue{background:var(--blue);color:#fff;border-color:var(--blue)}
  .btn.blue:hover{background:var(--blue-900);border-color:var(--blue-900)}
  .btn.ghost{background:transparent;color:var(--blue);border-color:var(--line-2)}
  .btn.ghost:hover{border-color:var(--blue);background:var(--blue-soft2)}
  .btn.big{font-size:18px;padding:15px 26px}
  .btn .ph-ic{font-size:17px}
  .hdr-cta{margin-left:6px}
  .burger{display:none;margin-left:auto;background:none;border:1px solid var(--line-2);border-radius:8px;padding:9px 11px;cursor:pointer}
  .burger span{display:block;width:22px;height:2px;background:var(--blue-900);margin:4px 0}

  /* ---------- PAGE SYSTEM ---------- */
  .page{display:none}
  .page.show{display:block}
  section{padding:64px 0}
  section.tight{padding:48px 0}
  .eyebrow{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-600);margin-bottom:12px}
  h2.sec{font-size:clamp(26px,3.4vw,36px);margin-bottom:14px}
  .lead{font-size:19px;color:var(--muted);max-width:62ch}
  .center{text-align:center;margin-left:auto;margin-right:auto}
  .center .lead{margin-left:auto;margin-right:auto}

  /* ---------- HERO ---------- */
  .hero{background:linear-gradient(180deg,var(--blue-soft2),var(--paper));border-bottom:1px solid var(--line)}
  .hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;padding-top:60px;padding-bottom:60px}
  .hero h1{font-size:clamp(32px,4.6vw,52px);margin-bottom:18px}
  .hero h1 .hl{color:var(--blue);position:relative}
  .hero p.sub{font-size:20px;color:var(--ink-2);margin-bottom:28px;max-width:52ch}
  .hero .cta-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
  .hero .micro{margin-top:16px;font-size:15px;color:var(--muted);display:flex;align-items:center;gap:8px}
  .hero .micro b{color:var(--blue-900)}

  /* ---------- PLACEHOLDER PHOTO ---------- */
  .ph{position:relative;background:repeating-linear-gradient(135deg,#eef2f7,#eef2f7 12px,#e8eef5 12px,#e8eef5 24px);border:2px dashed var(--line-2);border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);padding:24px;min-height:320px}
  .ph .ic{width:46px;height:46px;color:var(--blue-light);margin-bottom:12px}
  .ph .pt{font-weight:700;color:var(--ink-2);font-size:14px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}
  .ph .pd{font-size:15px;max-width:34ch;line-height:1.45}
  .ph.sm{min-height:190px}
  .ph.wide{min-height:260px}
  .ph .tagph{position:absolute;top:10px;left:10px;background:var(--paper);border:1px solid var(--line-2);color:var(--faint);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:20px}

  /* ---------- TRUST STRIP ---------- */
  .trust{background:var(--blue-900);color:#eaf2fb}
  .trust .wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 40px;padding:20px 24px}
  .trust .ti{display:flex;align-items:center;gap:11px;font-size:16px}
  .trust .ti b{color:#fff;font-weight:700}
  .trust .ti .n{font-family:"Source Serif 4",serif;font-size:24px;font-weight:700;color:var(--gold)}
  .trust .dot{width:6px;height:6px;border-radius:50%;background:var(--gold)}

  /* ---------- CARDS ---------- */
  .grid{display:grid;gap:22px}
  .g3{grid-template-columns:repeat(3,1fr)}
  .g2{grid-template-columns:repeat(2,1fr)}
  .g4{grid-template-columns:repeat(4,1fr)}
  .card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-sm)}
  .card h3{font-size:20px;margin-bottom:9px}
  .card p{color:var(--muted);font-size:16px}
  .card .ic-badge{width:48px;height:48px;border-radius:11px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;margin-bottom:16px}
  .card .ic-badge svg{width:26px;height:26px}
  .card.value{border-top:3px solid var(--gold)}

  /* ---------- STEPS ---------- */
  .steps{display:flex;flex-direction:column;gap:16px;counter-reset:st}
  .step{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;display:grid;grid-template-columns:56px 1fr;gap:20px;align-items:start;box-shadow:var(--shadow-sm)}
  .step .num{counter-increment:st;width:52px;height:52px;border-radius:50%;background:var(--blue);color:#fff;font-family:"Source Serif 4",serif;font-weight:700;font-size:23px;display:grid;place-items:center}
  .step h3{font-size:20px;margin-bottom:5px}
  .step p{color:var(--muted);font-size:16px}
  .steps.mini .step{grid-template-columns:44px 1fr;padding:16px 18px;gap:15px}
  .steps.mini .num{width:40px;height:40px;font-size:18px}
  .steps.mini h3{font-size:17px}
  .steps.mini p{font-size:15px}

  /* ---------- PARTNERS ---------- */
  .partners{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .partner{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:26px;text-align:center;box-shadow:var(--shadow-sm)}
  .partner .logo-ph{height:74px;border:2px dashed var(--line-2);border-radius:9px;display:grid;place-items:center;color:var(--faint);font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:16px;background:var(--blue-soft2)}
  .partner h3{font-size:18px;margin-bottom:5px}
  .partner p{font-size:15px;color:var(--muted)}
  .partner .rg{display:inline-block;margin-top:10px;font-size:13px;font-weight:700;color:var(--blue);background:var(--blue-soft);padding:4px 11px;border-radius:20px}

  /* ---------- SPLIT SECTIONS ---------- */
  .split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
  .split.rev .txt{order:2}
  ul.checks{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-direction:column;gap:11px}
  ul.checks li{position:relative;padding-left:32px;font-size:16.5px;color:var(--ink-2)}
  ul.checks li::before{content:"";position:absolute;left:0;top:2px;width:21px;height:21px;border-radius:50%;background:var(--ok);
    -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>") center/15px no-repeat;
    mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>") center/15px no-repeat}
  ul.checks li b{color:var(--ink)}

  /* ---------- TIMELINE ---------- */
  .timeline{position:relative;margin-top:10px;padding-left:8px}
  .tl-item{position:relative;padding:0 0 26px 34px;border-left:2px solid var(--line-2)}
  .tl-item:last-child{border-left-color:transparent;padding-bottom:0}
  .tl-item .yr{position:absolute;left:-9px;top:0;width:18px;height:18px;border-radius:50%;background:var(--gold);border:3px solid var(--paper);box-shadow:0 0 0 1px var(--gold-600)}
  .tl-item h3{font-size:18px;margin-bottom:4px}
  .tl-item .y{font-family:"Source Serif 4",serif;font-weight:700;color:var(--blue);font-size:15px;margin-bottom:2px}
  .tl-item p{color:var(--muted);font-size:16px}

  /* ---------- COST ---------- */
  .costgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
  .costcard{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;box-shadow:var(--shadow-sm)}
  .costcard .cl{font-size:15px;color:var(--muted);margin-bottom:6px}
  .costcard .cv{font-family:"Source Serif 4",serif;font-size:26px;font-weight:700;color:var(--blue-900)}
  .costcard .cv small{font-size:15px;color:var(--muted);font-weight:400;font-family:"Source Sans 3",sans-serif}
  .costcard .cn{font-size:14px;color:var(--faint);margin-top:6px}

  .foerder{background:var(--gold-soft);border:1px solid #e9d896;border-radius:var(--radius);padding:30px}
  .foerder h3{font-size:23px;margin-bottom:10px}
  .foerder .big{font-family:"Source Serif 4",serif;font-size:40px;font-weight:700;color:var(--blue-900);line-height:1}
  .foerder .big small{font-size:18px;font-weight:400;color:var(--ink-2)}

  table.calc{width:100%;border-collapse:collapse;margin-top:8px;background:var(--paper);border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);font-variant-numeric:tabular-nums}
  table.calc td{padding:13px 18px;border-bottom:1px solid var(--line);font-size:16.5px}
  table.calc tr:last-child td{border-bottom:none}
  table.calc td.a{color:var(--ink-2)}
  table.calc td.n{text-align:right;font-weight:600;color:var(--ink);white-space:nowrap}
  table.calc tr.minus td{color:var(--ok)}
  table.calc tr.total{background:var(--blue-900)}
  table.calc tr.total td{color:#fff;font-size:19px;font-weight:700;border:none}
  table.calc tr.total td.n{color:var(--gold)}
  .tablewrap{overflow-x:auto}

  /* ---------- FAQ ---------- */
  .faq{max-width:820px;margin:0 auto}
  .qa{background:var(--paper);border:1px solid var(--line);border-radius:10px;margin-bottom:12px;overflow:hidden}
  .qa button.q{width:100%;text-align:left;background:none;border:none;padding:19px 22px;font-family:"Source Sans 3",sans-serif;font-size:17.5px;font-weight:600;color:var(--blue-900);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px}
  .qa .q .chev{flex:none;width:22px;height:22px;color:var(--blue);transition:transform .2s ease}
  .qa.open .q .chev{transform:rotate(180deg)}
  .qa .a{max-height:0;overflow:hidden;transition:max-height .25s ease}
  .qa .a .inner{padding:0 22px 20px;color:var(--muted);font-size:16.5px}
  .qa.open .a{max-height:320px}

  /* ---------- CTA BAND ---------- */
  .ctaband{background:linear-gradient(120deg,var(--blue-900),var(--blue));color:#fff;border-radius:16px;padding:44px;text-align:center;box-shadow:var(--shadow)}
  .ctaband h2{color:#fff;font-size:clamp(24px,3vw,32px);margin-bottom:12px}
  .ctaband p{color:#d5e5f5;font-size:18px;max-width:56ch;margin:0 auto 24px}
  .ctaband .cta-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
  .ctaband .btn.ghost{color:#fff;border-color:rgba(255,255,255,.5)}
  .ctaband .btn.ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}

  /* ---------- CONTACT ---------- */
  .contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:start}
  .hot-card{background:var(--blue-900);color:#fff;border-radius:var(--radius);padding:32px;text-align:center}
  .hot-card .lbl{font-size:15px;color:#bcd4ec;letter-spacing:.05em;text-transform:uppercase;font-weight:600;margin-bottom:8px}
  .hot-card .num{font-family:"Source Serif 4",serif;font-size:38px;font-weight:700;color:var(--gold);line-height:1;margin-bottom:6px}
  .hot-card .hrs{font-size:15px;color:#cfe0f2}
  .info-row{display:flex;gap:13px;align-items:flex-start;padding:15px 0;border-bottom:1px solid var(--line)}
  .info-row:last-child{border-bottom:none}
  .info-row .ic{width:22px;height:22px;color:var(--blue);flex:none;margin-top:3px}
  .info-row .k{font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--faint)}
  .info-row .v{font-size:16.5px;color:var(--ink-2)}
  form.cf{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-sm)}
  form.cf .fr{margin-bottom:15px}
  form.cf label{display:block;font-size:14.5px;font-weight:600;color:var(--ink-2);margin-bottom:6px}
  form.cf input,form.cf textarea,form.cf select{width:100%;padding:12px 14px;border:1px solid var(--line-2);border-radius:8px;font-family:inherit;font-size:16px;color:var(--ink);background:var(--paper)}
  form.cf input:focus,form.cf textarea:focus,form.cf select:focus{outline:2px solid var(--blue-light);outline-offset:1px;border-color:var(--blue)}
  form.cf .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  form.cf .consent{display:flex;gap:9px;align-items:flex-start;font-size:14px;color:var(--muted)}
  form.cf .consent input{width:auto;margin-top:3px}
  .note-inline{font-size:13.5px;color:var(--faint);margin-top:9px}

  /* ---------- FOOTER ---------- */
  footer.site{background:var(--blue-900);color:#c8d9ec;padding:52px 0 26px;font-size:15.5px}
  footer.site .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.14)}
  footer.site h4{color:#fff;font-size:16px;margin-bottom:14px;font-family:"Source Sans 3",sans-serif;font-weight:700;letter-spacing:.03em}
  footer.site a{color:#c8d9ec;display:block;padding:5px 0}
  footer.site a:hover{color:var(--gold)}
  footer.site .fbrand .nm{font-family:"Source Serif 4",serif;color:#fff;font-size:20px;font-weight:700;margin-bottom:8px}
  footer.site .fbrand p{color:#a9bfd8;font-size:15px;max-width:34ch}
  footer.site .legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:20px;font-size:13.5px;color:#8ea7c4}
  footer.site .legal a{display:inline;color:#a9bfd8}

  .plan-tag{display:inline-flex;align-items:center;gap:6px;background:var(--gold-soft);border:1px solid #e6d597;color:#8a6d13;font-size:12.5px;font-weight:700;padding:3px 10px;border-radius:20px;margin-bottom:14px}

  /* ---------- RESPONSIVE ---------- */
  @media (max-width:900px){
    .hero .wrap{grid-template-columns:1fr;gap:30px}
    .split,.contact-grid{grid-template-columns:1fr;gap:28px}
    .split.rev .txt{order:0}
    .g3,.g4,.partners,.costgrid{grid-template-columns:1fr 1fr}
    nav.main,.hdr-cta{display:none}
    .burger{display:block}
    header.site nav.main.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--paper);border-bottom:1px solid var(--line);padding:10px 16px;gap:2px;box-shadow:var(--shadow)}
    footer.site .cols{grid-template-columns:1fr 1fr}
  }
  @media (max-width:600px){
    body{font-size:16.5px}
    .g3,.g4,.partners,.costgrid,form.cf .two,footer.site .cols{grid-template-columns:1fr}
    .util .hot .lbl{display:none}
    section{padding:46px 0}
    .ctaband{padding:30px 22px}
  }
  :focus-visible{outline:2px solid var(--blue);outline-offset:2px}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
