/* Inner pages of the approved Institutional direction. */

/* Header state */
.nav__link.is-current { color: var(--gold-300); }
@media (min-width: 1100px) { .nav { margin-left: var(--s-5); } .site-header .nav__link { padding-inline: 10px; } }

/* Page hero */
.page-hero, .profile-hero { position: relative; overflow: hidden; padding-block: var(--s-6) var(--s-9); background: radial-gradient(80% 120% at 85% 20%, var(--navy-700) 0%, var(--navy) 62%); }
.page-hero--compact { padding-bottom: var(--s-8); }
.page-hero__rosette { position: absolute; width: 760px; max-width: none; height: 760px; right: -280px; top: -240px; opacity: .22; pointer-events: none; }
.page-hero .wrap, .profile-hero .wrap { position: relative; }
.page-hero .eyebrow { margin-bottom: var(--s-3); }
.page-hero h1 { max-width: 780px; }
.page-hero__lead { margin-top: var(--s-4); max-width: 620px; font-size: var(--fs-lg); color: var(--slate-300); }
.page-hero__cta { display: flex; flex-wrap: wrap; gap: var(--s-3); margin-top: var(--s-6); }
.crumbs { margin-bottom: var(--s-6); font-size: var(--fs-sm); color: var(--slate-300); }
.crumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; }
.crumbs li { display: inline-flex; align-items: center; gap: 8px; }
.crumbs li + li::before { content: "/"; opacity: .5; }
.crumbs a { display: inline-flex; align-items: center; min-height: 32px; }
.crumbs a:hover { color: var(--white); }
.crumbs [aria-current] { color: var(--white); }

/* Rhythm */
.band-ivory { background: var(--ivory); }
.section--tight { padding-bottom: var(--s-6); }
.section--flush { padding-top: var(--s-6); }
.two-col { display: grid; gap: var(--s-6); }
.text-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font: 700 var(--fs-sm)/1.2 var(--font-heading); color: var(--gold-ink); }
.text-link svg { width: 16px; height: 16px; }
.text-link:hover { color: var(--navy); }
.note { display: flex; align-items: flex-start; gap: 10px; margin-top: var(--s-5); font-size: var(--fs-sm); color: var(--slate); }
.note__i { display: block; width: 20px; height: 20px; flex: none; color: var(--gold-ink); margin-top: 1px; }
.empty { padding: var(--s-7) var(--s-4); margin-top: var(--s-4); text-align: center; color: var(--slate); background: var(--ivory); border-radius: var(--r-lg); }
[hidden] { display: none !important; }
.sec-head + ul, .sec-head + .table-wrap, .sec-head + div { margin-top: var(--s-7); }

.band-ivory + .faq-sec { padding-top: var(--section-y); }

.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.form-error { font-size: var(--fs-sm); font-weight: 600; color: var(--danger); }
.side-link { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; color: var(--navy); text-decoration: underline; text-underline-offset: 3px; }
.side-fine { margin-top: var(--s-2); font-size: var(--fs-xs) !important; }
.side-fine a, .panel__note a { text-decoration: underline; }

/* Campaign landing */
.lp-header { background: var(--navy); color: var(--white); }
.lp-header .wrap { display: flex; align-items: center; min-height: var(--header-h); }
.lp-header [data-logo] { display: contents; }
.lp-hero { position: relative; overflow: hidden; padding-block: var(--s-6) var(--s-9); background: radial-gradient(80% 110% at 85% 20%, var(--navy-700) 0%, var(--navy) 62%); }
.lp-hero__grid { position: relative; display: grid; gap: var(--s-6); }
.lp-hero .eyebrow { margin-bottom: var(--s-3); }
.lp-hero__lead { margin-top: var(--s-4); font-size: var(--fs-lg); color: var(--slate-300); }
.lp-ticks { display: grid; gap: var(--s-2); margin-top: var(--s-5); }
.lp-ticks li { display: flex; align-items: center; gap: 10px; }
.lp-ticks [data-icon] { display: grid; place-items: center; width: 24px; height: 24px; flex: none; border-radius: 50%; background: var(--gold); color: var(--navy); }
.lp-ticks svg { width: 14px; height: 14px; }
.lp-form-wrap { scroll-margin-top: var(--s-4); }
.lp-form { gap: var(--s-3); color: var(--navy); box-shadow: var(--shadow-lg); border: 0; }
.lp-form .btn { justify-self: stretch; width: 100%; }
.lp-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-3); }
.lp-form .form-card__legal { font-size: var(--fs-xs); }
.lp-form .form-card__legal a { text-decoration: underline; }
.lp-steps { display: grid; gap: var(--s-5); margin-top: var(--s-7); }
.lp-steps h3 { margin-top: var(--s-4); font-size: 1.25rem; font-weight: 600; }
.lp-steps p { margin-top: var(--s-1); color: var(--slate); }
.stat-row--three { grid-template-columns: 1fr; }
.stat-row--three dd { font-size: 1.5rem; white-space: nowrap; }
.stat-row--three div { padding-inline: var(--s-4); }
.lp-thanks { display: grid; align-items: center; min-height: 64vh; padding-block: var(--s-9); }
.lp-thanks__in { display: grid; justify-items: start; gap: var(--s-4); max-width: calc(720px + var(--gutter) * 2); }
.lp-thanks p { font-size: var(--fs-lg); color: var(--slate-300); }
.lp-thanks .page-hero__cta { margin-top: var(--s-2); }
.lp-footer { padding-block: var(--s-5); background: var(--navy-900); color: var(--slate-300); }
.lp-footer .wrap { display: grid; gap: var(--s-2); }
.lp-footer a { display: inline-flex; align-items: center; min-height: 44px; margin-right: var(--s-4); text-decoration: underline; }

