/*
Theme Name: Ammazza
Theme URI: https://the-other.studio
Author: The Other Studio
Author URI: https://the-other.studio
Description: Tema Ammazza (fork do TOS Base). Header fixo com Delivery/Takeaway, compatível com WPBakery.
Version: 1.1.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ammazza
Tags: custom-logo, custom-menu, full-width-template, wpbakery
*/

/* =============================================
   GARET — webfonts locais (assets/fonts/)
   Uma só família, com weight/style declarados,
   para que font-weight: 700 e <em> funcionem.
============================================= */
@font-face {
	font-family: 'Garet';
	src: url('assets/fonts/garet-regular-webfont.woff2') format('woff2'),
	     url('assets/fonts/garet-regular-webfont.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Garet';
	src: url('assets/fonts/garet-regular-italic-webfont.woff2') format('woff2'),
	     url('assets/fonts/garet-regular-italic-webfont.woff') format('woff');
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: 'Garet';
	src: url('assets/fonts/garet-bold-webfont.woff2') format('woff2'),
	     url('assets/fonts/garet-bold-webfont.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Garet';
	src: url('assets/fonts/garet-bold-italic-webfont.woff2') format('woff2'),
	     url('assets/fonts/garet-bold-italic-webfont.woff') format('woff');
	font-weight: 700;
	font-style: italic;
	font-display: swap;
}

/* =============================================
   TOKENS
============================================= */
:root {
	--amz-red:    #FF0000;
	--amz-red-dk: #C42115;
	--amz-cream:  #FBF3DC;
	--amz-yellow: #FCE97D;
	--amz-brown:  #4A1F14;
	--amz-font:   'Garet', Arial, Helvetica, sans-serif;
	--amz-radius: 999px;
	--gutter: 0px;                                 /* margem lateral (afinar por secção) — sempre com unidade */
	--gap: 0px;                                    /* espaço entre colunas (afinar por secção) — sempre com unidade */
	--header-pad: 40px;                            /* laterais do header */
	--header-height: 80px;                         /* sobreposto pelo Customizer */
	--amz-bullet-empty: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 15'%3E%3Cpath d='M11.9473 13.5049C11.6828 13.3336 11.4078 13.1757 11.1211 13.0342C9.76743 12.368 8.18021 12.0215 6.53223 12.0215C5.71605 12.0215 4.89207 12.1052 4.08301 12.2686C2.97004 12.4906 1.95219 12.9027 1.04785 13.4941C1.16497 13.0364 1.25773 12.5618 1.32324 12.0713C1.54399 10.58 1.54297 9.17907 1.54297 7.8623C1.54297 7.67913 1.54316 7.49767 1.54395 7.31641C1.56018 5.64224 1.54109 3.6477 1.07813 1.71582C1.06326 1.65378 1.04597 1.5926 1.03027 1.53125C1.93685 2.12662 2.96147 2.54074 4.08594 2.76562C4.8631 2.92802 5.67139 3.00976 6.48926 3.00977C7.36114 3.00977 8.22027 2.91714 9.04199 2.7334C10.1102 2.50555 11.0861 2.09486 11.9492 1.52441C11.6567 2.64405 11.4921 3.88053 11.46 5.22266C11.4285 6.21781 11.4321 7.202 11.4355 8.14355C11.4361 8.28715 11.437 8.43085 11.4375 8.57422C11.4186 10.4859 11.5801 12.0929 11.9473 13.5049Z' fill='none' stroke='%23000'/%3E%3C/svg%3E");
	--amz-bullet-full: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 15'%3E%3Cpath d='M10.8607 13.444C9.58849 12.8193 8.08386 12.4889 6.50954 12.4889C5.72914 12.4889 4.94025 12.5681 4.16542 12.7242C2.83939 12.9893 1.6623 13.5338 0.667252 14.3429C0.434588 14.5316 0.21411 14.7351 0.00423718 14.951C0.401196 14.0527 0.680762 13.0538 0.825448 11.9691C1.0393 10.5287 1.03929 9.17208 1.03956 7.8599C1.03956 7.67718 1.03956 7.495 1.04035 7.31281C1.05652 5.65073 1.03559 3.72328 0.589877 1.86875C0.436977 1.23267 0.239024 0.636343 0 0.0818794C0.106528 0.191666 0.216226 0.298293 0.328847 0.401234C1.38855 1.3701 2.6804 2.01197 4.16833 2.30868C4.90951 2.46349 5.68249 2.54169 6.46634 2.54169C7.30001 2.54169 8.1191 2.45322 8.90083 2.27893C10.5244 1.93457 11.9149 1.14473 13 0C12.3486 1.45514 11.9904 3.21673 11.9416 5.25292C11.9109 6.23153 11.9143 7.20039 11.9178 8.13713C11.9183 8.2822 11.9188 8.42727 11.9191 8.57207C11.8942 11.0861 12.1881 13.0236 12.8431 14.6675C12.8882 14.7807 12.9369 14.8902 12.9857 15C12.3741 14.3621 11.6647 13.8397 10.8607 13.444Z' fill='%23000'/%3E%3C/svg%3E");
	--assets: url("https://www.ammazza.pt/wp-content/uploads/2026/09/");
}

/* =============================================
   RESET & BASE
============================================= */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
	font: 400 16px/1.6 var(--amz-font);
	color: var(--amz-red);
	background: var(--amz-cream);
	padding-top: var(--header-height);
}
img { max-width: 100%; height: auto; display: block; }
a { text-decoration: none; color: inherit; }
ul { list-style: none; }
[id] { scroll-margin-top: calc(var(--header-height) + 16px); }

/* WPBakery reset */
.vc_row, .vc_row-fluid, .wpb_row, .vc_column_container, .vc_column-inner, .wpb_wrapper, [class*="vc_col-"] {
	margin: 0 !important; padding: 0 !important;
}

/* Margem lateral só em rows com mais do que uma coluna.
   Uma coluna (vc_col-sm-12) vai de margem a margem.
   Overrides manuais: "amz-full" (sem margem) / "amz-inset" (com margem). */
.vc_row { padding-left: var(--gutter) !important; padding-right: var(--gutter) !important; }
.vc_row:has(> .vc_col-sm-12),
.vc_row.amz-full  { padding-left: 0 !important; padding-right: 0 !important; }
.vc_row.amz-inset { padding-left: var(--gutter) !important; padding-right: var(--gutter) !important; }
.vc_row { display: flex; flex-wrap: wrap; column-gap: var(--gap); row-gap: var(--gap); }
@media (min-width: 768px) {
	.vc_col-sm-6 { width: calc(50% - var(--gap) / 2) !important; }
	.vc_col-sm-4 { width: calc(33.333% - var(--gap) * 2 / 3) !important; }
	.vc_col-sm-3 { width: calc(25% - var(--gap) * 3 / 4) !important; }
	.vc_col-sm-8 { width: calc(66.667% - var(--gap) / 2) !important; }
}

/* =============================================
   TIPOGRAFIA (conteúdo WPBakery)
============================================= */
.vc_row h2, .amz-h2 {
	font: 700 clamp(28px, 3.4vw, 44px)/1.15 var(--amz-font);
	letter-spacing: -.01em; color: var(--amz-red); margin: 0 0 2em;
}
.vc_row h3 { font: 700 clamp(20px, 2vw, 26px)/1.2 var(--amz-font); color: var(--amz-red); margin: 0 0 20px; }
.vc_row p  { font-size: 15px; line-height: 1.55; color: var(--amz-red); margin: 0 0 18px; }
.vc_row p:last-child { margin-bottom: 0; }
.vc_row .wpb_single_image img { display: block; width: 100%; height: auto; }

/* =============================================
   BOTÃO PILL + DROPDOWN TAKEAWAY
============================================= */
.amz-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	padding: 0 28px; height: 44px; border: 0; cursor: pointer;
	background: var(--amz-red); color: var(--amz-yellow);
	font: 700 14px/1 var(--amz-font); letter-spacing: .04em; text-transform: uppercase;
	border-radius: var(--amz-radius); text-decoration: none;
	transition: background .2s;
}
.amz-btn:hover, .amz-btn:focus-visible { background: var(--amz-red-dk); color: var(--amz-yellow); outline: none; }

