
/* ===== WordPress build additions (inner pages, notices, forms) ===== */
/* Free tools grid (Phase F): reuses .cc's card/grid, adds a CTA label and a muted "coming soon" state. */
.cc .tg{font-family:var(--disp);font-weight:700;font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:#8C5A0A}
.cc .go{margin-top:auto;font-family:var(--disp);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.9rem;color:#0A2A5E}
.cc .go::after{content:" \2192";color:#D9B44A}
.cc a.soon{opacity:.75}
.cc a.soon .go{color:#5A6478}
.cc a.soon .go::after{color:#5A6478}
/* .checks defaults to light text for the dark hero; on a white card it needs dark text. */
.pmain .checks,.pbox.lt .checks{color:#404040;flex-direction:column;align-items:flex-start;gap:10px;margin-top:14px}
.pmain .checks svg,.pbox.lt .checks svg{stroke:#0A2A5E}
.page-hero{background:linear-gradient(160deg,#030B1F,#061A40 55%,#0A2A5E);color:#DDE3EE}
.page-hero .in{padding-block:clamp(48px,7vw,84px)}
.page-hero h1{font-weight:800;font-size:clamp(2.4rem,5.4vw,4.2rem);text-transform:uppercase;color:#F8EFB2;margin-block:14px 12px;line-height:.95}
.page-hero p{font-size:1.15rem;max-width:38em;color:#C8D2E8}
.prose{max-width:46em}
.prose h2{font-size:clamp(1.8rem,3.4vw,2.4rem);text-transform:uppercase;margin-block:36px 12px}
.prose h3{font-size:1.4rem;text-transform:uppercase;margin-block:26px 8px}
.prose p,.prose ul,.prose ol{margin-block:0 16px}
.prose a{color:#0A2A5E;font-weight:600}
.prose li{margin-bottom:6px}
.split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:start}
.card{background:#fff;border:1px solid #D5DCE9;border-radius:8px;padding:28px}
.card h2,.card h3{text-transform:uppercase}
.card h2{font-size:1.9rem;margin-bottom:8px}
.card > p{color:#5A6478;font-size:.95rem;margin-bottom:18px}
.stack{display:flex;flex-direction:column;gap:14px}
.fld textarea{font-family:var(--text);font-size:1.02rem;padding:12px 13px;border:1.5px solid #9AA6BD;border-radius:5px;background:#fff;color:#111827;width:100%;min-height:110px;resize:vertical}
.fld textarea:focus{border-color:#0A2A5E;outline:3px solid rgba(217,180,74,.6);outline-offset:0}
.hp{position:absolute!important;left:-5000px!important;width:1px;height:1px;overflow:hidden}
.notice{border-radius:6px;padding:14px 18px;font-weight:600;margin-bottom:18px}
.notice.ok{background:#EAF4EC;color:#1D5E2E;border:1px solid #B8D9C0}
.notice.bad{background:#FBECEF;color:#8A1333;border:1px solid #EDBFCB}
.ctable{width:100%;min-width:0}
.ctable td,.ctable th{font-size:.95rem}
.claims-steps{counter-reset:c;list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}
.claims-steps li{counter-increment:c;display:flex;gap:14px;align-items:flex-start}
.claims-steps li::before{content:counter(c);flex:none;width:34px;height:34px;border-radius:50%;background:#0A2A5E;color:#F8EFB2;font-family:var(--disp);font-weight:800;display:flex;align-items:center;justify-content:center}
.thanks{text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;max-width:40em;margin-inline:auto}
.thanks .ok{width:72px;height:72px;border-radius:50%;background:#0A2A5E;display:flex;align-items:center;justify-content:center}
.thanks .ok svg{width:34px;height:34px;stroke:#D9B44A;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.thanks h1{font-size:clamp(2.4rem,5vw,3.6rem);text-transform:uppercase}
.qwrap{max-width:560px;margin-inline:auto}
.qwrap .qc{box-shadow:0 20px 40px -20px rgba(6,26,64,.45)}
nav.main a[aria-current="page"]{border-bottom-color:#D9B44A}
@media (max-width:1100px){.split{grid-template-columns:minmax(0,1fr);gap:32px}}
@media (max-width:520px){.card{padding:20px}}
.office dd,footer li,.cc p{overflow-wrap:anywhere}

/* ===== Message #4 (2026-10-06) ===== */
/* Se habla español: header phone, utility bar, hero call line */
.hphone small.habla{margin-top:3px;letter-spacing:.06em;text-transform:none;font-size:.74rem;color:#8C5A0A}
.util .util-phone{color:#F8EFB2;font-weight:600}
.hero .habla{margin-top:10px;font-weight:600;color:#F8EFB2;font-size:.98rem}
/* Hero "We insure:" chips */
.insure-chips{margin-top:22px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 10px}
.insure-chips .ic-lbl{font-family:var(--disp);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.85rem;color:#D9B44A}
.insure-chips ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.insure-chips a{display:inline-flex;align-items:center;min-height:32px;padding:4px 12px;border:1px solid rgba(248,239,178,.35);border-radius:999px;color:#DDE3EE;text-decoration:none;font-size:.86rem;line-height:1.2;background:rgba(255,255,255,.04)}
.insure-chips a:hover,.insure-chips a:focus-visible{border-color:#D9B44A;color:#F8EFB2}
/* Trust strip: 4 items with the MCIEF badge */
footer .mcief-foot{display:inline-flex;margin-top:14px;background:#fff;border-radius:6px;padding:6px 8px}
footer .mcief-foot img{width:110px;height:auto;display:block}
footer li.claims-line{font-size:.85rem;opacity:.85;max-width:24em}
.office dd small{opacity:.8;font-size:.85em}
/* Tools: featured Safety Risk Score */
.tool-feature{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px 28px;background:linear-gradient(150deg,#061A40,#0A2A5E);color:#DDE3EE;border-radius:10px;padding:clamp(22px,3.4vw,36px);text-decoration:none;margin-bottom:18px;position:relative;border:2px solid #D9B44A}
.tool-feature .tf-badge{position:absolute;top:-12px;left:24px;background:#D9B44A;color:#061A40;font-family:var(--disp);font-weight:800;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;padding:3px 10px;border-radius:999px}
.tool-feature .tf-body{display:flex;gap:18px;align-items:flex-start}
.tool-feature .ci{width:56px;height:56px;border-radius:50%;background:rgba(217,180,74,.15);display:flex;align-items:center;justify-content:center;flex:none}
.tool-feature .ci svg{width:30px;height:30px;stroke:#D9B44A;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tool-feature h3{color:#F8EFB2;font-size:clamp(1.6rem,3vw,2.2rem);text-transform:uppercase;line-height:1}
.tool-feature p{margin-top:8px;max-width:40em;font-size:1.02rem}
.tool-feature:hover{border-color:#F8EFB2}
.tools-small{grid-template-columns:repeat(3,minmax(0,1fr))}
.tools-small a{padding:18px}
.tools-small h3{font-size:1.1rem}
.tools-small p{font-size:.9rem}
/* Safety Risk Score result */
.risk-head{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;margin-block:6px 4px}
.risk-num{font-family:var(--disp);font-weight:800;font-size:clamp(3rem,8vw,4.2rem);line-height:1}
.risk-num small{font-size:.4em;color:#5A6478;font-weight:700;margin-left:2px}
.risk-band{color:#fff;font-family:var(--disp);font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 14px;border-radius:999px;font-size:1rem}
.oos-table td,.oos-table th{vertical-align:top}
.oos-st{font-weight:700;white-space:nowrap}
.pmain h4{font-family:var(--disp);text-transform:uppercase;letter-spacing:.06em;color:#0A2A5E}
.notice:not(.ok):not(.bad){background:#F4F5F7;color:#404040;border:1px solid #D5DCE9;font-weight:500}
.pbox.partner{border-color:#B8D9C0;background:#F4FAF5}
.pbox.partner h4{color:#1D5E2E}
.pmain .acts{display:flex;flex-wrap:wrap;gap:12px}
/* Trucking Operations Guide */
.ops-jump{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.ops-jump a{padding:6px 12px;min-height:36px;display:inline-flex;align-items:center;border:1px solid #D5DCE9;border-radius:999px;background:#fff;color:#0A2A5E;text-decoration:none;font-size:.9rem;font-weight:600}
.ops-jump a:hover{border-color:#0A2A5E}
.ops-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.op-card{background:#fff;border:1px solid #D5DCE9;border-radius:8px;padding:24px;display:flex;flex-direction:column;gap:14px;scroll-margin-top:110px}
.op-card:target{border-color:#D9B44A;box-shadow:0 0 0 3px rgba(217,180,74,.35)}
.op-card h2{font-size:1.6rem;text-transform:uppercase;line-height:1.05}
.op-card .op-what{color:#404040}
.op-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.op-cols h3{font-family:var(--disp);font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:#8C5A0A;margin-bottom:6px}
.op-cols ul{margin:0;padding-left:18px;font-size:.93rem;color:#404040}
.op-cols li{margin-bottom:4px}
.op-card .btn{margin-top:auto;align-self:flex-start}
@media (max-width:1100px){.tools-small{grid-template-columns:1fr 1fr}}
@media (max-width:860px){.ops-grid{grid-template-columns:minmax(0,1fr)}.tool-feature{grid-template-columns:minmax(0,1fr)}.tool-feature .btn{justify-self:start}}
@media (max-width:520px){.tools-small{grid-template-columns:minmax(0,1fr)}.op-cols{grid-template-columns:minmax(0,1fr)}.tool-feature .tf-body{flex-direction:column}.op-card .btn{align-self:stretch;text-align:center}}
/* Header room for the Operations link */
header.top .btn{white-space:nowrap}
.brand .wm small{white-space:nowrap}
@media (max-width:1560px){nav.main{gap:18px;font-size:.96rem}}
.insure-chips a{background:rgba(6,26,64,.82)}
/* Numbered steps: block layout so inline links/notes don't split into flex columns */
.claims-steps li{display:block;position:relative;padding-left:48px;min-height:34px;padding-top:4px}
.claims-steps li::before{position:absolute;left:0;top:0}

/* ===== Content pages (Message #17): breadcrumb, byline, key facts, tables, FAQ, CTA ===== */
.crumbs ol{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:4px 8px;font-size:.88rem;color:#C8D2E8}
.crumbs li+li::before{content:"›";margin-right:8px;color:#D9B44A}
.crumbs a{color:#F8EFB2;text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.content-hero .byline{font-size:.9rem;color:#C8D2E8;margin-top:14px}
.content-prose{max-width:46em}
.content-prose h2{font-size:clamp(1.55rem,3vw,2.05rem);margin-block:40px 10px;text-transform:none;letter-spacing:.01em}
.content-prose h2:first-child{margin-top:0}
.content-prose .answer{font-size:1.12rem;color:#111827}
.keyfacts{background:#F3F5F9;border-left:5px solid #D9B44A;border-radius:6px;padding:18px 22px;margin:22px 0 28px}
.keyfacts h2,.keyfacts h3{font-size:1rem!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#8C5A0A;margin:0 0 8px!important}
.keyfacts ul{margin:0;padding-left:20px}
.keyfacts li{margin-bottom:6px}
.tablewrap{overflow-x:auto;margin:18px 0 22px;border:1px solid #D5DCE9;border-radius:6px}
.content-prose table{width:100%;border-collapse:collapse;font-size:.95rem;min-width:520px}
.content-prose th,.content-prose td{padding:10px 12px;border-bottom:1px solid #E1E6EF;text-align:left;vertical-align:top}
.content-prose thead th{background:#0A2A5E;color:#F8EFB2;font-family:var(--disp);letter-spacing:.06em;text-transform:uppercase;font-size:.88rem}
.content-prose ol.steps{padding-left:22px}
.content-prose ol.steps li{margin-bottom:10px}
.cta-box{background:#061A40;color:#DDE3EE;border-radius:8px;padding:24px 26px;margin:34px 0 10px}
.cta-box h2{color:#F8EFB2!important;margin-top:0!important}
.cta-box p{color:#DDE3EE}
.cta-box .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}
.cta-box a:not(.btn){color:#F8EFB2}
.related{border-top:1px solid #D5DCE9;margin-top:34px;padding-top:18px}
.related h2{font-size:1.25rem!important;margin-top:0!important}
.related ul{padding-left:20px}
.hubgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 26px;padding:0;list-style:none}
.hubgrid li{background:#fff;border:1px solid #D5DCE9;border-radius:8px;padding:16px 18px;margin:0}
.hubgrid a{font-family:var(--disp);font-weight:700;font-size:1.15rem;color:#0A2A5E;text-decoration:none}
.hubgrid a:hover{text-decoration:underline}
.hubgrid p{margin:6px 0 0;font-size:.94rem;color:#5A6478}
.hubgrid .tag{display:inline-block;font-family:var(--disp);font-weight:700;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#8C5A0A;margin-bottom:4px}
.content-prose .faq-q{margin-top:30px}
.lp-top{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 26px}
@media (max-width:620px){.hubgrid{grid-template-columns:minmax(0,1fr)}.cta-box{padding:20px}}
.op-more{margin:0;font-weight:600}.op-more a{color:#0A2A5E}

/* ===== Tool block + standard lead form (Message #18) ===== */
.toolcard{display:flex;gap:18px;align-items:flex-start;background:#fff;border:1.5px solid #0A2A5E;border-left-width:6px;border-radius:8px;padding:20px 22px;margin:24px 0}
.toolcard .ci{width:48px;height:48px;border-radius:50%;background:#F3F5F9;display:flex;align-items:center;justify-content:center;flex:none}
.toolcard .ci svg{width:26px;height:26px;stroke:#0A2A5E;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tc-kicker{font-family:var(--disp);font-weight:700;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:#8C5A0A}
.toolcard h3{font-size:1.35rem;text-transform:uppercase;margin:2px 0 4px}
.toolcard p{margin:0 0 12px!important;color:#404040}
.tc-acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.tc-acts .btn{padding:11px 22px}
.tc-all,.tc-call{font-weight:600;color:#0A2A5E;text-decoration:underline;text-underline-offset:3px}
.lf{background:#F3F5F9;border:1px solid #D5DCE9;border-radius:8px;padding:22px 24px;margin:26px 0;scroll-margin-top:100px}
.lf h2{font-size:1.5rem!important;text-transform:uppercase!important;margin:0 0 12px!important}
.lf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-bottom:14px}
.lf .fld select{width:100%;min-height:48px;font:inherit;font-size:1.02rem;padding:10px 12px;border:1.5px solid #9AA6BD;border-radius:5px;background:#fff;color:#111827}
.lf .fld select:focus{border-color:#0A2A5E;outline:3px solid rgba(217,180,74,.6);outline-offset:0}
.lf .opt{text-transform:none;font-weight:500;color:#5A6478;letter-spacing:0}
.lf .btn{min-height:48px}
.lf .consent{font-size:.82rem;color:#5A6478;margin:12px 0 0}
.lf .lf-hours{margin:6px 0 0;color:#5A6478}
.lf-compact{padding:16px 18px}
.lf-compact h2{font-size:1.2rem!important}
@media (max-width:620px){.toolcard{flex-direction:column;padding:18px}.lf-grid{grid-template-columns:minmax(0,1fr)}}

/* ===== Trust strip: four equal tiles (Messages #22/#23) ===== */
/* Same radius, border and padding as the tool cards (.cc a) just above, so the two sections read as one system. */
.trust .in.tt-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch;padding-block:30px}
.tt{background:#fff;border:1px solid #D5DCE9;border-radius:8px;padding:22px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;transition:border-color .15s,transform .15s}
.tt:hover{border-color:#0A2A5E;transform:translateY(-2px)}
.tt-badge{width:56px;height:56px;border-radius:50%;background:#F3F5F9;display:flex;align-items:center;justify-content:center;flex:none;box-sizing:border-box}
.tt-badge svg{width:26px;height:26px;stroke:#0A2A5E;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tt-badge.tt-logo{padding:0 7px;overflow:hidden}
.tt-badge.tt-logo img{display:block;width:100%;height:auto;max-height:100%;object-fit:contain}
.tt h3{font-size:1.3rem;font-weight:700;line-height:1.1;letter-spacing:.01em;margin:4px 0 0;white-space:nowrap}
.tt p{margin:0;font-size:.92rem;line-height:1.45;color:#5A6478}
.tt p a{color:#0A2A5E;font-weight:600}
@media (max-width:1100px){.trust .in.tt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.trust .in.tt-grid{grid-template-columns:minmax(0,1fr)}.tt{padding:18px}}
@media (prefers-reduced-motion:reduce){.tt:hover{transform:none}}
/* Carrier logos: matching quiet tiles (lighter border, no hover lift) so the trust tiles stay the focus. */
.clg{border:1px solid #E6EAF1;border-radius:8px;box-sizing:border-box}
.clg img{height:42px;width:auto;max-width:100%;max-height:none;object-fit:contain}

/* #58 — the published contact block: P. / Direct / HQ:
   The label is dimmed and fixed-width so the three numbers line up under each other
   rather than starting at three different places. Not a heading, not a <dt> — these sit
   inside an existing list and a heading element here would be read out as one. */
.ph-l{display:inline-block;min-width:3.2em;opacity:.7;font-size:.9em}
footer .ph-l{opacity:.75}
@media (max-width:420px){.ph-l{min-width:2.9em}}

/* #62 — a generated table cell with no data-label must not leave an empty label box.
   The theme prints each mobile cell's heading from `content: attr(data-label)`; an absent
   or empty attribute still renders the ::before box and its margin, which reads as a stray
   gap above the value. Used by the Licenses table, where repeating "STATE" above each of
   eleven state names is noise rather than context. */
@media (max-width:760px){
  td:not([data-label])::before,
  td[data-label=""]::before{display:none}
}

/* #69 — THE SMS CONSENT SENTENCE MUST BE READABLE.
   `.consent` was 0.74rem in #5A6478 — about 11.8px of grey, which is exactly the fine print
   10DLC campaign reviewers reject. Near body size, in the body colour, with room around it
   so it reads as part of the form rather than as a disclaimer somebody hid. */
.consent-sms{font-size:.95rem;line-height:1.55;color:var(--body);margin:14px 0 12px}
.consent-sms a{text-decoration:underline}
.lf .consent-sms{font-size:.95rem;color:var(--body)}
@media (max-width:420px){.consent-sms{font-size:.92rem}}


/* #121 — the separate, unchecked text-message checkbox (10DLC): readable body text, a real tap target, directly above the submit button. */
.consent-check{margin:14px 0 6px}
.consent-check .chk{display:flex; gap:12px; align-items:flex-start; cursor:pointer}
.consent-check input[type=checkbox]{flex:0 0 22px; width:22px; height:22px; margin:2px 0 0; accent-color:var(--navy,#0B2A5B)}
.consent-check span{flex:1; min-width:0}
.consent-call{margin:6px 0 12px}

.consent-check .consent-lead{font-weight:600}
.consent-check .consent-disclosure{margin:6px 0 0 34px; font-size:.82rem; line-height:1.45}
.consent-check .consent-disclosure a{text-decoration:underline}
