/* Concise illustrated service pages; the contact form retains its existing layout. */
body[data-national-visual] .page-hero { padding-block:56px 44px; }
body[data-national-visual] .page-hero h1 { font-size:clamp(34px,3.7vw,54px); line-height:1.12; text-wrap:balance; max-width:680px; }
body[data-national-visual] .page-hero p:not(.eyebrow) { font-size:17px; line-height:1.65; max-width:600px; }
.page-hero__inner.national-hero-grid { max-width:1200px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:46px; align-items:center; }
.national-hero-copy { min-width:0; }
.national-hero-visual { margin:0; border:1px solid #8896a9; background:#151b24; border-radius:18px; overflow:hidden; }
.national-hero-image { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; }
#national-delivery { border-bottom:1px solid #414955; background:#10151d; }
#national-delivery > .container { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 24px; padding-block:14px; }
#national-delivery p { color:#c1ccd8; font-size:14px; line-height:1.5; margin:0; }
#national-delivery .text-link { margin:0; min-height:36px; font-size:14px; }
.national-details { min-width:0; border:1px solid #778598; border-radius:14px; background:#111720; }
.national-details > summary { display:list-item; cursor:pointer; min-height:64px; padding:20px 24px; font-size:20px; font-weight:650; color:#f1f5fa; }
.national-details > summary::marker,.national-small-details > summary::marker,.national-faq > summary::marker { color:#f88678; }
.national-details[open] > summary { border-bottom:1px solid #455367; }
.national-details > .content-panel,.national-details-body { padding:24px; }
.national-details .content-panel h2 { font-size:22px; }
.national-details .content-panel li { font-size:16px; }
.national-small-details { min-width:0; }
.national-small-details > summary { cursor:pointer; padding:12px 0; color:#e6edf6; font-weight:600; }
.national-faq > summary { cursor:pointer; min-height:48px; padding:8px 0; }
.national-faq > summary h3 { display:inline; font-size:17px; }
.national-faq > p { margin-top:12px; line-height:1.7; }
body[data-national-visual] .info-card.service-card { padding:0 0 22px; overflow:hidden; }
body[data-national-visual] .info-card.service-card:before { display:none; }
body[data-national-visual] .service-card > h3,
body[data-national-visual] .service-card > p,
body[data-national-visual] .service-card > a { margin-inline:22px; }
body[data-national-visual] .service-card > h3 { font-size:23px; }
body[data-national-visual] .service-card > p { font-size:15px; line-height:1.6; }
.national-card-image { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; border-bottom:1px solid #68778b; }
body[data-national-visual] .solution-stack { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
body[data-national-visual] .solution-row.national-solution-card { display:block; border:1px solid #778598; border-radius:14px; padding:0; overflow:hidden; background:#111720; }
.national-solution-card > div,.national-solution-card > details { padding:20px; }
.national-solution-card > details { padding-top:0; }
.national-solution-card h2 { font-size:24px; }
.national-solution-card p { font-size:15px; line-height:1.6; }
.national-solution-card .solution-focus { padding:16px; margin:0; }
@media(max-width:960px) {
 .page-hero__inner.national-hero-grid { gap:28px; }
 body[data-national-visual] .solution-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
 body[data-national-visual] .page-hero { padding-block:32px; }
 .page-hero__inner.national-hero-grid { grid-template-columns:1fr; gap:28px; }
 body[data-national-visual] .page-hero h1 { font-size:36px; }
 body[data-national-visual] .page-hero p:not(.eyebrow) { font-size:16px; }
 .national-hero-visual { border-radius:12px; }
 .national-details > summary { padding:18px; font-size:18px; }
 .national-details > .content-panel,.national-details-body { padding:18px; }
 body[data-national-visual] .solution-stack { grid-template-columns:1fr; }
 #national-delivery > .container { align-items:flex-start; gap:2px; padding-block:12px; }
 #national-delivery p { width:100%; }
}
