/* ==========================================================================
   Content expansion: navigation dropdowns, service-area / trade / industry /
   article templates. Loaded AFTER style.css, theme.css and pages-new.css.
   Uses only existing site variables and fonts (Trajan Pro, Montserrat).
   ========================================================================== */

/* ---- utility row (ProjectDesk, Plan Room, bid list, account access) ---- */
.util-row{background:var(--dark-block);border-bottom:1px solid var(--line);}
.util-row .wrap{display:flex;justify-content:flex-end;gap:22px;padding-top:6px;padding-bottom:6px;max-width:1120px;}
.util-row a{font-size:0.74rem;letter-spacing:0.04em;color:var(--concrete);}
.util-row a:hover{color:var(--rust-bright);}
@media (max-width:860px){.util-row{display:none;}}

/* ---- dropdown navigation ---- */
nav.links .dd{position:relative;}
nav.links .dd > button{
  background:none;border:0;border-bottom:2px solid transparent;cursor:pointer;
  font:inherit;font-size:0.86rem;font-weight:500;color:var(--concrete);padding:6px 0;
}
nav.links .dd > button::after{
  content:"";display:inline-block;margin-left:7px;border:4px solid transparent;
  border-top-color:currentColor;border-bottom-width:0;transform:translateY(-2px);
}
nav.links .dd:hover > button,nav.links .dd.open > button,nav.links .dd:focus-within > button{color:var(--ink);border-bottom-color:var(--rust);}
nav.links .dd > button:focus-visible{outline:2px solid var(--rust);outline-offset:3px;}
.dd-menu{
  display:none;position:absolute;top:100%;left:-16px;min-width:250px;z-index:60;
  background:var(--surface);border:1px solid var(--line);border-top:2px solid var(--rust);
  border-radius:0 0 6px 6px;padding:8px 0;box-shadow:0 18px 40px rgba(0,0,0,0.5);
}
nav.links .dd:hover > .dd-menu,nav.links .dd.open > .dd-menu,nav.links .dd:focus-within > .dd-menu{display:block;}
nav.links .dd-menu a{display:block;padding:9px 20px;font-size:0.84rem;border-bottom:0;color:var(--concrete);}
nav.links .dd-menu a:hover{background:rgba(210,105,30,0.12);color:var(--ink);}
nav.links .dd-menu .dd-sep{height:1px;background:var(--line);margin:6px 0;}
@media (min-width:861px) and (max-width:1060px){nav.links{gap:20px;}}
@media (max-width:860px){
  nav.links{overflow-y:auto;}
  nav.links .dd > button{
    width:100%;text-align:left;padding:14px 18px 6px;font-size:0.72rem;letter-spacing:0.16em;
    text-transform:uppercase;color:var(--rust-bright);border-bottom:0;cursor:default;pointer-events:none;
  }
  nav.links .dd > button::after{display:none;}
  .dd-menu{display:block;position:static;min-width:0;background:none;border:0;box-shadow:none;padding:0;}
  nav.links .dd-menu a{padding:14px 18px;margin-bottom:6px;font-size:0.9rem;}
  nav.links .dd-menu .dd-sep{display:none;}
  .mobile-util{display:block;}
}
.mobile-util{display:none;}

/* ---- breadcrumbs ---- */
.crumbs{font-size:0.78rem;color:var(--steel);margin:0 0 18px;display:flex;flex-wrap:wrap;gap:6px 10px;}
.crumbs a{color:var(--concrete);}
.crumbs a:hover{color:var(--rust-bright);}
.crumbs span[aria-hidden]{color:var(--steel);}

