:focus-visible{outline:3px solid #0b2d5c;outline-offset:3px}.mobile-nav__content :focus-visible{outline-color:#fff}

/* Readable policy pages using the existing brand palette. */
.legal-page { padding: 48px 0 80px; background: #fff; }
.legal-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; font-size:14px; margin-bottom:32px; }
.legal-breadcrumb a { color:#0b2d5c; text-decoration:underline; text-underline-offset:3px; }
.legal-page__header { border-bottom:1px solid #e1e7ef; padding-bottom:32px; margin-bottom:40px; }
.legal-page__eyebrow { color:#397b35; font-size:13px; font-weight:700; letter-spacing:1.5px; margin-bottom:10px; }
.legal-page h1 { font-size:clamp(34px,4vw,48px); line-height:1.15; margin-bottom:18px; font-weight:700; }
.legal-page__intro { max-width:760px; font-size:18px; line-height:1.7; color:#586477; }
.legal-page__layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:64px; align-items:start; }
.legal-page__contents { display:flex; flex-direction:column; gap:12px; border-left:3px solid #f5bd19; padding-left:20px; }
.legal-page__contents p { font-weight:700; color:#0b2d5c; margin-bottom:4px; }
.legal-page__contents a { font-size:14px; line-height:1.6; color:#526174; }
.legal-page__contents a:hover { color:#0b2d5c; text-decoration:underline; }
.legal-page__body { max-width:820px; min-width:0; }
.legal-page__body section { scroll-margin-top:170px; margin-bottom:36px; }
.legal-page__body section:last-child { margin-bottom:0; }
.legal-page h2 { font-size:24px; font-weight:600; line-height:1.35; margin-bottom:14px; }
.legal-page__body p { font-size:16px; line-height:1.8; margin-bottom:14px; }
.legal-page__contact { display:flex; flex-direction:column; gap:8px; font-style:normal; margin:20px 0 26px; overflow-wrap:anywhere; }
.legal-page__contact a { color:#0b2d5c; text-decoration:underline; text-underline-offset:3px; }
.legal-page .legal-page__button { display:inline-flex; align-items:center; gap:12px; min-height:54px; padding:8px 10px 8px 24px; white-space:normal; line-height:1.4; }
@media(max-width:991px) { .legal-page__layout { grid-template-columns:190px minmax(0,1fr); gap:32px; } }
@media(max-width:767px) {
 .legal-page { padding:30px 0 48px; }
 .legal-breadcrumb { margin-bottom:24px; }
 .legal-page__header { padding-bottom:24px; margin-bottom:28px; }
 .legal-page__layout { grid-template-columns:minmax(0,1fr); gap:32px; }
 .legal-page__contents { gap:10px; }
 .legal-page h2 { font-size:22px; }
 .legal-page__intro { font-size:16px; }
 .legal-page .legal-page__button { max-width:100%; font-size:14px; }
}

.legal-page__updated{font-size:14px;color:#637083;margin-bottom:16px}.legal-page__body ul{padding-left:22px;margin:0 0 20px}.legal-page__body li{line-height:1.8;margin-bottom:8px}.legal-page__body p a{color:#0b2d5c;text-decoration:underline;overflow-wrap:anywhere}

.footer-cec { margin-top:22px; }
.footer-cec a { display:inline-block; border-radius:8px; overflow:hidden; background:#fff; }
.footer-cec img { display:block; width:136px; height:auto; }
.footer-social-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.footer-social-links a { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border:1px solid #7185a0; border-radius:50%; color:#fff; font-size:18px; }
.footer-social-links a:hover { background:#ffbf17; border-color:#ffbf17; color:#0b2d5c; }
.footer-service-areas { margin-top:28px; }
.footer-service-areas h3 { font-size:20px; margin-bottom:16px; }
.footer-service-areas p { color:#c3cddd; font-size:14px; line-height:1.9; }
.site-footer-two .footer-email { overflow-wrap:anywhere; font-size:14px; margin-top:6px; }
@media(max-width:767px) { .footer-cec img { width:120px; } .footer-service-areas { margin-top:22px; } }

/* Compact footer branding without enlarging the footer column. */
.site-footer-two .footer-widget-two__logo img { width:100px; height:auto; max-width:100%; }
.site-footer-two .footer-widget-two__logo { margin-bottom:16px; }
.site-footer-two .footer-cec { margin-top:16px; }
.site-footer-two .footer-cec a { border-radius:5px; }
.site-footer-two .footer-cec img { width:90px; height:auto; }
.site-footer-two .footer-social-links { margin-top:14px; gap:8px; }
@media(max-width:767px) {
 .site-footer-two .footer-widget-two__logo img { width:90px; }
 .site-footer-two .footer-cec img { width:80px; }
}


/* Original simple thank-you layout with restrained spacing/button improvements. */
.thank-you-simple { padding:90px 0 95px; background:#fff; }
.thank-you-simple h1 { margin-bottom:16px; }
.thank-you-simple p { line-height:1.8; margin-bottom:24px; }
.thank-you-simple p a { color:#0b2d5c; font-weight:600; }
.thank-you-simple__button { display:inline-flex; align-items:center; justify-content:center; gap:16px; padding:12px 24px; min-height:48px; border-radius:28px; background:#ffbf17; color:#0b2d5c; font-weight:600; line-height:1.5; }
.thank-you-simple__button:hover { background:#0b2d5c; color:#fff; }
@media(max-width:767px) { .thank-you-simple { padding:48px 0 54px; } .thank-you-simple h1 { font-size:32px; line-height:1.2; } .thank-you-simple__button { max-width:100%; font-size:14px; } }
