/* Start custom CSS */.sph-hero, .sph-cta{ margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.sph-wrap{ max-width:1080px; margin:0 auto; padding:0 24px; }
.sph-hero{ background:radial-gradient(1100px 480px at 88% 0%, rgba(255,199,0,.14), transparent 60%), linear-gradient(160deg,#111C33 0%,#0F172A 60%,#0B1220 100%); color:#FAF7F2; padding:clamp(2.5rem,5.5vw,4rem) 0 clamp(2rem,4vw,2.75rem); overflow:hidden; }
.sph-hero-grid{ display:grid; grid-template-columns:minmax(0,1fr) 250px; gap:32px; align-items:end; }
.sph-crumb{ font:600 .8125rem/1.6 Poppins,sans-serif; color:#93A3BE; margin:0 0 1rem; }
.sph-crumb a{ color:#93A3BE; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.22); }
.sph h1{ font:800 clamp(2.125rem,5.2vw,3.5rem)/1.04 Poppins,sans-serif; letter-spacing:-.03em; margin:0 0 1rem; color:#FAF7F2; text-wrap:balance; }
.sph-lede{ font:400 clamp(1.0625rem,1.9vw,1.3125rem)/1.55 Poppins,sans-serif; color:#C7CEDB; margin:0 0 1.125rem; max-width:58ch; }
.sph-meta{ font:600 .8125rem/1.6 Poppins,sans-serif; color:#7F8DA6; margin:0; }
.sph-hero-art{ text-align:center; }
.sph .sph-mascot{ width:240px !important; max-width:100% !important; height:auto !important; display:inline-block; margin:0 !important; }
.sph-body{ padding-top:clamp(1.5rem,3.5vw,2.5rem); padding-bottom:clamp(2rem,4vw,3rem); }
.sph-body p{ font:400 1.0625rem/1.7 Poppins,sans-serif; color:#33394A; margin:0 0 1.125rem; max-width:70ch; }
.sph-body p a{ color:#0B6FA4; font-weight:600; text-decoration:none; border-bottom:2px solid rgba(56,189,248,.35); }
.sph h2{ font:800 clamp(1.5rem,3vw,2.125rem)/1.18 Poppins,sans-serif; letter-spacing:-.022em; color:#0F172A; margin:2.5rem 0 .75rem; text-wrap:balance; }
.sph h3{ font:800 1.0625rem/1.35 Poppins,sans-serif; color:#0F172A; margin:0 0 .375rem; }
.sph-filter{ display:flex; flex-wrap:wrap; gap:8px; margin:1rem 0 1.25rem; }
.sph .sph-chip{ font:700 .875rem/1 Poppins,sans-serif; color:#0F172A; background:#fff; border:1.5px solid rgba(15,23,42,.18); border-radius:999px; padding:.6875rem 1rem; cursor:pointer; box-shadow:none; }
.sph .sph-chip:hover{ border-color:#0F172A; background:#fff; color:#0F172A; }
.sph .sph-chip.is-on{ background:#0F172A; color:#FFC700; border-color:#0F172A; }
.sph .sph-chip:focus-visible{ outline:3px solid #38BDF8; outline-offset:2px; }
.sph-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:14px; }
.sph-body .sph-card{ display:flex; flex-direction:column; gap:.375rem; background:#fff; border:1px solid rgba(15,23,42,.10); border-radius:16px; padding:1.125rem 1.125rem 1rem; text-decoration:none; color:#0F172A; min-height:250px; transition:transform .15s ease, box-shadow .15s ease; }
.sph-body .sph-card:hover{ transform:translateY(-2px); box-shadow:0 12px 28px rgba(15,23,42,.12); }
.sph-body .sph-card:focus-visible{ outline:3px solid #38BDF8; outline-offset:2px; }
.sph-body .sph-card.is-hidden{ display:none; }
.sph .sph-card-m{ width:72px !important; max-width:none !important; height:auto !important; margin:0 0 .25rem !important; align-self:flex-start; }
.sph-card-n{ font:800 .75rem/1 Poppins,sans-serif; color:#8A6100; letter-spacing:.08em; }
.sph-card-t{ font:800 1.0625rem/1.3 Poppins,sans-serif; color:#0F172A; }
.sph-card-a{ align-self:flex-start; font:700 .6875rem/1 Poppins,sans-serif; color:#0F172A; background:#FFF1B8; border-radius:999px; padding:.35rem .55rem; }
.sph-card-h{ font:400 .9375rem/1.5 Poppins,sans-serif; color:#4E5462; }
.sph-card-g{ margin-top:auto; padding-top:.5rem; font:600 .75rem/1.4 Poppins,sans-serif; color:#0B6FA4; }
.sph-pairs{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:14px; margin:1rem 0; }
.sph-pair{ background:#0F172A; border-radius:16px; padding:1.25rem 1.25rem .375rem; }
.sph-body .sph-pair h3{ color:#FAF7F2; }
.sph-body .sph-pair p{ color:#C7CEDB; font-size:.9688rem; }
.sph-body .sph-pair p.sph-pair-k{ font:700 .8125rem/1.5 Poppins,sans-serif; color:#FFC700; margin:0 0 .5rem; }
.sph-body .sph-pair p a{ color:#FFC700; border-bottom:1px solid rgba(255,199,0,.4); }
.sph-calcs{ display:grid; grid-template-columns:repeat(auto-fill,minmax(310px,1fr)); gap:14px; margin:1rem 0; }
.sph-calc{ background:#FFFDF4; border:1px solid #F2E3A6; border-top:5px solid #FFC700; border-radius:16px; padding:1.25rem; }
.sph-body .sph-calc p{ font-size:.9375rem; margin-bottom:.5rem; }
.sph-calc label{ display:block; font:600 .8125rem/1.4 Poppins,sans-serif; color:#33394A; margin:.625rem 0 0; }
.sph-calc input{ display:block; width:100%; box-sizing:border-box; margin-top:.25rem; font:600 1rem/1.2 Poppins,sans-serif; color:#0F172A; background:#fff; border:1.5px solid rgba(15,23,42,.18); border-radius:10px; padding:.625rem .75rem; }
.sph-calc input:focus{ outline:3px solid #38BDF8; outline-offset:1px; border-color:#0F172A; }
.sph-out{ margin-top:1rem; background:#0F172A; color:#FAF7F2; border-radius:12px; padding:.875rem 1rem; font:400 .9375rem/1.6 Poppins,sans-serif; }
.sph-out b{ color:#FFC700; }
.sph-cta{ background:#0F172A; color:#FAF7F2; padding:clamp(2.25rem,4.5vw,3.25rem) 0; text-align:center; margin-top:2.5rem; }
.sph .sph-cta h2{ color:#FAF7F2; margin:0 0 .625rem; }
.sph-cta p{ font:400 1.0625rem/1.65 Poppins,sans-serif; color:#C7CEDB; max-width:50ch; margin:0 auto 1.5rem; }
.sph .sph-btn{ display:inline-block; background:#FFC700; color:#0F172A; font:800 1rem/1 Poppins,sans-serif; padding:1.0625rem 1.75rem; border-radius:999px; text-decoration:none; box-shadow:0 10px 26px rgba(255,199,0,.34); }
.sph .sph-btn:hover{ background:#E0AE00; color:#0F172A; }
.sph-alt{ display:block; margin-top:1rem; font:600 .9375rem/1.5 Poppins,sans-serif; color:#C7CEDB; }
.sph .sph-alt a{ color:#FFC700; text-decoration:none; border-bottom:1px solid rgba(255,199,0,.45); }
@media (max-width:760px){
  .sph-hero-grid{ grid-template-columns:1fr; }
  .sph-hero-art{ order:-1; text-align:left; }
  .sph .sph-mascot{ width:140px !important; }
}

/* FIX: keep the seven filter chips on one row on desktop now Poppins loads */
.sph .sph-chip{ padding-inline:.8125rem; }/* End custom CSS */