/*
 * AUTOBOSS Header & Footer — Site footer skin (setting fstyle = site), loaded after footer-autool.css.
 * Same layout as the AUTOOL design, in this store's global style (as-ui.css DESIGN.md + the Brand Home site skin):
 * white surfaces, ink text, IBM Plex Sans with Plex Mono numbered / tracked labels (autooltech.com), hairline
 * rows and cells (policy pages), surfaces 8/4 px and controls 2 px, one ink primary on light (Subscribe),
 * line-role icon buttons, ink focus ring, monochrome hover on real pointers only, no decoration that moves.
 */

.abhf.abhf-af--site {
	--af-brand: var(--as-ink, #191919);
	--af-bg-0: #fff;
	--af-bg-1: #f7f7f7;
	--af-panel: #fff;
	--af-panel-2: #f7f7f7;
	--af-heading: var(--as-ink, #191919);
	--af-text: #5c5c5c;
	--af-text-soft: #707070;
	--af-line: #e5e5e5;
	--af-line-strong: var(--as-line, rgba(25, 25, 25, .5));
	--af-mono: var(--autoboss-font-mono, 'IBM Plex Mono', ui-monospace, monospace);
	--af-r-lg: var(--as-radius-lg, 8px);
	background: #fff;
	color: var(--af-text);
	counter-reset: abhf-af-col;
}
.abhf.abhf-af--site::before { content: none; }
.abhf.abhf-af--site a:focus-visible, .abhf.abhf-af--site summary:focus-visible, .abhf.abhf-af--site button:focus-visible { outline-color: var(--as-focus, #191919); }

/* ---------- newsletter: light panel in the container, mono eyebrow, dot grid in the top-right corner.
   No top padding: the page above already ends with the global section spacing. ---------- */
.abhf.abhf-af--site .abhf-af-news { overflow: visible; padding: 0; border: 0; background: transparent; }
.abhf.abhf-af--site .abhf-af-news::before, .abhf.abhf-af--site .abhf-af-news::after { content: none; }
.abhf.abhf-af--site .abhf-af-news-in { overflow: hidden; padding: 40px 48px; border-radius: var(--af-r-lg); background: var(--af-bg-1); }
.abhf.abhf-af--site .abhf-af-news-in::after { content: ""; position: absolute; top: 0; right: 0; width: 42%; height: 100%; background-image: radial-gradient(rgba(25, 25, 25, .22) 1px, transparent 1.4px); background-size: 12px 12px; -webkit-mask-image: radial-gradient(ellipse at top right, #000 0%, transparent 70%); mask-image: radial-gradient(ellipse at top right, #000 0%, transparent 70%); pointer-events: none; }
.abhf.abhf-af--site .abhf-af-news-in > * { position: relative; z-index: 1; }
.abhf.abhf-af--site .abhf-af-kicker { gap: 0; margin-bottom: 12px; color: var(--af-text-soft); font-family: var(--af-mono); font-size: 12px; font-weight: 500; letter-spacing: .14em; }
.abhf.abhf-af--site .abhf-af-kicker::before { content: none; }
.abhf.abhf-af--site .abhf-af-headline { margin-bottom: 12px; font-size: clamp(26px, 2.4vw, 34px); font-weight: 700; line-height: 1.15; letter-spacing: 0; text-transform: none; }
.abhf.abhf-af--site .abhf-af-headline b { color: inherit; background: linear-gradient(transparent 62%, var(--as-yellow, #feb511) 62%, var(--as-yellow, #feb511) 92%, transparent 92%); }
.abhf.abhf-af--site .abhf-af-sub { font-size: 15px; line-height: 1.6; }
.abhf.abhf-af--site .abhf-af-form::before, .abhf.abhf-af--site .abhf-af-form::after { content: none; }
.abhf.abhf-af--site .abhf-af-note { font-size: 12px; letter-spacing: 0; }
/* Joined field: white input with the line-role border, ink button flush on the right (outer corners only). */
.abhf.abhf-af--site .abhf-af-form form.frm-fluent-form { border: 1px solid var(--af-line-strong); border-radius: var(--as-radius-ctrl, 2px); background: #fff; }
.abhf.abhf-af--site .abhf-af-form form.frm-fluent-form:focus-within { border-color: var(--af-heading); }
.abhf.abhf-af--site .abhf-af-form input[type="email"] { height: 46px !important; min-height: 46px !important; color: var(--af-heading) !important; }
.abhf.abhf-af--site .abhf-af-form .ff-btn-submit { height: 46px !important; min-height: 46px !important; min-width: 148px !important; }

/* ---------- brand + columns: numbered mono titles, hairline under them ---------- */
.abhf.abhf-af--site .abhf-af-main { background: #fff; }
.abhf.abhf-af--site .abhf-af-body { gap: 32px; padding: 64px 0 48px; }
.abhf.abhf-af--site .abhf-af-company { font-size: 14px; }
.abhf.abhf-af--site .abhf-af-contact a { font-weight: 500; }
.abhf.abhf-af--site .abhf-af-contact .abhf-i { color: var(--af-heading); }
.abhf.abhf-af--site .abhf-af-social a { width: 40px; height: 40px; border-color: var(--af-line-strong); background: transparent; color: var(--af-heading); }
.abhf.abhf-af--site .abhf-af-title { margin: 0 0 16px; padding: 0 0 12px; border-bottom: 1px solid var(--af-line); color: var(--af-heading); font-family: var(--af-mono); font-size: 12px; font-weight: 500; line-height: 16px; letter-spacing: .14em; }
.abhf.abhf-af--site .abhf-af-title::before,
.abhf.abhf-af--site .abhf-af-acc summary span::before { counter-increment: abhf-af-col; content: counter(abhf-af-col, decimal-leading-zero) " / "; position: static; width: auto; height: auto; background: none; color: var(--af-text-soft); }
.abhf.abhf-af--site .abhf-af-m { counter-reset: abhf-af-col; }
.abhf.abhf-af--site .abhf-af-links { gap: 10px; }
.abhf.abhf-af--site .abhf-af-links a { color: var(--af-text); font-size: 15px; }

/* Phone accordions: hairline rows, mono titles, ink chevron. */
.abhf.abhf-af--site .abhf-af-acc summary { min-height: 52px; font-family: var(--af-mono); font-size: 12px; font-weight: 500; letter-spacing: .14em; }
.abhf.abhf-af--site .abhf-af-acc summary .abhf-i { color: var(--af-heading); }

/* ---------- service tiles: hairline cells like the policy pages (mono label, ink value); the frame stays in the container ---------- */
.abhf.abhf-af--site .abhf-af-trust { border: 0; background: #fff; }
.abhf.abhf-af--site .abhf-af-tiles { border: 1px solid var(--af-line); }
.abhf.abhf-af--site .abhf-af-tile { gap: 14px; min-height: 96px; padding: 20px; }
.abhf.abhf-af--site .abhf-af-tile-i { width: auto; height: auto; border: 0; background: none; color: var(--af-heading); }
.abhf.abhf-af--site .abhf-af-tile-t { gap: 4px; }
.abhf.abhf-af--site .abhf-af-tile-t strong { order: -1; gap: 0; color: var(--af-text-soft); font-family: var(--af-mono); font-size: 11px; font-weight: 500; line-height: 14px; letter-spacing: .14em; }
.abhf.abhf-af--site .abhf-af-tile-t strong::after { content: none; }
.abhf.abhf-af--site .abhf-af-tile-t small { color: var(--af-heading); font-size: 15px; font-weight: 600; line-height: 1.35; }

/* ---------- bottom bar ---------- */
.abhf.abhf-af--site .abhf-af-bottom { background: #fff; }
.abhf.abhf-af--site .abhf-af-bottom-in { padding: 24px 0 32px; border-top: 1px solid var(--af-line); }
.abhf.abhf-af--site .abhf-af-trust + .abhf-af-bottom .abhf-af-bottom-in { border-top: 0; }
.abhf.abhf-af--site .abhf-af-privacy a { color: var(--af-heading); font-size: 13px; font-weight: 500; letter-spacing: 0; }
.abhf.abhf-af--site .abhf-af-copy { font-family: var(--af-mono); font-size: 12px; letter-spacing: .04em; }
.abhf.abhf-af--site .abhf-af-legal a { color: var(--af-text-soft); font-family: var(--af-mono); font-size: 11px; font-weight: 500; letter-spacing: .14em; }
.abhf.abhf-af--site .abhf-af-pay .abhf-card-item { box-shadow: inset 0 0 0 1px var(--af-line); }

/* ---------- hover: real pointers only; line-role buttons and underlined links, nothing moves ---------- */
@media (hover: hover) and (pointer: fine) {
	.abhf.abhf-af--site .abhf-af-social a:hover { border-color: var(--af-heading); background: var(--as-tint-hover, rgba(25, 25, 25, .05)); }
	.abhf.abhf-af--site a.abhf-af-tile:hover { background: var(--af-bg-1); }
	.abhf.abhf-af--site a.abhf-af-tile:hover small { text-decoration: underline; text-underline-offset: 4px; }
	.abhf.abhf-af--site .abhf-af-acc summary:hover span { color: var(--af-heading); }
}

/* ---------- tablet ---------- */
@media (max-width: 1100px) {
	.abhf.abhf-af--site .abhf-af-news-in { padding: 32px; }
}

/* ---------- phone ---------- */
@media (max-width: 767px) {
	.abhf.abhf-af--site .abhf-af-news-in { padding: 24px 20px; }
	.abhf.abhf-af--site .abhf-af-news-in::after { width: 70%; height: 50%; }
	.abhf.abhf-af--site .abhf-af-headline { font-size: clamp(24px, 6.8vw, 30px); }
	.abhf.abhf-af--site .abhf-af-m { padding-top: 32px; }
	.abhf.abhf-af--site .abhf-af-tiles { border-left: 0; border-right: 0; }
	.abhf.abhf-af--site .abhf-af-bottom-in { border-top: 0; }
	.abhf.abhf-af--site .abhf-af-acc:not(:has(~ .abhf-af-acc)) { border-bottom: 1px solid var(--af-line); } /* line under the last menu */
	.abhf.abhf-af--site .abhf-af-tile { gap: 10px; padding: 16px 14px; }
	.abhf.abhf-af--site .abhf-af-m .abhf-af-links { gap: 0; } /* site gap 10px stacked on the 8px link padding */
	.abhf.abhf-af--site .abhf-af-m .abhf-af-links a { padding: 6px 0; }
}
@media (max-width: 460px) {
	.abhf.abhf-af--site .abhf-af-form .ff-btn-submit { min-width: 0 !important; padding: 0 14px !important; }
}
