  :root{
    --navy:#0B1F3A;--navy-deep:#08182d;--red:#CC2230;--red-dk:#a4141f;--amber:#D99A2B;--amber-text:#91671D;
    --off:#F7F7F3;--ink:#14253b;--grey:#5d6675;--line:#ECEAE3;
    --soft:0 1px 2px rgba(16,37,59,.05),0 14px 36px -22px rgba(16,37,59,.22);
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{background:#fff;color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
  a{color:inherit;text-decoration:none}
  a:focus-visible{outline:3px solid var(--navy);outline-offset:3px;border-radius:4px}
  footer a:focus-visible,.band a:focus-visible{outline-color:#fff}
  .wrap{max-width:1120px;margin:0 auto;padding:0 32px}
  h1,h2,h3{font-family:'Libre Franklin',Arial,sans-serif;color:var(--navy);line-height:1.12;letter-spacing:-.012em}
  h1{font-size:clamp(36px,5vw,56px);font-weight:800;letter-spacing:-.025em}
  h2{font-size:clamp(24px,3vw,32px);font-weight:800}
  h3{font-size:18px;font-weight:700;line-height:1.3}
  .label{display:block;font-family:'Libre Franklin',Arial,sans-serif;font-size:12.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--amber-text)}
  .grey{color:var(--grey)}
  .logo-txt{font-family:'Libre Franklin',Arial,sans-serif;font-weight:800;font-size:22px;letter-spacing:-.02em;color:var(--navy);line-height:1;display:block}
  .logo-txt small{display:block;font-weight:600;font-size:10px;letter-spacing:.24em;color:var(--amber-text);text-transform:uppercase;margin-top:5px}
  .btn{display:inline-flex;align-items:center;gap:8px;font-family:'Libre Franklin',Arial,sans-serif;font-weight:700;font-size:15px;padding:16px 24px;border-radius:7px}
  .btn-primary{background:var(--red);color:#fff}
  .btn-primary:hover{background:var(--red-dk)}
  .btn-white{background:#fff;color:var(--navy)}
  .btn-white:hover{background:var(--off)}

  nav{padding:16px 0}
  nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}
  .nav-links{display:flex;align-items:center;gap:24px;font-size:15px;font-weight:500;color:var(--grey)}
  .nav-links a:hover{color:var(--navy)}
  .nav-links .in{color:var(--navy);font-weight:700}

  .hero{background:var(--off);padding:64px 0}
  .hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
  .hero h1{margin:16px 0}
  .lede{font-size:19px;color:var(--grey);margin-bottom:32px}
  .hero-note{font-size:15px;color:var(--grey);margin-top:16px}
  .sheet{background:#fff;border-radius:8px;box-shadow:var(--soft);overflow:hidden}
  .sheet-title{display:block;font-size:13px;font-weight:600;color:var(--grey);padding:8px 16px}
  .sheet table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.3}
  .sheet th{background:var(--navy);color:#fff;font-weight:600;text-align:left;padding:8px}
  .sheet td{padding:8px;border-bottom:1px solid var(--line);vertical-align:middle}
  .sheet th:first-child,.sheet td:first-child{padding-left:16px}
  .sheet td:nth-child(2){white-space:nowrap}
  .sheet img{display:block;width:48px;height:48px;object-fit:contain}

  section.block{padding:64px 0}
  section.alt{background:var(--off)}
  .intro{max-width:720px;margin-bottom:32px}
  .intro h2{margin-bottom:8px}
  .cols{display:grid;grid-template-columns:1fr 1fr;gap:16px 48px}
  .item{padding:16px 0;border-bottom:1px solid var(--line)}
  .item p{font-size:16px;color:var(--grey)}
  .steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:s}
  .steps li{counter-increment:s;background:#fff;border-radius:8px;box-shadow:var(--soft);padding:24px}
  .steps li::before{content:counter(s);display:block;font-family:'Libre Franklin',Arial,sans-serif;font-weight:800;font-size:32px;color:var(--red);line-height:1;margin-bottom:16px}
  .steps h3{margin-bottom:8px}
  .steps p{font-size:16px;color:var(--grey)}

  .band{background:var(--navy);color:#fff;padding:64px 0}
  .band .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
  .band h2{color:#fff;margin:16px 0}
  .band .label{color:var(--amber)}
  .band .small{font-size:15px;margin-top:16px}
  .band a.mail{text-decoration:underline;text-underline-offset:2px;font-weight:700}
  .band .row{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px}
  .band .out{color:#fff;padding:16px 8px;font-family:'Libre Franklin',Arial,sans-serif;font-weight:700;font-size:15px;text-decoration:underline;text-underline-offset:3px}

  .faq{max-width:720px}
  .faq h3{margin:24px 0 8px}
  .faq p{color:var(--grey)}

  footer{background:var(--navy-deep);color:#fff;padding:56px 0 48px}
  footer .wrap{display:flex;justify-content:space-between;align-items:flex-start;gap:32px;flex-wrap:wrap}
  footer .logo-txt{color:#fff}
  footer .logo-txt small{color:var(--amber)}
  .sig{font-size:14.5px;line-height:1.8}
  .sig .nm{font-family:'Libre Franklin',Arial,sans-serif;font-weight:700;font-size:16px}
  .sig a{text-decoration:underline;text-underline-offset:2px}
  footer .small{width:100%;font-size:13px;color:#fff}

  @media(max-width:900px){
    .hero .wrap,.band .wrap{grid-template-columns:1fr;gap:32px}
    .steps{grid-template-columns:1fr 1fr}
  }
  @media(max-width:640px){
    .wrap{padding:0 16px}
    .nav-links a:not(.in){display:none}
    .hero,section.block,.band{padding:48px 0}
    .cols,.steps{grid-template-columns:1fr}
    .btn{width:100%;justify-content:center}
    .sheet .hide-s{display:none}
    .sheet th,.sheet td{padding:8px 4px}
  }
  @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

  .sheet .shot{display:block;width:100%;height:auto}
  .more{background:var(--off);padding:64px 0}
  .more h2{margin-bottom:32px}
  .more ul{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
  .more a{display:block;height:100%;background:#fff;border-radius:8px;box-shadow:var(--soft);padding:24px}
  .more a:hover h3{color:var(--red-dk)}
  .more p{font-size:16px;color:var(--grey)}
  .more h3{margin-bottom:8px}
  .rows{width:100%;border-collapse:collapse;font-size:16px}
  .rows th{font-family:'Libre Franklin',Arial,sans-serif;color:var(--navy);text-align:left;padding:16px 16px 16px 0;border-bottom:1px solid var(--line);vertical-align:top}
  .rows td{color:var(--grey);padding:16px 16px 16px 0;border-bottom:1px solid var(--line);vertical-align:top}
  @media(max-width:900px){.more ul{grid-template-columns:1fr 1fr}}
  @media(max-width:640px){.more{padding:48px 0}.more ul{grid-template-columns:1fr}.rows,.rows tbody,.rows tr,.rows th,.rows td{display:block}.rows thead{display:none}.rows th{padding-bottom:0;border-bottom:0}.rows td{padding:8px 0 16px}.rows td:not(:last-child){border-bottom:0;padding-bottom:0}}