.amz-dd { position: relative; z-index: 2; display: inline-block; }
.amz-dd__btn { width: 100%; min-width: 170px; }
.amz-dd__chev {
	width: 10px; height: 10px; margin-top: -4px;
	border-right: 2.5px solid currentColor; border-bottom: 2.5px solid currentColor;
	transform: rotate(45deg); transition: transform .25s;
}
.amz-dd.is-open .amz-dd__chev { transform: rotate(-135deg); margin-top: 4px; }
.amz-dd__list {
	list-style: none; margin: 0; padding: 44px 20px 14px;
	position: absolute; top: 0; left: 0; right: 0;
	background: var(--amz-red); border-radius: 22px;
	opacity: 0; visibility: hidden; transform: translateY(-6px);
	transition: opacity .2s, transform .2s, visibility 0s .2s;
	z-index: -1;
}
.amz-dd.is-open .amz-dd__list { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.amz-dd.is-open .amz-dd__btn { border-radius: 22px 22px 0 0; }
.amz-dd__list li + li { border-top: 1px solid var(--amz-yellow); }
.amz-dd__list a {
	display: block; padding: 12px 0; text-align: center;
	color: var(--amz-yellow); font-size: 14px; letter-spacing: .06em; text-transform: uppercase;
}
.amz-dd__list a:hover { font-weight: 700; }

/* =============================================
   HEADER
============================================= */
#site-header {
	position: fixed; top: 0; left: 0; right: 0; z-index: 9999;
	height: var(--header-height);
	background: var(--amz-cream);
}
body.admin-bar #site-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar #site-header { top: 46px; } }

