/* v4 "license-checked roofers" page (key city_best): page-only rules, prefix bt-. Shared components come from v4.css and v4-components.css. */
.bt-head{background:var(--pale);border-bottom:1px solid var(--line);padding:48px 0 32px}
.bt-head h1{font-size:clamp(32px,4.4vw,50px);font-weight:620;margin-bottom:16px;max-width:none}
.bt-head .sub{font-size:20px;line-height:1.5;color:var(--ink);max-width:46em;margin-bottom:24px}
.bt-facts{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-wrap:wrap;gap:12px 36px}
.bt-facts li{display:flex;flex-direction:column;max-width:15em}
.bt-facts b{font:650 34px/1.1 var(--head);color:var(--navy)}
.bt-facts span{font-size:16px;color:var(--muted)}
.bt-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;margin-bottom:24px}
.bt-actions .text-link,.bt-row .text-link{display:inline-flex;align-items:center;min-height:44px}
.bt-jump{list-style:none;margin:0;padding:0}
.bt-section{padding-top:56px;padding-bottom:56px}
.bt-alt{background:var(--sand)}
.bt-section .section-head{margin-bottom:26px}
.bt-note{background:#fff;border:1px solid var(--line);border-left:4px solid var(--navy);border-radius:var(--radius);padding:16px 20px;margin-bottom:24px;max-width:62em}
.bt-note b{font-size:18px;color:var(--navy)}
.bt-note p{margin:8px 0 0;font-size:17px;line-height:1.55;color:var(--ink)}
.bt-note a{display:inline-flex;align-items:center;min-height:44px}
.bt-rows{list-style:none;margin:0 0 16px;padding:0}
.bt-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.3fr) auto;gap:12px 24px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin-bottom:10px}
.bt-who h3{font-size:20px;margin:0 0 2px}
.bt-meta{margin:2px 0 0;font-size:16px;line-height:1.4;color:var(--muted)}
.bt-fold summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font-weight:600;color:var(--navy-2)}
.bt-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:20px;margin-bottom:24px}
.bt-three{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:20px;margin-bottom:24px}
.bt-card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:var(--radius);padding:20px 22px;min-width:0}
.bt-card .ic-tile{margin:0 0 10px}
.bt-card h3{font-size:22px;margin-bottom:8px}
.bt-card p{font-size:17px;line-height:1.55;color:var(--ink);margin:0 0 10px}
.bt-card small{display:block;color:var(--muted);font-size:15px}
.bt-card .button{display:inline-flex;align-items:center;min-height:44px}
.bt-big{font:650 30px/1.2 var(--head);color:var(--navy)}
.bt-split{list-style:none;margin:0 0 12px;padding:0}
.bt-split li{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 3em;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font-size:16px}
.bt-split li:first-child{border-top:0}
.bt-split .bt-bar{display:block;height:12px;background:var(--navy-2);border-radius:6px}
.bt-split b{text-align:right}
.bt-bar.w0{width:0%}.bt-bar.w5{width:5%}.bt-bar.w10{width:10%}.bt-bar.w15{width:15%}.bt-bar.w20{width:20%}.bt-bar.w25{width:25%}.bt-bar.w30{width:30%}.bt-bar.w35{width:35%}.bt-bar.w40{width:40%}.bt-bar.w45{width:45%}.bt-bar.w50{width:50%}.bt-bar.w55{width:55%}.bt-bar.w60{width:60%}.bt-bar.w65{width:65%}.bt-bar.w70{width:70%}.bt-bar.w75{width:75%}.bt-bar.w80{width:80%}.bt-bar.w85{width:85%}.bt-bar.w90{width:90%}.bt-bar.w95{width:95%}.bt-bar.w100{width:100%}
.bt-table th[scope=row]{text-align:left;font-weight:650}
.bt-table td,.bt-table th{padding:10px 14px;text-align:left}
.bt-mini{width:100%;margin-bottom:10px}
.bt-mini th,.bt-mini td{text-align:left;padding:8px 0;font-size:16px}
.bt-src{display:block;margin-top:14px;color:var(--muted);font-size:15px;line-height:1.5;max-width:60em}
.bt-src a{display:inline-flex;align-items:center;min-height:44px}
.bt-five{margin-top:4px}
.bt-list{margin:0;padding-left:20px}
.bt-list li{font-size:17px;line-height:1.55;color:var(--ink);margin-bottom:8px}
.bt-list a{display:inline-flex;align-items:center;min-height:44px}
.bt-qs{margin:0 0 24px;padding-left:24px;max-width:52em}
.bt-qs li{margin-bottom:16px;font-size:17px;line-height:1.55;color:var(--ink)}
.bt-qs b{display:block;font-size:19px;color:var(--navy)}
.bt-qs span{display:block;margin-top:4px}
.bt-faq summary{min-height:44px}
.bt-end{background:var(--pale);border-top:1px solid var(--line);padding:48px 0}
.bt-end-row{display:flex;align-items:center;gap:24px}
.bt-end-row .ic-tile{margin:0;flex:0 0 48px}
.bt-end-row h2{font-size:clamp(26px,2.6vw,34px)}
.bt-end-row p{margin-top:8px;max-width:58ch;color:var(--ink)}
.bt-end-actions{margin-left:auto}
@media (max-width:900px){.bt-row{grid-template-columns:minmax(0,1fr)}}
@media (max-width:700px){
 .bt-head{padding:32px 0 24px}
 .bt-head .sub{font-size:18px}
 .bt-section{padding-top:40px;padding-bottom:40px}
 .bt-end-row{flex-direction:column;align-items:flex-start}
 .bt-end-actions{margin-left:0;width:100%}
 .bt-end-actions .button,.bt-actions .button{width:100%}
}
