/* ============================================================================
   American Companies — homepage sections. Serious/corporate base with the
   overt-patriotic layer: flag hero, navy/red/gold accents, colorful modules.
   Section anatomy: every <section> has an id (hp-hero, hp-news, hp-sectors,
   hp-featured, hp-stats, hp-how, hp-testimonials, hp-claim, hp-blog, hp-faq,
   hp-badges) and a matching ac-hp-* class.
   ============================================================================ */
.ac-hp{--navy:var(--ac-navy-800);--navy2:var(--ac-navy-700);--red:var(--ac-cta);--red-d:var(--ac-cta-hover);
	--blue:var(--ac-blue-500);--ink:var(--ac-text);--mut:var(--ac-text-muted);--line:var(--ac-border);
	--wash:var(--ac-gray-100);--ok:var(--ac-success-ink);--gold:var(--ac-gold-solid);
	color:var(--ink);font-size:16px;line-height:1.5}
.ac-hp-wrap{max-width:var(--ac-container);margin:0 auto;padding:0 24px}
.ac-hp-sec{padding:clamp(32px,4vw,52px) 0}
.ac-hp-wash{background:var(--wash)}
.ac-hp-center{text-align:center;margin-top:22px}
.ac-hp-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);font-weight:600;margin:0 0 8px}
.ac-hp-label-red{color:var(--red)}
.ac-hp-h2{font-size:var(--ac-fs-h2);margin:0 0 6px;letter-spacing:-.011em;font-weight:600;color:var(--ac-ink-900)}
.ac-hp-sub2{color:var(--mut);margin:0 0 20px;font-size:14px}
.ac-hp-row-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px;gap:16px;flex-wrap:wrap}

/* ---- #hp-hero — American-flag photo, blurred + darkened so content reads ---- */
.ac-hp-hero{position:relative;overflow:hidden;background:var(--ac-navy-900);color:#fff;
	padding:52px 0 56px;border-bottom:1px solid rgba(255,255,255,.06);isolation:isolate}
.ac-hp-hero-bg{position:absolute;inset:-24px;z-index:-2;background:url("../img/american-flag.8ea33efe962f.jpg") center/cover no-repeat;
	filter:blur(4px) brightness(.9) saturate(.95);transform:scale(1.06)}
.ac-hp-hero::after{content:"";position:absolute;inset:0;z-index:-1;
	background:linear-gradient(180deg,rgba(11,22,40,.78),rgba(11,22,40,.55) 45%,rgba(11,22,40,.85))}
.ac-hp-hero-content{position:relative}
.ac-hp-eyebrow{display:inline-block;color:#c8d4e8;font-size:11px;font-weight:600;text-transform:uppercase;
	letter-spacing:.12em;margin-bottom:16px}
.ac-hp-h1{font-size:var(--ac-fs-display);line-height:1.1;margin:0 0 14px;letter-spacing:-.018em;font-weight:600;color:#fff;
	text-shadow:0 2px 18px rgba(0,0,0,.35)}