/* Paid profiles */
.pill--premium { background: var(--gold); color: var(--navy); }
.profile-tagline { margin-top: var(--s-2); font-size: var(--fs-lg); color: var(--white); }
.profile-actions { display: flex; flex-wrap: wrap; gap: var(--s-2); margin-top: var(--s-4); }
.profile-about { white-space: pre-line; color: #3E4F66; }
.profile-photos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-2); }
.profile-photos img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 8px; background: var(--ivory, #F8F6F1); }
.adm-photos { display: grid; gap: var(--s-3); margin-top: var(--s-4); padding-top: var(--s-4); border-top: 1px solid #E5E2DA; }
.adm-photos__add { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); }
.adm-photos__add .btn { cursor: pointer; }
.adm-photos__add input:focus-visible + .btn { box-shadow: var(--focus); }
.adm-photos__add input:disabled + .btn { opacity: .5; cursor: not-allowed; }
.adm-photos__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: var(--s-3); padding: 0; list-style: none; }
.adm-photos__list:empty { display: none; }
.adm-photos__list li { display: grid; gap: var(--s-2); }
.adm-photos__list img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 8px; }
.profile-services { display: grid; gap: var(--s-2); list-style: disc; padding-left: 20px; color: #3E4F66; }
.is-premium .profile-hero { border-bottom: 4px solid var(--gold); }
.is-premium .profile__main > .panel:first-child { border: 2px solid var(--gold); }
.bcard--premium { border: 2px solid var(--gold); background: linear-gradient(180deg, var(--gold-100), var(--white) 44%); }
.bcard--premium .pill--premium { align-self: flex-start; margin-top: var(--s-2); }

/* Report */
.rep-offer { position: sticky; top: 0; z-index: 20; background: #C62828; color: var(--white); }
.rep-offer .wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 4px var(--s-3); min-height: 56px; padding-block: 8px; font: 700 var(--fs-sm)/1.3 var(--font-heading); text-align: center; }
.rep-offer b { font-size: 1.25rem; font-weight: 800; font-variant-numeric: tabular-nums; }
.rep-hero { position: relative; overflow: hidden; padding-block: var(--s-7) var(--s-8); background: radial-gradient(80% 110% at 85% 20%, var(--navy-700) 0%, var(--navy) 62%); }
.rep-hero__in { position: relative; display: grid; gap: var(--s-5); align-items: center; }
.rep-hero .eyebrow { margin-bottom: var(--s-2); }
.rep-hero__lead { margin-top: var(--s-3); font-size: var(--fs-lg); color: var(--slate-300); }
.rep-hero__seal { width: 160px; }
.rep-grid { display: grid; gap: var(--s-4); margin-top: var(--s-6); }
.rep-rank { display: grid; align-content: center; gap: var(--s-1); padding: var(--s-5); background: var(--navy); color: var(--white); border-radius: var(--r-lg); }
.rep-why { display: grid; gap: var(--s-4); margin-top: var(--s-6); }
.rep-why li { padding: var(--s-5); background: var(--ivory); border-radius: var(--r-lg); }
.rep-why h3 { font-weight: 600; }
.rep-why p { margin-top: var(--s-2); color: var(--slate); font-size: var(--fs-sm); }
.rep-punch { margin-top: var(--s-5); }
.rep-rank b { font: 800 3.5rem/1 var(--font-heading); letter-spacing: -.03em; color: var(--gold); }
.rep-rank p { color: var(--slate-300); }
.rep-packs { padding-block: var(--s-8) var(--section-y); background: var(--ivory); }
.rep-packs .prices { margin-top: var(--s-6); }
.price__was { font-size: var(--fs-md); color: var(--slate); text-decoration: line-through; }
.price--popular .price__was { color: var(--slate-300); }
.rep-missing { padding-block: var(--s-10); text-align: center; }

/* Panel */
.adm { padding-block: var(--s-5) var(--s-9); }
.adm-login { max-width: 420px; margin: var(--s-9) auto; }
.adm-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-3); margin-bottom: var(--s-4); }
.adm-top h1 { font-size: clamp(1.75rem, 1.4rem + 1.4vw, 2.25rem); }
.adm-top p { font-size: var(--fs-sm); color: var(--slate); }
.tiles { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-3); margin-bottom: var(--s-4); }
.tile { display: grid; align-content: space-between; gap: var(--s-1); min-height: 88px; padding: var(--s-3) var(--s-4); background: var(--ivory); border-radius: var(--r-lg); }
.tile p { font-size: var(--fs-sm); color: var(--slate); }
.tile b { font: 500 1.75rem/1.1 var(--font-heading); letter-spacing: -.02em; }
.adm-tabs { display: flex; gap: var(--s-1); margin-bottom: var(--s-4); border-bottom: 1px solid var(--line); }
.adm-tabs button { min-height: 44px; padding-inline: var(--s-4); font: 700 var(--fs-sm)/1 var(--font-heading); color: var(--slate); border-bottom: 2px solid transparent; margin-bottom: -1px; }
.adm-tabs button[aria-selected="true"] { color: var(--navy); border-color: var(--gold); }
.adm-bar { display: grid; gap: var(--s-3); margin-bottom: var(--s-3); align-items: end; }
.adm-bar .btn { min-height: 48px; }
.adm-bar__btns { display: flex; flex-wrap: wrap; gap: var(--s-2); }
.adm-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-3); margin-top: var(--s-3); font-size: var(--fs-sm); color: var(--slate); }
.adm-foot div { display: flex; gap: var(--s-2); }
.adm-views { display: grid; gap: var(--s-4); }
.link-btn { min-height: 44px; font: 700 var(--fs-sm)/1.3 var(--font-heading); text-align: left; text-decoration: underline; text-underline-offset: 3px; }
.stage { display: inline-flex; padding: 3px 10px; border-radius: var(--r-full); background: var(--ivory); font: 700 var(--fs-xs)/1.4 var(--font-heading); white-space: nowrap; }
.stage--opened, .stage--replied { background: var(--gold-100); color: var(--gold-ink); }
.stage--interested, .stage--won { background: var(--success-bg); color: #17603F; }
.stage--lost { background: var(--danger-bg); color: var(--danger); }
.card-page { display: grid; gap: var(--s-4); }
.card-back { position: sticky; top: 0; z-index: 5; margin-inline: calc(var(--s-2) * -1); padding: var(--s-2); background: var(--white); }
.card-back .btn { gap: 8px; }
.card-back svg { width: 16px; height: 16px; }
.adm-filters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-3); align-items: end; margin-bottom: var(--s-4); }
.adm-filters .btn { min-height: 48px; grid-column: 1 / -1; justify-self: start; }
.card-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-3); }
.card-head h2 { font-size: clamp(1.625rem, 1.3rem + 1.4vw, 2.25rem); }
.card-facts { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-3); padding: var(--s-4); background: var(--ivory); border-radius: var(--r-lg); }
.card-facts dt { font-size: var(--fs-xs); color: var(--slate); }
.card-facts dd { font: 700 var(--fs-sm)/1.4 var(--font-heading); }
.card-cols { display: grid; gap: var(--s-4); }
.card-col { display: grid; gap: var(--s-4); align-content: start; min-width: 0; }
.card-col h3 { font-weight: 600; }
.pay-row { display: grid; gap: var(--s-3); margin-bottom: var(--s-3); }
.pay-list { display: grid; gap: var(--s-3); font-size: var(--fs-sm); }
.pay-list li { display: grid; gap: 4px; padding-bottom: var(--s-3); border-bottom: 1px solid var(--line); }
.pay-list li:last-child { border-bottom: 0; padding-bottom: 0; }
.pay-list .btn { justify-self: start; }
.lead-link { display: grid; gap: var(--s-2); padding: var(--s-4); background: var(--ivory); border-radius: var(--r-md); }
.lead-link__row { display: grid; gap: var(--s-2); justify-items: start; margin-bottom: var(--s-2); }
.lead-link__row input { width: 100%; min-width: 0; min-height: 48px; padding: 10px 14px; border: 1px solid #C9CFD8; border-radius: var(--r-md); background: var(--ivory); color: var(--navy); font-size: var(--fs-sm); text-overflow: ellipsis; }
.lead-link__row input:focus-visible { outline: none; border-color: var(--navy); box-shadow: 0 0 0 3px rgba(214, 173, 96, .55); }
.lead-link p { font-size: var(--fs-sm); color: var(--slate); }
.lead-log { display: grid; gap: var(--s-2); max-height: 260px; overflow-y: auto; font-size: var(--fs-sm); }
.lead-log li { padding: var(--s-2) var(--s-3); background: var(--ivory); border-radius: var(--r-sm); }
.lead-log span { margin-left: 8px; color: var(--slate); font-size: var(--fs-xs); }
.lead-log p { margin-top: 2px; color: var(--slate); overflow-wrap: anywhere; }
.lead-history { display: grid; gap: var(--s-3); padding-top: var(--s-4); border-top: 1px solid var(--line); }
.lead-history h3 { font-weight: 600; }
.lead-actions { display: flex; flex-wrap: wrap; gap: var(--s-2); }
.muted { color: var(--slate); font-weight: 400; }
.inbox-row { display: grid; gap: var(--s-2); padding-block: var(--s-3); border-top: 1px solid var(--line); }
.inbox-row__ctl { display: flex; flex-wrap: wrap; gap: var(--s-2); align-items: center; }
.inbox-row select { appearance: none; width: 176px; min-height: 44px; padding: 8px 34px 8px 14px; border: 1px solid #C9CFD8; border-radius: var(--r-md); background: var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2352647B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") no-repeat right 12px center / 14px; color: var(--navy); font: 600 var(--fs-sm)/1.2 var(--font-heading); cursor: pointer; }
.inbox-row select:hover { border-color: var(--slate); }
.inbox-row select:focus-visible { outline: none; border-color: var(--navy); box-shadow: 0 0 0 3px rgba(214, 173, 96, .55); }
.inbox-row__a { font-weight: 600; overflow-wrap: anywhere; }
.inbox-row__b { font-size: var(--fs-sm); color: var(--slate); overflow-wrap: anywhere; }
.inbox-row__t { font-size: var(--fs-xs); color: var(--slate); }

/* Punch line */
.punch-sec { padding-bottom: var(--section-y); }
.punch { padding: var(--s-6); background: linear-gradient(135deg, var(--gold-300), var(--gold)); border-radius: var(--r-lg); color: var(--navy); font: 800 clamp(1.5rem, 1.2rem + 1.4vw, 2.25rem)/1.25 var(--font-heading); letter-spacing: -.02em; }

/* Blog */
.post-grid { display: grid; gap: var(--s-4); }
.post-card { position: relative; display: flex; flex-direction: column; padding: var(--s-5); background: var(--white); border: 1px solid var(--line); border-radius: var(--r-lg); transition: box-shadow var(--t-med), translate var(--t-med) var(--ease), border-color var(--t-med); }
.post-card:hover { box-shadow: var(--shadow-md); translate: 0 -3px; border-color: var(--gold); }
.post-card:focus-within { box-shadow: var(--focus); }
.post-card__cat { font: 600 var(--fs-sm)/1.3 var(--font-heading); color: var(--gold-ink); }
.post-card h3 { margin-top: var(--s-2); font-size: 1.25rem; font-weight: 600; letter-spacing: -.016em; }
.post-card__link::after { content: ""; position: absolute; inset: 0; border-radius: var(--r-lg); }
.post-card__link:focus-visible { box-shadow: none; }
.post-card > p:not(.post-card__cat) { margin-top: var(--s-2); margin-bottom: var(--s-4); font-size: var(--fs-sm); color: var(--slate); }
.post-card__meta { margin-top: auto; font-size: var(--fs-xs); color: var(--slate); }
.post { display: grid; gap: var(--s-6); }
.post__body { min-width: 0; color: #3E4F66; }
.post__lead { font-size: var(--fs-lg); color: var(--navy); }
.post__body section { margin-top: var(--s-7); }
.post__body h2 { font-size: 1.5rem; font-weight: 600; letter-spacing: -.016em; line-height: 1.3; color: var(--navy); margin-bottom: var(--s-3); }
.post__body p + p, .post__body ul + p { margin-top: var(--s-3); }
.post__body ul { display: grid; gap: var(--s-2); list-style: disc; padding-left: 20px; }
.post__body a { color: var(--navy); text-decoration: underline; text-decoration-color: var(--gold); text-underline-offset: 3px; }
.post__body b { color: var(--navy); font-weight: 600; }
.post__note { margin-top: var(--s-7) !important; padding-top: var(--s-4); border-top: 1px solid var(--line); font-size: var(--fs-sm); color: var(--slate); }
.post__more { margin-bottom: var(--s-6); }

/* Status pills */
.pill { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: var(--r-full); font: 700 var(--fs-xs)/1.3 var(--font-heading); white-space: nowrap; }
.pill svg { width: 14px; height: 14px; }
.pill--pass { background: var(--success-bg); color: #17603F; }
.pill--wait { background: var(--gold-100); color: var(--gold-ink); }
.pill--no { background: var(--danger-bg); color: var(--danger); }

/* Business card */
.bgrid { display: grid; gap: var(--s-4); }
.sec-head + .bgrid { margin-top: var(--s-7); }
.bcard { position: relative; display: flex; flex-direction: column; padding: var(--s-5); background: var(--white); border: 1px solid var(--line); border-radius: var(--r-lg); transition: box-shadow var(--t-med), translate var(--t-med) var(--ease), border-color var(--t-med); }
.bcard:hover { box-shadow: var(--shadow-md); translate: 0 -3px; border-color: var(--gold); }
.bcard:focus-within { box-shadow: var(--focus); }
.bcard__top { display: flex; align-items: center; justify-content: space-between; gap: var(--s-2); }
.bcard__ind { font: 600 var(--fs-sm)/1.3 var(--font-heading); color: var(--gold-ink); }
.bcard h3 { margin-top: var(--s-2); font-size: 1.25rem; font-weight: 600; letter-spacing: -.016em; }
.bcard__link::after { content: ""; position: absolute; inset: 0; border-radius: var(--r-lg); }
.bcard__link:focus-visible { box-shadow: none; }
.bcard__place { font-size: var(--fs-sm); color: var(--slate); }
.bcard__rating { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 8px; margin-top: var(--s-3); font-size: var(--fs-sm); color: var(--slate); }
.bcard__rating b { color: var(--navy); }
.bcard__foot { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); margin-top: auto; padding-top: var(--s-4); }
.bcard__score { display: grid; justify-items: end; line-height: 1.2; }
.bcard__score b { font: 600 1.375rem/1.1 var(--font-heading); letter-spacing: -.016em; font-variant-numeric: tabular-nums; }
.bcard__score span { font-size: var(--fs-xs); color: var(--slate); }

/* Directory */
.catalog { padding-bottom: var(--section-y); background: var(--ivory); }
.filters { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-3); margin-top: calc(var(--s-6) * -1); padding: var(--s-4); background: var(--white); border-radius: var(--r-lg); box-shadow: var(--shadow-md); border-bottom: 3px solid var(--gold); }
.filters__q { grid-column: 1 / -1; }
.catalog__bar { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--s-4); margin-block: var(--s-6) var(--s-4); scroll-margin-top: calc(var(--header-h) + 16px); }
.catalog__count { color: var(--slate); }
.catalog__count b { color: var(--navy); }
.catalog__reset { min-height: 44px; margin-left: 8px; font: 700 var(--fs-sm)/1 var(--font-heading); color: var(--gold-ink); text-decoration: underline; }
.catalog__sort { width: 180px; flex: none; }
.pager { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--s-2); margin-top: var(--s-6); }
.pager:empty { display: none; }
.pager__btn { min-width: 44px; min-height: 44px; padding-inline: 12px; border-radius: var(--r-sm); border: 1px solid var(--line); background: var(--white); font: 700 var(--fs-sm)/1 var(--font-heading); transition: border-color var(--t-fast); }
.pager__btn:hover:not(:disabled) { border-color: var(--navy); }
.pager__btn[aria-current] { background: var(--navy); border-color: var(--navy); color: var(--white); }
.pager__gap { display: grid; place-items: center; min-width: 24px; color: var(--slate); }
.pager__btn:disabled { opacity: .45; cursor: not-allowed; }

