/*
Theme Name: Faial Veg Child Template
Author:     Pedro Mesquita
Author URI: https://faialveg.com/
Template:   faialveg
Version:    1.0.0
Text Domain: faialveg-child
*/

/* ===== Reset ===== */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%
}

article, aside, details, figcaption,
figure, footer, header, hgroup,
menu, nav, section {
	display: block
}

body {
	line-height: 1
}

ol,
ul {
	list-style: none
}

blockquote,
q {
	quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: ''
}

table {
	border-collapse: collapse;
	border-spacing: 0
}

a,
a:hover,
a:visited {
	text-decoration: none
}

.post, .page {
  margin:0;
  padding: 0;
}

/* ===== Utils ===== */
.p-0 {
	padding: 0
}

.pb-1 {
	padding-bottom: 10px !important
}

.pb-2 {
	padding-bottom: 20px !important
}

.pt-2 {
	padding-top: 20px !important
}

/* ===== Vars & Fonts ===== */
:root {
	--verde-salvia: #dce5dc;
	--bege-floral: #f3ead9;
	--castanho-escuro: #2E0000; /* #350000; */
	--verde-menta: #9dbf9e;
	--dourado-claro: #e0cba8;
	--burnt-orange: #e9542a;
	--fonte-titulo: 'FaialVegRegular', serif;
	--fonte-texto: 'Lato', sans-serif;
}
/*
@font-face {
	font-family: 'FaialVegRegular';
	font-style: normal;
	font-weight: 400;
	src: url('/wp-content/themes/faialveg-child/storage/font-family/Biblioteca-Regular.otf') format('opentype');
	font-display: swap;
}

@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 400;
	src: url('/wp-content/themes/faialveg-child/storage/font-family/Lato/Lato-Regular.ttf') format('truetype');
	font-display: swap;
} */

html, body {
  min-height: 100%;
  height: auto;
  position: relative;
}

body {
  background: var(--burnt-orange);
  font-family: var(--fonte-texto);
  color: var(--castanho-escuro);
  z-index: 0;
}

strong { font-weight: 700;}

/* ===== Background ===== */
#background-wrapper {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: -1;
  min-height: 100vh; /* ✅ cobre sempre a altura total da janela */
}

#background-bars {
  position: absolute;
  top: -100vh;
  left: -100vw;
  width: 300vw;
  height: 300vh;
  background: repeating-conic-gradient(#f9b73e 0deg 12deg, #ea8a41 12deg 24deg, #d16753 24deg 36deg);
  transform-origin: center;
  animation: rotate 120s linear infinite;
}

@keyframes rotate { to { transform: rotate(360deg); } }

/* ===== Layout ===== */
.container-section {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 100px 0;
  overflow: hidden;
  background: transparent;
  z-index: 1;
}

.container-content {
  position: relative;
  text-align: center;
  background: #fcf0e4;
  border-radius: 8px;
  box-shadow:
    rgba(0, 0, 0, .25) 0 54px 55px,
    rgba(0, 0, 0, .12) 0 -12px 30px,
    rgba(0, 0, 0, .12) 0 4px 6px,
    rgba(0, 0, 0, .17) 0 12px 13px,
    rgba(0, 0, 0, .09) 0 -3px 5px;
  width: min(90%, 780px);
  /* padding: 2rem 1rem; */
  z-index: 2;
}

.container-footer {
  text-align: center;
  width: 100%;
  position:relative;overflow:hidden;padding:0px 0 135px
}

/* ===== Images ===== */
.logo-faialveg { width: min(95%, 680px); margin-top:30px; }

.fv-cupcake-svg {
  display: block;
  margin: 0 auto;
  width: min(95%, 680px);
  height: auto;
}

.social-icons {
  width: 40px;
  margin: 0 5px;
}

.home-icons {
  width: 20px;
  margin: -10px 0px;
}

/* Galeria */
.fv-home-gallery { margin: 22px 0; }
.fv-home-gallery .splide__slide img { width: 100%; height: auto; border-radius: 12px; display: block; }
.fv-home-gallery .splide__slide img {
    width: min(100%, 580px);
    height: auto;
    border-radius: 12px;
    display: block;
    margin: 0 auto;
}