/* ---- generic building blocks ---- */
.lead{font-size:1.08rem;color:var(--concrete);max-width:760px;}
.prose{max-width:760px;}
.prose p{color:var(--concrete);margin:0 0 16px;}
.prose h2{font-size:1.6rem;margin:0 0 16px;}
.prose h3{font-size:1.15rem;margin:28px 0 10px;}
.prose ul,.prose ol{color:var(--concrete);padding-left:22px;margin:0 0 18px;}
.prose li{margin-bottom:8px;}
.prose a,.lead a,.note a,.card-grid a.inline,.faq a{color:var(--rust-bright);text-decoration:underline;text-underline-offset:3px;}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;}
.card-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));}
.card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));}
@media (max-width:860px){.card-grid.two,.card-grid.three{grid-template-columns:1fr;}}
.info-card{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--rust);border-radius:8px;padding:26px 26px 24px;}
.info-card h3{font-size:1.08rem;margin:0 0 10px;line-height:1.3;}
.info-card p{margin:0;color:var(--concrete);font-size:0.93rem;line-height:1.7;}
.info-card p + p{margin-top:10px;}
.info-card .tag{display:block;font-size:0.7rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--rust);margin-bottom:10px;}
.link-card{display:block;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:20px 22px;transition:border-color .2s,background .2s,transform .2s;}
a.link-card:hover{border-color:rgba(210,105,30,0.55);background:var(--card-hover,#241f17);transform:translateY(-2px);}
.link-card h3{font-size:1rem;margin:0 0 6px;}
.link-card p{margin:0;color:var(--concrete);font-size:0.86rem;line-height:1.55;}
.link-card .meta{display:block;margin-top:10px;font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--rust-bright);}
.pending{opacity:0.55;border-style:dashed;}

.chip-links{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;}
.chip-links a,.chip-links span{
  display:inline-block;font-size:0.82rem;padding:8px 14px;border:1px solid var(--line-mid,rgba(237,231,218,0.18));
  border-radius:999px;color:var(--concrete);transition:background .2s,color .2s,border-color .2s;
}
.chip-links a:hover{background:var(--rust-dim);border-color:var(--rust-dim);color:#fff;}
.chip-links span.pending{border-style:dashed;}

/* risk / response rows */
.risk-list{display:grid;gap:14px;}
.risk{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:hidden;}
.risk > div{padding:22px 26px;}
.risk > div + div{border-left:1px solid var(--line);background:rgba(210,105,30,0.05);}
.risk h3{font-size:0.7rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--rust);margin:0 0 8px;}
.risk p{margin:0;color:var(--concrete);font-size:0.93rem;line-height:1.7;}
@media (max-width:760px){.risk{grid-template-columns:1fr;}.risk > div + div{border-left:0;border-top:1px solid var(--line);}}

/* deliverable distinctions */
.dist-table{width:100%;border-collapse:collapse;font-size:0.92rem;}
.dist-table th{text-align:left;font-size:0.72rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--steel);border-bottom:1px solid var(--steel);padding:10px 12px;}
.dist-table td{padding:14px 12px;border-bottom:1px solid var(--line);color:var(--concrete);vertical-align:top;}
.dist-table td:first-child{color:var(--ink);font-weight:600;white-space:nowrap;}

/* sources and review record */
.src-box{background:var(--dark-block);border:1px solid var(--line);border-radius:8px;padding:24px 28px;max-width:860px;}
.src-box h3{font-size:0.78rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--rust);margin:0 0 12px;}
.src-box ul{margin:0;padding-left:20px;color:var(--concrete);font-size:0.9rem;}
.src-box li{margin-bottom:8px;}
.src-box a{color:var(--rust-bright);text-decoration:underline;text-underline-offset:3px;}
.src-box .checked{margin:14px 0 0;font-size:0.8rem;color:var(--steel);}
.note{font-size:0.88rem;color:var(--steel);max-width:760px;}

/* FAQ (native details, keyboard accessible) */
.faq{max-width:860px;border-top:1px solid var(--line);}
.faq details{border-bottom:1px solid var(--line);padding:0;}
.faq summary{cursor:pointer;list-style:none;padding:18px 36px 18px 0;font-weight:500;font-size:1rem;position:relative;color:var(--ink);}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";position:absolute;right:6px;top:15px;font-size:1.4rem;color:var(--rust);}
.faq details[open] summary::after{content:"\2212";}
.faq summary:focus-visible{outline:2px solid var(--rust);outline-offset:2px;}
.faq .ans{padding:0 0 20px;color:var(--concrete);font-size:0.95rem;line-height:1.75;}
.faq .ans p{margin:0 0 12px;}

