/* Shared public shell. Landing layout keeps its own stylesheet; interiors use the system below. */
.public-site { --navy:#073657; --cyan:#00a8c8; --ink:#38566d; color:var(--ink); font-family:'Aileron-Regular',Arial,sans-serif; font-size:15px; line-height:1.65; overflow:clip; }
.public-site *, .public-site *::before, .public-site *::after { box-sizing:border-box; }
.public-site .container { width:100%; max-width:1240px; padding-left:32px; padding-right:32px; }
.public-site h1,.public-site h2,.public-site h3,.public-site strong { font-family:'Aileron-Bold',Arial,sans-serif; }
.public-site h2 { margin:0 0 22px; color:var(--navy); font-size:36px; line-height:1.12; letter-spacing:-.8px; }
.public-site p { margin:0 0 18px; }
.public-site a { text-decoration:none; }
.public-site a:focus-visible,.public-site button:focus-visible,.public-site summary:focus-visible { outline:3px solid #00a8c8; outline-offset:5px; }
.public-site .site-header { position:relative; background:white; z-index:20; }
.public-site .site-topbar { background:var(--navy); min-height:33px; }
.public-site .site-topbar .container { min-height:33px; }
.public-site .site-topbar .topbar-links a { font-family:'Aileron-Regular',Arial,sans-serif; font-size:11px; line-height:33px; }
.public-site .site-topbar .topbar-links ul { margin:0; padding:0; }
.public-site .site-topbar .topbar-links ul li { min-height:33px; }
.public-site .site-navbar { position:relative; z-index:2; min-height:90px; border:0; }
.public-site .site-navbar__brand { margin-right:28px; }
.public-site .site-navbar__brand img { width:171px; }
.public-site .site-navbar .nav-item .nav-link { font-size:11px; padding:0 10px; line-height:90px; letter-spacing:0; color:var(--navy); }
.public-site .site-navbar .nav-item.active .nav-link:before { bottom:23px; height:2px; left:10px; right:10px; width:auto; }
.public-site .site-navbar .dropdown-menu { border-radius:0 0 10px 10px; background:var(--navy); }
.public-site .landing-contact { display:inline-flex; align-items:center; gap:16px; flex-shrink:0; margin-left:14px; padding:10px 17px; border-radius:11px; background:#008eae; color:#fff; text-decoration:none; font-size:12px; transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease; }
.public-site .landing-contact:hover,
.public-site .landing-contact:focus-visible { background:#006f8a; color:#fff !important; text-decoration:none; box-shadow:0 8px 18px rgba(7,54,87,.22); transform:translateY(-1px); }
.public-site .landing-contact:active { transform:translateY(0); }
.public-site .landing-contact-icon { display:block; width:17px; height:17px; flex:0 0 17px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.landing-emergency { background:#eff8fb; border-top:1px solid #e4eff4; color:var(--navy); font-size:12px; }
.landing-emergency__inner { display:flex; align-items:center; justify-content:space-between; min-height:36px; gap:12px; }
.landing-emergency__inner>span { display:flex; align-items:center; gap:10px; }
.landing-emergency__inner i { color:#008ba7; }
.landing-emergency__details { position:relative; }
.landing-emergency summary { cursor:pointer; display:flex; align-items:center; gap:20px; list-style:none; padding:6px 0; font-family:'Aileron-Bold',Arial,sans-serif; }
.landing-emergency summary::-webkit-details-marker { display:none; }
.landing-emergency__panel { position:absolute; right:0; top:100%; width:360px; max-width:calc(100vw - 32px); padding:24px; background:white; border:1px solid #deedf2; border-radius:0 0 12px 12px; box-shadow:0 14px 36px #07365725; }
.landing-emergency__panel strong { font-size:16px; }
.landing-emergency__panel p { font-size:12px; margin:8px 0 12px; }
.landing-emergency__panel a { display:block; color:var(--navy); margin-top:8px; overflow-wrap:anywhere; }
.public-site .partners { padding:20px 0; background:white; }
.public-site .partners .content { padding:0; }
.public-site .partners .owl-item .item { height:58px; display:flex; align-items:center; justify-content:center; }
.public-site .partners .owl-item img { width:auto; max-width:150px; max-height:52px; object-fit:contain; }
.public-site .partners .owl-nav { display:none; }
.public-site .footer { background:#063354; padding:37px 0 20px; }
.landing-footer__brand { display:flex; align-items:center; gap:28px; margin-bottom:25px; }
.landing-footer__brand img { width:161px; padding:10px 12px; background:white; border-radius:8px; }
.landing-footer__brand>span { color:#afc8d8; border-left:1px solid #ffffff30; padding-left:28px; font-size:12px; line-height:1.5; }
.public-site .footer p { color:#c5d9e6!important; font-size:11px; line-height:1.8; }
.public-site .footer-nav ul { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px 17px; padding:0; list-style:none; }
.public-site .footer-nav ul li { margin:0; }
.public-site .footer-nav .nav-link { font-family:'Aileron-Regular',Arial,sans-serif; font-size:11px; color:#b7d4e5; padding:0; text-transform:none; }
.landing-footer__bottom { display:flex; justify-content:space-between; align-items:center; border-top:1px solid #ffffff18; padding-top:18px; margin-top:14px; color:#91b6ce; font-size:10px; }
.public-site .landing-back-top { color:#a9f0fa; border-color:#68bfd4; background:#104565; }
.public-site .landing-back-top { display:inline-flex; align-items:center; justify-content:center; flex:0 0 44px; width:44px; height:44px; padding:0; border:1px solid #68bfd4; border-radius:50%; color:#a9f0fa; background:#104565; cursor:pointer; line-height:0; transition:background .2s,border-color .2s,color .2s; }
.public-site .landing-control-icon { display:block; width:20px; height:20px; flex:none; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.public-site .landing-back-top:hover { color:#073657; background:#a9f0fa; border-color:#a9f0fa; }
.public-site .landing-back-top:focus-visible { outline:3px solid #80e6f7; outline-offset:4px; }
.public-site .site-navbar .dropdown-menu { max-width:min(380px,90vw); }
.public-site .site-navbar .dropdown-menu .item-content-action { white-space:normal; width:340px; max-width:100%; padding:20px; }
.public-site .site-navbar .dropdown-menu .item-content-action p { font-size:12px; line-height:1.65; overflow-wrap:anywhere; }
.public-site .site-navbar .nav-item:last-child .dropdown-menu { right:0; left:auto; }
.public-site .site-navbar .nav-item .nav-link { white-space:nowrap; }
.public-site .site-navbar .nav-link:focus-visible { outline-offset:-5px; }
/* Reusable public interior design system. */
.interior-site { background:#f5f9fc; }
.interior-site h1, .interior-site h2, .interior-site h3, .interior-site h4 { font-family:'Aileron-Bold',Arial,sans-serif; color:var(--navy); }
.interior-site h3 { font-size:23px; line-height:1.3; margin:0 0 14px; }
.interior-site h4 { font-size:18px; line-height:1.4; }
.interior-site a { color:#007e9c; }
.interior-site a:hover { color:var(--navy); }
.interior-site p { line-height:1.8; }
.interior-site .page-content { background:#f5f9fc; min-height:360px; }
.interior-site .interior-hero, .interior-site .page-heading { position:relative; background:linear-gradient(115deg,#073657 0%,#064664 70%,#077e95 100%); color:#ecf7fc; padding:48px 0 52px; overflow:hidden; }
.interior-site .interior-hero::after, .interior-site .page-heading::after { content:''; pointer-events:none; position:absolute; width:200px; height:200px; right:-55px; bottom:-115px; border:35px solid #34c4dd22; border-radius:50%; }
.interior-site .interior-hero .container, .interior-site .page-heading .container { position:relative; z-index:1; }
.interior-site .interior-hero h1, .interior-site .page-heading h1 { font-size:clamp(32px,4vw,49px); line-height:1.14; letter-spacing:-1px; color:white; margin:0 0 18px; max-width:940px; text-transform:none; overflow-wrap:anywhere; }
.interior-site .page-heading .title { padding:6px 0; text-align:left; }
.interior-site .page-heading h1 { margin:0; }
.interior-site .interior-lead { font-size:17px; line-height:1.7; color:#d7edf6; max-width:820px; margin:0; }
.interior-site .interior-eyebrow { display:flex; align-items:center; gap:10px; color:#0087a3; font-family:'Aileron-Bold',Arial,sans-serif; font-size:10px; line-height:1.5; text-transform:uppercase; letter-spacing:1.7px; margin-bottom:17px; }
.interior-site .interior-eyebrow::before { content:''; width:27px; height:2px; background:#00a8c8; flex:none; }
.interior-site .interior-hero .interior-eyebrow { color:#75dcec; }
.interior-site .interior-breadcrumb { display:flex; align-items:center; gap:10px; flex-wrap:wrap; font-size:12px; margin-bottom:24px; color:#b1d7e6; }
.interior-site .interior-breadcrumb a { color:#d5edf7; }
.interior-site .interior-breadcrumb a:hover { color:white; text-decoration:underline; }
.interior-site .interior-section { padding:52px 0; }
.interior-site .interior-section + .interior-section { padding-top:0; }
.interior-site .interior-section>.container>*+*, .interior-site .interior-tariff>*+* { margin-top:25px; }
.interior-site .interior-section>.container>.interior-eyebrow { margin-top:30px; margin-bottom:-7px; }
.interior-site .interior-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; align-items:start; }
.interior-site .interior-grid--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.interior-site .interior-grid > * { min-width:0; }
.interior-site .interior-card { min-width:0; background:white; border:1px solid #deebf2; border-radius:16px; padding:32px; box-shadow:0 8px 28px #07365706; }
.interior-site .interior-card > :last-child { margin-bottom:0; }
.interior-site .interior-card--accent { border-top:3px solid #00a8c8; background:linear-gradient(145deg,#fff,#eff9fb); }
.interior-site .interior-card h2 { font-size:30px; }
.interior-site .interior-card p { color:#38566d; font-size:15px; }
.interior-site .interior-card p, .interior-site .interior-copy { text-align:left!important; }
.interior-site .interior-card ul, .interior-site .interior-card ol { padding-left:21px; margin-bottom:18px; }
.interior-site .interior-card li { padding-left:3px; margin-bottom:10px; }
.interior-site .interior-card li::marker { color:#008da9; }
.interior-site .interior-media { display:block; width:100%; max-width:100%; height:auto; border-radius:14px; object-fit:cover; }
.interior-site figure.interior-media { overflow:hidden; margin:0; }
.interior-site .interior-media img { display:block; width:100%; max-width:100%; height:auto; }
.interior-site .interior-grid--three>.interior-media img, .interior-site .interior-grid--three>img.interior-media { height:240px; object-fit:cover; }
.interior-site .interior-media figcaption { padding:13px 17px; background:#ecf6fa; color:#4a667b; font-size:12px; }
.interior-site .interior-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:26px 0; }
.interior-site .interior-gallery>[class*="col-"] { width:100%; max-width:100%; padding:0; }
.interior-site .interior-gallery img { display:block; width:100%; height:220px; object-fit:cover; border-radius:14px; }
.interior-site .interior-gallery .image { margin:0; width:100%; }
.interior-site .interior-copy { font-size:15px; line-height:1.8; color:#38566d; overflow-wrap:anywhere; }
.interior-site .interior-copy img { max-width:100%; height:auto; }
.interior-site .interior-tariff { max-width:none; padding:0; }
.interior-site .interior-tariff .intro, .interior-site .interior-tariff .data-table, .interior-site .interior-tariff .textofinal { text-align:left; }
.interior-site .interior-tariff .table-heading { padding:0 0 18px; color:#38566d; }
.interior-site .interior-tariff .table-heading h3 { margin-bottom:16px; font-size:24px; }
.interior-site .interior-tariff .table-heading p { margin-bottom:8px; font-size:13px; }
.interior-site .interior-tariff .intro h2 { font-size:27px; }
.interior-site .interior-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; max-width:100%; padding:12px 21px; border:1px solid #0085a3; border-radius:25px; background:#0085a3; color:white; font-family:'Aileron-Bold',Arial,sans-serif; font-size:13px; line-height:1.4; text-align:center; }
.interior-site .interior-button:hover { background:#073657; border-color:#073657; color:white; }
.interior-site .interior-note { padding:15px 19px; border-left:3px solid #00a8c8; border-radius:0 9px 9px 0; background:#eaf6fa; font-size:13px; color:#335568; margin:20px 0 0; }
.interior-site .interior-video { aspect-ratio:16/9; border-radius:16px; overflow:hidden; background:#073657; }
.interior-site .interior-video iframe { display:block; width:100%; height:100%; border:0; }
.interior-site .interior-table { width:100%; overflow-x:auto; border:1px solid #dceaf1; border-radius:12px; background:white; }
.interior-site .interior-table table { width:100%; border-collapse:collapse; margin:0; color:#38566d; }
.interior-site .interior-table caption { caption-side:top; padding:18px 21px; font-size:16px; font-family:'Aileron-Bold',Arial,sans-serif; color:var(--navy); text-align:left; }
.interior-site .interior-table th, .interior-site .interior-table td { border:1px solid #e0ecf2; padding:13px 16px; font-size:13px; line-height:1.55; vertical-align:middle; }
.interior-site .interior-table thead th { color:#fff; background:#073657; border-color:#2c546d; font-size:11px; text-transform:uppercase; letter-spacing:.5px; }
.interior-site .interior-table tbody tr:nth-child(even) { background:#f2f8fb; }
.interior-site .interior-table tbody th { font-family:'Aileron-Bold',Arial,sans-serif; color:#073657; }
/* Legacy public forms: only presentation changes, field names and behavior remain untouched. */
.interior-site .claims-content, .interior-site .regulation-content, .interior-site .query-content { padding-bottom:50px; }
.interior-site .claims .claims-content, .interior-site .claims .regulation-content { max-width:1100px; }
.interior-site .page-title { padding:38px 0 28px; }
.interior-site .page-title .title { color:#073657; font-size:28px; line-height:1.3; margin:0 0 22px; }
.interior-site .page-title .title.online { margin-bottom:22px; }
.interior-site .page-title .title:after { width:52px; height:3px; background:#00a8c8; bottom:-12px; }
.interior-site .page-title .title.center:after { margin-left:-26px; }
.interior-site .page-title p { font-size:14px; color:#527083; }
.interior-site .claims .form-claims { padding:0 0 25px; }
.interior-site .form-claims form { background:#fff; border:1px solid #dce9f1; border-radius:16px; padding:30px; box-shadow:0 8px 30px #07365706; }
.interior-site .form-claims label { color:#244a64; font-size:13px; font-family:'Aileron-Bold',Arial,sans-serif; line-height:1.5; }
.interior-site .form-claims .form-group { margin-bottom:20px; }
.interior-site .form-claims .form-control { min-width:0; width:100%; height:46px; border:1px solid #cbdde7; border-radius:8px; background:#fcfeff; color:#26495f; font-family:'Aileron-Regular',Arial,sans-serif; font-size:14px; line-height:1.4; padding:11px 13px; box-shadow:none; }
.interior-site .form-claims .form-control::placeholder { color:#687f8e; opacity:1; }
.interior-site .form-claims select.form-control:not([size]):not([multiple]) { height:48px; min-height:48px; padding-top:8px; padding-bottom:8px; line-height:1.5; }
.interior-site .form-claims .form-control:focus { border-color:#008eab; box-shadow:0 0 0 3px #00a8c822; outline:0; background:white; }
.interior-site .form-claims textarea.form-control { height:auto; min-height:125px; resize:vertical; }
.interior-site .form-claims .form-control[readonly] { background:#f1f6f9; }
.interior-site .form-claims input[type="file"] { max-width:100%; font-size:13px; }
.interior-site .form-claims .btn, .interior-site .search-info .btn { border-radius:9px; background:#007f9d; border:1px solid #007f9d; color:white; min-height:44px; padding:10px 20px; font-size:13px; line-height:1.5; }
.interior-site .form-claims .btn:hover, .interior-site .search-info .btn:hover { background:#073657; border-color:#073657; }
.interior-site .form-claims .claim-section { border:1px solid #dce9f1; border-radius:12px; margin-bottom:22px; overflow:hidden; }
.interior-site .form-claims .claim-section__title { background:#edf7fa; color:#073657; border-color:#dce9f1; font-size:15px; padding:16px 20px; }
.interior-site .form-claims .claim-section__body { padding:22px 20px 10px; }
.interior-site .form-claims .claim-lookup { gap:8px; }
.interior-site .form-claims .claim-lookup .btn { height:46px; flex-shrink:0; padding:0 17px; }
.interior-site .form-claims .claim-email-consent { border-color:#9acbd8; color:#073657; background:#edf8fb; border-radius:9px; font-size:14px; }
.interior-site .form-claims input[type="checkbox"], .interior-site .form-claims input[type="radio"] { accent-color:#0087a3; }
.interior-site .form-claims .error { color:#b42318; font-size:12px; }
.interior-site .form-claims .text-secondary { font-size:15px; line-height:1.6; color:#45677b!important; }
.interior-site .claims .claims-download { padding:0 0 25px; }
.interior-site .claims .download-item { min-height:128px; padding:26px 24px 26px 86px; border:1px solid #dce9f1; border-radius:14px; background:#fff; box-shadow:0 8px 24px #07365705; margin-bottom:24px; }
.interior-site .claims .download-item .icon { top:29px; left:25px; }
.interior-site .claims .download-item .icon img { width:35px; height:40px; object-fit:contain; }
.interior-site .claims .download-item .caption p { font-size:15px; color:#244b64; line-height:1.65; overflow-wrap:anywhere; }
.interior-site .claims .search-info { padding:24px; border:1px solid #dce9f1; border-radius:14px; background:white; }
.interior-site .claims .search-info .search-form .form-inline .form-control { width:100%; min-width:0; max-width:500px; min-height:46px; border-radius:8px; border-color:#cbdde7; }
.interior-site .claims .search-info .show-date { margin-top:18px; }
.interior-site .claims table.table { color:#38566d; background:white; border-radius:10px; font-size:13px; }
.interior-site .claims table.table th, .interior-site .claims table.table td { border-color:#dce9f1; padding:14px; }
.interior-site .claims table.table thead th { background:#073657; color:white; }
@media (max-width:1100px) {
 .public-site .site-navbar { min-height:82px; padding:16px 0; }
 .public-site .site-navbar .container { flex-wrap:wrap; position:static; }
 .public-site .site-navbar__brand { margin:0; }
 .public-site .site-navbar .navbar-toggler { display:block; }
 .public-site .site-navbar .navbar-collapse { display:none!important; position:absolute; left:0; right:0; top:100%; width:100%; padding:12px 32px 20px; background:white; max-height:70vh; overflow-y:auto; box-shadow:0 12px 28px #07365720; }
 .public-site .site-navbar .navbar-collapse.show { display:block!important; }
 .public-site .site-navbar__nav { flex-direction:column; align-items:stretch; margin-left:0!important; }
 .public-site .site-navbar .nav-item .nav-link { line-height:44px; font-size:12px; padding:0 8px; }
 .public-site .site-navbar .nav-item.active .nav-link:before { display:none; }
 .public-site .site-navbar .dropdown-menu { position:static; float:none; width:100%; max-width:100%; }
 .public-site .site-navbar .dropdown-item { white-space:normal; }
 .public-site .landing-contact { margin:10px 0 0; }
 .interior-site .interior-grid--three { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:767px) {
 .public-site .container { padding-left:22px; padding-right:22px; }
 .public-site .site-topbar .container { padding:0 12px; }
 .public-site .site-topbar .topbar-links { width:100%; overflow-x:auto; }
 .public-site .site-topbar .topbar-links ul { width:max-content; flex-wrap:nowrap; }
 .public-site .site-topbar .topbar-links a { font-size:10px; }
 .public-site .site-navbar { min-height:77px; padding:15px 0; }
 .public-site .site-navbar__brand img { width:145px; }
 .public-site .site-navbar .navbar-collapse { padding:12px 22px 20px; }
 .public-site .landing-emergency__inner { flex-wrap:wrap; gap:0; padding-top:5px; padding-bottom:5px; }
 .public-site .landing-emergency__inner>span { font-size:10px; gap:6px; }
 .public-site .landing-emergency summary { font-size:10px; gap:8px; }
 .public-site .footer { padding-top:30px; }
 .public-site .footer-nav ul { justify-content:flex-start; margin-top:20px; }
 .public-site .landing-footer__brand { gap:20px; }
 .public-site .landing-footer__brand img { width:135px; }
 .public-site .landing-footer__brand>span { font-size:10px; padding-left:20px; }
 .interior-site h2 { font-size:28px; }
 .interior-site .interior-hero, .interior-site .page-heading { padding:30px 0 36px; }
 .interior-site .interior-hero h1, .interior-site .page-heading h1 { font-size:31px; line-height:1.18; letter-spacing:-.6px; }
 .interior-site .interior-lead { font-size:14px; }
 .interior-site .interior-breadcrumb { margin-bottom:20px; font-size:11px; }
 .interior-site .interior-section { padding:32px 0; }
 .interior-site .interior-grid, .interior-site .interior-grid--three { grid-template-columns:1fr; gap:20px; }
 .interior-site .interior-card { padding:23px; border-radius:12px; }
 .interior-site .interior-card h2 { font-size:27px; }
 .interior-site .interior-card h3 { font-size:22px; }
 .interior-site .interior-card p { font-size:14px; }
 .interior-site .interior-gallery { grid-template-columns:1fr; gap:15px; }
 .interior-site .interior-gallery img { height:auto; max-height:330px; }
 .interior-site .interior-table table { min-width:580px; }
 .interior-site .interior-table th, .interior-site .interior-table td { padding:12px; font-size:12px; }
 .interior-site .page-title { padding:28px 0 23px; }
 .interior-site .page-title .title { font-size:24px; }
 .interior-site .form-claims form { padding:18px 14px; }
 .interior-site .form-claims .claim-section__title { font-size:14px; padding:14px; }
 .interior-site .form-claims .claim-section__body { padding:17px 13px 8px; }
 .interior-site .form-claims .claim-lookup .btn { width:100%; margin-top:8px!important; }
 .interior-site .form-claims .form-control { font-size:16px; }
 .interior-site .claims .claims-content { padding-bottom:30px; }
 .interior-site .claims .claims-download>.row { overflow-x:auto; }
 .interior-site .claims .claims-download table { min-width:550px; }
}
@media (max-width:360px) {
 .public-site .landing-emergency__inner { justify-content:center; }
 .public-site .landing-emergency__details { position:static; }
 .public-site .landing-emergency__panel { left:16px; right:16px; top:auto; }
}
@media (prefers-reduced-motion:reduce) {
 .public-site *, .public-site *::before, .public-site *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}