.ac-hp-sub{font-size:16px;color:#dbe4f1;max-width:660px;margin:0 0 20px;line-height:1.5;text-shadow:0 1px 12px rgba(0,0,0,.35)}
.ac-hp-search{position:relative;display:flex;gap:8px;background:#fff;border-radius:var(--ac-r-md);padding:7px;max-width:780px;box-shadow:var(--ac-shadow-md)}
.ac-hp-search:focus-within{box-shadow:var(--ac-shadow-md),var(--ac-ring)}
.ac-hp-search input{border:0;outline:0;font-size:14px;padding:9px 12px;color:var(--ink);background:transparent}
.ac-hp-kw{flex:1;border-right:1px solid var(--line) !important}
.ac-hp-loc{width:180px;padding-right:30px !important}
.ac-hp-search .ac-sg-panel{width:min(720px,96vw)}
.ac-hp-search button{flex:0 0 auto}
.ac-hp-micro{margin-top:16px;color:#c8d4e8;font-size:13px;font-weight:500}
.ac-hp-micro strong{color:#fff;font-weight:600}
.ac-hp-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:18px}
.ac-hp-chips-l{color:#c8d4e8;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.ac-hp-chips a{display:inline-flex;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.24);
	color:#f0f4fa;border-radius:var(--ac-r-xs);padding:4px 10px;font-size:12.5px;font-weight:500;text-decoration:none;
	transition:background var(--ac-dur) var(--ac-ease)}
.ac-hp-chips a:hover{background:rgba(255,255,255,.2)}

/* ---- #hp-news — newsroom leads the page: lead story + headline rail ---- */
.ac-hp-news-layout{display:grid;grid-template-columns:1.45fr 1fr;gap:18px;align-items:stretch}
.ac-hp-news-lead{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);
	border-radius:var(--ac-r-lg);overflow:hidden;text-decoration:none;color:inherit;transition:var(--ac-motion-hover)}
.ac-hp-news-lead:hover{border-color:var(--ac-border-strong);box-shadow:var(--ac-shadow-sm)}
.ac-hp-news-lead-media{position:relative;aspect-ratio:16/7;background:linear-gradient(135deg,var(--ac-navy-800),var(--ac-navy-700) 55%,var(--red-d));
	display:flex;align-items:center;justify-content:center;overflow:hidden}
.ac-hp-news-lead-media img{width:100%;height:100%;object-fit:cover}
.ac-hp-news-lead-ph{width:52px;height:52px;color:rgba(255,255,255,.35)}
.ac-hp-news-lead-ph svg{width:100%;height:100%;display:block}
.ac-hp-news-lead-body{display:flex;flex-direction:column;gap:8px;padding:20px 22px 22px}
.ac-hp-news-lead-title{font-size:20px;font-weight:600;line-height:1.25;color:var(--ac-ink-900);letter-spacing:-.012em}
.ac-hp-news-lead:hover .ac-hp-news-lead-title{color:var(--ac-action)}
.ac-hp-news-lead-excerpt{color:var(--mut);font-size:15px;line-height:1.55}
.ac-hp-news-side{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--ac-r-lg);padding:8px 18px}
.ac-hp-news-row{display:flex;flex-direction:column;gap:3px;padding:11px 2px;text-decoration:none;color:inherit;
	border-bottom:1px solid var(--line)}
.ac-hp-news-row:last-of-type{border-bottom:0}
.ac-hp-news-row-title{font-weight:600;font-size:15px;line-height:1.35;color:var(--ac-ink-900)}
.ac-hp-news-row:hover .ac-hp-news-row-title{color:var(--ac-action)}
.ac-hp-news-row-meta{color:var(--mut);font-size:12.5px}
.ac-hp-news-more{margin-top:auto;padding:13px 2px 11px;font-size:13.5px;font-weight:600;color:var(--ac-action);text-decoration:none}
.ac-hp-news-more:hover{text-decoration:underline}

/* ---- #hp-sectors — colorful category grid (accent cycles navy/red/blue/gold) ---- */
.ac-hp-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ac-hp-cat{--acc:var(--navy);position:relative;background:#fff;border:1px solid var(--line);border-top:3px solid var(--acc);
	border-radius:var(--ac-r-md);padding:14px 16px;text-align:left;
	display:grid;grid-template-columns:26px 1fr;column-gap:12px;row-gap:1px;align-items:center;
	transition:var(--ac-motion-hover)}
.ac-hp-cat:nth-child(4n+2){--acc:var(--red)}
.ac-hp-cat:nth-child(4n+3){--acc:var(--blue)}
.ac-hp-cat:nth-child(4n+4){--acc:var(--gold)}
.ac-hp-cat:hover{border-color:var(--acc);box-shadow:var(--ac-shadow-sm);transform:translateY(-2px)}
/* icon sits left of the text, vertically centered across both lines */
.ac-hp-cat-ico{grid-row:1/3;width:26px;height:26px;color:var(--acc)}
.ac-hp-cat-ico svg{width:100%;height:100%;display:block}
.ac-hp-cat-nm{grid-column:2;display:block;font-weight:600;font-size:14.5px;color:var(--ac-ink-900)}
.ac-hp-cat-ct{grid-column:2;display:block;color:var(--mut);font-size:12.5px}
.ac-hp-cat-go{position:absolute;right:14px;top:50%;font-size:15px;font-weight:600;color:var(--acc);
	opacity:0;transform:translateY(-50%) translateX(-4px);
	transition:opacity var(--ac-dur) var(--ac-ease),transform var(--ac-dur) var(--ac-ease)}
.ac-hp-cat:hover .ac-hp-cat-go{opacity:1;transform:translateY(-50%)}

/* ---- #hp-featured — white section so the gray-bodied cards stand out; 4-up
   on the homepage (browse stays 3-up) ---- */
.ac-hp-featured{background:#fff}
.ac-hp .ac-co-grid{grid-template-columns:repeat(4,1fr);gap:14px}
.ac-hp-featured .ac-co-card{box-shadow:var(--ac-shadow-sm)}
.ac-hp-featured .ac-co-card:hover{box-shadow:var(--ac-shadow-md)}

/* ---- #hp-stats — flag-striped stat band (verified = admin + subscription) ---- */
.ac-hp-stats{background:var(--ac-navy-800);color:#fff;padding:32px 0;
	border-top:4px solid var(--red);box-shadow:inset 0 4px 0 #fff}
.ac-hp-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:center}
.ac-hp-stat-n{font-size:30px;font-weight:600;color:var(--gold);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.ac-hp-stat-l{color:#aebdd4;font-size:13px;margin-top:4px;text-transform:uppercase;letter-spacing:.06em}

/* ---- #hp-engage — one rich row: how it works · testimonial · get started ---- */
.ac-hp-eng-row{display:grid;grid-template-columns:1.1fr 1.05fr .95fr;gap:14px;align-items:stretch}
.ac-hp-eng-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--ac-r-lg);
	padding:18px 20px;display:flex;flex-direction:column;box-shadow:var(--ac-shadow-xs)}
.ac-hp-eng-h{font-size:17px;font-weight:600;color:var(--ac-ink-900);margin:0 0 12px;letter-spacing:-.01em}

/* #hp-how — two compact tracks (buyers blue, companies red) */
.ac-hp-mini{margin-bottom:12px}
.ac-hp-mini h3{margin:0 0 6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--acc)}
.ac-hp-mini-bu{--acc:var(--blue)}
.ac-hp-mini-co{--acc:var(--red);margin-bottom:8px}
.ac-hp-mini ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}
.ac-hp-mini li{display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.45;color:var(--ac-gray-700)}
.ac-hp-mini li span{flex:0 0 17px;height:17px;border-radius:50%;background:var(--acc);color:#fff;font-size:10px;
	font-weight:600;line-height:1;display:flex;align-items:center;justify-content:center;margin-top:2px}