/* quote band at end of content pages */
.quote-band{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--rust);border-radius:8px;padding:32px 36px;display:grid;grid-template-columns:1.4fr auto;gap:28px;align-items:center;}
.quote-band h2{font-size:1.5rem;margin:0 0 8px;}
.quote-band p{margin:0;color:var(--concrete);font-size:0.95rem;}
.quote-band ul{margin:12px 0 0;padding-left:20px;color:var(--concrete);font-size:0.9rem;}
@media (max-width:760px){.quote-band{grid-template-columns:1fr;padding:26px 22px;}}

/* state directory */
.region-block{margin-bottom:44px;}
.region-block h3{font-size:1.25rem;margin:0 0 6px;padding-bottom:10px;border-bottom:2px solid var(--rust);display:inline-block;}
.region-block .region-desc{color:var(--concrete);font-size:0.93rem;margin:12px 0 16px;max-width:720px;}
.status-chip{display:inline-block;font-size:0.66rem;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;padding:3px 8px;border:1px solid var(--steel);border-radius:2px;color:var(--concrete);margin-left:8px;vertical-align:middle;}

/* article */
.article-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:0.8rem;color:var(--steel);margin-top:18px;}
.article-body{max-width:740px;}
.article-body p{color:var(--concrete);font-size:1.02rem;line-height:1.85;margin:0 0 20px;}
.article-body h2{font-size:1.5rem;margin:40px 0 14px;}
.article-body ul,.article-body ol{color:var(--concrete);padding-left:22px;margin:0 0 20px;line-height:1.8;}
.article-body a{color:var(--rust-bright);text-decoration:underline;text-underline-offset:3px;}

/* quote form page */
.quote-form{max-width:760px;background:var(--surface);border:1px solid var(--line);border-top:2px solid var(--rust-dim);border-radius:8px;padding:32px 34px;}
.quote-form .field select,.quote-form .field input,.quote-form .field textarea{width:100%;}
.quote-form fieldset{border:0;padding:0;margin:0 0 6px;}
.quote-form legend{font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--rust);margin:10px 0 14px;padding:0;}
.sub-redirect{display:none;margin:0 0 20px;padding:16px 18px;border:1px solid var(--rust);border-radius:6px;background:rgba(210,105,30,0.08);font-size:0.92rem;color:var(--ink);}
.sub-redirect a{color:var(--rust-bright);text-decoration:underline;}

@media (prefers-reduced-motion:reduce){a.link-card,.chip-links a{transition:none;}a.link-card:hover{transform:none;}}

/* ==========================================================================
   Revision 2: photo-led layouts, outcome-first sections, compact rhythm
   ========================================================================== */
section.tight{padding:56px 0;}
.eyebrow-sm{font-size:0.72rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--rust);margin:0 0 14px;display:block;}
h2.punch{font-size:clamp(1.8rem,3.4vw,2.5rem);line-height:1.12;margin:0 0 14px;}
.lede-sm{color:var(--concrete);font-size:1.02rem;max-width:620px;margin:0 0 22px;line-height:1.7;}

/* split hero: copy left, framed photo right (crisp at any source size) */
.page-hero.hero-split{min-height:0;padding:56px 0 64px;display:block;}
.hero-split .hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:center;}
.hero-split h1{font-size:clamp(2.2rem,4.4vw,3.3rem);line-height:1.08;}
.hero-split .hero-actions{justify-content:flex-start;margin-top:26px;}
.hero-photo{margin:0;position:relative;}
.hero-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;border:1px solid var(--line);box-shadow:0 24px 60px rgba(0,0,0,0.5);}
.hero-photo::after{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--rust);border-radius:10px 10px 0 0;}
@media (max-width:900px){
  .hero-split .hero-grid{grid-template-columns:1fr;gap:28px;}
  .hero-photo img{aspect-ratio:16/9;}
}

