/* One mobile layout shared by every route. Same HTML and SEO content as desktop. */
:root{--mobile-gutter:20px;--mobile-space:40px}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:20px}
body{font-size:16px;line-height:1.7}
main,header,footer,section,article,aside,nav,form,div{min-width:0}
h1,h2,h3,p,a,li,summary,td,th{overflow-wrap:break-word}
h1{font-size:clamp(2rem,7.5vw,2.75rem);line-height:1.15;letter-spacing:-.035em}
h2{font-size:1.75rem;line-height:1.25;letter-spacing:-.025em}
h3{font-size:1.125rem;line-height:1.4}
p{font-size:1rem;line-height:1.75}
h1 br,h2 br{display:none}
h1 br::after,h2 br::after{content:" "}
a,button,input,select,summary{touch-action:manipulation}
button,input,select,textarea{font:inherit}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #1684bd;outline-offset:4px}
.notice{font-size:.8125rem;line-height:1.5;letter-spacing:0;padding:8px 18px}
.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px 12px;padding:18px var(--mobile-gutter) 20px;background:white;max-width:none;position:relative}
.site-header>.logo{font-size:1.65rem;letter-spacing:-.05em;gap:0;line-height:1.2}
.site-header>.logo svg{width:36px;height:36px;padding:8px;flex-shrink:0;margin-right:8px}
.site-header>.desktop-navigation{display:none}
.mobile-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 12px;border:1px solid #d5dfe8;border-radius:9px;background:#f6f8fb;color:var(--navy);font-size:.875rem;font-weight:700;cursor:pointer}
.mobile-toggle svg{flex-shrink:0}
.site-header>.mobile-navigation{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:8px;background:#f3f6f9;border:1px solid #dfe5ec;border-radius:12px}
.site-header>.mobile-navigation>a{display:flex;align-items:center;min-height:48px;padding:12px;font-size:.9375rem;font-weight:600;line-height:1.45;border-radius:6px}
.site-header>.mobile-navigation>a:hover{background:#e7edf3}
.mobile-header-call{grid-column:1/-1;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 16px;border-radius:12px;background:var(--yellow);color:var(--navy);line-height:1.35}
.mobile-header-call>svg{width:23px;height:23px;flex-shrink:0}
.mobile-header-call strong{display:block;font-size:.9375rem}
.mobile-header-call small{display:block;font-size:.8125rem;margin-top:4px}
.mobile-header-call>b{font-size:1.125rem;letter-spacing:.01em;white-space:nowrap}
.hero,.detail-hero,.about-hero,.problem-hero{margin:0 var(--mobile-gutter);padding:28px 24px;border-radius:16px;display:grid;grid-template-columns:minmax(0,1fr);gap:26px;overflow:visible}
.hero h1,.detail-hero h1,.about-hero h1,.problem-hero h1{font-size:clamp(2rem,7.5vw,2.75rem);line-height:1.15;margin-bottom:18px;letter-spacing:-.035em}
.hero .eyebrow,.detail-hero .eyebrow,.about-hero .eyebrow,.problem-hero .eyebrow{font-size:.8125rem;line-height:1.6;letter-spacing:.075em;margin-bottom:14px}
.hero-copy p,.detail-hero>div>p,.about-hero-copy>p,.problem-answer{font-size:1rem;line-height:1.75;margin-bottom:22px;max-width:none}
.hero-copy{width:100%;align-self:auto}
.hero-note{font-size:.875rem;margin:12px 0 0;line-height:1.6}
.hero-secondary{font-size:.9375rem;line-height:1.55;padding:9px 0;min-height:44px;margin:4px 0 0}
.button{min-height:52px;max-width:100%;font-size:1rem;line-height:1.45;padding:14px 18px;border-radius:10px;white-space:normal}
.call-button,.hero-copy .call-button,.detail-hero .call-button,.problem-help .call-button,.assist-box .call-button,.about-contact .call-button{display:flex;justify-content:flex-start;width:100%;font-size:.9375rem;padding:14px 18px;gap:14px}
.call-button>span{margin:0;min-width:0;line-height:1.5}
.call-button strong,.assist-box .call-button strong,.contact-card .call-button strong{font-size:1.4rem;letter-spacing:.015em;margin-top:2px;white-space:normal}
.call-button svg{display:block;width:24px;height:24px;flex-shrink:0}
.call-caption,.hero-copy .call-caption,.assist-box .call-caption,.tracking-panel .fine{font-size:.875rem!important;line-height:1.6!important;margin:10px 0 16px!important}
.tracking-panel{border-radius:12px;padding:23px 20px;box-shadow:none;width:100%}
.tracking-panel .eyebrow{font-size:.8125rem;letter-spacing:.045em}
.tracking-panel h2{font-size:1.65rem;line-height:1.25}
.tracking-panel .tracking-intro{font-size:1rem!important;line-height:1.7!important;margin-bottom:18px}
.tracking-panel form{gap:10px}
.tracking-panel label{font-size:.9375rem;line-height:1.5}
.tracking-panel input,.tracking-panel select{min-height:52px;padding:13px 12px;border-radius:8px;font-size:16px;background:#fff;max-width:100%}
.tracking-panel .button{font-size:1rem;min-height:52px;padding:14px}
.tracking-panel .tracking-disclosure{font-size:.875rem;line-height:1.7;margin-top:16px}
.tracking-result{padding:18px 15px;overflow-wrap:anywhere}
.tracking-result p{font-size:1rem}
.tracking-actions{gap:12px}
.copy-button{min-height:48px;font-size:.9375rem;padding:12px 16px;border-radius:8px;max-width:100%;white-space:normal}
.section{max-width:none;margin-left:var(--mobile-gutter);margin-right:var(--mobile-gutter);padding-top:var(--mobile-space)}
.section .eyebrow{font-size:.8125rem;line-height:1.6;letter-spacing:.07em;color:#586879;margin-bottom:10px}
.section h2{font-size:1.75rem;line-height:1.25;margin-bottom:18px}
.section-head{display:block;margin-bottom:22px}
.section-head>.muted{display:block;font-size:.9375rem;margin-top:12px;line-height:1.6}
.carriers{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.carrier{padding:13px;border-radius:13px;box-shadow:0 3px 12px #13223406;transform:none}
.carrier-name,.brand-logo{height:96px;width:100%;padding:15px;border-radius:9px}
.brand-logo img{max-width:100%;object-fit:contain}
.carrier-caption{font-size:.875rem;min-height:3.5em;line-height:1.5;padding:12px 0 10px}
.card-link{font-size:.875rem;line-height:1.5;align-items:center;gap:5px;padding-top:11px}
.under-grid{font-size:.875rem;line-height:1.75;margin-top:16px}
.home-text-grid{grid-template-columns:1fr;gap:0}
.home-text-grid>article{padding:24px 0;border-bottom:1px solid var(--border)}
.home-text-grid>article:first-child{padding-top:2px}
.home-text-grid>article:last-child{border-bottom:0;padding-bottom:0}
.home-text-grid h3{font-size:1.1875rem;line-height:1.4;margin-bottom:14px}
.home-text-grid p{font-size:1rem;line-height:1.8;margin-bottom:16px}
.home-text-grid p:last-child{margin-bottom:0}
.issues{grid-template-columns:1fr;gap:12px}
.issue{padding:22px 24px 22px 78px;border:1px solid var(--border);border-radius:12px;background:#f5f7fa}
.issue .icon-bg{position:absolute;left:18px;top:22px;width:42px;height:42px;margin:0;border:0}
.issue h3{font-size:1.0625rem;line-height:1.4;margin-bottom:8px;padding-right:12px}
.issue p{font-size:.9375rem;line-height:1.65;margin-bottom:0;padding-right:12px}
.issue-arrow{right:16px;bottom:18px;font-size:1.125rem}
.guide-list{margin-top:22px}
details{padding:18px 0}
summary{min-height:44px;font-size:1rem;line-height:1.55;align-items:flex-start;gap:16px}
summary>span{flex-shrink:0;font-size:1.5rem;line-height:1}
details p{font-size:1rem;line-height:1.8}
.assist,.about-contact{margin:var(--mobile-space) var(--mobile-gutter) 0;padding:28px 24px;grid-template-columns:minmax(0,1fr);gap:24px;border-radius:16px}
.assist h2,.about-contact h2{font-size:1.8rem;line-height:1.25}
.assist p,.about-contact p{font-size:1rem;line-height:1.75}
.assist .eyebrow,.about-contact .eyebrow{font-size:.8125rem;letter-spacing:.07em}
.checklist{display:grid;grid-template-columns:1fr;gap:8px;font-size:.9375rem}
.assist-box,.problem-help{padding:23px 20px;border-radius:12px;max-width:none}
.assist-box h3,.problem-help h2{font-size:1.375rem;line-height:1.3}
.assist-box>p,.problem-help>p,.assist-box .fine{font-size:.9375rem;line-height:1.7}
.faq{margin-left:var(--mobile-gutter);margin-right:var(--mobile-gutter);padding:var(--mobile-space) 0 0}
.breadcrumb{margin:2px var(--mobile-gutter) 18px;gap:5px 9px;font-size:.875rem;line-height:1.6;flex-wrap:wrap;max-width:none}
.breadcrumb a{padding:5px 0;text-decoration:underline;text-underline-offset:3px}
.detail-hero{gap:24px}
.intent-links{display:grid;grid-template-columns:1fr;gap:9px;margin:20px 0}
.intent-links a{min-height:46px;display:flex;align-items:center;font-size:.9375rem;padding:11px 14px;border-radius:8px;background:#20354a;line-height:1.5}
.detail-tracking .detail-brand{display:flex;align-items:flex-start;gap:9px;margin-bottom:18px}
.detail-tracking .detail-brand .brand-logo{width:180px;height:72px;padding:15px}
.detail-tracking .detail-brand small{font-size:.8125rem;text-align:left;line-height:1.6;max-width:100%}
.detail-columns{grid-template-columns:minmax(0,1fr);gap:28px}
.detail-columns>.editorial{grid-row:1}
.detail-columns>.contact-card{grid-row:auto;position:static;padding:25px}
.article-meta{font-size:.875rem;line-height:1.65;margin-bottom:20px}
.article-toc,.problem-layout .article-toc{display:grid;grid-template-columns:1fr;gap:0;padding:18px 20px;border-radius:0 10px 10px 0;margin-bottom:30px}
.article-toc strong{font-size:1rem;margin-bottom:8px}
.article-toc a,.problem-layout .article-toc a{display:flex!important;align-items:center;min-height:44px;padding:9px 0;font-size:.9375rem;line-height:1.65;border-bottom:1px solid #e0e6ec}
.article-toc a:last-child{border-bottom:0}
.article-section,.problem-layout .article-section{margin-bottom:34px}
.article-section h2,.detail-columns h2,.problem-layout .article-section h2{font-size:1.625rem;line-height:1.3;margin-bottom:16px}
.article-section h3,.problem-layout .article-section h3{font-size:1.125rem;line-height:1.4}
.article-section p,.problem-layout .article-section p{font-size:1rem;line-height:1.85}
.article-sources{padding:21px 20px;overflow-wrap:anywhere}
.article-sources a,.article-sources strong,.article-sources p{font-size:.875rem;line-height:1.75}
.article-sources a{padding:8px 0}
.document-table{overflow:visible;border-radius:10px}
.document-table table{display:block;width:100%;font-size:1rem}
.document-table caption{display:block;font-size:1rem;line-height:1.6;padding:17px}
.document-table thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.document-table tbody,.document-table tr{display:block;width:100%}
.document-table tbody tr{padding:17px 18px;border-top:1px solid var(--border)}
.document-table tbody th,.document-table tbody td{display:block;width:100%;border:0;padding:0;font-size:1rem;line-height:1.75}
.document-table tbody th{font-weight:700;margin-bottom:6px}
.document-table tbody td{color:var(--muted)}
.claim-steps{padding-left:23px}
.claim-steps li{padding-left:5px;margin:22px 0}
.claim-steps h3{font-size:1.125rem;line-height:1.4}
.message-model{padding:18px 16px;margin:16px 0;border-radius:10px}
.message-model summary{font-size:1rem;line-height:1.6}
.message-model pre,.problem-layout .message-model pre{font-size:1rem;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;max-width:100%;padding:16px;margin:18px 0;background:white}
.message-model .copy-button{width:100%}
.message-model .copy-status{font-size:.875rem;line-height:1.65}
.claim-guide-links,.problem-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.claim-guide-links a,.problem-links a{font-size:.9375rem;line-height:1.5;min-height:54px;padding:15px;border-radius:10px}
.official-contact-block{padding:25px 22px;margin:32px 0;border-radius:12px}
.official-contact-block .eyebrow{font-size:.8125rem;letter-spacing:.07em}
.official-contact-block h2{font-size:1.625rem;line-height:1.3}
.official-contact-options{grid-template-columns:1fr;gap:24px}
.official-contact-options h3{font-size:1rem}
.official-number{font-size:1.625rem;line-height:1.4;gap:12px;min-height:48px}
.official-contact-button{width:100%;font-size:1rem}
.official-contact-options p{font-size:.9375rem;line-height:1.75}
.official-contact-foot{font-size:.875rem;line-height:1.8}
.contact-card h2{font-size:1.5rem;line-height:1.3}
.contact-card p,.contact-card .fine{font-size:.9375rem;line-height:1.75}
.official-link .source{font-size:.9375rem;display:inline-block;padding:10px 0;min-height:44px}
.problem-layout{margin:0 var(--mobile-gutter);padding:30px 0 0;max-width:none}
.problem-documents li{grid-template-columns:1fr;gap:6px;padding:18px 20px;font-size:1rem;line-height:1.75}
.problem-specific{padding:22px 20px}
.problem-related h2{font-size:1.625rem;line-height:1.3}
.problem-back{font-size:1rem;line-height:1.7;min-height:44px;padding:10px 0}
.about-intro,.about-process,.about-transparency{grid-template-columns:1fr;gap:18px}
.about-intro h2,.about-transparency h2{font-size:1.75rem;line-height:1.3}
.about-promise{padding:24px;border-radius:12px}
.about-promise h2{font-size:1.625rem;line-height:1.3}
.about-promise p{font-size:1rem;line-height:1.8}
.about-signature span{font-size:.875rem;line-height:1.6}
.about-cases{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}
.about-case{padding:24px 22px}
.about-case h3{font-size:1.125rem;line-height:1.4}
.about-case p{font-size:1rem;line-height:1.8}
.about-process-heading{padding-top:0}
.about-step-number{font-size:1.5rem}
.about-steps li{gap:18px;padding:22px 0}
.about-steps h3{font-size:1.125rem;line-height:1.4}
.about-steps p{font-size:1rem;line-height:1.8}
.about-transparency{margin-top:36px;padding:25px 22px}
.about-other{padding:20px;font-size:1rem;line-height:1.8}
.about-contact-action{text-align:left}
.prose{padding-top:24px;padding-bottom:0}
.prose h1{font-size:2rem;line-height:1.2}
.prose h2{font-size:1.5rem;line-height:1.3}
.prose p{font-size:1rem;line-height:1.85}
footer{padding:30px var(--mobile-gutter) max(28px,env(safe-area-inset-bottom));margin-top:44px;border-top:1px solid #dfe5ec}
.footer-top{align-items:flex-start;gap:12px}
.footer-top .logo{font-size:1.65rem}
.footer-top p{font-size:.9375rem;line-height:1.7}
.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px;padding:22px 0}
.footer-links a{min-height:44px;display:flex;align-items:center;font-size:.9375rem;line-height:1.5;padding:9px 0}
footer>.fine{font-size:.875rem;line-height:1.8}
.footer-bottom{display:grid;grid-template-columns:1fr;gap:3px;font-size:.875rem;line-height:1.7;padding-top:18px}
.footer-bottom a{min-height:44px;display:flex;align-items:center;padding:8px 0}
@media(max-width:540px){
 :root{--mobile-gutter:16px;--mobile-space:36px}
 .mobile-header-call{grid-template-columns:24px minmax(0,1fr);gap:8px 12px;padding:14px 16px}
 .mobile-header-call>svg{grid-row:1/3}
 .mobile-header-call>b{grid-column:2;font-size:1.375rem}
 .mobile-header-call strong{font-size:.9375rem}
 .hero,.detail-hero,.about-hero,.problem-hero{padding:25px 20px}
 .carriers{gap:12px}
 .carrier{padding:11px}
 .carrier-name,.brand-logo{height:80px;padding:12px}
 .claim-guide-links,.problem-links,.about-cases{grid-template-columns:1fr}
 .site-header>.mobile-navigation{grid-template-columns:1fr}
 .assist,.about-contact{padding:25px 20px}
 .about-promise,.problem-help,.assist-box{padding:22px 18px}
 .tracking-panel{padding:22px 18px}
}
@media(max-width:360px){
 :root{--mobile-gutter:12px}
 .site-header{gap:12px 8px}
 .site-header>.logo{font-size:1.5rem}
 .mobile-toggle{padding:9px;font-size:.8125rem}
 .mobile-toggle svg{width:17px}
 .hero,.detail-hero,.about-hero,.problem-hero{padding:24px 18px}
 .carrier-caption,.card-link{font-size:.8125rem}
 .call-button strong{font-size:1.25rem}
 .call-button,.hero-copy .call-button,.detail-hero .call-button,.problem-help .call-button,.assist-box .call-button,.about-contact .call-button{padding:13px 12px;gap:10px}
 .official-contact-block{padding:22px 18px}
 .official-number{font-size:1.45rem}
 .issue{padding-left:68px;padding-right:18px}
 .issue .icon-bg{left:16px;width:36px;height:36px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Reflow intentional desktop line breaks into normal mobile word spacing. */
.responsive-break::after{content:" "}
.responsive-break>br{display:none}
.hero-copy>.call-button,.hero-copy>.call-caption{display:none}
.hero-copy>.hero-note{margin-top:5px}
@media(hover:none){
 .carrier:hover,.yellow:hover{transform:none}
}
.company-layout{grid-template-columns:minmax(0,1fr);gap:28px}
.company-details>div{grid-template-columns:1fr;gap:6px;padding:18px 20px}
.company-contact{padding:25px 22px}
.company-hero .company-lead{font-size:1rem;line-height:1.8;color:#d0dbe7}
.company-source{font-size:.875rem;line-height:1.75}