.ac-hp-eng-link{margin-top:auto;padding-top:8px;font-size:13px;font-weight:600;color:var(--ac-action);text-decoration:none}
.ac-hp-eng-link:hover{text-decoration:underline}

/* #hp-testimonials — single rotating quote (Alpine) */
.ac-hp-eng-quote{overflow:hidden}
.ac-hp-quote-mark{position:absolute;top:34px;right:20px;font-size:54px;line-height:1;font-weight:700;color:var(--gold);
	opacity:.3;font-family:Georgia,"Times New Roman",serif}
.ac-hp-quote{margin:0;display:flex;flex-direction:column;flex:1}
.ac-hp-quote blockquote{margin:0 0 14px;font-size:15px;line-height:1.55;color:var(--ink);min-height:94px}
.ac-hp-quote figcaption{display:flex;align-items:center;gap:10px;margin-top:auto}
.ac-hp-quote-avatar{flex:0 0 32px;height:32px;border-radius:50%;background:var(--navy);color:#fff;font-weight:600;
	font-size:13px;display:flex;align-items:center;justify-content:center}
.ac-hp-quote-who{display:flex;flex-direction:column}
.ac-hp-quote-name{font-weight:600;font-size:13px;color:var(--ac-ink-900)}
.ac-hp-quote-role{color:var(--mut);font-size:12px}
.ac-hp-quote-dots{display:flex;justify-content:center;gap:9px;padding-top:14px}
.ac-hp-quote-dots button{width:11px;height:11px;border-radius:50%;background:var(--line);border:0;padding:0;cursor:pointer;
	transition:background var(--ac-dur) var(--ac-ease),transform var(--ac-dur) var(--ac-ease)}
