/* Responsive header repair; preserve each site's theme. */
@media(max-width:640px){
 .site-header .wrap{gap:12px;padding-inline:18px;box-sizing:border-box;width:100%;min-width:0}
 .brand-line{min-width:0;flex:1;flex-direction:column;align-items:flex-start;gap:0;white-space:normal;line-height:1.5}
 .brand-line strong{font-size:18px;overflow-wrap:anywhere}
 .brand-line small{font-size:8px;letter-spacing:.18em;overflow-wrap:anywhere}
 .site-header .header-cta{display:none}
 .site-header .menu-toggle{flex:none;white-space:nowrap;min-width:54px;min-height:40px}
 #main-nav.is-open{top:100%;box-sizing:border-box;max-height:calc(100dvh - 80px);overflow-y:auto}
 .breadcrumbs ol{flex-wrap:wrap}
}

/* Do not reserve an image panel when the CMS has no thumbnail. */
.hd-card .gc-img:not(:has(img)),.guide-card .gc-img:not(:has(img)){display:none}
.hd-card:not(:has(img)){padding-top:36px}
.guide-card:not(:has(.gc-img img)){grid-template-columns:minmax(0,1fr)}
.guide-card:has(.gc-img img)>.gc-img{grid-row:1 / span 4}
.guide-card>*{min-width:0;overflow-wrap:anywhere}
.section.wrap{padding-inline:28px;box-sizing:border-box}
.rich-text{overflow-wrap:anywhere}
@media(max-width:640px){
 .section.wrap{padding-inline:18px}
 .guide-card:has(.gc-img img)>.gc-img{grid-row:auto}
 .dl-mtable{table-layout:fixed;width:100%;max-width:100%;overflow-wrap:anywhere}
 .dl-mtable th,.dl-mtable td{min-width:0;overflow-wrap:anywhere;word-break:break-word;white-space:normal}
 .lc-adv{box-sizing:border-box;max-width:calc(100% - 36px);margin-inline:auto;padding-inline:20px}
}
