:root{--purple:#462b78;--deep:#2d1b52;--lilac:#c8a5ff;--lime:#d8ff6a;--paper:#f7f2eb;--white:#fff;--ink:#2d2140;--muted:#746c7d;--line:#ded7e4;--shadow:0 24px 65px rgba(70,43,120,.17)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}.shell{width:min(1160px,calc(100% - 40px));margin-inline:auto}.narrow{max-width:900px}.icon{width:20px;height:20px;flex:0 0 auto}a{color:inherit}.skip{position:absolute;left:-9999px;top:8px;background:#fff;padding:10px;z-index:99}.skip:focus{left:8px}header{background:#fff;border-bottom:1px solid var(--line)}.nav{height:80px;display:flex;align-items:center;gap:36px}.brand{display:flex;align-items:center;text-decoration:none}.brand>span{display:grid;place-items:center;width:42px;height:42px;background:var(--purple);color:#fff}.brand strong{font-size:1.1rem;margin-left:10px}.brand b{color:var(--purple)}.nav nav{display:flex;gap:26px;margin-left:auto}.nav nav a{text-decoration:none;font-size:.9rem;font-weight:700;padding:28px 0 25px;border-bottom:3px solid transparent}.nav nav a[aria-current=page]{border-color:var(--lilac)}.nav-cta,.button{display:inline-flex;align-items:center;gap:9px;background:var(--lime);color:var(--deep);text-decoration:none;font-weight:800;padding:13px 18px}.hero{background:var(--purple);color:#fff;padding:90px 0 0}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:80px;align-items:center}.eyebrow{margin:0 0 18px;text-transform:uppercase;letter-spacing:.17em;font-size:.73rem;font-weight:800;color:#d8c6f3}.eyebrow.purple{color:var(--purple)}.hero h1{font-size:clamp(3.7rem,6.7vw,6.3rem);line-height:.9;letter-spacing:-.058em;margin:0 0 28px}.hero h1 em{font-style:normal;color:var(--lime)}.hero-grid>div>p:not(.eyebrow){color:#ddd0f1;max-width:590px;font-size:1.08rem;margin-bottom:28px}.button{padding:16px 22px}.calendar-card{background:#fff;color:var(--ink);padding:28px;box-shadow:14px 14px 0 var(--lime)}.cal-head{display:flex;justify-content:space-between;font-size:.72rem;letter-spacing:.12em;font-weight:800;padding-bottom:16px;border-bottom:1px solid var(--line)}.cal-head b{color:var(--purple)}.week,.days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.week{margin:18px 0 8px}.week i{font-style:normal;font-size:.65rem;color:var(--muted)}.days>*{display:grid;place-items:center;aspect-ratio:1;font-style:normal;font-weight:700}.days i{color:#aaa}.days b{background:var(--purple);color:#fff;border-radius:50%}.trust{display:grid;grid-template-columns:repeat(3,1fr);margin-top:85px;border-top:1px solid rgba(255,255,255,.2)}.trust span{display:flex;align-items:center;gap:12px;padding:23px 0}.trust span+span{border-left:1px solid rgba(255,255,255,.2);padding-left:30px}.trust .icon{color:var(--lime)}.calculator{background:#fff;padding:105px 0}.heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:45px}.heading h2{font-size:clamp(2.4rem,4vw,4.1rem);line-height:1;letter-spacing:-.045em;margin:0}.heading>p{color:var(--muted);margin:0}.controls{display:grid;grid-template-columns:2fr 1fr;gap:14px;background:var(--paper);border:1px solid var(--line);padding:25px}.controls label span{display:block;font-size:.82rem;font-weight:800;margin-bottom:8px}.controls select,.controls input{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #c6bdd0;padding:14px;outline:0}.controls select:focus,.controls input:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(70,43,120,.12)}.error{grid-column:1/-1;color:#a52d3f;font-weight:700;margin:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);margin:24px 0 90px;box-shadow:var(--shadow)}.stats article{background:var(--deep);color:#fff;padding:24px}.stats article+article{border-left:1px solid rgba(255,255,255,.16)}.stats span{font-size:.66rem;letter-spacing:.11em;color:#baaed1;font-weight:800}.stats strong{display:block;font-size:3rem;line-height:1;margin:18px 0 6px;color:var(--lilac)}.stats small{color:#aaa0bd}.stats .accent{background:var(--lime);color:var(--ink)}.stats .accent span,.stats .accent small{color:#5e6444}.stats .accent strong{color:var(--purple)}.list-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.list-head h2{font-size:2.8rem;line-height:1.05;margin:0}.legend{display:flex;gap:14px;font-size:.75rem;color:var(--muted)}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;background:var(--purple)}.legend span+span i{background:var(--lilac)}.holiday-list>[data-list]{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.holiday-list article{display:grid;grid-template-columns:60px 1fr;gap:15px;padding:19px 18px 19px 0;border-bottom:1px solid var(--line)}.holiday-list article:nth-child(even){border-left:1px solid var(--line);padding-left:18px}.holiday-list article>strong{display:grid;place-items:center;background:var(--purple);color:#fff;width:48px;height:48px;font-size:1.25rem}.holiday-list article>div{display:grid;grid-template-columns:1fr auto;align-items:center}.holiday-list article b{font-size:1.02rem}.holiday-list article span{grid-column:1;color:var(--muted);font-size:.8rem}.holiday-list article i{grid-column:2;grid-row:1/3;font-style:normal;font-size:.65rem;padding:5px 7px;background:#eadfff;color:var(--purple);font-weight:800}.holiday-list article i.nationwide{background:var(--purple);color:#fff}.local-note{background:var(--paper);border-left:4px solid var(--lilac);padding:17px;margin:20px 0 0;color:var(--muted)}.bridge-list{padding-top:90px}.heading.small h2{font-size:3rem}.bridge-list>[data-bridge-list]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.bridge-list article{display:flex;align-items:center;gap:14px;background:var(--paper);padding:17px}.bridge-list article>span{display:grid;place-items:center;width:45px;height:45px;background:var(--lime);font-weight:900}.bridge-list article div{display:flex;flex-direction:column}.bridge-list article small{color:var(--muted)}.empty{grid-column:1/-1;background:var(--paper);padding:20px}.private{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:.8rem;margin:25px 0 0}.private .icon{width:16px}.notes{background:var(--deep);color:#fff;padding:100px 0}.heading.inverse a{justify-self:end;display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:800}.note-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.2)}.note-grid article{padding:35px 30px 0 0}.note-grid article+article{border-left:1px solid rgba(255,255,255,.2);padding-left:30px}.note-grid span{color:var(--lime);font-size:.72rem;letter-spacing:.13em;font-weight:800}.note-grid h3{font-size:1.4rem;margin:20px 0 10px}.note-grid p{color:#bcb1cf}.subhero{background:var(--purple);color:#fff;padding:95px 0}.subhero.compact{padding:65px 0}.subhero h1{font-size:clamp(3.2rem,6vw,5.7rem);line-height:.96;letter-spacing:-.052em;margin:0}.state-grid{padding:80px 0;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.state-grid article{background:#fff;padding:30px;border-top:4px solid var(--lilac)}.state-grid span{font-size:.72rem;letter-spacing:.12em;color:var(--purple);font-weight:800}.state-grid h2{margin:16px 0 8px}.state-grid p{color:var(--muted)}.bridge-guide{padding:80px 0;display:grid;grid-template-columns:1fr 1fr;gap:18px}.bridge-guide article{background:#fff;padding:30px;border-top:4px solid var(--lime)}.bridge-guide article>span{color:var(--purple);font-size:.72rem;letter-spacing:.12em;font-weight:800}.bridge-guide h2{margin:16px 0 8px}.bridge-guide p{color:var(--muted)}.warning{grid-column:1/-1;background:#e9dcff;padding:25px}.warning p{margin:5px 0 0}.faq{padding:75px 0}.faq details{background:#fff;border-bottom:1px solid var(--line);padding:0 25px}.faq summary{padding:23px 0;cursor:pointer;font-weight:800;font-size:1.08rem}.faq p{color:var(--muted);max-width:800px;padding-bottom:22px}.legal{padding:70px 0;max-width:850px}.legal h2{margin-top:32px}.legal a{color:var(--purple)}.notfound{background:var(--purple);color:#fff;min-height:65vh;padding:100px 0}.notfound span{font-size:5rem;color:var(--lime);font-weight:900}.notfound h1{font-size:3.5rem}.notfound .button{margin-top:20px}footer{background:#1e1238;color:#fff;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-grid a{text-decoration:none;color:#c1b4d6}.footer-grid p{color:#887a9f;margin-top:15px}.footer-grid b{margin-bottom:6px}.footer-brand strong{color:#fff}.footer-brand strong b{color:var(--lilac)}.foot{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.14);padding-top:22px;margin-top:45px;color:#807391;font-size:.8rem}@media(max-width:930px){.nav nav{display:none}.nav-cta{margin-left:auto}.hero-grid{grid-template-columns:1fr}.calendar-card{max-width:520px}.trust{grid-template-columns:1fr}.trust span+span{border-left:0;padding-left:0}.trust span{border-bottom:1px solid rgba(255,255,255,.2)}.heading{grid-template-columns:1fr;gap:18px}.stats{grid-template-columns:1fr 1fr}.stats article:nth-child(3){border-left:0}.note-grid{grid-template-columns:1fr}.note-grid article+article{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding-left:0}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}}@media(max-width:640px){.shell{width:min(100% - 28px,1160px)}.nav{height:70px}.brand strong{font-size:.94rem}.nav-cta{font-size:0;width:44px;height:42px;padding:0;justify-content:center}.hero{padding-top:60px}.hero h1{font-size:3.5rem}.calendar-card{padding:20px;margin-right:12px}.trust{margin-top:65px}.calculator,.notes{padding:70px 0}.heading h2{font-size:2.55rem}.controls{grid-template-columns:1fr;padding:20px}.stats{grid-template-columns:1fr 1fr;margin-bottom:70px}.stats article{padding:19px}.stats strong{font-size:2.5rem}.list-head{align-items:flex-start;flex-direction:column;gap:16px}.list-head h2{font-size:2.35rem}.holiday-list>[data-list]{grid-template-columns:1fr}.holiday-list article:nth-child(even){border-left:0;padding-left:0}.bridge-list{padding-top:70px}.heading.small h2{font-size:2.4rem}.bridge-list>[data-bridge-list]{grid-template-columns:1fr}.subhero{padding:70px 0}.subhero h1{font-size:3.25rem}.state-grid,.bridge-guide{grid-template-columns:1fr;padding:55px 0}.faq,.legal{padding-block:55px}.footer-grid{grid-template-columns:1fr;gap:35px}.foot{gap:15px}.notfound h1{font-size:2.7rem}}
