:root { --ink:#151515; --headline:#c62e38; --link:#168be0; --orange:#e79400; --orange-dark:#c77e00; --footer:#071720; --footer-copy:#758693; --green:#158a4b; }
* { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; }
body { margin:0; background:#fff; color:var(--ink); font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.52; }
a { color:var(--link); }
.site-header { border-bottom:1px solid #e5e5e5; background:#fff; }
.header-inner { width:min(960px,calc(100% - 32px)); min-height:58px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; }
.brand { color:#1a1a1a; font-size:23px; font-weight:800; letter-spacing:-1px; text-decoration:none; }
.brand-reno { color:#c92635; }
.brand-hero { color:#173e69; }
.advertorial-label { font-size:12px; color:#333; }
.page-shell { width:min(960px,calc(100% - 32px)); margin:0 auto; padding:14px 0 86px; }
.content-grid { display:grid; grid-template-columns:minmax(0,660px) 220px; gap:34px; align-items:start; }
.article-column h1 { margin:0 0 12px; color:var(--headline); font-size:34px; font-weight:400; line-height:1.08; }
.article-date { border-bottom:1px solid #ececec; padding:0 0 11px; margin-bottom:13px; color:#222; font-size:12px; }
.article-kicker { margin:0 0 10px; }
.article-column p { margin:0 0 14px; }
.article-column h2,.article-column h3 { color:#111; }
.faq-heading,.state-heading { margin:18px 0 8px; font-size:20px; line-height:1.25; }
.article-column h3 { margin:13px 0 6px; font-size:16px; line-height:1.35; }
.image-link { display:block; color:inherit; text-decoration:none; }
.hero-image, .bill-image, .map-image { height:auto; }
.hero-image { width:55%; max-height:250px; margin:0 0 12px 16px; float:right; object-fit:cover; object-position:center; }
.bill-image { display:block; width:min(100%,510px); max-height:430px; margin:8px auto 28px; object-fit:cover; }
.map-image { display:block; width:min(100%,560px); margin:10px 0 18px; }
.source-button { display:inline-block; border-radius:5px; background:linear-gradient(#f1a817,var(--orange)); box-shadow:inset 0 1px 0 rgba(255,255,255,.35); color:#fff; font-size:19px; font-weight:700; line-height:1; padding:10px 17px; text-decoration:none; }
.source-button:hover,.source-button:focus-visible { background:var(--orange-dark); }
.sidebar { padding-top:3px; }
.sidebar>h2 { margin:0 0 22px; border-bottom:2px solid var(--headline); color:#777; font-size:19px; font-weight:400; line-height:1.2; padding-bottom:6px; }
.quick-check { border:1px solid #cfd8dd; background:linear-gradient(#f8fcff,#eaf5f9); box-shadow:0 1px 3px rgba(0,0,0,.08); padding:16px 13px 13px; }
.desktop-check { position:sticky; top:14px; }
.quick-check .quick-eyebrow { margin:0 0 5px; color:var(--green); font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.quick-check h2,.quick-check h3 { margin:0 0 12px; color:#0e2f44; font-size:21px; line-height:1.18; }
.quick-check h3 { font-size:18px; }
.answer-grid { display:grid; gap:8px; }
.answer-button { min-height:44px; border:1px solid #0d723c; border-radius:4px; background:linear-gradient(#1aa45a,#0d823f); box-shadow:inset 0 1px 0 rgba(255,255,255,.25); color:#fff; display:flex; align-items:center; justify-content:space-between; font-size:14px; font-weight:700; line-height:1.15; padding:9px 10px; text-decoration:none; }
.answer-button span { font-size:23px; line-height:1; }
.answer-button:hover,.answer-button:focus-visible { background:#0c7439; }
.quick-check .quick-note { margin:10px 0 0; color:#52636e; font-size:11px; line-height:1.35; text-align:center; }
.mobile-check { display:none; }
.site-footer { background:var(--footer); color:var(--footer-copy); font-size:11px; line-height:1.5; padding:58px 0 42px; }
.footer-inner { width:min(960px,calc(100% - 32px)); margin:0 auto; display:grid; grid-template-columns:150px 1fr; gap:36px; }
.footer-brand { display:grid; align-content:start; gap:9px; }
.footer-brand strong { color:#9aa9b3; font-size:14px; }
.footer-brand a { color:#1b8fd1; text-decoration:none; }
.footer-copy p { margin:0 0 10px; }
@media (max-width:760px) {
  body { font-size:16px; line-height:1.52; }
  .header-inner,.page-shell,.footer-inner { width:min(100% - 26px,660px); }
  .header-inner { min-height:54px; }
  .brand { font-size:20px; }
  .advertorial-label { font-size:11px; }
  .page-shell { padding-top:13px; padding-bottom:52px; }
  .content-grid { display:block; }
  .article-column h1 { font-size:30px; line-height:1.08; }
  .article-date { margin-bottom:12px; }
  .hero-image { width:100%; max-height:none; margin:0 0 14px; float:none; aspect-ratio:16/10; }
  .mobile-check { display:block; margin:4px 0 18px; }
  .desktop-check,.sidebar { display:none; }
  .answer-grid { grid-template-columns:1fr 1fr; }
  .answer-button { min-height:52px; font-size:14px; }
  .bill-image { margin-bottom:22px; }
  .map-image { margin-inline:auto; }
  .source-button { width:100%; text-align:center; padding:13px 12px; }
  .site-footer { padding:36px 0 30px; }
  .footer-inner { grid-template-columns:1fr; gap:24px; }
  .footer-brand { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .footer-brand strong,.footer-brand span { grid-column:1/-1; }
}
@media (max-width:390px) {
  .article-column h1 { font-size:28px; }
  .quick-check { padding:14px 11px 12px; }
  .answer-grid { grid-template-columns:1fr; }
  .answer-button { min-height:45px; }
}