/* Industries directory */
.ind-cards { display: grid; gap: var(--s-4); }
.ind-cards li { display: grid; }
.ind-card { display: flex; flex-direction: column; padding: var(--s-5); border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--white); transition: background var(--t-med), color var(--t-med), border-color var(--t-med); }
.ind-card__i { display: grid; place-items: center; width: 52px; height: 52px; margin-bottom: var(--s-4); border-radius: 50%; background: var(--gold-100); color: var(--navy); transition: background var(--t-med); }
.ind-card__i svg { width: 26px; height: 26px; }
.ind-card h3 { font-size: 1.25rem; font-weight: 600; }
.ind-card p { margin-top: var(--s-1); color: var(--slate); font-size: var(--fs-sm); transition: color var(--t-med); }
.ind-card__foot { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: var(--s-4); font-size: var(--fs-sm); color: var(--slate); transition: color var(--t-med); }
.ind-card__foot svg { width: 18px; height: 18px; }
.ind-card:hover { background: var(--navy); color: var(--white); border-color: var(--navy); }
.ind-card:hover p, .ind-card:hover .ind-card__foot { color: var(--slate-300); }
.ind-card:hover .ind-card__i { background: var(--gold); }

/* Link grids */
.link-grid { display: grid; gap: 0; border: 1px solid var(--line); border-radius: var(--r-lg); overflow: hidden; }
.link-grid li { display: grid; box-shadow: 0 0 0 .5px var(--line); }
.link-grid a { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); min-height: 64px; padding: var(--s-3) var(--s-4); background: var(--white); font: 600 var(--fs-md)/1.3 var(--font-heading); transition: background var(--t-fast); }
.link-grid a:hover { background: var(--gold-100); }
.link-grid a:focus-visible { box-shadow: inset 0 0 0 2px var(--navy); }
.link-grid small { display: block; font: 400 var(--fs-xs)/1.3 var(--font-body); color: var(--slate); }
.link-grid svg { width: 18px; height: 18px; flex: none; color: var(--slate); }

