/* ==========================================================================
   Antea · Layout: barra annunci, header di vetro, mega menu, ricerca,
   mini-carrello, menu mobile, footer
   ========================================================================== */

/* ---- Barra annunci ---- */
.a-announce {
	position: relative;
	z-index: calc(var(--a-z-header) + 1);
	background: var(--a-obsidian);
	color: var(--a-silk);
	font-size: var(--a-fs-xs);
	letter-spacing: .04em;
	text-align: center;
	padding: 9px var(--a-gutter);
}

.a-announce a { color: var(--a-rose-300); }
.a-announce + .a-header { top: calc(var(--a-header-inset) + var(--announce-h, 34px)); }
body.has-announce { --a-header-total: calc(var(--a-header-h) + var(--a-header-inset) * 2 + var(--announce-h, 34px)); }

/* ---- Header ---- */
.a-header {
	position: fixed;
	top: var(--a-header-inset);
	left: 0;
	right: 0;
	z-index: var(--a-z-header);
	padding-inline: var(--a-header-inset);
	pointer-events: none;
	transition: top var(--a-dur) var(--a-ease);
}

.a-header__bar {
	pointer-events: auto;
	width: min(100%, var(--a-container-wide));
	margin-inline: auto;
	height: var(--a-header-h);
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: var(--a-s-4);
	padding-inline: var(--a-s-5) var(--a-s-3);
	border-radius: var(--a-pill);
	transition: height var(--a-dur) var(--a-ease), background var(--a-dur) var(--a-ease), box-shadow var(--a-dur) var(--a-ease), border-color var(--a-dur) var(--a-ease);
}

.a-header.is-compact .a-header__bar { height: var(--a-header-h-compact); }
.a-header.is-compact .a-logo svg { --logo-h: 34px; }
.a-header.is-hidden { transform: translateY(calc(-100% - var(--a-header-inset) * 2)); transition: transform var(--a-dur) var(--a-ease); }
.a-header { transition: transform var(--a-dur) var(--a-ease), top var(--a-dur) var(--a-ease); }

/* Sopra sezioni scure il vetro diventa scuro. */
.a-header.is-over-dark .a-header__bar {
	background: var(--a-glass-dark-bg);
	border-color: var(--a-glass-dark-border);
	box-shadow: var(--a-glass-dark-shadow);
	color: var(--a-silk);
	--a-glass-highlight: rgba(255, 255, 255, .25);
}

.a-header.is-over-dark .a-header__bar::after { background: linear-gradient(180deg, rgba(255, 255, 255, .3), rgba(255, 255, 255, .05) 40%, rgba(255, 255, 255, 0) 70%, rgba(255, 255, 255, .08)); }
.a-header.is-over-dark .a-nav__link { color: var(--a-silk); }
.a-header.is-over-dark .a-header__btn { color: var(--a-silk); }
.a-header.is-over-dark .a-header__btn:hover { background: rgba(255, 255, 255, .1); }
.a-header.is-over-dark .a-logo { color: var(--a-silk); }
.a-header.is-over-dark .a-btn__count { background: var(--a-rose-300); color: var(--a-ink); }

.a-header__brand { display: flex; align-items: center; }
.a-header__brand .a-logo { --logo-h: 42px; transition: transform var(--a-dur) var(--a-ease); }
.a-header__brand .a-logo:hover { transform: translateY(-1px); }

.a-header__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 2px;
}

.a-header__btn {
	position: relative;
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	color: var(--a-fg);
	text-decoration: none;
	transition: background-color var(--a-dur-fast) var(--a-ease), transform var(--a-dur-fast) var(--a-ease);
}

.a-header__btn:hover { background: rgba(25, 25, 26, .06); color: inherit; transform: translateY(-1px); }
.a-header__btn svg { width: 21px; height: 21px; }
.a-header__btn .a-btn__count { top: 3px; right: 3px; }
.a-header__btn--menu { display: none; }

/* ---- Navigazione principale ---- */
.a-nav { display: flex; justify-content: center; }
.a-nav__list { display: flex; align-items: center; gap: 2px; margin: 0; padding: 0; list-style: none; }
.a-nav__item { position: relative; margin: 0; }

