/*
 * FAQ — Hero (glass search console + quick-jump pills + decorations)
 * Depends on: design-tokens.css, log-global-core.css
 * Page: body.log-faq-page
 */

body.log-faq-page .entry-content.is-layout-constrained > .faq-hero {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
}

/* Blocksy's [data-vertical-spacing*="top"] attribute selector adds its own
   padding-top to .ct-container ahead of the hero (same fix applied on
   shop/category/delivery-proof pages). */
body.log-faq-page [class*="ct-container"][data-vertical-spacing] {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.faq-hero {
	position: relative;
	background: linear-gradient(135deg, var(--ink-950) 0%, #0d0b06 28%, #1a1306 50%, #241a07 72%, var(--ink-950) 100%);
	overflow: hidden;
	padding: 52px 24px 64px;
	text-align: center;
}

/* multi-point gold ambient layer (matches delivery-proof hero) */
.faq-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		radial-gradient(ellipse 60% 55% at 8% 10%, var(--gold-glass-20) 0%, transparent 65%),
		radial-gradient(ellipse 50% 60% at 88% 40%, var(--gold-glass-10) 0%, transparent 65%),
		radial-gradient(ellipse 45% 35% at 50% 100%, var(--gold-glass-10) 0%, transparent 60%),
		linear-gradient(160deg, var(--gold-glass-06) 0%, transparent 50%);
}

/* subtle grid texture (matches delivery-proof hero) */
.faq-hero::after {
	content: '';
	position: absolute;
	inset: 0;
	background-image: linear-gradient(var(--gold-glass-04) 1px, transparent 1px), linear-gradient(90deg, var(--gold-glass-04) 1px, transparent 1px);
	background-size: 48px 48px;
	pointer-events: none;
}

/* ── Decorative rising particles (matches delivery-proof hero) ── */
.fh-bubble { position: absolute; border-radius: 50%; pointer-events: none; opacity: 0; animation: faqParticleRise var(--dur, 8s) ease-in-out var(--delay, 0s) infinite; }
.fh-bubble.glow { box-shadow: 0 0 6px 2px var(--gold-glass-55); }
.fh-bubble.glow-lg { box-shadow: 0 0 10px 4px var(--gold-glass-40); }

@keyframes faqParticleRise {
	0%   { opacity: 0; transform: translateY(0) scale(.5); }
	10%  { opacity: 1; }
	75%  { opacity: .5; }
	100% { opacity: 0; transform: translateY(-200px) scale(1.2); }
}

@media(max-width:640px) { .fh-bubble { display: none; } }

/* ── Decorative orbiting "FAQ" badges ── */
.fh-badge {
	position: absolute;
	pointer-events: none;
	opacity: .94;
	animation: faqOrbitMove 11s ease-in-out infinite;
}

.fh-badge.p2 { opacity: .85; animation: faqOrbitMoveRev 14s ease-in-out infinite; }

@keyframes faqOrbitMove {
	0%   { transform: translate(0, 0); }
	25%  { transform: translate(32px, -22px); }
	50%  { transform: translate(0, -36px); }
	75%  { transform: translate(-32px, -22px); }
	100% { transform: translate(0, 0); }
}

@keyframes faqOrbitMoveRev {
	0%   { transform: translate(0, 0); }
	25%  { transform: translate(-22px, -18px); }
	50%  { transform: translate(0, -28px); }
	75%  { transform: translate(22px, -18px); }
	100% { transform: translate(0, 0); }
}

.fh-badge-circle {
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background: linear-gradient(150deg, var(--gold-400), var(--gold-600));
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 12px 28px -6px var(--gold-glass-55);
	border: 3px solid var(--white-glass-15);
	animation: faqSpinBadge 9s linear infinite;
}

.fh-badge.p2 .fh-badge-circle { animation: faqSpinBadge 7s linear infinite reverse; }

@keyframes faqSpinBadge {
	from { transform: rotate(0deg); }
	to   { transform: rotate(360deg); }
}

.fh-badge-text { color: var(--ink-900); font-family: var(--display); font-weight: 800; letter-spacing: .02em; }

@media(max-width:900px) { .fh-badge { display: none; } }

/* ── Hero content ── */
.fh-inner { position: relative; z-index: 2; max-width: 720px; margin: 0 auto; }

.fh-kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--gold-glass-10);
	border: 1px solid var(--gold-glass-35);
	color: var(--gold-400);
	padding: 7px 15px;
	border-radius: var(--r-pill);
	font-size: 10.5px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .14em;
	text-transform: uppercase;
	opacity: 0;
	animation: faqHeroIn .7s var(--ease) forwards;
}

