:root { --ink:#071941; --blue:#065dfc; --pale:#eaf2ff; --line:#d9e1ec; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:#111826; background:#fff; font-family:"DM Sans",Arial,sans-serif; }

.site-header { height:82px; border-bottom:1px solid #d7dde5; background:#fff; }
.header-inner { height:100%; padding:8px max(5.4vw,32px)!important; display:flex; align-items:center; justify-content:space-between; }
.brand { display:block; width:185px; }
.brand img { display:block; width:100%; height:auto; }
.site-header p { margin:0; color:#0a1739; font-size:17px; letter-spacing:-.35px; }
.site-header strong,.footer-part strong { font-family:Manrope,sans-serif; font-size:18px; }
.site-header strong span,.footer-part span { color:#b12c1b; }

.hero { min-height:616px; position:relative; overflow:hidden; isolation:isolate; background:#f3f7fd; }
.hero-copy { max-width:500px; margin-left:max(6.6vw,48px); padding:78px 0 38px; position:relative; z-index:2; }
h1,h2 { color:var(--ink); font-family:Manrope,sans-serif; letter-spacing:-1.45px; }
h1 { margin:0; font-size:51px; line-height:1.21; font-weight:800; }
h1 em { color:var(--blue); font-style:normal; }
.rule { display:block; width:74px; height:4px; margin:28px 0 30px; border-radius:10px; background:var(--blue); }
.hero p { max-width:435px; margin:0 0 27px; font-size:16px; line-height:1.81; letter-spacing:-.15px; }
.hero-photo { position:absolute; inset:0 0 20px 39%; z-index:1; overflow:hidden; pointer-events:none; background:#cbb99f; -webkit-mask-image:url("../img/hero-photo-mask.svg"); mask-image:url("../img/hero-photo-mask.svg"); -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; -webkit-mask-size:100% 100%; mask-size:100% 100%; }
.hero-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center center; }

.paths { max-width:1060px; margin:36px auto 28px; }
.path-card { min-height:443px; padding:24px 34px 26px; display:flex; flex-direction:column; align-items:center; text-align:center; color:inherit; text-decoration:none; border:1px solid var(--line); border-radius:7px; box-shadow:0 1px 4px rgba(10,31,68,.04); transition:border-color .2s ease, box-shadow .2s ease; }
.path-card:hover { color:inherit; border-color:#b7c8e6; box-shadow:0 6px 18px rgba(10,31,68,.08); }
.path-card:focus-visible { outline:3px solid rgba(6,93,252,.35); outline-offset:3px; }
.icon-wrap { width:74px; height:74px; margin-bottom:17px; padding:17px; border-radius:50%; background:#eaf2fe; }
.icon-wrap svg,.document-icon svg { width:100%; height:100%; fill:none; stroke:var(--blue); stroke-width:2.25; stroke-linecap:round; stroke-linejoin:round; }
.icon-wrap img,.document-icon img { display:block; width:100%; height:100%; object-fit:contain; }
.path-card h2 { margin:0; min-height:78px; font-size:21px; line-height:1.34; font-weight:800; }
.path-card .rule { width:48px; height:3px; margin:16px 0 23px; }
.path-card p { max-width:255px; min-height:105px; margin:0; font-size:15px; font-weight:500; line-height:1.68; }
a { color:var(--blue); }
.card-cta,.resources a { display:inline-flex; align-items:center; justify-content:center; gap:12px; color:var(--blue); font-size:15px; font-weight:700; line-height:1.4; text-decoration:none; }
.card-cta { margin-top:auto; text-align:left; }
.resources a { margin:20px 0 0; }
.cta-arrow { display:block; flex:0 0 24px; width:24px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .24s cubic-bezier(.2,.8,.2,1); }
.path-card:hover .cta-arrow,.path-card:focus-visible .cta-arrow,.resources a:hover .cta-arrow,.resources a:focus-visible .cta-arrow { transform:translateX(6px); }
.resources a:hover,.resources a:focus-visible { color:#034ed6; }

.resources { width:calc(100% - 24px); max-width:1036px; min-height:0; margin:0 auto 32px; padding:35px 24px 35px; display:flex; flex-direction:column; align-items:center; text-align:center; border-radius:6px; background:#eaf2fe; }
.document-icon { width:74px; height:74px; padding:17px 16px 17px 19px; border:1.9px solid var(--blue); border-radius:50%; }
.resources h2 { margin:7px 0 0; font-size:22px; font-weight:800; }
.resources .rule { width:53px; height:3px; margin:13px auto 16px; }
.resources p { margin:0; font-size:15px; line-height:1.7; }

footer { min-height:124px; padding:23px max(7.5vw,48px); color:#fff; background: #01163f; }
footer img { width:223px;}
.footer-part { padding-left:0; border-left:1px solid rgba(255,255,255,.55); font-size:14px; line-height:1.5; text-align:center; }
.footer-part strong { display:block; font-size:22px; }
footer p { margin:0; padding-left:55px; border-left:1px solid rgba(255,255,255,.55); font-size:14px; line-height:1.7; }
@media (min-width:761px) { footer .row > .col-md-4:first-child { text-align:center; } }

.reveal { animation:rise .7s both; }
.paths .reveal:nth-child(2) { animation-delay:.1s; }
.paths .reveal:nth-child(3) { animation-delay:.2s; }
.resources { animation-delay:.12s; }
@keyframes rise { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }

@media (min-width:761px) and (max-width:1199px) {
  .hero-copy { width:42%; max-width:425px; margin-left:5vw; }
  .hero-copy h1 { font-size:clamp(36px,4.6vw,49px); }
  .hero-copy p { max-width:425px; }
  .hero-photo { inset:0 0 20px 45%; }
}

@media (max-width:760px) {
  .site-header { height:auto; }
  .header-inner { min-height:72px; padding:16px 22px!important; }
  .brand { width:155px; }
  .site-header p { font-size:12px; text-align:right; }
  .site-header strong { font-size:12px; }
  .hero { display:flex; flex-direction:column; }
  .hero .container-fluid,.hero .row { display:contents; }
  .hero-copy { order:2; width:auto; max-width:none; margin:0; padding:40px 25px 42px; }
  .hero-photo { position:relative; order:1; inset:auto; height:285px; -webkit-mask-image:none; mask-image:none; }
  .hero-photo img { object-position:center; }
  h1 { font-size:38px; }
  .hero p { font-size:15px; line-height:1.7; }
  .paths { width:100%; --bs-gutter-x:32px; }
  .resources { width:calc(100% - 32px); }
  .path-card { min-height:0; padding:26px 25px; }
  .path-card h2,.path-card p { min-height:0; }
  .path-card p { margin-bottom:18px; }
  .card-cta { margin-top:0; }
  .resources { padding:18px 18px 34px; }
  .resources h2 { font-size:19px; }
  footer { padding:28px; }
  footer img { width:190px; }
  .footer-part,footer p { padding-left:0; border-left:0; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; transition-duration:.01ms!important; } }