.a-nav__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	height: 40px;
	padding: 0 14px;
	border-radius: var(--a-pill);
	color: var(--a-fg);
	font-size: var(--a-fs-sm);
	font-weight: var(--a-fw-medium);
	letter-spacing: .02em;
	text-decoration: none;
	transition: background-color var(--a-dur-fast) var(--a-ease), color var(--a-dur-fast) var(--a-ease);
}

.a-nav__link:hover, .a-nav__item.is-open > .a-nav__link, .a-nav__item.current-menu-item > .a-nav__link, .a-nav__item.current-menu-ancestor > .a-nav__link { background: rgba(25, 25, 26, .06); color: var(--a-fg); }
.a-header.is-over-dark .a-nav__link:hover, .a-header.is-over-dark .a-nav__item.is-open > .a-nav__link { background: rgba(255, 255, 255, .1); }
.a-nav__link svg { width: 14px; height: 14px; transition: transform var(--a-dur-fast) var(--a-ease); }
.a-nav__item.is-open > .a-nav__link svg { transform: rotate(180deg); }
.a-nav__link--accent { color: var(--a-rose-700); }
.a-header.is-over-dark .a-nav__link--accent { color: var(--a-rose-300); }

/* Mega menu: un pannello largo quanto l'header, quattro colonne separate da filetti
   (destinazioni principali, brand, famiglie, note). */
.a-nav__item.has-mega { position: static; }
.a-mega {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	right: 0;
	z-index: var(--a-z-dropdown);
	transform: translateY(8px);
	border-radius: var(--a-r-xl);
	padding: var(--a-s-8) var(--a-s-9);
	color: var(--a-ink);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity var(--a-dur) var(--a-ease), transform var(--a-dur) var(--a-ease), visibility 0s linear var(--a-dur);
}

/* Opaco: sotto passano i titoli giganti dell'hero e anche al 3% di trasparenza si leggevano in filigrana.
   Restano bordo, ombra e riflesso del vetro. */
.a-mega.a-glass--strong { background: linear-gradient(135deg, #fff 0%, #faf9f7 100%); -webkit-backdrop-filter: none; backdrop-filter: none; }
.a-nav__item.is-open > .a-mega, .a-nav__item:focus-within > .a-mega { opacity: 1; visibility: visible; pointer-events: auto; transform: none; transition: opacity var(--a-dur) var(--a-ease), transform var(--a-dur) var(--a-ease), visibility 0s; }

/* Tendina semplice sotto una voce con figli: resta ancorata alla voce. */
.a-mega--narrow { left: 50%; right: auto; width: 280px; padding: var(--a-s-4); transform: translate(-50%, 8px); }
.a-nav__item.is-open > .a-mega--narrow, .a-nav__item:focus-within > .a-mega--narrow { transform: translate(-50%, 0); }

.a-mega__grid { display: grid; grid-template-columns: 1fr 2.25fr 1.45fr 1.55fr; max-width: 1360px; margin-inline: auto; }
.a-mega__col { min-width: 0; padding-right: var(--a-s-7); display: flex; flex-direction: column; } /* colonna flessibile: il collegamento finale scende in fondo */
.a-mega__col + .a-mega__col { padding-left: var(--a-s-7); border-left: 1px solid var(--a-line); }
.a-mega__col h3 { display: flex; align-items: center; gap: 10px; margin: 0 0 var(--a-s-4); padding-bottom: var(--a-s-3); border-bottom: 1px solid var(--a-line); font-family: var(--a-font-sans); font-size: var(--a-fs-2xs); font-weight: var(--a-fw-medium); letter-spacing: .18em; text-transform: uppercase; color: var(--a-fg-mute); }

/* Destinazioni principali: grandi, una per riga, con il numero di fragranze e la freccia al passaggio. */
.a-mega__primary { margin: 0; padding: 0; list-style: none; }
.a-mega__primary li { margin: 0; }
.a-mega__primary a { display: grid; grid-template-columns: 1fr auto; align-items: center; column-gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--a-line); color: var(--a-ink); text-decoration: none; transition: color var(--a-dur-fast) var(--a-ease); }
.a-mega__primary li:last-child a { border-bottom: 0; }
.a-mega__primary span { font-family: var(--a-font-display); font-weight: var(--a-fw-semibold); font-size: var(--a-fs-xl); letter-spacing: .02em; line-height: 1.1; }
.a-mega__primary small { grid-column: 1; font-size: var(--a-fs-2xs); letter-spacing: .04em; color: var(--a-fg-mute); }
.a-mega__primary svg { grid-column: 2; grid-row: 1 / span 2; width: 18px; height: 18px; opacity: 0; transform: translateX(-6px); transition: opacity var(--a-dur-fast) var(--a-ease), transform var(--a-dur-fast) var(--a-ease); }
.a-mega__primary a:hover { color: var(--a-rose-700); }
.a-mega__primary a:hover svg { opacity: 1; transform: none; }

.a-mega__list { margin: 0; padding: 0; list-style: none; }
.a-mega__list--2 { display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--a-s-5); }
.a-mega__list li { margin: 0; }
.a-mega__list a { display: block; padding: 6px 0; color: var(--a-ink-soft); font-size: var(--a-fs-sm); line-height: 1.35; text-decoration: none; transition: color var(--a-dur-fast) var(--a-ease), transform var(--a-dur-fast) var(--a-ease); }
.a-mega__list a:hover { color: var(--a-rose-700); transform: translateX(3px); }
.a-mega__more { display: inline-flex; align-self: flex-start; margin-top: auto; padding-top: var(--a-s-4); font-size: var(--a-fs-sm); }
.a-mega__chips { display: flex; flex-wrap: wrap; gap: 6px 6px; }
.a-mega__chips .a-chip { border-color: var(--a-line); color: var(--a-ink-soft); }
.a-mega__chips .a-chip:hover { border-color: var(--a-rose-400); color: var(--a-rose-700); }