/* Ticks */
.ticks { display: grid; gap: var(--s-4); }
.ticks li { padding-left: var(--s-5); border-left: 3px solid var(--gold); color: var(--slate); }
.ticks b { display: block; color: var(--navy); font: 600 1.125rem/1.35 var(--font-heading); letter-spacing: -.01em; }

/* Stat row */
.stat-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-4); }
.stat-row div { padding: var(--s-4) var(--s-5); background: var(--ivory); border-radius: var(--r-lg); }
.stat-row dt { font-size: var(--fs-sm); color: var(--slate); }
.stat-row dd { font: 500 2rem/1.2 var(--font-heading); letter-spacing: -.02em; }

/* States directory */
.list-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--s-4); margin-bottom: var(--s-6); }
.list-head__filter { width: 100%; }
.state-tiles { display: grid; grid-template-columns: 1fr; gap: var(--s-2); }
.state-tiles li { min-width: 0; }
.state-tile { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0 var(--s-3); min-height: 56px; padding: var(--s-2) var(--s-4); border: 1px solid var(--line); border-radius: var(--r-md); transition: border-color var(--t-fast), background var(--t-fast); height: 100%; }
.state-tile b { font: 600 var(--fs-md)/1.3 var(--font-heading); }
.state-tile span { font-size: var(--fs-xs); color: var(--slate); white-space: nowrap; }
.state-tile:hover { border-color: var(--gold); background: var(--ivory); }

/* CTA band */
.cta-band { padding-block: var(--s-8); background: radial-gradient(70% 160% at 90% 50%, var(--navy-700), var(--navy) 65%); }
.cta-band__in { display: grid; gap: var(--s-5); }
.cta-band h2 { font-size: clamp(1.625rem, 1.3rem + 1.4vw, 2.25rem); }
.cta-band p { margin-top: var(--s-2); color: var(--slate-300); }
.cta-band__btns { display: flex; flex-wrap: wrap; gap: var(--s-3); }

/* Business profile */
.profile-hero { padding-bottom: var(--s-8); }
.profile-hero__grid { display: flex; align-items: center; justify-content: space-between; gap: var(--s-5); }
.profile-hero__tags { display: flex; flex-wrap: wrap; gap: var(--s-2); margin-bottom: var(--s-3); }
.profile-hero .pill--pass { background: rgba(255, 255, 255, .12); color: var(--white); }
.profile-hero .pill--pass svg { color: var(--gold); }
.profile-hero__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 10px; margin-top: var(--s-3); color: var(--slate-300); }
.profile-hero__meta a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .3); text-underline-offset: 3px; }
.profile-hero__meta a:hover { color: var(--white); }
.profile-hero__seal { display: none; width: 148px; flex: none; filter: drop-shadow(0 12px 20px rgba(0, 0, 0, .4)); }
.profile { display: grid; gap: var(--s-5); padding-block: var(--s-6) var(--section-y); }
.profile__main, .profile__side { display: grid; gap: var(--s-5); align-content: start; min-width: 0; }

.panel { padding: var(--s-5); background: var(--white); border: 1px solid var(--line); border-radius: var(--r-lg); min-width: 0; }
.panel__head { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); margin-bottom: var(--s-4); }
.panel h2 { font-size: 1.25rem; font-weight: 600; letter-spacing: -.016em; line-height: 1.3; }
.panel__meta { font-size: var(--fs-sm); color: var(--slate); white-space: nowrap; }
.panel__note { margin-top: var(--s-4); font-size: var(--fs-sm); color: var(--slate); }
.panel__note a { text-decoration: underline; }
.panel__actions { margin-top: var(--s-4); }
.panel--side h2 { font-size: 1.125rem; margin-bottom: var(--s-2); }
.panel--side p, .panel--side address { font-size: var(--fs-sm); font-style: normal; color: var(--slate); overflow-wrap: anywhere; }
.panel--side .btn { width: 100%; margin-top: var(--s-4); }
.score-sum { display: grid; gap: var(--s-5); }
.score-sum__num { font-family: var(--font-heading); }
.score-sum__num b { font-weight: 500; font-size: 4rem; line-height: 1; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.score-sum__num span { font-size: 1.25rem; color: var(--slate); margin-left: 4px; }
.score-sum__bars { display: grid; gap: var(--s-4); align-content: center; }
.meter + .meter { margin-top: var(--s-3); }
.score-sum__bars .meter + .meter { margin-top: 0; }
.meter__top { display: flex; justify-content: space-between; gap: var(--s-3); font-size: var(--fs-sm); margin-bottom: 6px; color: var(--slate); }
.meter__top b { color: var(--navy); font-variant-numeric: tabular-nums; }
.meter__top small { font-size: inherit; font-weight: 400; color: var(--slate); }
.meter__bar { display: block; height: 6px; border-radius: 3px; background: #E7E5DF; overflow: hidden; }
.meter__bar i { display: block; height: 100%; border-radius: 3px; background: var(--gold); }
.gatelist { display: grid; gap: var(--s-2); margin-block: var(--s-5) var(--s-2); padding-top: var(--s-4); border-top: 1px solid var(--line); font-size: var(--fs-sm); }
.gatelist li { display: flex; align-items: center; gap: 8px; }
.gatelist svg { width: 18px; height: 18px; flex: none; }
.gatelist .is-ok svg { color: var(--success); }
.gatelist .is-no { color: var(--danger); }
.facts { display: grid; gap: var(--s-3) var(--s-5); }
.facts dt { font-size: var(--fs-sm); color: var(--slate); }
.facts dd { font: 600 1.0625rem/1.4 var(--font-heading); }
.facts dd a { text-decoration: underline; text-underline-offset: 3px; }
.facts__rate { display: inline-flex; align-items: center; gap: 8px; }
.cert-frame--panel .cert { box-shadow: 0 0 0 1px var(--line); }
.kit-card { padding: var(--s-5); border-radius: var(--r-lg); background: var(--navy); color: var(--white); }
.kit-card h2 { font-size: 1.25rem; font-weight: 600; letter-spacing: -.016em; }
.kit-card p { margin-top: var(--s-2); font-size: var(--fs-sm); color: var(--slate-300); }
.kit-card .btn { width: 100%; margin-top: var(--s-4); white-space: normal; }
.verify-id { font: 700 var(--fs-md)/1.4 var(--font-heading) !important; color: var(--navy) !important; }

/* Rules, factors, mins */
.rule-grid, .factor-grid { display: grid; gap: var(--s-4); }
.rule-grid li { padding: var(--s-5); background: var(--white); border-radius: var(--r-lg); }
.rule-grid h3 { font-weight: 600; }
.rule-grid p { margin-top: var(--s-2); color: var(--slate); font-size: var(--fs-sm); }
.factor { display: flex; flex-direction: column; padding: var(--s-5); background: var(--ivory); border-radius: var(--r-lg); }
.factor--lead { background: var(--navy); color: var(--white); }
.factor__pts { display: flex; align-items: baseline; gap: 8px; font: 500 3.5rem/1 var(--font-heading); letter-spacing: -.03em; color: var(--gold-ink); margin-bottom: var(--s-5); }
.factor--lead .factor__pts { color: var(--gold); }
.factor__pts span { font-size: var(--fs-sm); letter-spacing: 0; font-weight: 600; }
.factor h3 { font-size: 1.25rem; font-weight: 600; }
.factor > p:last-child { margin-top: var(--s-2); color: var(--slate); font-size: var(--fs-sm); }
.factor--lead > p:last-child { color: var(--slate-300); }
.mins { display: grid; gap: var(--s-4); margin-top: var(--s-7); padding-top: var(--s-5); border-top: 1px solid var(--line-dark); }
.mins dt { font-size: var(--fs-sm); color: var(--slate-300); }
.mins dd { font: 600 1.375rem/1.25 var(--font-heading); color: var(--gold-300); }

/* Formula */
.fx { background: var(--white); border-radius: var(--r-lg); box-shadow: var(--shadow-sm); padding: var(--s-5); margin-top: var(--s-7); }
.fx__main { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2) var(--s-3); padding-bottom: var(--s-5); border-bottom: 1px solid var(--line); font: 500 clamp(1.125rem, 1rem + .9vw, 1.5rem)/1.3 var(--font-heading); letter-spacing: -.012em; }
.fx__main b { font-weight: 700; }
.fx__main i, .fx__eq i { font-style: normal; color: var(--gold-ink); font-weight: 600; }
.fx__row { display: grid; gap: var(--s-3); padding-block: var(--s-5); border-bottom: 1px solid var(--line); }
.fx__name h3 { font-size: 1.125rem; font-weight: 600; }
.fx__name p { font-size: var(--fs-sm); color: var(--slate); }
.fx__eq { display: flex; align-items: center; gap: var(--s-3); font: 600 var(--fs-md)/1.3 var(--font-heading); font-variant-numeric: tabular-nums; }
.fx__eq b { font-weight: 700; }
.frac { display: inline-grid; justify-items: center; }
.frac span { padding-inline: 8px; white-space: nowrap; }
.frac span:first-child { padding-bottom: 4px; border-bottom: 2px solid var(--navy); }
.frac span:last-child { padding-top: 4px; }
.fx__ex { font-size: var(--fs-sm); color: var(--slate); }
.fx__full { padding-block: var(--s-5) 0; }
.fx__full h3 { font-size: 1.125rem; font-weight: 600; margin-bottom: var(--s-4); }
.fx__line { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); font: 600 var(--fs-md)/1.3 var(--font-heading); font-variant-numeric: tabular-nums; }
.fx__line b { font-weight: 700; }
.fx__line i { font-style: normal; color: var(--gold-ink); font-weight: 600; }
.fx__term { display: inline-flex; align-items: center; gap: var(--s-2); }
.fx__total { display: grid; gap: var(--s-1); margin-top: var(--s-5); padding: var(--s-4); background: var(--navy); color: var(--white); border-radius: var(--r-md); }
.fx__total span { font-size: var(--fs-sm); color: var(--slate-300); }
.fx__total b { font: 600 clamp(1.25rem, 1.1rem + .8vw, 1.625rem)/1.25 var(--font-heading); letter-spacing: -.012em; color: var(--gold-300); font-variant-numeric: tabular-nums; }
.fx__note { margin-top: var(--s-4); font-size: var(--fs-sm); color: var(--slate); }