.header-inner {
	width: 100%; height: 100%; padding: 0 var(--header-pad);
	display: flex; align-items: center; gap: 40px;
}

.site-branding { display: none; line-height: 0; }
.site-branding img { height: 26px; width: auto; }

.header-nav { flex: 1; }
#primary-menu { display: flex; align-items: center; gap: 32px; }
#primary-menu > li > a {
	display: block; padding: 8px 0;
	font-weight: 700; font-size: 14px; letter-spacing: .04em; text-transform: uppercase;
	color: var(--amz-red);
}
#primary-menu > li > a:hover, #primary-menu > .current-menu-item > a { text-decoration: underline; text-underline-offset: 4px; }
#primary-menu .sub-menu { display: none; }

.header-cta { display: flex; align-items: flex-start; gap: 16px; margin-left: auto; }

/* Hambúrguer */
.hamburger-btn {
	display: none; flex-direction: column; justify-content: center; gap: 5px;
	width: 40px; height: 40px; background: none; border: 0; cursor: pointer; padding: 0;
	z-index: 10001; flex-shrink: 0;
}
.hamburger-btn span { display: block; width: 26px; height: 3px; background: var(--amz-red); border-radius: 2px; transition: transform .3s, opacity .3s; }
.hamburger-btn.is-active span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.hamburger-btn.is-active span:nth-child(2) { opacity: 0; }
.hamburger-btn.is-active span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

/* Overlay mobile */
#overlay-menu {
	display: none; position: fixed; inset: var(--header-height) 0 0; z-index: 9998;
	background: var(--amz-cream); padding: 32px var(--header-pad);
	flex-direction: column; justify-content: space-between;
	transform: translateX(100%); transition: transform .4s cubic-bezier(.23,1,.32,1);
}
#overlay-menu.is-open { transform: none; }
#overlay-nav li a { display: block; padding: 12px 0; font: 700 26px/1.2 var(--amz-font); text-transform: uppercase; color: var(--amz-red); }
.overlay-cta { display: flex; flex-direction: column; gap: 12px; }
.overlay-cta .amz-btn, .overlay-cta .amz-dd { width: 100%; }

@media (min-width: 1441px) { :root { --header-pad: 80px; } }
@media (max-width: 900px) {
	:root { --header-height: 64px; --header-pad: 20px; }
	.header-inner { gap: 16px; }
	.site-branding { display: block; }
	.header-nav, .header-cta { display: none; }
	.hamburger-btn { display: flex; margin-left: auto; }
	#overlay-menu { display: flex; }
}

/* =============================================
   ABERTURA  [ammazza_abertura]
   Desktop: wordmark + slideshow 16/9 + Gio.
   Mobile:  wordmark escondido (está no header), slideshow 4/6.
============================================= */
.amz-abertura { padding: 48px var(--gutter) 0; }