.ac-hp-quote-dots button:hover{background:var(--ac-border-strong)}
.ac-hp-quote-dots button.is-on{background:var(--red);transform:scale(1.15)}

/* #hp-closing — navy get-started card (claim + badges modal trigger) */
.ac-hp-eng-cta{background:var(--ac-navy-800);border-color:var(--ac-navy-700);color:#fff}
.ac-hp-eng-cta .ac-hp-label{color:#9fb2cc}
.ac-hp-eng-cta .ac-hp-eng-h{color:#fff}
.ac-hp-eng-cta-p{margin:0 0 8px;color:#c2cee0;font-size:13.5px;line-height:1.5}
.ac-hp-urg{font-size:12.5px;color:#9fb2cc;font-weight:600;margin:0}
.ac-hp-eng-cta-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:14px}
.ac-hp-eng-ghost{background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff}
.ac-hp-eng-ghost:hover{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.5)}

/* badge modal (Alpine-driven) */
.ac-hp-modal{position:fixed;inset:0;z-index:var(--ac-z-modal);background:rgba(7,16,30,.55);
	display:flex;align-items:center;justify-content:center;padding:20px}
.ac-hp-modal-card{position:relative;background:#fff;border-radius:var(--ac-r-lg);box-shadow:var(--ac-shadow-xl);
	padding:22px;max-width:720px;width:100%;max-height:86vh;overflow:auto;cursor:default}
.ac-hp-modal-h{margin:0 0 14px;font-size:var(--ac-fs-h3);font-weight:600;color:var(--ac-ink-900)}
.ac-hp-modal-x{position:absolute;top:10px;right:12px;background:transparent;border:0;cursor:pointer;
	font-size:22px;line-height:1;color:var(--mut);padding:4px}
.ac-hp-modal-x:hover{color:var(--ac-ink-900)}
.ac-hp-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ac-hp-modal-foot{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}

/* badge legend cards (modal + badge landing pages; .ac-hp-legend grid = /verified/) */
.ac-hp-legend{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ac-hp-leg{background:#fff;border:1px solid var(--line);border-radius:var(--ac-r-md);padding:14px;
	display:block;text-decoration:none;color:inherit;transition:var(--ac-motion-hover)}
a.ac-hp-leg:hover{border-color:var(--ac-border-strong);background:var(--ac-gray-50)}
.ac-hp-leg-h{font-weight:600;font-size:14px;color:var(--ac-ink-900)}
.ac-hp-leg p{margin:6px 0 0;color:var(--mut);font-size:13px;line-height:1.5}

@media(max-width:900px){
	.ac-hp-cats{grid-template-columns:repeat(2,1fr)}
	.ac-hp .ac-co-grid{grid-template-columns:repeat(2,1fr)}
	.ac-hp-eng-row{grid-template-columns:1fr}
	.ac-hp-news-layout{grid-template-columns:1fr}
	.ac-hp-stats-row,.ac-hp-legend{grid-template-columns:repeat(2,1fr)}
	.ac-hp-modal-grid{grid-template-columns:1fr}
	.ac-hp-search{flex-wrap:wrap}.ac-hp-loc{width:100%}
	.ac-hp-search .ac-sg,.ac-hp-search .ac-sb{width:100%;flex:1 1 100%}
	.ac-hp-kw{border-right:0 !important}
}