/* Tables */
.table { width: 100%; border-collapse: collapse; font-size: var(--fs-sm); }
.table th, .table td { padding: var(--s-3); text-align: left; border-bottom: 1px solid var(--line); vertical-align: middle; }
.table thead th { font: 700 var(--fs-xs)/1.3 var(--font-heading); color: var(--slate); }
.table tbody th { font-weight: 600; }
.table__link { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: 3px; }
.table__actions { display: flex; flex-wrap: wrap; gap: var(--s-2); justify-content: flex-end; }
.table--cmp th:not(:first-child), .table--cmp td { text-align: center; width: 18%; }
.table--cmp td svg { width: 20px; height: 20px; margin-inline: auto; color: var(--success); }
.table .na { color: var(--slate); }
.btn--sm { min-height: 44px; padding: 8px 14px; }
@media (max-width: 767px) {
  .table--stack thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .table--stack, .table--stack tbody, .table--stack tr, .table--stack th, .table--stack td { display: block; width: 100%; }
  .table--stack tr { padding-block: var(--s-3); border-bottom: 1px solid var(--line); }
  .table--stack tbody th, .table--stack td { padding: 4px 0; border: 0; }
  .table--stack tbody th { font: 700 var(--fs-md)/1.3 var(--font-heading); }
  .table--stack td[data-label] { display: flex; justify-content: space-between; gap: var(--s-3); }
  .table--stack td[data-label]::before { content: attr(data-label); color: var(--slate); }
  .table__actions { justify-content: flex-start; padding-top: var(--s-2) !important; }
  .table--cmp th, .table--cmp td { padding: var(--s-3) 4px; }
}

/* Verify */
.verify-sec { padding-bottom: var(--section-y); background: var(--ivory); }
.verify-wrap { display: grid; gap: var(--s-5); align-items: start; }
.verify-wrap .note { margin-top: 0; }
.verify-card { position: relative; z-index: 2; margin-top: calc(var(--s-6) * -1); background: var(--white); border-radius: var(--r-lg); box-shadow: var(--shadow-md); overflow: hidden; }
.verify-card__head { display: flex; align-items: center; gap: var(--s-4); padding: var(--s-5); border-bottom: 1px solid var(--line); }
.verify-card__i { display: grid; place-items: center; width: 56px; height: 56px; flex: none; border-radius: 50%; background: var(--success-bg); color: var(--success); }
.verify-card__i svg { width: 28px; height: 28px; }
.is-invalid .verify-card__i { background: var(--danger-bg); color: var(--danger); }
.verify-card__state { font: 700 1.375rem/1.25 var(--font-heading); letter-spacing: -.016em; }
.verify-card__id { font-size: var(--fs-sm); color: var(--slate); overflow-wrap: anywhere; }
.verify-card__txt { padding: var(--s-5); color: var(--slate); }
.facts--verify { padding: var(--s-5); }
.verify-form { display: grid; gap: var(--s-4); padding: var(--s-5); background: var(--white); border-radius: var(--r-lg); }
.verify-form h2 { font-size: 1.25rem; font-weight: 600; }
.verify-form .btn { justify-self: start; }

/* Pricing */
.pricing-sec { padding-bottom: var(--s-7); background: var(--ivory); }
.prices { position: relative; z-index: 2; display: grid; gap: var(--s-4); margin-top: calc(var(--s-6) * -1); }
.price { position: relative; display: flex; flex-direction: column; padding: var(--s-6) var(--s-5); background: var(--white); border-radius: var(--r-lg); box-shadow: var(--shadow-sm); }
/* The gold edge keeps the navy card visible where it overlaps the navy hero */
.price--popular { background: var(--navy); color: var(--white); box-shadow: var(--shadow-lg); outline: 2px solid var(--gold); outline-offset: -2px; }
.price__flag { position: absolute; top: 0; right: var(--s-5); translate: 0 -50%; padding: 4px 12px; border-radius: var(--r-full); background: var(--gold); color: var(--navy); font: 700 var(--fs-xs)/1.5 var(--font-heading); }
.price h2 { font-size: 1.5rem; font-weight: 600; }
.price__note { margin-top: var(--s-1); font-size: var(--fs-sm); color: var(--slate); }
.price--popular .price__note, .price--popular .price__amount span { color: var(--slate-300); }
.price__amount { display: flex; align-items: baseline; gap: 8px; margin-block: var(--s-5); }
.price__amount b { font: 500 3rem/1 var(--font-heading); letter-spacing: -.03em; }
.price__amount span { font-size: var(--fs-sm); color: var(--slate); }
.price__list { display: grid; gap: var(--s-2); margin-bottom: var(--s-6); font-size: var(--fs-sm); }
.price__list li { display: flex; gap: 8px; align-items: flex-start; }
.price__list svg { width: 18px; height: 18px; flex: none; color: var(--gold-ink); margin-top: 2px; }
.price--popular .price__list svg { color: var(--gold); }
.price .btn { margin-top: auto; width: 100%; white-space: normal; }
.prices li { min-width: 0; }