.amz-abertura__titulo { position: relative; z-index: 2; margin: 0 0 -5%; line-height: 0; }
.amz-abertura__titulo img { width: 100%; height: auto; display: block; }

.amz-abertura__media { position: relative; width: 75%; margin: 0 auto; }

/* Slideshow do hero: sem navegação, imagem sempre a preencher e centrada */
.amz-slideshow--hero { width: 100%; }
.amz-slideshow--hero .swiper-slide { aspect-ratio: 16 / 9; }
.amz-slideshow--hero .swiper-slide img,
.amz-abertura__estatica img {
	width: 100%; height: 100%; display: block;
	object-fit: cover; object-position: center;
}
.amz-abertura__estatica { aspect-ratio: 16 / 9; }

/* Gio agarrado à secção seguinte */
.amz-abertura__gio {
	position: absolute; right: -18%; bottom: 0; z-index: 3;
	width: 24%; height: auto; margin-bottom: -10%;
	pointer-events: none;
}

/* ---------- Animação de entrada do hero ----------
   1. wordmark desce em fade + slideshow desvenda-se de baixo para cima
   2. Gio entra em fade a 0.9s, antes de o slideshow terminar (1.4s)
   Sem JS: os keyframes correm no load, com fill-mode "both". */
@media (prefers-reduced-motion: no-preference) {
	.amz-abertura__titulo {
		animation: amz-hero-titulo 1.2s cubic-bezier(.16, 1, .3, 1) both;
	}
	.amz-abertura .amz-slideshow--hero,
	.amz-abertura__estatica {
		animation: amz-hero-reveal 1.4s cubic-bezier(.16, 1, .3, 1) both;
	}
	.amz-abertura__gio {
		animation: amz-hero-gio 1s cubic-bezier(.16, 1, .3, 1) .9s both;
	}
}
@keyframes amz-hero-titulo {
	from { opacity: 0; transform: translateY(-18%); }
	to   { opacity: 1; transform: none; }
}
@keyframes amz-hero-reveal {
	from { clip-path: inset(100% 0 0 0); }
	to   { clip-path: inset(0 0 0 0); }
}
@keyframes amz-hero-gio {
	from { opacity: 0; }
	to   { opacity: 1; }
}

@media (max-width: 900px) {
	.amz-abertura { padding: 0; }
	.amz-abertura__titulo { display: none; }
	.amz-abertura__media { width: 100%; padding: 0 var(--header-pad); }
	.amz-slideshow--hero .swiper-slide,
	.amz-abertura__estatica { aspect-ratio: 4 / 6; }
	.amz-abertura__gio { right: 0; width: 42%; margin-bottom: -12%; }
}

/* =============================================
   #beneficios
============================================= */
#beneficios { background: var(--amz-red); padding: 56px 0; }
#beneficios .wpb_single_image { text-align: center; margin-bottom: 20px; }
#beneficios .wpb_single_image img { width: auto; height: 72px; margin: 0 auto; }
#beneficios .wpb_text_column { text-align: center; }
#beneficios .wpb_text_column p { color: var(--amz-yellow); font-size: 12px; line-height: 1.5; letter-spacing: .04em; }
#beneficios .wpb_text_column strong { display: block; text-transform: uppercase; margin-bottom: 4px; }

/* =============================================
   SLIDESHOWS  [ammazza_slideshow]
============================================= */
.amz-slideshow { width: 100%; }
.amz-slideshow .swiper-slide img { display: block; width: 100%; height: 100%; object-fit: cover; }
.amz-slideshow--top-gallery .swiper-slide    { aspect-ratio: 16 / 9; }
.amz-slideshow--bottom-gallery .swiper-slide { aspect-ratio: 16 / 9; }
.amz-slideshow.swiper-horizontal > .swiper-pagination-bullets,
.amz-slideshow .swiper-pagination {
	left: 0; right: 0; bottom: 32px; width: 100%;
	display: flex; justify-content: flex-end; gap: 10px;
	padding: 0 40px; box-sizing: border-box;
}
.amz-slideshow .swiper-pagination-bullet {
	width: 13px; height: 15px; margin: 0 !important; border-radius: 0; opacity: 1;
	background-color: #FFE164;
	-webkit-mask: var(--amz-bullet-empty) no-repeat center / contain;
	        mask: var(--amz-bullet-empty) no-repeat center / contain;
}
.amz-slideshow .swiper-pagination-bullet-active {
	-webkit-mask-image: var(--amz-bullet-full);
	        mask-image: var(--amz-bullet-full);
}