/* ---- Ricerca ---- */
.a-search {
	position: fixed;
	top: var(--a-header-inset);
	left: var(--a-header-inset);
	right: var(--a-header-inset);
	z-index: var(--a-z-drawer);
	max-width: var(--a-container-wide);
	margin-inline: auto;
	max-height: calc(100svh - var(--a-header-inset) * 2);
	display: flex;
	flex-direction: column;
	border-radius: var(--a-r-xl);
	transform: translateY(-12px);
	opacity: 0;
	visibility: hidden;
	transition: opacity var(--a-dur) var(--a-ease), transform var(--a-dur) var(--a-ease), visibility 0s linear var(--a-dur);
}

.a-search.is-open { opacity: 1; visibility: visible; transform: none; transition: opacity var(--a-dur) var(--a-ease), transform var(--a-dur) var(--a-ease), visibility 0s; }
.a-search__form { display: flex; align-items: center; gap: var(--a-s-3); padding: var(--a-s-4) var(--a-s-5); border-bottom: 1px solid var(--a-line); }
.a-search__form > svg { width: 22px; height: 22px; color: var(--a-fg-mute); flex: none; }
.a-search__input { flex: 1; min-height: 48px; border: 0; background: transparent; font-size: var(--a-fs-xl); font-family: var(--a-font-display); font-weight: var(--a-fw-light); letter-spacing: .03em; }
.a-search__input:focus { outline: none; }
.a-search__input::placeholder { color: var(--a-fg-mute); }
.a-search__body { overflow: auto; padding: var(--a-s-5); overscroll-behavior: contain; }
.a-search__grid { display: grid; grid-template-columns: 1fr 2fr; gap: var(--a-s-7); }
.a-search__col h3 { margin: 0 0 var(--a-s-3); font-family: var(--a-font-sans); font-size: var(--a-fs-xs); font-weight: var(--a-fw-medium); letter-spacing: var(--a-track-eyebrow); text-transform: uppercase; color: var(--a-fg-mute); }
.a-search__list { margin: 0; padding: 0; list-style: none; }
.a-search__list li { margin: 0; }
.a-search__list a { display: block; padding: 6px 0; color: var(--a-fg); text-decoration: none; font-size: var(--a-fs-sm); }
.a-search__list a:hover { color: var(--a-rose-700); }
.a-search__products { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: var(--a-s-3); }
.a-search__product { display: flex; align-items: center; gap: var(--a-s-3); padding: 8px; border-radius: var(--a-r); color: var(--a-fg); text-decoration: none; transition: background-color var(--a-dur-fast) var(--a-ease); }
.a-search__product:hover { background: var(--a-surface); color: var(--a-fg); }
.a-search__product img { width: 56px; height: 56px; object-fit: contain; border-radius: var(--a-r-sm); background: #fff; flex: none; }
.a-search__product small { display: block; font-size: var(--a-fs-2xs); color: var(--a-fg-mute); text-transform: uppercase; letter-spacing: var(--a-track-caps); }
.a-search__product strong { display: block; font-weight: var(--a-fw-medium); font-size: var(--a-fs-sm); line-height: 1.3; }
.a-search__product span { font-size: var(--a-fs-xs); color: var(--a-fg-soft); }
.a-search__empty { color: var(--a-fg-mute); padding: var(--a-s-6) 0; text-align: center; }
.a-search__all { margin-top: var(--a-s-4); }

/* ---- Mini-carrello ---- */
.a-minicart__items { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: var(--a-s-4); }
.a-minicart__item { display: grid; grid-template-columns: 72px 1fr auto; gap: var(--a-s-3); align-items: start; margin: 0; }
.a-minicart__item img { width: 72px; height: 72px; object-fit: contain; border-radius: var(--a-r-sm); background: #fff; border: 1px solid var(--a-line); }
.a-minicart__item small { display: block; font-size: var(--a-fs-2xs); color: var(--a-fg-mute); text-transform: uppercase; letter-spacing: var(--a-track-caps); }
.a-minicart__name { display: block; font-size: var(--a-fs-sm); font-weight: var(--a-fw-medium); color: var(--a-fg); text-decoration: none; line-height: 1.3; }
.a-minicart__meta { font-size: var(--a-fs-xs); color: var(--a-fg-soft); margin-top: 2px; }
.a-minicart__row { display: flex; align-items: center; gap: var(--a-s-3); margin-top: var(--a-s-2); }
.a-minicart__remove { color: var(--a-fg-mute); font-size: var(--a-fs-xs); text-decoration: underline; }
.a-minicart__price { font-size: var(--a-fs-sm); font-weight: var(--a-fw-medium); white-space: nowrap; font-variant-numeric: tabular-nums; }
.a-minicart__free { margin-bottom: var(--a-s-4); }
.a-minicart__bar { height: 6px; border-radius: 3px; background: var(--a-silk-2); overflow: hidden; margin-top: 8px; }
.a-minicart__bar span { display: block; height: 100%; width: var(--p, 0%); background: linear-gradient(90deg, var(--a-rose-400), var(--a-rose-600)); border-radius: 3px; transition: width var(--a-dur-slow) var(--a-ease); }
.a-minicart__total { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: var(--a-s-4); font-size: var(--a-fs-lg); }
.a-minicart__total strong { font-family: var(--a-font-display); font-weight: var(--a-fw-regular); font-size: var(--a-fs-h4); }
.a-minicart__actions { display: grid; gap: var(--a-s-2); }
.a-minicart__empty { text-align: center; padding: var(--a-s-9) var(--a-s-4); color: var(--a-fg-mute); }
.a-minicart__empty .a-mark-pulse { margin-bottom: var(--a-s-4); }
.a-minicart.is-busy .a-drawer__body { opacity: .5; pointer-events: none; }

/* ---- Menu mobile ---- */
.a-mobile-nav { margin: 0; padding: 0; list-style: none; }
.a-mobile-nav li { margin: 0; border-bottom: 1px solid var(--a-line); }
.a-mobile-nav a, .a-mobile-nav button { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 14px 0; color: var(--a-fg); font-size: var(--a-fs-lg); font-family: var(--a-font-display); font-weight: var(--a-fw-semibold); letter-spacing: .04em; text-decoration: none; text-align: left; }
.a-mobile-nav .sub-menu { display: none; margin: 0 0 var(--a-s-3); padding: 0 0 0 var(--a-s-4); list-style: none; }
.a-mobile-nav li.is-open > .sub-menu { display: block; }
.a-mobile-nav .sub-menu li { border: 0; }
.a-mobile-nav .sub-menu a { padding: 8px 0; font-size: var(--a-fs-md); font-family: var(--a-font-sans); }
.a-mobile-nav svg { width: 16px; height: 16px; transition: transform var(--a-dur-fast) var(--a-ease); }
.a-mobile-nav li.is-open > button svg { transform: rotate(180deg); }
.a-mobile-nav__extra { margin-top: var(--a-s-6); display: grid; gap: var(--a-s-2); }

@media (max-width: 1320px) {
	.a-mega { padding: var(--a-s-7) var(--a-s-8); }
}

@media (max-width: 1100px) {
	.a-nav__link { padding: 0 10px; }
	.a-mega__grid { grid-template-columns: 1fr 1.5fr 1.15fr 1.25fr; }
	.a-mega__col { padding-right: var(--a-s-5); }
	.a-mega__col + .a-mega__col { padding-left: var(--a-s-5); }
	.a-mega__col--brands .a-mega__list--2, .a-mega__col--families .a-mega__list--2 { grid-template-columns: 1fr; }
	.a-mega__col--brands .a-mega__list li:nth-child(n + 8) { display: none; }
}

@media (max-width: 960px) {
	.a-header__bar { grid-template-columns: auto 1fr; padding-inline: var(--a-s-4) var(--a-s-2); }
	.a-nav { display: none; }
	.a-header__btn--menu { display: inline-grid; }
	.a-header__btn--account { display: none; }
	.a-search__grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
	:root { --a-header-h: 62px; --a-header-h-compact: 54px; --a-header-inset: 8px; }
	.a-header__brand .a-logo { --logo-h: 36px; }
	.a-header__btn { width: 40px; height: 40px; }
	.a-search__input { font-size: var(--a-fs-lg); }
}

/* ---- Footer ---- */
.a-footer {
	position: relative;
	margin-top: var(--a-section);
	background: var(--a-obsidian);
	color: var(--a-silk);
	overflow: hidden;
}
/* Pagine a blocchi che finiscono con una sezione a tutta larghezza (es. l'invito all'azione): niente spazio prima del footer. */
.a-canvas:has(> .a-block:last-child) + .a-footer { margin-top: 0; }

.a-footer a { color: inherit; text-decoration: none; }
.a-footer a:hover { color: var(--a-rose-300); }

/* Rassicuranti: originalità, consegna, reso, pagamenti. Solo qui. */
.a-footer__perks { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--a-s-5) var(--a-s-7); margin: 0; padding: var(--a-s-7) 0; list-style: none; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.a-footer__perks li { margin: 0; display: flex; align-items: flex-start; gap: var(--a-s-3); }
.a-footer__perks svg { flex: none; width: 24px; height: 24px; margin-top: 2px; color: var(--a-rose-300); }
.a-footer__perks strong { display: block; font-weight: var(--a-fw-medium); font-size: var(--a-fs-sm); color: var(--a-silk); }
.a-footer__perks span { display: block; margin-top: 2px; font-size: var(--a-fs-xs); color: #A6A5A0; }

.a-footer__top {
	display: grid;
	grid-template-columns: 1.4fr repeat(3, 1fr);
	gap: var(--a-s-9) var(--a-s-7);
	padding-block: var(--a-section-sm);
	border-bottom: 1px solid rgba(255, 255, 255, .1);
	position: relative;
	z-index: 1;
}

.a-footer__brand .a-logo { --logo-h: 56px; color: var(--a-silk); margin-bottom: var(--a-s-5); }
.a-footer__brand p { max-width: 38ch; color: #CFCEC9; font-size: var(--a-fs-sm); }
.a-footer__col h3 { margin: 0 0 var(--a-s-4); font-family: var(--a-font-sans); font-size: var(--a-fs-xs); font-weight: var(--a-fw-medium); letter-spacing: var(--a-track-eyebrow); text-transform: uppercase; color: #A6A5A0; }
.a-footer__col ul { margin: 0; padding: 0; list-style: none; }
.a-footer__col li { margin: 0 0 10px; font-size: var(--a-fs-sm); }
.a-footer__social { display: flex; gap: 8px; margin-top: var(--a-s-5); }
.a-footer__social a { display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .18); transition: background-color var(--a-dur-fast) var(--a-ease), border-color var(--a-dur-fast) var(--a-ease); }
.a-footer__social a:hover { background: rgba(255, 255, 255, .08); border-color: var(--a-rose-300); color: var(--a-silk); }
.a-footer__social svg { width: 18px; height: 18px; }

.a-footer__news { padding-block: var(--a-section-sm); border-bottom: 1px solid rgba(255, 255, 255, .1); display: grid; grid-template-columns: 1fr 1fr; gap: var(--a-s-7); align-items: center; position: relative; z-index: 1; }
.a-footer__news h2 { margin: 0 0 var(--a-s-2); color: var(--a-silk); font-size: var(--a-fs-h3); }
.a-footer__news p { margin: 0; color: #CFCEC9; font-size: var(--a-fs-sm); }
.a-footer__form { display: flex; gap: var(--a-s-2); }
.a-footer__form .a-input { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .18); color: var(--a-silk); border-radius: var(--a-pill); padding-inline: 22px; }
.a-footer__form .a-input::placeholder { color: #A6A5A0; }
.a-footer__consent { grid-column: 1 / -1; font-size: var(--a-fs-xs); color: #A6A5A0; }

.a-footer__bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--a-s-4) var(--a-s-6); padding-block: var(--a-s-6); font-size: var(--a-fs-xs); color: #A6A5A0; position: relative; z-index: 1; }
.a-footer__legal { display: flex; flex-wrap: wrap; gap: var(--a-s-4); margin: 0; padding: 0; list-style: none; }
.a-footer__legal li { margin: 0; }
.a-footer__credit a { color: var(--a-rose-300); }

@media (max-width: 960px) {
	.a-footer__top { grid-template-columns: 1fr 1fr; }
	.a-footer__brand { grid-column: 1 / -1; }
	.a-footer__news { grid-template-columns: 1fr; }
	.a-footer__perks { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
	.a-footer__top { grid-template-columns: 1fr; gap: var(--a-s-7); }
	.a-footer__form { flex-direction: column; }
	.a-footer__perks { grid-template-columns: 1fr; gap: var(--a-s-4); }
}

/* ---- Barra d'acquisto fissa (mobile) ---- */
.a-buybar {
	position: fixed;
	left: var(--a-header-inset);
	right: var(--a-header-inset);
	bottom: calc(var(--a-header-inset) + env(safe-area-inset-bottom));
	z-index: var(--a-z-header);
	display: none;
	align-items: center;
	justify-content: space-between;
	gap: var(--a-s-3);
	padding: 10px 10px 10px 18px;
	border-radius: var(--a-pill);
	transform: translateY(calc(100% + 24px));
	transition: transform var(--a-dur) var(--a-ease);
}

.a-buybar.is-visible { transform: none; }
.a-buybar__price { display: flex; flex-direction: column; line-height: 1.2; }
.a-buybar__price small { font-size: var(--a-fs-2xs); color: var(--a-fg-mute); text-transform: uppercase; letter-spacing: var(--a-track-caps); }
.a-buybar__price strong { font-size: var(--a-fs-lg); font-weight: var(--a-fw-medium); }

@media (max-width: 960px) {
	.a-buybar { display: flex; }
}

/* ---- Banner cookie ---- */
.a-consent { position: fixed; left: var(--a-header-inset); right: var(--a-header-inset); bottom: calc(var(--a-header-inset) + env(safe-area-inset-bottom)); z-index: var(--a-z-toast); max-width: 720px; margin-inline: auto; display: grid; grid-template-columns: 1fr auto; gap: var(--a-s-5); align-items: center; padding: var(--a-s-5) var(--a-s-6); border-radius: var(--a-r-xl); font-size: var(--a-fs-sm); }
.a-consent__text strong { display: block; margin-bottom: 4px; font-family: var(--a-font-display); font-weight: var(--a-fw-semibold); font-size: var(--a-fs-lg); letter-spacing: .04em; }
.a-consent__text p { margin: 0; color: var(--a-fg-soft); }
.a-consent__prefs { margin-top: var(--a-s-3); }
.a-consent__prefs summary { cursor: pointer; font-size: var(--a-fs-xs); color: var(--a-accent); text-decoration: underline; }
.a-consent__prefs .a-check { margin-top: 8px; font-size: var(--a-fs-xs); }
.a-consent__actions { display: flex; flex-direction: column; gap: 6px; }
@media (max-width: 640px) {
	.a-consent { grid-template-columns: 1fr; }
	.a-consent__actions { flex-direction: row; flex-wrap: wrap; }
	.a-consent__actions .a-btn { flex: 1; }
}