/* 1) Esconde o SVG original do Splide */
.fv-home-gallery .splide__arrow svg { display:none; }

/* 2) Base das setas personalizadas */
.fv-home-gallery .splide__arrow::after{
  content:''; display:inline-block;
  font-size:22px; line-height:1; font-weight:700;
}

/* 3) NOVA direção (invertida) */
.fv-home-gallery .splide__arrow--prev::after{ content:'‹'; } /* antes era ‹ */
.fv-home-gallery .splide__arrow--next::after{ content:'›'; } /* antes era › */

.fv-home-gallery button.splide__pagination__page.is-active {
  background: #f9b73e;
}

/* ===== Typography ===== */
/* === H1 invisível (SEO) === */
h1.seo-info{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
}

h1, h2, h3 { font-weight: 600; }

h1.logo-title {
  font-family: var(--fonte-titulo);
  font-size: 4rem;
  letter-spacing: 3px;
  margin: 3rem 0 2.5rem;
}

h2.fv-title,
h3.fv-title {
  font-size: 1.5rem;
  margin-top: 1.5rem;
}

h2.fv-title-margin { margin-top: 0rem; }

h2.return-homepage,
h2.page-not-found {
  font-size: 1.3rem;
  margin: 2rem auto 0;
  line-height: 2rem;
}

h2.page-not-found{
	margin-bottom: 2rem;
}