/* =============================================
   PADRÃO  [ammazza_padrao]
============================================= */
.amz-padrao {
	height: 32px; margin: 56px auto; max-width: 320px;
	background: url("https://www.ammazza.pt/wp-content/uploads/2026/09/Ammazza-padrao.svg") no-repeat center / contain;
}

/* =============================================
   #sobre-nos
============================================= */
#sobre-nos { padding: 40px 0; }
#sobre-nos .wpb_text_column { max-width: 600px; }
@media (max-width: 767px) { #sobre-nos .wpb_text_column { margin-top: 32px; } }

/* =============================================
   #ementas  [ammazza_ementas]
============================================= */
#ementas { background: var(--amz-yellow); padding: 80px 0 80px; }
#ementas h2 { margin-bottom: 4em; }
#ementas .wpb_text_column { padding: 0 var(--gutter); }
.amz-ementas {
	display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1em;
	max-width: 1240px; margin: 0 auto;
}
.amz-ementa { display: flex; flex-direction: column; gap: 12px; }
.amz-ementa__link { display: block; line-height: 0; }
.amz-ementa__capa { width: 100%; height: auto; box-shadow: 0 12px 40px rgba(74,31,20,.12); }
.amz-ementa__embed { width: 100%; aspect-ratio: 1 / 1.414; background: var(--amz-cream); }
.amz-ementa__download {
	color: var(--amz-red); font-weight: 700; font-size: 13px; letter-spacing: .04em; text-transform: uppercase;
	text-decoration: underline; text-underline-offset: 4px; align-self: center;
}
@media (max-width: 700px) { .amz-ementas { grid-template-columns: 1fr; } }

/* =============================================
   #restaurantes  [ammazza_lojas]
============================================= */
#restaurantes { background: var(--amz-red); padding: 72px 0 88px; text-align: center; }
#restaurantes .wpb_single_image img { width: auto; max-width: 720px; height: auto; margin: 0 auto 32px; }
#restaurantes h2 { color: var(--amz-cream); margin-bottom: 4em; margin-top: 2em; }
#restaurantes .wpb_text_column, #restaurantes .wpb_single_image { padding: 0 var(--gutter); }

.amz-lojas { width: 100%; padding: 0 var(--gutter); }
.amz-lojas__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--gap); }
@media (max-width: 1024px) { .amz-lojas__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px)  { .amz-lojas__grid { grid-template-columns: 1fr; } }
.amz-loja {
	background: var(--amz-cream); color: var(--amz-red); text-align: left;
	padding: 36px 24px; height: 100%; font-size: 13px; line-height: 1.5;
}
.amz-loja__nome { margin: 0 0 16px; font: 700 16px/1.2 var(--amz-font); letter-spacing: .06em; text-transform: uppercase; color: var(--amz-red); }
.amz-loja p { margin: 0 0 14px; }
.amz-loja p:last-child { margin-bottom: 0; }
.amz-loja a:hover { text-decoration: underline; text-underline-offset: 3px; }
.amz-loja__horario strong { display: block; }
.amz-lojas.is-slider { padding-bottom: 48px; }
.amz-lojas.is-slider .swiper-slide { height: auto; }
.amz-lojas .swiper-pagination-bullet { width: 10px; height: 10px; border-radius: 0; background: var(--amz-cream); opacity: .5; }
.amz-lojas .swiper-pagination-bullet-active { opacity: 1; }
.amz-lojas .swiper-button-prev, .amz-lojas .swiper-button-next { color: var(--amz-cream); }
.amz-lojas .swiper-button-prev::after, .amz-lojas .swiper-button-next::after { font-size: 24px; }

