@font-face{font-family:Manrope;src:url('fonts/manrope.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
:root{--bs-primary:#345bd4;--bs-primary-rgb:52,91,212;--bs-primary-bg-subtle:#eaf0ff;--bs-primary-text-emphasis:#2446a6;--bs-body-color:#192843;--bs-body-bg:#f8faff;--bs-secondary-color:#59677c;--bs-border-color:#dfe5ef;--bs-link-color:#345bd4;--bs-link-hover-color:#2346b2;--bs-body-font-size:1.125rem;--bs-body-line-height:1.7}
html{scroll-behavior:smooth;scroll-padding-top:135px}
body{font-size:1.125rem}
h1,h2,h3,h4,.brand{font-family:Manrope,var(--bs-font-sans-serif);letter-spacing:-.035em;line-height:1.2}
p{line-height:1.75}
.lead{font-weight:400}
.card{--bs-card-bg:#fff}
.icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}
.small .icon,.badge .icon{width:18px;height:18px}
.brand{color:#192843;font-size:1.7rem;font-weight:800;letter-spacing:-.06em}
.brand>svg{width:42px;height:42px}
.btn{--bs-btn-font-weight:600;--bs-btn-padding-y:.65rem;--bs-btn-padding-x:1.2rem}
.btn-primary{--bs-btn-bg:#345bd4;--bs-btn-border-color:#345bd4;--bs-btn-hover-bg:#2648b7;--bs-btn-hover-border-color:#2648b7;--bs-btn-active-bg:#2446a6;--bs-btn-active-border-color:#2446a6;--bs-btn-disabled-bg:#345bd4;--bs-btn-disabled-border-color:#345bd4}
.btn-outline-primary{--bs-btn-color:#345bd4;--bs-btn-border-color:#345bd4;--bs-btn-hover-bg:#345bd4;--bs-btn-hover-border-color:#345bd4;--bs-btn-active-bg:#345bd4;--bs-btn-active-border-color:#345bd4}
.nav-pills{--bs-nav-pills-link-active-bg:#345bd4}
.nav-link{color:#536078;font-weight:500}
.site-header{background:#f8faffed;backdrop-filter:blur(14px)}
.navbar-nav .nav-link{font-size:1rem;border-radius:.65rem}
.navbar-nav .nav-link:hover{background:#eaf0ff;color:#2446a6}
.hero-title{font-size:clamp(3.15rem,5.5vw,5.2rem);font-weight:750;line-height:1.06;letter-spacing:-.045em}
.section-pad{padding-block:6rem}
.section-kicker{font-size:.8rem;font-weight:700;letter-spacing:.13em}
.hero-stage{background:#eaf0ff radial-gradient(#345bd426 1px,transparent 1px);background-size:18px 18px}
.hero-stage .nav-link{padding:.65rem .5rem}
.date-tile{min-width:70px}
.icon-tile{width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.closing-panel{background:#172b58}
.accordion{--bs-accordion-active-bg:#eaf0ff;--bs-accordion-active-color:#2446a6;--bs-accordion-btn-focus-box-shadow:0 0 0 .25rem #345bd433}
.accordion-button{font-size:1.125rem;line-height:1.5}
.form-control,.form-select{padding:.75rem 1rem;font-size:1rem}
.form-control:focus,.form-select:focus{border-color:#9aade9;box-shadow:0 0 0 .25rem #345bd426}
.form-check-input:checked{background-color:#345bd4;border-color:#345bd4}
.dashboard-sidebar{top:130px}
.reminder-dialog{width:min(680px,calc(100% - 32px));max-height:90dvh;background:white;color:var(--bs-body-color);box-shadow:0 24px 100px #172b5844}
.confirm-dialog{width:min(460px,calc(100% - 32px));background:white;color:var(--bs-body-color)}
dialog::backdrop{background:#172b5866;backdrop-filter:blur(4px)}
.notice-toast{z-index:2000;width:max-content;max-width:calc(100% - 32px);font-size:1rem}
.reminder-content{min-width:0;flex:1 1 280px;overflow-wrap:anywhere}
.reminder-notes{white-space:pre-wrap}
.reminder-action{width:42px;height:42px;padding:.5rem}
.legal-page{max-width:860px}
.legal-page h2{font-size:1.5rem;margin-top:2.5rem}
.legal-page h1{font-size:clamp(2.5rem,5vw,4rem);margin-block:1.5rem}
.legal-page code{overflow-wrap:anywhere}
[hidden]{display:none!important}
@media(max-width:991.98px){.section-pad{padding-block:4rem}.navbar-collapse{border-top:1px solid var(--bs-border-color);margin-top:1rem;padding-bottom:.5rem}.hero-title{font-size:clamp(3.15rem,8vw,4.75rem)}}
@media(max-width:575.98px){.hero-title{font-size:clamp(2.5rem,12.9vw,3.15rem)}.brand{font-size:1.5rem}.brand>svg{width:36px;height:36px}.section-pad{padding-block:3rem}.container{padding-inline:20px}.site-header{padding-inline:12px}.lead{font-size:1.2rem}html{scroll-padding-top:115px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