@keyframes faqHeroIn {
	from { opacity: 0; transform: translateY(14px); }
	to   { opacity: 1; transform: translateY(0); }
}

.faq-hero h1 {
	font-family: var(--display);
	font-weight: 700;
	line-height: 1.1;
	font-size: clamp(28px, 4.6vw, 48px);
	letter-spacing: -.01em;
	margin-top: 14px;
	opacity: 0;
	animation: faqHeroIn .7s var(--ease) .08s forwards;
	color: var(--white);
}

.faq-hero h1 em {
	font-style: italic;
	font-weight: 600;
	background: linear-gradient(100deg, var(--sage-700) 30%, var(--plum-500) 50%, var(--sage-700) 70%);
	background-size: 240% auto;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	animation: faqShimmerText 6s linear infinite;
}

@keyframes faqShimmerText {
	0%   { background-position: 0% 50%; }
	100% { background-position: -240% 50%; }
}

.faq-hero p.lede {
	margin: 10px auto 0;
	max-width: 480px;
	color: var(--white-glass-55);
	font-size: 13.5px;
	line-height: 1.6;
	opacity: 0;
	animation: faqHeroIn .7s var(--ease) .16s forwards;
}

/* ── Glass search console ── */
.fh-search-shell {
	position: relative;
	z-index: 2;
	max-width: 600px;
	margin: 26px auto 0;
	opacity: 0;
	animation: faqHeroIn .7s var(--ease) .24s forwards;
}

.fh-search-box {
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--white-glass-75);
	backdrop-filter: blur(10px);
	border: 2px solid var(--gold-400);
	border-radius: var(--r-pill);
	padding: 6px 6px 6px 20px;
	box-shadow: 0 20px 40px -14px var(--ink-glass-25);
	transition: box-shadow .3s var(--ease), border-color .3s var(--ease);
}

.fh-search-box:focus-within {
	border-color: var(--gold-500);
	box-shadow: 0 24px 46px -12px var(--ink-glass-32);
}

.fh-search-box .icon { width: 17px; height: 17px; color: var(--gold-600); flex-shrink: 0; }

.fh-search-box input {
	flex: 1;
	border: none;
	background: none;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--ink-900);
	padding: 11px 0;
	outline: none;
	font-family: inherit;
}

.fh-search-box input:focus {
	background: var(--gold-glass-10) !important;
}

.fh-search-box input::placeholder { color: var(--gray-600); }

.fh-search-box button {
	background: var(--ink-900);
	color: var(--paper);
	font-weight: 700;
	font-size: 12.5px;
	padding: 12px 22px;
	border-radius: var(--r-pill);
	white-space: nowrap;
	transition: background .25s var(--ease), transform .25s var(--ease);
	font-family: inherit;
	cursor: pointer;
}

.fh-search-box button:hover { background: var(--gold-600); transform: translateY(-1px); }

.fh-live-count { margin-top: 10px; font-size: 11.5px; color: var(--white-glass-55); font-weight: 600; min-height: 16px; }
.fh-live-count strong { color: var(--gold-400); }

/* ── Quick-jump popular pills ── */
.fh-quick-row {
	position: relative;
	z-index: 2;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-top: 20px;
	opacity: 0;
	animation: faqHeroIn .7s var(--ease) .32s forwards;
}

.fh-quick-pill {
	display: flex;
	align-items: center;
	gap: 6px;
	background: var(--white-glass-06);
	border: 1px solid var(--gold-glass-20);
	color: var(--white-glass-80);
	padding: 8px 14px;
	border-radius: var(--r-pill);
	font-size: 11.5px;
	font-weight: 600;
	line-height: 1.2;
	transition: transform .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease);
	font-family: inherit;
	cursor: pointer;
}

.fh-quick-pill:hover { transform: translateY(-3px); background: var(--gold-glass-10); border-color: var(--gold-glass-35); }
.fh-quick-pill .icon { width: 11px; height: 11px; color: var(--gold-500); }

@media(max-width:540px) {
	.fh-search-box { padding: 5px 5px 5px 16px; flex-wrap: nowrap; }
	.fh-search-box button { padding: 11px 16px; }
}