/* outcome strip */
.outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.outcome{padding:34px 32px;border-left:1px solid var(--line);}
.outcome:first-child{border-left:0;}
.outcome h3{font-size:1.3rem;line-height:1.2;color:var(--rust-bright);margin:0 0 10px;}
.outcome p{margin:0;color:var(--concrete);font-size:0.95rem;line-height:1.65;}
@media (max-width:860px){.outcomes{grid-template-columns:1fr;}.outcome{border-left:0;border-top:1px solid var(--line);padding:26px 4px;}.outcome:first-child{border-top:0;}}

/* photo + copy split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.split.rev .split-media{order:2;}
.split-media{margin:0;}
.split-media img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;border:1px solid var(--line);}
.split-media figcaption{font-size:0.74rem;color:var(--steel);margin-top:8px;}
.split-body p{color:var(--concrete);margin:0 0 14px;line-height:1.7;}
.tick-list{list-style:none;margin:18px 0 24px;padding:0;display:grid;gap:10px;}
.tick-list li{position:relative;padding-left:26px;color:var(--ink);font-size:0.97rem;line-height:1.5;}
.tick-list li::before{content:"";position:absolute;left:0;top:0.5em;width:12px;height:2px;background:var(--rust);}
.tick-list li::after{content:"";position:absolute;left:0;top:0.5em;width:12px;height:2px;background:var(--rust);transform:rotate(0);}
@media (max-width:860px){.split{grid-template-columns:1fr;gap:26px;}.split.rev .split-media{order:0;}}

/* feature list: lead-in + sentence, no cards */
.feature-list{list-style:none;margin:0;padding:0;display:grid;gap:0;}
.feature-list li{padding:20px 0 20px 22px;border-bottom:1px solid var(--line);border-left:3px solid var(--rust);margin-bottom:-1px;}
.feature-list li:first-child{border-top:1px solid var(--line);}
.feature-list b{display:block;color:var(--ink);font-weight:500;font-size:1.05rem;margin-bottom:4px;}
.feature-list span{color:var(--concrete);font-size:0.94rem;line-height:1.65;}

/* "where scope slips" compact rows */
.fix-list{display:grid;gap:12px;}
.fix{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);gap:16px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:16px 22px;}
.fix .miss{color:var(--concrete);font-size:0.92rem;line-height:1.55;}
.fix .arrow{color:var(--rust);font-size:1.3rem;text-align:center;}
.fix .catch{color:var(--ink);font-size:0.92rem;line-height:1.55;}
.fix small{display:block;font-size:0.66rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--rust);margin-bottom:3px;}
@media (max-width:760px){.fix{grid-template-columns:1fr;gap:8px;}.fix .arrow{display:none;}}

/* estimate previews */
.peek-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start;}
.peek{margin:0;}
.peek-frame{background:#fff;border-radius:8px;border:1px solid var(--line);overflow:hidden;box-shadow:0 18px 44px rgba(0,0,0,0.45);}
.peek-frame img{width:100%;height:auto;display:block;}
.peek figcaption{margin-top:12px;font-size:0.84rem;color:var(--concrete);line-height:1.55;}
.peek figcaption b{display:block;color:var(--ink);font-weight:500;font-size:0.95rem;}
.peek-tag{display:inline-block;font-size:0.64rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--rust-bright);border:1px solid var(--rust);border-radius:2px;padding:2px 7px;margin-bottom:6px;}
@media (max-width:760px){.peek-row{grid-template-columns:1fr;}}

/* founder strip */
.founder-strip{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:26px 32px;}
.founder-strip img{width:92px;height:92px;border-radius:50%;object-fit:cover;border:3px solid var(--rust);}
.founder-strip h3{font-size:1.2rem;margin:0 0 6px;}
.founder-strip p{margin:0;color:var(--concrete);font-size:0.94rem;line-height:1.65;max-width:620px;}
@media (max-width:760px){.founder-strip{grid-template-columns:1fr;text-align:center;justify-items:center;padding:26px 22px;}}