.text-darkgreen { color: #1C5437; }
.text-darkred { color: #2E0000; }

/* ===== CTA / Links ===== */
@keyframes animated-gradient {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

.social-cta {
  display: inline-block;
  padding: .6em 1.2em;
  border-radius: 8px;
  color: #fcf0e4;
  font-weight: bold;
  background: linear-gradient(270deg, #f9b73e, #ea8a41, #d16753, #f9b73e);
  background-size: 600% 600%;
  animation: animated-gradient 6s ease infinite;
  text-shadow:
    0 1px 2px rgba(0, 0, 0, .35),
    0 2px 6px rgba(0, 0, 0, .25);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
  margin-bottom: 1rem;
}

.social-cta:hover {
  transform: translateY(-3px) scale(1.06);
  box-shadow: 0 6px 14px rgba(0, 0, 0, .18);
  filter: brightness(1.05);
}

.follow-us {
  margin-top: 0.5rem;
  font-size: 1.5rem;
  padding: 0 10px 10px;
  font-weight: 600;
  line-height: 2rem;
}

a.return-homepage-link {
  display: inline-block;
  margin-top: 1.2rem;
  border-radius: 8px;
  text-transform: uppercase;
}

a.return-homepage-link .return-homepage {
  font-size: 1rem;
  font-weight: 600;
}

a.return-homepage-link .return-homepage-highlighted {
  display: inline-block;
  background: #2E0000;
  color: #fcf0e4;
  padding: 1rem;
  border-radius: 8px;
  transition: background-color .3s ease;
  margin-top: 1rem;
}

a.return-homepage-link .return-homepage-highlighted:hover {
  background: #1C5437;
}

/* ==========================================================
   FAIAL VEG — MENU + TABS (unificado)
   ========================================================== */


/* ===== Container/Menu card ===== */
.fv-menu-container {
  width: 90%;
  margin: 0 auto;
  margin-bottom:10px;
}
.fv-menu {
  background:#FFF1E6;
  border-radius:16px;
  padding:2rem 1.5rem 1.5rem;
  margin-top:4rem;
  box-shadow:0 10px 40px rgba(0,0,0,.12);
  position:relative;
  z-index:10;
  border:2px solid #3b1e0d;
}
.fv-menu__floating-title {
  position:absolute; top:0; left:50%; transform:translate(-50%,-50%);
  background:linear-gradient(270deg,#f9b73e,#ea8a41,#d16753,#f9b73e);
  background-size:600% 600%; animation:animated-gradient 6s ease infinite;
  color:#fcf0e4; padding:1rem 3rem; border-radius:999px;
  font-weight:bold; font-size:1.45rem;
  box-shadow:0 4px 12px rgba(0,0,0,.15); z-index:20;
  text-shadow:0 1px 2px rgba(0,0,0,.35), 0 2px 6px rgba(0,0,0,.25);
}
@keyframes animated-gradient {
  0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%}
}
p.fv-menu__intro {
  font-size:1.5rem; line-height:1.5; font-weight:700; padding:0; margin-top:10px;
}

/* ===== Títulos de secção (Menu + Tabs) ===== */
.fv-menu-section-title {
  color:#fcf0e4;
  text-shadow:0 1px 2px rgba(0,0,0,.35), 0 2px 6px rgba(0,0,0,.25);
  text-align:left;
}

/* ===== Acordeões (Menu) ===== */
.fv-menu-section {
  border-radius:14px; overflow:visible; margin:14px 0;
  background:#f7eadb; border:1.5px solid transparent;
}
.fv-menu-section[open]{ border-color:var(--c,#E0893F); }
.fv-menu-section summary {
  list-style:none; cursor:pointer; padding:2px; display:flex; align-items:center; gap:10px;
  color:#fff; font-weight:800; background:var(--c,#E0893F); border-radius:12px; padding: 20px; height: 40px;
}

.fv-menu-section summary::-webkit-details-marker{ display:none; }
.fv-menu-section .fv-menu-section-image{ height:90px; object-fit:contain; border-radius:6px; }
.fv-menu-section .fv-menu-section-caret{
  margin-left:auto; transition:transform .2s; font-size:30px; color:#fcf0e4;
  text-shadow:0 2px 4px rgba(0,0,0,.45); padding-right:5px;
}
.fv-menu-section[open] .fv-menu-section-caret{ transform:rotate(90deg); }
.fv-menu-section:hover{ box-shadow:0 6px 18px rgba(0,0,0,.12); border-color:var(--c,#E0893F); }
.fv-menu-section:hover summary{
  transform:translateY(-3px);
  background-color:color-mix(in srgb, var(--c,#E0893F) 90%, white);
  border-color:color-mix(in srgb, var(--c,#E0893F) 85%, white);
  box-shadow:0 6px 14px rgba(0,0,0,.18);
  transition:all .25s ease-in-out;
}
.fv-menu-section:hover .fv-menu-section-caret{ transform:translateX(3px) rotate(0deg); }
.fv-menu-section-panel{ padding:12px 12px 16px; position:relative; }

/* ===== SPLIDE ===== */
.splide{ position:relative; }
.fv-menu-section .splide__track{ padding:6px 56px 34px; }
.fv-menu-section .splide__arrows{ position:absolute; inset:0; pointer-events:none; }
.fv-menu-section .splide__arrow{
  pointer-events:all; width:44px; height:44px; border-radius:999px; background:#fff; border:0;
  box-shadow:0 6px 16px rgba(0,0,0,.18); opacity:.98; top:45%; transform:translateY(-45%);
}
.fv-menu-section .splide__arrow--prev{ left:-26px; }
.fv-menu-section .splide__arrow--next{ right:-26px; }
.fv-menu-section .splide__arrow svg{ display:none !important; }
.fv-menu-section .splide__arrow::after{
  content:''; display:inline-block; font-size:22px; line-height:1; font-weight:700;
}
.fv-menu-section .splide__arrow--prev::after{ content:'‹'; }
.fv-menu-section .splide__arrow--next::after{ content:'›'; }
.fv-menu-section .splide__arrow:hover{ background:var(--c,#E0893F); color:#fff; }
.fv-menu-section .splide__pagination{ gap:.45rem; }
.fv-menu-section .splide__pagination__page{
  width:8px; height:8px; border-radius:999px; background:#d7d7e3; opacity:1; transform:scale(1);
  transition:transform .18s ease, background .18s ease;
}
.fv-menu-section .splide__pagination__page.is-active{
  background:var(--c,#E0893F); transform:scale(1.22);
}
.fv-no-nav .splide__arrows,
.fv-no-nav .splide__pagination{ display:none !important; }

ul.splide__pagination.splide__pagination--ltr {
    position: absolute;
    bottom: 0;
}

/* ===== Cartões / Galeria ===== */
.fv-menu-item{
  width:100%; border-radius:22px; overflow:hidden; background:#fff;
  box-shadow:0 12px 28px rgba(0,0,0,.12); border:1px solid rgba(0,0,0,.08); position:relative;
}
.fv-menu-item__gallery > a.glbx{ display:block; width:100%; }
.fv-menu-item__gallery-hint{
  position:absolute; top:10px; right:10px; z-index:2;
  background:linear-gradient(135deg,#2A448A,#1B2F68); color:#FFF1E6; font-weight:700;
  padding:6px 10px; border-radius:999px; font-size:12px; line-height:1;
  box-shadow:0 2px 6px rgba(0,0,0,.2); opacity:.95; transition:all .25s ease-in-out; pointer-events:none;
}

figure.fv-menu-item__figure:hover {
    cursor: pointer;
}

.fv-menu-item__gallery,
.fv-menu-item__gallery::after,
.fv-menu-item__gallery::before,
.fv-menu-item__gallery img,
.fv-menu-item__gallery .fv-menu-item__img{ border-radius:22px 22px 0 0; }

/* Overlay e brilho */
.fv-menu-item__gallery{
  position:relative; padding:12px; background:#fff; overflow:hidden;
  clip-path:inset(0 round 22px 22px 0 0);
}
.fv-menu-item__gallery img{ margin:12px; width:calc(100% - 24px); border-radius:16px; }
.fv-menu-item__img{
  width:100%; height:450px; object-fit:cover; display:block; background:#f7f7f7; border-radius:22px 22px 0 0;
}
.fv-menu-item__gallery::after{
  content:""; position:absolute; inset:0; border-radius:22px 22px 0 0; z-index:2; opacity:0;
  box-shadow: inset 0 0 0 2px rgba(27,47,104,.9), inset 0 -60px 80px rgba(27,47,104,.15);
  transition:opacity .25s ease, transform .25s ease;
}
.fv-menu-item__gallery:hover .fv-menu-item__img{ transform:scale(1.02); filter:saturate(1.05); }
.fv-menu-item__gallery:hover::after{
  opacity:1; transform:scale(1.01);
  box-shadow: inset 0 0 0 2px rgba(27,47,104,1), inset 0 -60px 80px rgba(27,47,104,.25), 0 0 12px rgba(27,47,104,.25);
}
.fv-menu-item__gallery::before{
  content:""; position:absolute; inset:-20%; border-radius:inherit; z-index:2; opacity:0;
  background:linear-gradient(120deg, rgba(255,255,255,0) 45%, rgba(255,255,255,.55) 50%, rgba(255,255,255,0) 55%);
  transform:translateX(-120%); transition:transform .6s ease, opacity .2s ease;
}
.fv-menu-item__gallery:hover::before{ opacity:1; transform:translateX(120%); }

/* Barra inferior do card */
.fv-menu-item__footer{
  display:flex; align-items:center; justify-content:space-between; gap:.75rem;
  background:#1b2f68; color:#fff; padding:.9rem 1rem;
}
.fv-menu-item__title{
  font-weight:800; letter-spacing:.2px; line-height:1.5; font-size:1rem;
  display:flex; flex-direction:column; text-align: left;
}
.fv-menu-item__title-link{
  color:#fff !important; text-decoration:none; transition:color .25s, text-shadow .25s;
}
.fv-menu-item__title-link:hover,
.fv-menu-item__title-link:focus-visible{ color:#ffe7c2 !important; text-shadow:0 1px 3px rgba(0,0,0,.4); }
.fv-menu-item__desc{ opacity:.85; font-weight:500; font-size:.75rem; }
.fv-menu-item__price{
  background:var(--c,#E0893F); color:#fff; padding:.45rem .7rem; border-radius:8px; font-weight:900;
  min-width:2.6rem; display:inline-flex; justify-content:center; align-items:center;
}

/* ===== GLightbox (custom) ===== */
.glightbox-container .gslide-description{ display:none !important; }
.glightbox-container .gslide-inner-content{
  display:flex; height:100svh; height:calc(var(--vh,1vh) * 100); padding:0 12px 16px; overflow:visible;
}
.glightbox-container .ginner-container{
  display:flex; flex-direction:column; align-items:stretch; gap:10px; flex:1 1 auto; min-height:0; margin:0;
}
.glightbox-container .gslide-media{ order:1; flex:1 1 auto; display:flex; align-items:center; justify-content:center; min-height:0; margin:0; }
.glightbox-container .gslide-image img{ max-width:100%; max-height:100%; object-fit:contain; display:block; }
.glightbox-container .fv-lightbox__desc{ order:2; margin-top:12px; background:#fff; padding:12px 14px; border-radius:12px; text-align:left; }
.glightbox-container .fv-lightbox__desc-title{ font-weight:700; font-size:1.05rem; line-height:1.5; margin:0 0 6px; }

/* Dots da Lightbox */
.glightbox-container .fv-lightbox__dots-anchor{ order:3; display:flex; justify-content:center; margin-top:10px; position:relative; z-index:5; }
.glightbox-container .fv-lightbox__dots{ display:flex; gap:10px; }
.glightbox-container .fv-lightbox__dot{ width:10px; height:10px; border-radius:50%; background:#fff; opacity:.6; cursor:pointer; }
.glightbox-container .fv-lightbox__dot.is-active{ opacity:1; }

/* Navegação da Lightbox */
.glightbox-container .fv-lightbox__nav{ pointer-events:none; }
.glightbox-container .fv-lightbox__nav .fv-lightbox__prev,
.glightbox-container .fv-lightbox__nav .fv-lightbox__next{
  position:fixed; z-index:2147483000; pointer-events:auto;
  width:48px; height:48px; border-radius:999px;
  border:2px solid #fff; background:rgba(255,255,255,.95); color:#1f1f1f; font-weight:700; text-align:center;
  cursor:pointer; box-shadow:0 2px 10px rgba(0,0,0,.35);
  transition:background .2s, color .2s, border-color .2s, transform .08s;
  -webkit-tap-highlight-color:transparent; touch-action:manipulation;
}
.glightbox-container .fv-lightbox__nav .fv-lightbox__prev{ left:12px; top:50%; transform:translateY(-50%); }
.glightbox-container .fv-lightbox__nav .fv-lightbox__next{ right:12px; top:50%; transform:translateY(-50%); }
.glightbox-container .fv-lightbox__nav .fv-lightbox__prev:hover,
.glightbox-container .fv-lightbox__nav .fv-lightbox__next:hover{
  background:#E0893F; color:#fff; border-color:#E0893F;
}
.glightbox-container .fv-lightbox__nav .fv-lightbox__prev:active,
.glightbox-container .fv-lightbox__nav .fv-lightbox__next:active{ transform:translateY(-50%) scale(.96); }

/* Botão Fechar */
.glightbox-container .fv-lightbox__controls .fv-lightbox__close{
  position:fixed; z-index:2147483647; pointer-events:auto;
  top:max(25px, env(safe-area-inset-top));
  right:max(14px, env(safe-area-inset-right));
  width:48px; height:48px; border-radius:999px;
  border:2px solid #fff; background:rgba(255,255,255,.95); color:#1f1f1f; font-weight:700; text-align:center;
  cursor:pointer; box-shadow:0 2px 10px rgba(0,0,0,.35);
  transition:background .2s, color .2s, border-color .2s, transform .08s;
}
.glightbox-container .fv-lightbox__controls .fv-lightbox__close:hover{ background:#E0893F; color:#fff; border-color:#E0893F; }
.glightbox-container .fv-lightbox__controls .fv-lightbox__close:active{ transform:scale(.96); }

/* Ícones ‹ › (setas genéricas) */
.fv-arrow::after,
.glightbox-container .fv-lightbox__nav .fv-lightbox__prev::after,
.glightbox-container .fv-lightbox__nav .fv-lightbox__next::after{
  content:''; display:inline-block; font-size:22px; font-weight:700; line-height:1;
}
.fv-lightbox__prev::after,
.glightbox-container .fv-lightbox__nav .fv-lightbox__prev::after{ content:'‹';   position: absolute;
  inset: 0;
  display: grid;
  place-items: center; }
.fv-lightbox__next::after,
.glightbox-container .fv-lightbox__nav .fv-lightbox__next::after{ content:'›';  position: absolute;
  inset: 0;
  display: grid;
  place-items: center; }

  /* Limites e proporção corretos no lightbox */
.glightbox-container .gslide-media img,
.glightbox-container .gslide-image img {
  width: auto !important;
  height: auto !important;
  max-width: min(60vw, 80dvh) !important;
  max-height: 80dvh !important;
  object-fit: contain !important;
}

/* Opcional: descrição não empurrar a imagem */
.glightbox-container .gslide-description {
  max-width: 80vw !important;
}

/* ===== PAGES — Secções unificadas (Tabs/FAQ/Sobre) ===== */
.fv-section{
  max-width:100%; margin:10px auto; font-family:'Lato',sans-serif; color:#3c2c22;
}
.fv-section h2{
  font-size:1.5rem; line-height:1.5; font-weight:700; padding:0; margin-bottom:10px; color:#350000;
}
.fv-item{
  background:#fffaf4; border:1px solid rgba(0,0,0,.08); border-radius:12px; margin-bottom:.8rem;
  transition:all .3s ease;
}
.fv-item[open]{ box-shadow:0 4px 12px rgba(0,0,0,.08); }
summary.fv-header{ padding:20px; height: 40px; }
.fv-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:1.3rem 1.2rem; font-size:1.25rem; font-weight:700; border-radius:12px; cursor:pointer; list-style:none;
  color:#fff; text-shadow:0 1px 2px rgba(0,0,0,.35), 0 2px 6px rgba(0,0,0,.25);
  text-align:left; transition:background .2s; line-height:1.5rem;
}
.fv-header span:first-child{ flex:1; text-align:left; }
.fv-header:hover{ filter:brightness(0.95); }
.fv-caret{ font-size:1.2rem; color:#fff; transition:transform .25s ease; }
.fv-item[open] .fv-caret{ transform:rotate(90deg); }
.fv-text{
  padding:1rem 1.4rem 1.2rem; font-size:.96rem; line-height:1.3; color:#3c2c22; background:#fffaf4;
  border-top:1px solid rgba(0,0,0,.05); text-align:left; border-bottom-left-radius:20px; border-bottom-right-radius:20px;
}
.fv-text a{ color:#1C5437; text-decoration:none; font-weight:700; }
.fv-text a:hover{ text-decoration:underline; }

/* ===== Resets específicos para garantir o mesmo font-size no título ===== */
details.fv-menu-section > summary{ margin:0; font-size:inherit; }
details.fv-menu-section > summary::marker,
details.fv-menu-section > summary::-webkit-details-marker{ content:""; display:none; }

/* Força 1.3rem tanto em <span> como em <h2> dentro do summary (Menu + Tabs) */
details.fv-menu-section > summary .fv-menu-section-title,
details.fv-menu-section > summary h2.fv-menu-section-title{
  font-size:1.3rem;
  line-height:1.15;
  font-weight:700;
  margin:0;
  display:inline-block;
}

/* Neutraliza Hx dentro de .fv-about só para o título de secção */
.fv-about h1.fv-menu-section-title,
.fv-about h2.fv-menu-section-title,
.fv-about h3.fv-menu-section-title{
  font-size:1.3rem; line-height:1.15; margin:0 !important;
}

/* 🌿 Home + Seletor de Idioma */
.fv-lang-switch {
  position: absolute;
  top: 18px;
  right: 15px;
  font-size: 0.9rem;
  letter-spacing: 0.5px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(3px);
  border: 1px solid rgba(0, 0, 0, 0.08);
  padding: 4px 10px;
  border-radius: 12px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  transition: background .3s ease, box-shadow .3s ease;
  z-index: 50;
}

.fv-lang-switch:hover {
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}

.fv-lang-switch a {
  color: #4b1e0b;
  text-decoration: none;
  transition: color 0.2s ease;
}

.fv-lang-switch a:hover:not(.active) {
  color: #1C5437;
}

.fv-lang-switch a.active {
  color: #e88e2c; /* Laranja Faial Veg */
  cursor: default;
}

.fv-lang-switch .divider {
  color: #4b1e0b;
  opacity: 0.6;
}

/* 🏠 Ícone da Casinha */
.fv-home {
  font-size: 1.05rem;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .2s ease, color .2s ease;
}

.fv-home:hover {
  color: #e88e2c;
  transform: scale(1.15);
}

/* ===== Responsivo ===== */

@media (max-width: 768px) {

  .fv-menu-item__img{ 
    height:400px; 
  }

  .glightbox-container .fv-lightbox__nav .fv-lightbox__prev {
    left: 8px;
  }

  .glightbox-container .fv-lightbox__nav .fv-lightbox__next {
    right: 8px;
  }

  .glightbox-container .fv-lightbox__dots-anchor {
    margin-bottom: 60px;
  }

  h2.fv-title-margin { margin-top: 0rem; }

}

/* ===== Mobile Refinamentos ===== */

@media (max-width: 600px) {

  .fv-menu-item__img{ 
    height:300px; 
  }

    .container-content {
        width: min(90%, 90%);
    }

  .menu-card {
    padding: 1.25rem .9rem 1.1rem;
    max-width: 100%;
  }

  .fv-menu-section .splide__track {
    padding: 6px 38px 32px;
  }

  .fv-menu-section .splide__arrow--prev {
    left: -10px;
  }

  .fv-menu-section .splide__arrow--next {
    right: -10px;
  }

  .glightbox-container .gslide-image img {
    max-width: 88vw !important;
    max-height: 70vh !important;
  }

  p.fv-menu__intro {
    font-size: 1.3rem;
  }

  .container-section { padding: 60px 0; }
  h1.logo-title { font-size: 2.8rem; }
  h2.fv-title, .return-homepage { font-size: 1.3rem; }
  .social-cta { font-size: 1.35rem; }
  .follow-us { font-size: 1.3rem; font-weight: 700; }

  .fv-section {
    padding: 0 0;
  }

  .fv-header {
    font-size: 1rem;
    padding: 1.05rem 1rem;
  }

  .fv-text {
    font-size: 0.94rem;
  }

  .fv-section h2{
    font-size: 1.3rem;
  }  

  .fv-lang-switch {
      top: 8px;
      right: 8px;
      font-size: 0.85rem;
      padding: 3px 8px;
    }

  .container-content {
    width: min(90%, 479px);
  } 

  .fv-menu-item__title, .fv-menu-item__price{
    font-size: 0.9rem;
  }

  .fv-menu-section .splide__pagination { gap: .1rem; }

    h2.fv-title-margin { margin-top: 0rem; }

}

@media (max-width:479px) {
  h2.fv-title-margin { margin-top: 0rem; font-size: 1.1rem; }
  .follow-us, .return-homepage { font-size: 1.1rem; font-weight: 700; }
  .social-cta { font-size: 1.05rem; }

  .logo-faialveg {
    width: 95%;
    margin: -2.5%;
    margin-top: 30px;
    margin-bottom: 10px;
  }

  p.fv-menu__intro {
    font-size: 1.1rem;
  }

  .fv-menu {
	  margin-top:3rem;
  }

  .fv-menu-section .splide__pagination { gap: 0rem; }

  .fv-section h2{
    font-size: 1.1rem;
  }
  
  details.fv-menu-section > summary .fv-menu-section-title, details.fv-menu-section > summary h2.fv-menu-section-title {
    font-size:1rem;
  }

    .container-content {
        width: min(90%, 90%);
    }

}

@media (max-width:319px) {
  h2.fv-title-margin { margin-top: 0rem; }
  .social-cta { font-size: .95rem; }
}