/* Checkout */
.modal--checkout { width: min(calc(100vw - 32px), 560px); }
.co { display: grid; gap: var(--s-4); padding: var(--s-5); }
.co__packs { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s-2); margin: 0; padding: 0; border: 0; min-width: 0; }
.co__packs legend { padding: 0; margin-bottom: 6px; font: 700 var(--fs-xs)/1.3 var(--font-heading); color: var(--slate); }
.co__pack { position: relative; cursor: pointer; }
.co__pack input { position: absolute; opacity: 0; inset: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.co__pack span { display: grid; gap: 2px; min-height: 64px; align-content: center; padding: var(--s-2) var(--s-3); border: 1px solid #C9CFD8; border-radius: var(--r-md); transition: border-color var(--t-fast), background var(--t-fast); }
.co__pack b { font: 700 var(--fs-sm)/1.2 var(--font-heading); }
.co__pack i { font-style: normal; font-size: var(--fs-sm); color: var(--slate); }
.co__pack input:checked + span { border-color: var(--navy); background: var(--gold-100); box-shadow: inset 0 0 0 1px var(--navy); }
.co__pack input:focus-visible + span { box-shadow: 0 0 0 3px rgba(214, 173, 96, .7); }
.co__total { display: flex; align-items: baseline; justify-content: space-between; padding-top: var(--s-3); border-top: 1px solid var(--line); }
.co__total b { font: 600 1.625rem/1.2 var(--font-heading); letter-spacing: -.016em; }
.co__demo { font-size: var(--fs-sm); color: var(--slate); }
.co__demo a, .form-card__legal a, .check a { text-decoration: underline; }
.co__go { width: 100%; }
.co-done { display: grid; justify-items: center; gap: var(--s-3); padding: var(--s-7) var(--s-5); text-align: center; color: var(--slate); }
.co-done h3 { font-size: 1.375rem; color: var(--navy); }

/* Forms */
.form-layout { display: grid; gap: var(--s-5); }
.form-card { display: grid; gap: var(--s-5); padding: var(--s-5); background: var(--white); border: 1px solid var(--line); border-radius: var(--r-lg); min-width: 0; }
.form-card__h { font-size: 1.25rem; font-weight: 600; letter-spacing: -.016em; }
.form-card .btn { justify-self: start; }
.form-card__legal { font-size: var(--fs-sm); color: var(--slate); }
.form-grid { display: grid; gap: var(--s-4); }
.field textarea { width: 100%; padding: 10px 14px; border: 1px solid #C9CFD8; border-radius: var(--r-md); background: var(--white); color: var(--navy); font: inherit; resize: vertical; transition: border-color var(--t-fast), box-shadow var(--t-fast); }
.field textarea:hover { border-color: var(--slate); }
.field textarea:focus-visible { border-color: var(--navy); box-shadow: 0 0 0 3px rgba(214, 173, 96, .55); border-radius: var(--r-md); }
.field__opt { font-weight: 500; }
.field__hint { font-size: var(--fs-xs); color: var(--slate); }
.field__error { font-size: var(--fs-xs); font-weight: 600; color: var(--danger); }
[aria-invalid="true"] { border-color: var(--danger) !important; }
.check { display: flex; align-items: flex-start; gap: 10px; min-height: 44px; font-size: var(--fs-sm); color: var(--slate); cursor: pointer; }
.check input { width: 20px; height: 20px; margin: 2px 0 0; flex: none; accent-color: var(--navy); }
.form-done { display: grid; justify-items: start; gap: var(--s-3); padding: var(--s-6); background: var(--ivory); border-radius: var(--r-lg); color: var(--slate); }
.form-done h2 { font-size: 1.5rem; font-weight: 600; color: var(--navy); }
.form-done:focus-visible { box-shadow: none; }
.side-cards { display: grid; gap: var(--s-4); align-content: start; }
.mini-steps { display: grid; gap: var(--s-2); counter-reset: s; font-size: var(--fs-sm); color: var(--slate); }
.mini-steps li { counter-increment: s; display: grid; grid-template-columns: 24px 1fr; gap: 8px; }
.mini-steps li::before { content: counter(s); display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--navy); color: var(--gold); font: 600 var(--fs-xs)/1 var(--font-heading); }

/* Legal documents */
.legal-doc { display: grid; gap: var(--s-6); }
.legal-doc__toc { padding: var(--s-5); background: var(--ivory); border-radius: var(--r-lg); font-size: var(--fs-sm); }
.legal-doc__toc > p { font: 700 var(--fs-sm)/1.3 var(--font-heading); margin-bottom: var(--s-2); }
.legal-doc__toc a { display: flex; align-items: center; min-height: 44px; color: var(--slate); }
.legal-doc__toc a:hover { color: var(--navy); text-decoration: underline; }
.legal-doc__body { max-width: 720px; min-width: 0; color: var(--slate); overflow-wrap: anywhere; }
.legal-doc__body > p { margin-bottom: var(--s-4); }
.legal-doc__body section { margin-top: var(--s-7); }
.legal-doc__body h2 { font-size: 1.375rem; font-weight: 600; letter-spacing: -.016em; line-height: 1.3; color: var(--navy); margin-bottom: var(--s-3); scroll-margin-top: calc(var(--header-h) + 16px); }
.legal-doc__body section p + p, .legal-doc__body section p + ul, .legal-doc__body section ul + p { margin-top: var(--s-3); }
.legal-doc__body ul { display: grid; gap: var(--s-2); list-style: disc; padding-left: 20px; }
.legal-doc__body b { color: var(--navy); font-weight: 600; }

@media (min-width: 560px) {
  .bgrid, .ind-cards, .post-grid { grid-template-columns: 1fr 1fr; }
  .state-tiles { grid-template-columns: 1fr 1fr; }
  .link-grid { grid-template-columns: 1fr 1fr; }
  .filters { grid-template-columns: repeat(3, 1fr); }
  .facts { grid-template-columns: 1fr 1fr; }
  .form-grid { grid-template-columns: 1fr 1fr; }
  .form-grid__full { grid-column: 1 / -1; }
}
@media (min-width: 768px) {
  .page-hero { padding-block: var(--s-6) var(--s-10); }
  .page-hero--compact { padding-bottom: var(--s-9); }
  .profile-hero__seal { display: block; }
  .fx { padding: var(--s-6); }
  .profile-services { grid-template-columns: 1fr 1fr; }
  .profile-photos { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .card-facts { grid-template-columns: repeat(3, 1fr); }
  .rep-hero__in { grid-template-columns: 1fr auto; }
  .rep-grid { grid-template-columns: 1.6fr 1fr; }
  .rep-why { grid-template-columns: repeat(2, 1fr); }
  .pay-row { grid-template-columns: 1fr 1fr; }
  .tiles { grid-template-columns: repeat(3, 1fr); }
  .adm-bar { grid-template-columns: 1fr 200px auto; }
  .adm-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .inbox-row { grid-template-columns: 1fr auto; align-items: center; }
  .lp-steps { grid-template-columns: repeat(3, 1fr); }
  .stat-row--three { grid-template-columns: repeat(3, 1fr); }
  .fx__row { grid-template-columns: 180px 1fr 1fr; align-items: center; gap: var(--s-5); }
  .fx__total { grid-template-columns: 1fr auto; align-items: center; padding: var(--s-4) var(--s-5); }
  .stat-row { grid-template-columns: repeat(4, 1fr); }
  .state-tiles { grid-template-columns: repeat(3, 1fr); }
  .list-head__filter { width: 280px; }
  .rule-grid, .factor-grid { grid-template-columns: repeat(3, 1fr); }
  .filters { padding: var(--s-5); }
  .prices { grid-template-columns: repeat(3, 1fr); }
  .score-sum { grid-template-columns: auto 1fr; gap: var(--s-7); align-items: center; }
  .cta-band__in { grid-template-columns: 1fr auto; align-items: center; gap: var(--s-7); }
  .mins { grid-template-columns: repeat(3, 1fr); }
  .panel, .form-card { padding: var(--s-6); }
}
@media (min-width: 1100px) {
  .bgrid, .post-grid { grid-template-columns: repeat(3, 1fr); }
  .tiles { grid-template-columns: repeat(6, 1fr); }
  .card-cols { grid-template-columns: 1.3fr 1fr; }
  .rep-why { grid-template-columns: repeat(4, 1fr); }
  .lp-hero { padding-block: var(--s-8) var(--s-10); }
  .lp-hero__grid { grid-template-columns: 1.1fr 440px; gap: var(--s-9); align-items: center; }
  .post { grid-template-columns: minmax(0, 1fr) 320px; gap: var(--s-6); align-items: start; }
  .post__side { position: sticky; top: calc(var(--header-h) + 24px); }
  .ind-cards { grid-template-columns: repeat(4, 1fr); }
  .state-tiles { grid-template-columns: repeat(4, 1fr); }
  .link-grid { grid-template-columns: repeat(3, 1fr); }
  .link-grid--two { grid-template-columns: 1fr 1fr; }
  .two-col { grid-template-columns: 1fr 1.2fr; gap: var(--s-10); align-items: center; }
  .filters { grid-template-columns: 1.6fr repeat(5, 1fr); }
  .filters__q { grid-column: auto; }
  .profile { grid-template-columns: minmax(0, 1fr) 340px; gap: var(--s-6); align-items: start; }
  .profile__side { position: sticky; top: calc(var(--header-h) + 24px); }
  .form-layout { grid-template-columns: minmax(0, 1fr) 340px; gap: var(--s-6); align-items: start; }
  .legal-doc { grid-template-columns: 280px minmax(0, 1fr); gap: var(--s-9); align-items: start; }
  .legal-doc__toc { position: sticky; top: calc(var(--header-h) + 24px); max-height: calc(100vh - var(--header-h) - 48px); overflow-y: auto; }
  .verify-wrap { grid-template-columns: 1.4fr 1fr; }
  .verify-form { margin-top: calc(var(--s-6) * -1); position: relative; z-index: 2; box-shadow: var(--shadow-md); }
  .verify-wrap .note { grid-column: 1 / -1; }
}

/* Sitemap */
.sitemap { display: grid; gap: var(--s-5); }
.sitemap__heading { margin-block: var(--s-7) var(--s-4); }
.sitemap__block h2 { margin-bottom: var(--s-2); font-size: 1.125rem; font-weight: 600; }
.sitemap__list { display: grid; padding: 0; list-style: none; }
.sitemap__list a { display: inline-flex; align-items: center; min-height: 44px; overflow-wrap: anywhere; text-decoration: underline; text-underline-offset: 3px; }
@media (min-width: 768px) { .sitemap { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .sitemap { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Long articles */
.post__img { width: 100%; height: auto; border-radius: var(--r-md); margin-bottom: var(--s-5); }
.post__intro p:first-child { font-size: var(--fs-lg); line-height: 1.5; color: var(--navy); }
.post__body h3 { margin-top: var(--s-5); font-size: 1.25rem; font-weight: 600; }
.post__body h4 { margin-top: var(--s-4); font-size: 1.0625rem; font-weight: 600; }
.post__body ul, .post__body ol { padding-left: 22px; }
.post__body blockquote { margin: var(--s-4) 0; padding-left: var(--s-4); border-left: 3px solid var(--gold); color: var(--navy); }
.post__body a:not(.btn) { text-decoration: underline; text-underline-offset: 3px; }
.post__table { overflow-wrap: anywhere; margin-block: var(--s-4); }
.post-card__img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: var(--r-sm, 8px); margin-bottom: var(--s-3); }

/* Cold email */
.cold-subject { margin-block: var(--s-3) var(--s-2); font-weight: 600; color: var(--navy); overflow-wrap: anywhere; }
.cold-text { margin: 0 0 var(--s-4); padding: var(--s-3); border-radius: var(--r-md); background: var(--ivory); color: var(--navy); font: 400 var(--fs-sm)/1.5 var(--font-body, inherit); white-space: pre-wrap; overflow-wrap: anywhere; }

/* Compact panel */
.adm .panel { padding: var(--s-4); }
.adm .panel__head { margin-bottom: var(--s-3); }
.adm .panel__note { margin-top: var(--s-2); }
.adm .card-col h3, .adm .lead-history h3 { font-size: 1.0625rem; }
.adm .field label { margin-bottom: 2px; font-size: var(--fs-xs); }
.adm .field input, .adm .field select, .adm .field textarea { min-height: 44px; padding: 8px 12px; border-radius: var(--r-sm); font-size: var(--fs-sm); }
.adm .field select { padding-right: 32px; background-position: right 10px center; }
.adm .btn { min-height: 44px; padding-block: 8px; }
.adm .form-grid { gap: var(--s-3); }
.adm .check { align-items: center; gap: var(--s-2); margin-block: var(--s-3); font-size: var(--fs-sm); }
.adm .pay-row { margin-bottom: 0; }
.adm-top { margin-bottom: var(--s-3); }
.adm-top h2 { font-size: 1.5rem; }
.adm .tiles { gap: var(--s-2); margin-bottom: var(--s-3); }
.adm .tile { min-height: 0; padding: var(--s-2) var(--s-3); border-radius: var(--r-md); }
.adm .tile p { font-size: var(--fs-xs); }
.adm .tile b { font-size: 1.25rem; }
.adm .adm-tabs { margin-bottom: var(--s-3); }
.adm .adm-bar { gap: var(--s-2); margin-bottom: var(--s-2); }
.adm .adm-bar .btn, .adm .adm-filters .btn { min-height: 44px; }
.adm .adm-filters { gap: var(--s-2); margin-bottom: var(--s-3); }
.adm .card-page, .adm .card-cols, .adm .card-col { gap: var(--s-3); }
.adm .card-head h2 { font-size: 1.5rem; }
.adm .card-facts { grid-template-columns: repeat(auto-fit, minmax(128px, 1fr)); gap: var(--s-2) var(--s-3); padding: var(--s-3); border-radius: var(--r-md); }
.adm .lead-link__row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); margin-bottom: 0; }
.adm .lead-link__row input { flex: 1 0 100%; min-height: 44px; padding: 8px 12px; border-radius: var(--r-sm); }
.lead-link__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); }
.adm .pay-list { gap: var(--s-2); }
.adm .pay-list li { gap: 2px; padding-bottom: var(--s-2); }
.adm .lead-history { padding-top: var(--s-4); border-top: 1px solid var(--line); gap: var(--s-2); }
.adm .cold-subject { margin-block: var(--s-2); }
.adm .cold-text { margin-bottom: var(--s-3); padding: var(--s-2) var(--s-3); border-radius: var(--r-sm); line-height: 1.45; }
.adm .adm-photos { margin-top: var(--s-3); padding-top: var(--s-3); }
@media (min-width: 1100px) {
  .adm .tiles { grid-template-columns: repeat(6, 1fr); }
  .adm .adm-filters { grid-template-columns: repeat(6, minmax(0, 1fr)) auto; }
  .adm .adm-filters .btn { grid-column: auto; }
}

/* Companies that must not be contacted */
.table tr.is-blocked th, .table tr.is-blocked td { background: var(--danger-bg); }
.table tr.is-blocked .link-btn { color: var(--danger); }

/* Panel settings */
.adm-settings { max-width: 640px; }
.adm-settings__row { display: grid; gap: var(--s-2); align-items: end; margin-top: var(--s-3); }
@media (min-width: 560px) { .adm-settings__row { grid-template-columns: minmax(0, 1fr) auto; } }

/* Report sales sections */
.rep-hero__cta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); margin-top: var(--s-4); color: var(--slate-300); font-size: var(--fs-sm); }
.rep-facts { display: grid; gap: var(--s-2); }
.rep-facts li { display: grid; align-content: center; gap: 2px; padding: var(--s-3) var(--s-4); background: var(--ivory); border-radius: var(--r-md); }
.rep-facts b { font: 700 1.375rem/1.2 var(--font-heading); color: var(--navy); }
.rep-facts span { font-size: var(--fs-sm); color: var(--slate); }
.rep-see { display: grid; gap: var(--s-5); margin-top: var(--s-5); }
.rep-see h3 { margin-top: var(--s-3); font-size: 1.125rem; font-weight: 600; }
.rep-see li > p { margin-top: 4px; font-size: var(--fs-sm); color: var(--slate); }
.mock { display: flex; flex-direction: column; justify-content: center; gap: var(--s-2); min-height: 232px; padding: var(--s-4); border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--white); overflow: hidden; }
.mock p { overflow-wrap: anywhere; }
.mock__name { font: 700 1.25rem/1.25 var(--font-heading); color: var(--navy); }
.mock__line { font-size: var(--fs-sm); color: var(--slate); }
.mock__dots { display: flex; gap: 4px; margin-bottom: auto; }
.mock__dots i { width: 8px; height: 8px; border-radius: 50%; background: var(--line); }
.mock__badge { display: flex; align-items: center; gap: var(--s-2); margin-top: var(--s-2); padding: var(--s-2); border: 1px solid var(--gold); border-radius: var(--r-md); }
.mock__badge > span { flex: none; width: 48px; }
.mock__badge b { display: block; font: 700 var(--fs-sm)/1.25 var(--font-heading); color: var(--navy); }
.mock__badge small { font-size: var(--fs-xs); color: var(--slate); }
.mock--post { align-items: center; text-align: center; border: 0; background: var(--navy); }
.mock--post .mock__seal { width: 84px; }
.mock--post .mock__kicker { font: 700 var(--fs-xs)/1.3 var(--font-heading); color: var(--gold-300); }
.mock--post .mock__name { color: var(--white); }
.mock--post .mock__line { color: var(--slate-300); }
.mock--mail { background: var(--ivory); border: 0; }
.rep-compare { display: grid; gap: var(--s-3); margin-top: var(--s-6); }
.rep-compare__col { padding: var(--s-4); background: var(--ivory); border-radius: var(--r-lg); }
.rep-compare__col h3 { margin-bottom: var(--s-2); font-size: 1.125rem; font-weight: 600; }
.rep-compare__col ul { display: grid; gap: var(--s-2); font-size: var(--fs-sm); color: var(--slate); }
.rep-compare__col--on { background: var(--navy); color: var(--white); }
.rep-compare__col--on ul { color: var(--white); }
.rep-compare__col--on li { display: flex; gap: var(--s-2); }
.rep-compare__col--on svg { flex: none; width: 18px; height: 18px; color: var(--gold); }
.rep-mid { margin-top: var(--s-5); }
.rep-steps { display: grid; gap: var(--s-3); margin-block: var(--s-4) var(--s-5); }
.rep-steps li { display: flex; gap: var(--s-3); align-items: flex-start; }
.rep-steps b { display: grid; place-items: center; flex: none; width: 32px; height: 32px; border-radius: 50%; background: var(--navy); color: var(--white); font: 700 var(--fs-sm)/1 var(--font-heading); }
.rep-steps h3 { font-size: 1rem; font-weight: 600; }
.rep-steps p { font-size: var(--fs-sm); color: var(--slate); }
.rep-final { padding-block: var(--s-7); padding-bottom: calc(var(--s-7) + 72px); background: var(--navy); text-align: center; }
.rep-final p { margin-block: var(--s-2) var(--s-4); color: var(--slate-300); }
.rep-sticky { position: fixed; inset: auto 0 0; z-index: 20; display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); padding: var(--s-2) var(--s-4); background: var(--white); border-top: 1px solid var(--line); color: var(--navy); font-size: var(--fs-sm); font-weight: 600; }
.rep-sticky.is-off { display: none; }
@media (min-width: 768px) {
  .rep-see, .rep-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rep-compare { grid-template-columns: 1fr 1fr; }
  .rep-sticky { display: none; }
  .rep-final { padding-bottom: var(--s-7); }
}