/* =============================================
   #contactos  (CF7)
============================================= */
#contactos { padding: 40px 0 80px; }
#contactos h2 { margin-bottom: 4em; }
#contactos h3 { margin-bottom: 2em; display:block!important; }
#contactos .wpcf7 { max-width: none; }
#contactos .wpcf7 p { margin: 0; }
#contactos .amz-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 12px; }
#contactos .amz-form__row--full { grid-template-columns: 1fr; }
#contactos .wpcf7-form-control-wrap { display: block; }
#contactos .wpcf7-form-control:not(.wpcf7-submit) {
	width: 100%; border: 0; border-radius: 8px;
	background: var(--amz-yellow); color: var(--amz-red);
	font: 400 14px/1.4 var(--amz-font); padding: 14px 16px; outline: none;
}
#contactos .wpcf7-form-control::placeholder { color: var(--amz-red); opacity: 1; }
#contactos .wpcf7-form-control:focus-visible { box-shadow: inset 0 0 0 2px var(--amz-red); }
#contactos textarea.wpcf7-form-control { min-height: 220px; resize: vertical; }
#contactos .wpcf7-submit {
	display: inline-flex; align-items: center; height: 40px; padding: 0 28px;
	background: var(--amz-red); color: var(--amz-yellow); border: 0; border-radius: var(--amz-radius);
	font: 700 13px/1 var(--amz-font); letter-spacing: .04em; text-transform: uppercase; cursor: pointer;
	float: right; margin-top: 4px;
}
#contactos .wpcf7-submit:hover { background: var(--amz-red-dk); }
#contactos .wpcf7-spinner { display: none; }
#contactos .wpcf7-not-valid-tip { font-size: 12px; color: var(--amz-red); margin-top: 4px; }
#contactos .wpcf7-response-output { border: 0; padding: 12px 0 0; margin: 12px 0 0; font-size: 13px; color: var(--amz-red); clear: both; }
@media (max-width: 767px) {
	#contactos .amz-form__row { grid-template-columns: 1fr; }
	#contactos .wpb_single_image { margin-top: 40px; }
}

/* =============================================
   FOOTER — 5 colunas de widgets (5.ª = livro de reclamações)
   Espaçamento, linhas e cor: Personalizar › Footer Ammazza
============================================= */
#site-footer {
	padding: var(--footer-space, 40px) var(--header-pad) var(--footer-space, 40px);
	margin-top: var(--footer-space, 40px);
	border-top: var(--footer-border, 1px solid var(--amz-red));
}
.footer-wordmark img { width: 100%; height: auto; }
.footer-grid {
	display: grid; grid-template-columns: 1fr 1fr 2fr 1fr 1fr; gap: var(--gap); align-items: end;
	margin-top: 1em; font-size: 100%; line-height: 1.5; color: var(--amz-red);
}
.footer-grid .widget-title { font-size: 100%; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 4px; }
.footer-grid a:hover { text-decoration: underline; text-underline-offset: 3px; }
.footer-grid img { height: 24px; width: auto; }
@media (max-width: 767px) { .footer-grid { grid-template-columns: 1fr 1fr; } }

/* ---------- FOOTER BOTTOM ---------- */
#footer-bottom {
	padding: var(--footer-space, 40px) var(--header-pad);
	border-top: var(--footerbottom-border, 1px solid var(--amz-red));
	font-size: 11px; line-height: 1.6; color: var(--amz-red);
}
.footer-bottom-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--gap); align-items: center; }
.footer-bottom-area--left  { text-align: left; }
.footer-bottom-area--right { text-align: right; }
.footer-bottom-area p { margin: 0; font-size: inherit; line-height: inherit; }
#footer-bottom a:hover { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 767px) {
	.footer-bottom-grid { grid-template-columns: 1fr; gap: 0; }
	.footer-bottom-area { width: 100%; margin: 20px 0; text-align: center !important; }
}

/* =============================================
   FADE-IN (assets/js/fade.js)
============================================= */
[data-fade] {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity 2s cubic-bezier(.16, 1, .3, 1), transform 2s cubic-bezier(.16, 1, .3, 1);
	will-change: opacity, transform;
}
[data-fade].is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	[data-fade] { opacity: 1; transform: none; transition: none; }
}

/* =============================================
   UTILITIES
============================================= */
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (prefers-reduced-motion: reduce) {
	.amz-dd__list, .amz-dd__chev, .amz-btn, #overlay-menu, .hamburger-btn span { transition: none; }
}