/* state/region list: text, not cards */
.state-list{list-style:none;margin:0;padding:0;columns:2;column-gap:48px;}
.state-list li{break-inside:avoid;padding:14px 0;border-bottom:1px solid var(--line);}
.state-list a,.state-list .nm{font-size:1.02rem;color:var(--ink);font-weight:500;}
.state-list a:hover{color:var(--rust-bright);}
.state-list small{display:block;color:var(--concrete);font-size:0.84rem;margin-top:3px;line-height:1.5;}
.state-list .nm.pending{color:var(--concrete);}
@media (max-width:760px){.state-list{columns:1;}}

.region-band{display:grid;grid-template-columns:240px 1fr;gap:32px;align-items:start;padding:32px 0;border-top:1px solid var(--line);}
.region-band img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;border:1px solid var(--line);}
.region-band h3{font-size:1.3rem;margin:0 0 6px;}
.region-band p{color:var(--concrete);font-size:0.94rem;margin:0 0 14px;max-width:640px;}
@media (max-width:760px){.region-band{grid-template-columns:1fr;gap:16px;}.region-band img{aspect-ratio:16/9;}}

/* compact steps (re-use .workflow.four from pages-new.css) */
.steps-wrap .wf-step p{font-size:0.84rem;}

/* two-column units list */
.units-list{list-style:none;margin:0;padding:0;columns:2;column-gap:40px;}
.units-list li{break-inside:avoid;padding:10px 0 10px 18px;border-bottom:1px solid var(--line);position:relative;color:var(--concrete);font-size:0.92rem;line-height:1.55;}
.units-list li::before{content:"";position:absolute;left:0;top:1.05em;width:8px;height:2px;background:var(--rust);}
.units-list b{color:var(--ink);font-weight:500;}
@media (max-width:760px){.units-list{columns:1;}}

.faq .ans ul{margin:0 0 12px;padding-left:20px;}
.faq .ans .src-inline{margin:8px 0 0;padding:0;list-style:none;font-size:0.86rem;}
.faq .ans .src-inline li{margin-bottom:4px;}
.faq .ans .src-inline a{color:var(--rust-bright);text-decoration:underline;text-underline-offset:3px;}
.quote-band.slim{padding:26px 32px;}

/* Revision 2 additions */
.peek-frame.crop img{width:100%;height:340px;object-fit:cover;object-position:top;}
.chip-group{margin:0 0 22px;}
.chip-group:last-child{margin-bottom:0;}
.chip-h{font-size:0.78rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--rust);margin:0 0 12px;font-weight:600;}
.state-list a{border-bottom:1px solid transparent;}
.region-band ul.chip-links{margin-top:6px;}
.page-hero.hero-split .crumbs{margin-bottom:18px;}
.hero-split .section-label{margin-bottom:12px;}

/* R2 header: contact left, accounts right, single estimate button */
.util-row .wrap{justify-content:space-between;}
.util-contact,.util-links{display:flex;gap:22px;flex-wrap:wrap;}
.util-contact a{color:var(--ink);}
nav.links .nav-cta{padding:10px 18px;font-size:0.8rem;white-space:nowrap;margin-left:6px;}
@media (min-width:861px) and (max-width:1180px){nav.links{gap:16px;}nav.links a,nav.links .dd>button{font-size:0.8rem;}.nav-cta{padding:9px 14px;}}
@media (max-width:860px){nav.links .nav-cta{margin:10px 18px;text-align:center;display:block;}}
.faq-group{margin:0 0 44px;max-width:860px;}
.footer-desc a{color:var(--concrete);}
@media (min-width:861px){
  nav.links{gap:20px;flex-wrap:nowrap;}
  nav.links a,nav.links .dd>button{white-space:nowrap;font-size:0.82rem;}
  nav.links .dd>button::after{margin-left:5px;}
  .brand-text span{white-space:nowrap;}
}
@media (min-width:861px) and (max-width:1120px){
  nav.links{gap:12px;}
  nav.links a,nav.links .dd>button{font-size:0.76rem;}
  .brand-text span{font-size:0.52rem;letter-spacing:0.14em;}
  nav.links .nav-cta{padding:8px 11px;font-size:0.74rem;}
}

