/* Shared design tokens, components and responsive rules.
   The base layer lets extracted inline classes retain their original precedence. */
@layer base {
:root{--blue:#005ED2;--blue-d:#00449A;--ink:#13100D;--mute:#4A4744;--line:#D7D7D7;--bg2:#EEF0F2;--field:#B9BDC2;--white:#FFFFFF}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);font-family:'Lexend Deca',sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:hidden}
*{box-sizing:border-box}
img{max-width:100%}
a{color:var(--blue)}a:hover{color:var(--blue-d)}
.wrap{max-width:1280px;margin:0 auto;padding:104px 24px}
.wrap.tight{padding-top:72px;padding-bottom:72px}
.eyebrow{font-size:15px;font-weight:700;color:var(--blue)}
.h2{margin:12px 0 0;font-weight:200;font-size:clamp(34px,4.2vw,56px);line-height:1.06;letter-spacing:-.5px}
.h3{margin:0;font-weight:200;font-size:30px;line-height:1.15;color:var(--blue)}
.lead{margin:24px 0 0;font-size:17px;line-height:1.65;color:var(--mute);max-width:720px}
.btn{display:inline-block;background:var(--blue);color:var(--white);text-decoration:none;font-weight:700;font-size:16px;padding:17px 28px;border-radius:0 16px 0 0;border:0;font-family:inherit;cursor:pointer}
.btn:hover{background:var(--blue-d);color:var(--white)}
.btn-w{background:var(--white);color:var(--blue)}.btn-w:hover{background:var(--bg2);color:var(--blue-d)}
.btn-o{background:transparent;border:1.5px solid var(--white);color:var(--white);padding:16px 28px}.btn-o:hover{background:rgba(255,255,255,.12)}
.btn-ghost{background:transparent;border:1.5px solid var(--blue);color:var(--blue);padding:16px 28px}.btn-ghost:hover{background:var(--bg2);color:var(--blue-d)}
.tab{position:absolute;left:30px;top:0;width:64px;height:8px;background:var(--blue);transform:skewX(-9deg);border-bottom-right-radius:6px}
.lbl{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
.fld{width:100%;font-family:inherit;font-size:16px;padding:14px;border:1.5px solid var(--field);border-radius:0;background:var(--white);color:var(--ink)}
.fld:focus{outline:2px solid var(--blue);outline-offset:-1px}
.navlink{color:var(--ink);text-decoration:none;padding:12px 0;border-bottom:2px solid transparent}
.navlink.on{color:var(--blue);border-bottom-color:var(--blue);font-weight:700}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.card{display:flex;flex-direction:column;background:var(--white);padding:32px 30px 28px;text-decoration:none;color:var(--ink);min-height:230px;border-radius:0 32px 0 0;position:relative}
.card.alt{background:var(--bg2)}
.card .n{font-size:14px;font-weight:700;color:var(--blue)}
.card .t{font-weight:200;font-size:26px;line-height:1.15;margin-top:18px;color:var(--ink)}
.card .d{font-size:15px;line-height:1.6;color:var(--mute);margin-top:12px;flex-grow:1}
.card .go{font-weight:700;font-size:14px;color:var(--blue);margin-top:22px}
a.card:hover .t{color:var(--blue)}
.box{background:var(--bg2);padding:44px 36px 40px;border-radius:0 32px 0 0;position:relative}
.box.w{background:var(--white)}
.box p{margin:14px 0 0;font-size:16px;line-height:1.6;color:var(--mute)}
.row{display:flex;flex-wrap:wrap;gap:8px 32px;padding:30px 0;border-bottom:1px solid var(--line)}
.row .k{flex:1 1 200px;font-weight:200;font-size:26px;color:var(--blue)}
.row .v{flex:2 1 300px;font-size:16px;line-height:1.65;color:var(--mute)}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;border-top:2px solid var(--blue)}
.step{padding:28px 24px 28px 0;border-bottom:1px solid var(--line)}
.step .num{font-weight:200;font-size:48px;color:var(--blue);line-height:1}
.step .st{font-weight:700;font-size:17px;margin-top:16px}
.step .sd{font-size:15px;line-height:1.6;color:var(--mute);margin-top:8px}
.ticks{margin:20px 0 0;padding:0;list-style:none}
.ticks li{padding:12px 0 12px 28px;border-top:1px solid var(--line);font-size:15px;line-height:1.5;position:relative}
.ticks li::before{content:"";position:absolute;left:2px;top:19px;width:12px;height:6px;border-left:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(-45deg)}
.ticks.no li::before{border:0;width:12px;height:2px;background:var(--mute);transform:none;top:22px}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;padding:24px 40px 24px 0;font-size:18px;font-weight:700;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:4px;top:18px;font-weight:200;font-size:30px;color:var(--blue)}
details[open] summary::after{content:"–"}
details p{margin:0 0 24px;font-size:16px;line-height:1.65;color:var(--mute);max-width:760px}
.ph{background:var(--line);display:flex;align-items:center;justify-content:center;color:var(--mute);font-size:14px;font-weight:700;text-align:center;padding:24px}
.tbl{width:100%;border-collapse:collapse;font-size:15px}
.tbl th{text-align:left;font-size:13px;color:var(--mute);font-weight:700;padding:14px 16px;border-bottom:2px solid var(--blue);white-space:nowrap}
.tbl td{padding:18px 16px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl tr:hover td{background:var(--bg2)}
.scroll{overflow-x:auto}
.pill{display:inline-block;font-size:12px;font-weight:700;padding:5px 10px;background:var(--bg2);color:var(--blue);border-radius:0 8px 0 0}
.dl-row{display:flex;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.dl-row dt{color:var(--mute)}.dl-row dd{margin:0;font-weight:700;text-align:right}
.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.full{grid-column:1 / -1}
.panel{background:var(--white);padding:44px 40px;border-radius:0 40px 0 0}
.crumbs{font-size:13px;opacity:.9}.crumbs a{color:var(--white)}
.media{position:relative;overflow:hidden;background:var(--bg2) repeating-linear-gradient(135deg,transparent 0 22px,rgba(0,94,210,.05) 22px 24px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px}
.media span{font-size:13px;font-weight:700;color:var(--mute)}.media small{font-size:11px;color:var(--mute);margin-top:4px;opacity:.8}
.media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:var(--white)}
.brandpanel{display:flex;align-items:center;justify-content:center;background:var(--blue);position:relative;overflow:hidden}
.brandpanel::after{content:"";position:absolute;right:-40px;top:-30px;width:45%;height:140%;border:1.5px solid rgba(255,255,255,.3);transform:skewX(-9deg);border-radius:0 40px 40px 0}
.media.contain{background-color:var(--white)}.media.contain img{object-fit:contain;padding:24px}
.media.dark{background-color:#2A2623}.media.dark span,.media.dark small{color:#B9BDC2}
.crumbs-d{font-size:13px;color:var(--mute)}.crumbs-d a{color:var(--mute)}
.h1x{margin:16px 0 0;font-weight:200;font-size:clamp(40px,5.2vw,72px);line-height:1.04;letter-spacing:-1px}
.searchbar{display:flex;flex-wrap:wrap;gap:8px;background:var(--white);padding:10px;border-radius:0 24px 0 0;box-shadow:0 18px 50px rgba(19,16,13,.10);margin-top:36px;text-align:left}
.searchbar .fld{border:0;background:var(--bg2)}
.chip{display:inline-block;padding:10px 16px;background:var(--white);border:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:14px;border-radius:0 12px 0 0}
.chip:hover{border-color:var(--blue);color:var(--blue)}
.stat{padding:26px 24px 26px 0;border-right:1px solid rgba(255,255,255,.25)}
.stat b{display:block;font-size:17px}.stat span{display:block;font-size:14px;margin-top:6px;opacity:.85;line-height:1.5}
.catimg{height:150px;margin:-32px -30px 22px;border-radius:0 32px 0 0}
@media (max-width:720px){.media.hero-photo{min-height:260px!important}.mosaic{grid-template-columns:1fr!important}.mosaic>*{grid-row:auto!important}.hero-panel{margin-left:-48px!important}.hero-inner{padding:56px 28px 56px 72px!important}.ihero-inner{padding:48px 28px 48px 72px!important}.panel{padding:32px 24px}}
}
