/* Base styles carried over verbatim from the design's <helmet>. */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#FBF9F4;font-family:'Manrope',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;color:#0C2340}
a{color:#0F6E75;text-decoration:none}
a:hover{color:#0C2340}
input,textarea,select,button{font-family:inherit}
::selection{background:#0F6E75;color:#fff}
@keyframes sdsIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes sdsFade{from{opacity:0}to{opacity:1}}
@keyframes sdsDot{0%,70%,100%{opacity:.22}35%{opacity:.9}}

/* --- Responsive branches -------------------------------------------
   The source switched on window width in JS (navWide = w > 1000,
   isWide = w > 760). Both branches are in the markup; these rules pick
   one, so there is no layout shift before scripts run. */
@media (max-width:1000px){ .sds-navwide{display:none !important} }
@media (min-width:1001px){ .sds-navnarrow{display:none !important} }
@media (max-width:760px){ .sds-wide{display:none !important} }
@media (min-width:761px){ .sds-stack{display:none !important} }

/* --- Runtime state --------------------------------------------------
   Blocks that were conditional on component state. Hidden until site.js
   adds .is-open; the :not() keeps each element's own inline display. */
[data-when]:not(.is-open){display:none !important}

/* --- Reveal on scroll ----------------------------------------------- */
[data-reveal]{transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1)}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  [data-reveal]{opacity:1 !important;transform:none !important;transition:none}
  [data-when]{animation:none !important}
}

/* --- Focus visibility ------------------------------------------------ */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid #0F6E75;outline-offset:2px
}

/* --- Hover and focus rules lifted from style-hover / style-focus ----- */
.hv-1:hover{background:#F6F3EC !important}
.hv-2:hover{background:#17395C !important}
.hv-3:hover{border-color:#0C2340 !important;background:#F4F0E7 !important}
.hv-4:hover{color:#0C2340 !important;border-color:#0C2340 !important}
.hv-5:hover{background:#FBF9F4 !important}
.hv-6:hover{background:#FDFCF8 !important}
.hv-7:hover{background:rgba(255,255,255,.08) !important;border-color:rgba(255,255,255,.6) !important}
.hv-8:hover{background:#E9F2F2 !important}
.hv-9:hover{border-color:rgba(255,255,255,.7) !important;background:rgba(255,255,255,.06) !important}
.hv-10:hover{color:#fff !important}
.hv-11:hover{border-color:#0C2340 !important}
.hv-12:hover{box-shadow:0 18px 40px -28px rgba(12,35,64,.4) !important;transform:translateY(-2px) !important}
.fc-1:focus{border-color:#0F6E75 !important}
.fc-2:focus{border-color:#0F6E75 !important;background:#fff !important}