/* R2 home / about / sub services */
.aud-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.aud-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;}
.aud-media img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;}
.aud-body{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1;}
.aud-body h3{font-size:1.25rem;margin:0 0 8px;}
.aud-body p{color:var(--concrete);font-size:0.95rem;line-height:1.65;margin:0 0 18px;flex:1;}
.aud-actions{display:flex;gap:10px;flex-wrap:wrap;}
@media (max-width:900px){.aud-grid{grid-template-columns:1fr;}}
.cap-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.cap{padding:30px 26px;border-left:1px solid var(--line);}
.cap:first-child{border-left:0;}
.cap-ico{color:var(--rust-bright);display:block;margin-bottom:12px;}
.cap h3{font-size:1.05rem;margin:0 0 8px;color:var(--ink);}
.cap p{margin:0;color:var(--concrete);font-size:0.9rem;line-height:1.6;}
@media (max-width:900px){.cap-strip{grid-template-columns:1fr 1fr;}.cap:nth-child(3){border-left:0;}.cap:nth-child(n+3){border-top:1px solid var(--line);}}
@media (max-width:520px){.cap-strip{grid-template-columns:1fr;}.cap{border-left:0;border-top:1px solid var(--line);}.cap:first-child{border-top:0;}}
.chief{display:grid;grid-template-columns:280px 1fr;gap:48px;align-items:center;}
.chief-photo{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:10px;border:1px solid var(--line);}
.chief-name{font-size:1.15rem;margin:0 0 12px;}
.chief-name span{font-weight:400;color:var(--steel);font-size:0.95rem;}
.cred-chips{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.cred-chips li{border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:0.8rem;color:var(--concrete);}
@media (max-width:760px){.chief{grid-template-columns:1fr;gap:24px;}.chief-photo{max-width:260px;}}
.deliv-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
.deliv-card{display:block;}
.deliv-thumb{height:260px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;}
.deliv-thumb img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.deliv-card b{display:block;margin-top:12px;color:var(--ink);font-weight:500;}
.deliv-card span{color:var(--rust-bright);font-size:0.86rem;}
@media (max-width:760px){.deliv-cards{grid-template-columns:1fr;}}
.tech-split{display:grid;grid-template-columns:0.9fr 1.1fr;gap:48px;align-items:start;}
.annot{margin:0;}
.annot-frame{position:relative;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;max-height:420px;}
.annot-frame img{width:100%;display:block;object-fit:cover;object-position:top;}
.annot-frame .dot{position:absolute;width:26px;height:26px;border-radius:50%;background:var(--rust);color:#fff;font-size:0.8rem;font-weight:600;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);box-shadow:0 0 0 3px rgba(255,255,255,0.9);}
.annot-key{margin:14px 0 0;padding-left:20px;color:var(--concrete);font-size:0.88rem;line-height:1.6;}
.annot-key b{color:var(--ink);font-weight:500;}
.tool-group{margin:0 0 20px;}
.tool-group h3{font-size:0.78rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--rust);margin:0 0 10px;font-weight:600;}
.tool-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;}
.tool-list li{color:var(--ink);font-size:1rem;}
.more-tools{margin-top:8px;color:var(--concrete);font-size:0.9rem;}
.more-tools summary{cursor:pointer;color:var(--rust-bright);}
@media (max-width:860px){.tech-split{grid-template-columns:1fr;gap:28px;}}
.rate-details{margin-top:34px;border:1px solid var(--line);border-radius:8px;padding:6px 22px 22px;background:var(--surface);}
.rate-details summary{cursor:pointer;padding:16px 0;color:var(--ink);font-weight:500;}
.hero2 .hero-actions .btn{margin:0 6px;}
.deliv-thumb.contain{background:#1b2a3a;}
.deliv-thumb.contain img{object-fit:contain;object-position:center;}
.rate-details:not([open]){padding-bottom:0;}
.hero2 .path-intro{text-align:center;}
.hero2 .path-intro .eyebrow{justify-content:center;}
.hero2 .path-intro .hero-sub{margin-left:auto;margin-right:auto;text-align:center;max-width:620px;}
.hero2 .path-intro .hero-title{margin-left:auto;margin-right:auto;}
.aud-actions .btn{padding:11px 18px;font-size:0.8rem;}
.hero2 .path-intro{max-width:860px;margin-left:auto;margin-right:auto;text-align:center;}
.hero2 .path-intro .hero-actions{justify-content:center;display:flex;flex-wrap:wrap;gap:12px;}
.hero2 .path-intro .hero-actions .btn{margin:0;}
.hero2 .path-intro .eyebrow{display:flex;justify-content:center;}
.region-band,.state-list li[id]{scroll-margin-top:150px;}
section[id]{scroll-margin-top:110px;}
.region-band{scroll-margin-top:170px;}
.sx-levels.four{grid-template-columns:repeat(2,1fr);}
@media (max-width:900px){.sx-levels.four{grid-template-columns:1fr;}}
.tool-groups-row{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
@media (max-width:900px){.tool-groups-row{grid-template-columns:1fr;}}
/* state pages: local cards, map and counties */
.local-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.local-card{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--rust);border-radius:8px;padding:24px 24px 22px;}
.local-card h3{font-size:1.1rem;margin:0 0 8px;}
.local-card p{margin:0;color:var(--concrete);font-size:0.95rem;line-height:1.55;}
@media (max-width:900px){.local-cards{grid-template-columns:1fr;}}
.map-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.state-map{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:18px;}
.state-map img{width:100%;height:auto;display:block;}
.state-map figcaption{font-size:0.78rem;color:var(--steel);margin-top:10px;}
@media (max-width:900px){.map-split{grid-template-columns:1fr;gap:28px;}}
.county-note{font-size:0.88rem;color:var(--steel);margin:0 0 14px;}
.county-list{margin-top:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface);}
.county-list summary{cursor:pointer;padding:14px 18px;font-weight:600;color:var(--rust-bright);list-style:none;}
.county-list summary::-webkit-details-marker{display:none;}
.county-list summary::before{content:"+ ";}
.county-list[open] summary::before{content:"\2212  ";}
.county-cols{list-style:none;margin:0;padding:6px 18px 18px;columns:3;column-gap:24px;max-height:340px;overflow:auto;font-size:0.9rem;color:var(--concrete);}
.county-cols li{break-inside:avoid;padding:3px 0;}
@media (max-width:600px){.county-cols{columns:2;}}

/* Hemingway Intelligence nav item (added Oct 30 2026).
   >=1300px: top-level link in the main nav, with the nav spacing tightened slightly to make room.
   861-1299px: the main nav is already full, so the link sits in the utility row above it instead.
   <=860px: normal item in the mobile menu. */
nav.links > a.nav-hi{color:var(--rust-bright);}
nav.links > a.nav-hi:hover,nav.links > a.nav-hi.active{color:var(--ink);}
.util-links a.util-hi{color:var(--rust-bright);border:1px solid rgba(210,105,30,0.55);border-radius:2px;padding:1px 9px;}
.util-links a.util-hi:hover{background:var(--rust-dim);border-color:var(--rust-dim);color:#fff;}
@media (min-width:861px) and (max-width:1299px){nav.links > a.nav-hi{display:none;}}
@media (min-width:1300px){
  .util-links a.util-hi{display:none;}
  nav.links{gap:14px;}
  nav.links a,nav.links .dd>button{font-size:0.78rem;}
  nav.links .nav-cta{padding:9px 13px;margin-left:2px;}
}