/* Submit landing: two audiences side by side */
@media (min-width: 768px) { .rep-why.sub-who { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Qualification standard, three cards */
.std-cards { list-style: none; display: grid; gap: var(--s-4); margin-top: var(--s-7); }
.std-cards li { display: flex; flex-direction: column; padding: var(--s-6); background: var(--ivory); border: 1px solid rgba(16, 31, 56, .06); border-radius: var(--r-xl); }
.std-cards__i { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: var(--navy); color: var(--gold); }
.std-cards__i svg { width: 24px; height: 24px; }
.std-cards__k { margin-top: var(--s-5); font-size: var(--fs-sm); font-weight: 600; color: var(--slate); }
.std-cards__v { display: flex; align-items: baseline; gap: var(--s-2); margin-top: var(--s-1); font: 800 3.5rem/1 var(--font-heading); letter-spacing: -.03em; color: var(--navy); }
.std-cards__v small { font: 600 1rem/1.2 var(--font-body); letter-spacing: 0; color: var(--slate); }
.std-cards__d { margin-top: var(--s-4); padding-top: var(--s-4); border-top: 1px solid rgba(16, 31, 56, .1); color: var(--slate); }
.std-cards__hl { background: var(--navy) !important; border-color: var(--navy) !important; }
.std-cards__hl .std-cards__i { background: var(--gold); color: var(--navy); }
.std-cards__hl .std-cards__k, .std-cards__hl .std-cards__v small, .std-cards__hl .std-cards__d { color: var(--slate-300); }
.std-cards__hl .std-cards__v { color: var(--white); }
.std-cards__hl .std-cards__d { border-top-color: rgba(255, 255, 255, .14); }
@media (min-width: 768px) { .std-cards { grid-template-columns: repeat(3, 1fr); } }

/* Panel, Google rating form */
.g-checks { border: 0; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); column-gap: var(--s-4); }
.g-checks legend { padding: 0; margin-bottom: var(--s-1); font-weight: 600; font-size: var(--fs-sm); color: var(--navy); }
.adm .g-checks .check { margin-block: 0; }
.g-score { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: var(--s-2); }
.g-score div { padding: var(--s-3); border-radius: var(--r-md, 12px); background: var(--ivory); }
.g-score dt { font-size: var(--fs-xs); color: var(--slate); }
.g-score dd { margin: 0; font: 800 1.25rem/1.2 var(--font-heading); color: var(--navy); }
.g-score .is-total { background: var(--navy); }
.g-score .is-total dt { color: #D9DEE8; }
.g-score .is-total dd { color: #fff; }
.g-score p { grid-column: 1 / -1; margin: 0; font-size: var(--fs-sm); color: var(--slate); }
.stage--source { background: var(--gold-100); color: var(--gold-ink); }
.sub-row__main { display: grid; gap: 4px; min-width: 0; }
.sub-row__meta { font-size: var(--fs-sm); color: var(--slate); overflow-wrap: anywhere; }
.sub-row__meta a { color: var(--navy); text-decoration: underline; text-underline-offset: 2px; }
.sub-row__tags { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); margin-top: 4px; }
.sub-row__ctl { display: grid; grid-template-columns: 176px; gap: var(--s-2); justify-content: start; }
.sub-row__ctl .btn, .sub-row__ctl select { width: 100%; justify-content: center; }
.btn--danger { color: var(--danger); border-color: #E3B9B4; }
.btn--danger:hover { background: var(--danger-bg); border-color: var(--danger); }
