.top-social .sc{ border:1px solid #e5e7eb }
/* Footer social – NEUTRI (dark circle + white glyph) */
.site-footer .footer-social .sc{
  --s:36px;
  display:inline-flex; align-items:center; justify-content:center;
  width:var(--s); height:var(--s); border-radius:9999px;
  background:#0b2a35;                       /* cerchio scuro coerente col footer */
  border:1px solid rgba(255,255,255,.14);
  color:#fff;                                /* per le icone "currentColor" (YouTube neutro) */
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  box-shadow:0 1px 2px rgba(0,0,0,.10);
}
.site-footer .footer-social .sc img{
  width:62%; height:62%; display:block;
  filter:brightness(0) invert(1);            /* rende bianche le SVG colorate */
}
.site-footer .footer-social .sc.yt img{ filter:none; } /* youtube-neutral usa currentColor */
.site-footer .footer-social .sc:hover{
  transform:translateY(-1px);
  box-shadow:0 6px 14px rgba(0,0,0,.18);
}
/* Header social: cerchio bianco + icona scura (neutra) */
.top-social .sc{
  --s:36px;
  display:inline-flex; align-items:center; justify-content:center;
  width:var(--s); height:var(--s); border-radius:9999px;
  background:#fff; border:1px solid #e5e7eb;
  box-shadow:0 1px 2px rgba(0,0,0,.06);
  margin:0 .35rem; transition:transform .15s, box-shadow .15s, background .15s;
}
.top-social .sc img{ width:62%; height:62%; display:block; filter:none !important; }
.top-social .sc:hover{ transform:translateY(-1px); box-shadow:0 6px 14px rgba(0,0,0,.10); background:#fff; }
/* Header social: cerchio bianco + icona scura (neutra) */
.top-social .sc{
  --s:36px;
  display:inline-flex; align-items:center; justify-content:center;
  width:var(--s); height:var(--s); border-radius:9999px;
  background:#fff; border:1px solid #e5e7eb;
  box-shadow:0 1px 2px rgba(0,0,0,.06);
  margin:0 .35rem; transition:transform .15s, box-shadow .15s, background .15s;
}
.top-social .sc img{ width:62%; height:62%; display:block; filter:none !important; }
.top-social .sc:hover{ transform:translateY(-1px); box-shadow:0 6px 14px rgba(0,0,0,.10); background:#fff; }
/* Footer: forza YouTube in bianco */
.site-footer .footer-social .sc.yt img{
  filter: brightness(0) invert(1) !important;
}
/* Footer: pill lingua attiva */
.lang-switch .pill.active,
.lang-switch .lang-item.active{
  background:#0b2a35;   /* tono coerente con il footer */
  color:#fff;
  border-color:transparent;
}
/* THEME ACCENT (fallback se non esiste già una var di tema) */
:root{
  /* Se il tema ha già --accent / --brand usala; altrimenti questo verde. */
  --brand-accent: var(--accent, var(--brand, #34d399));
}

/* FOOTER: pill lingua attiva */
.site-footer .lang-switch .pill.active,
.site-footer .lang-switch .lang-item.active{
  background: var(--brand-accent);
  color: #0b2a35;                 /* testo leggibile su accent */
  border-color: transparent;
}

/* HEADER: lingua attiva (lo span .code è la pill) */
.top-lang .lang-item.active .code{
  background: var(--brand-accent);
  color: #0b2a35;
  border-color: transparent;
}

/* Piccolo feedback al passaggio */
.top-lang .lang-item .code,
.site-footer .lang-switch .pill{
  transition: background .15s ease, filter .15s ease;
}
.top-lang .lang-item:hover .code,
.site-footer .lang-switch .pill:hover{
  filter: brightness(1.06);
}
/* Pill lingua attiva: testo bianco (header + footer) */
.top-lang .lang-item.active .code,
.site-footer .lang-switch .pill.active,
.site-footer .lang-switch .lang-item.active{
  color:#fff !important;
  text-shadow:0 1px 0 rgba(0,0,0,.15); /* leggero contrasto, facoltativo */
}
/* === Vero INCI — HEADER RESPONSIVE OVERRIDE === */
.site-header .topbar a.brand{gap:.50rem!important}
.site-header .topbar a.brand img.brand-logo.shield{
  width:clamp(44px,38px + 1.2vw,52px)!important;
  height:auto!important; max-width:none!important; border-radius:12px;
  background:none!important; border:0!important; filter:none!important;
  box-shadow:0 0 0 2px rgba(34,197,94,.30),0 8px 18px rgba(0,0,0,.14)!important
}
.site-header .topbar .brand-word{
  font-size:clamp(1.45rem,1.10rem + 0.9vw,1.68rem)!important;
  font-weight:900; line-height:1.05; letter-spacing:.005em; white-space:nowrap
}
/* === Vero INCI — Responsive Base (site-wide) === */
:root{
  --content-max: 1100px;
  --gutter: clamp(12px, 2vw, 22px);
}

/* contenitori principali fluidi */
.page-wrap,.container,.content,.wrap,main:not(.page-wrap){
  width: min(var(--content-max), 100% - 2*var(--gutter));
  margin: 0 auto;
  padding-inline: 0 !important;
}

/* tipografia fluida base */
.page-wrap h1{font-size:clamp(1.70rem,1.05rem + 2.0vw,2.20rem) !important;line-height:1.20}
.page-wrap h2{font-size:clamp(1.30rem,0.95rem + 1.3vw,1.65rem) !important;line-height:1.22}
.page-wrap h3{font-size:clamp(1.05rem,0.90rem + .7vw,1.25rem) !important;line-height:1.25}
p,li{font-size:clamp(.98rem,.92rem + .3vw,1.05rem);line-height:1.65}

/* media fluidi & embed */
img,video{max-width:100%;height:auto}
iframe,embed{max-width:100%;width:100%}

/* griglie/card generiche responsive (non invasive) */
.card-grid,.post-grid,.cards,.grid.cards{
  display:grid; gap:clamp(.75rem,1.5vw,1.25rem);
  grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));
}

/* form/input più comodi su mobile */
@media (max-width:640px){
  input,select,textarea{width:100%}
}

/* tabelle: scroll orizzontale su schermi stretti */
@media (max-width:640px){
  table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}
}

/* header già sistemato: qui solo piccoli affinamenti generici */
.site-header .container,.nav-link.navbar .container{
  width:min(var(--content-max),100% - 2*var(--gutter));
  margin:0 auto;
}

/* === Vero INCI — Footer vertical layout (dup) === */
.site-footer nav{display:flex;flex-direction:column;gap:.45rem}
.site-footer nav ul,
.site-footer .menu,
.site-footer .footer-links,
.site-footer .policy-links,
.site-footer .links{display:flex;flex-direction:column;gap:.35rem;margin:0;padding:0}
.site-footer li{list-style:none;margin:0}
.site-footer a{display:inline-block}
/* === Vero INCI — Footer socials row only (dup) === */
.site-footer :is(ul[class*="social"],ol[class*="social"],div[class*="social"],nav[class*="social"],.social-icons){
  display:flex; flex-direction:row; gap:.6rem; align-items:center; flex-wrap:wrap;
}
.site-footer :is(ul[class*="social"],.social-icons) > li{list-style:none; margin:0; display:inline-flex}
.site-footer :is(ul[class*="social"],.social-icons) a{display:inline-flex}
/* === Vero INCI — Footer: logo inline coi social (dup) === */
.site-footer a.brand{display:inline-flex; align-items:center; gap:.5rem; vertical-align:middle; margin-left:.75rem}
.site-footer :is(.social-icons, ul[class*="social"], ol[class*="social"]){
  display:inline-flex; align-items:center; gap:.6rem; vertical-align:middle;
}
.site-footer :is(.social-icons, ul[class*="social"], ol[class*="social"]){ margin-left:auto }
@media (min-width:993px){
  .site-footer *:has(> a.brand):has(> :is(.social-icons, ul[class*="social"], ol[class*="social"])){
    display:flex; align-items:center; justify-content:flex-end; gap:.75rem; flex-wrap:wrap;
  }
  .site-footer a.brand{display:inline-flex; align-items:center; gap:.5rem; vertical-align:middle}
  .site-footer :is(.social-icons, ul[class*="social"], ol[class*="social"]){
    display:inline-flex; align-items:center; gap:.6rem; vertical-align:middle;
  }
}
@media (min-width:993px){
  .site-footer :has(a.brand):has(:is(.social-icons, ul[class*="social"], ol[class*="social"])) {
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:.75rem;
    flex-wrap:wrap;
  }
  .site-footer a.brand{display:inline-flex; align-items:center; gap:.5rem}
  .site-footer :is(.social-icons, ul[class*="social"], ol[class*="social"]){
    display:inline-flex; align-items:center; gap:.6rem;
  }
}
@media (min-width:993px){
  .site-footer :is(div,section,nav,aside)
    :has(> :is(.social-icons, ul[class*="social"], ol[class*="social"]))
    :has(> :is(a.brand, .brand)){
      display:flex !important;
      flex-direction:row !important;
      align-items:center !important;
      justify-content:flex-end !important;
      gap:.75rem; flex-wrap:wrap;
  }
  .site-footer :is(.social-icons, ul[class*="social"], ol[class*="social"]) + :is(a.brand,.brand),
  .site-footer :is(a.brand,.brand) + :is(.social-icons, ul[class*="social"], ol[class*="social"]){
      display:inline-flex !important; align-items:center; margin-left:.75rem;
  }
  .site-footer :is(.social-icons, ul[class*="social"], ol[class*="social"]){
      display:inline-flex !important; align-items:center; gap:.6rem;
  }
  .site-footer :is(a.brand,.brand){ display:inline-flex; align-items:center; gap:.5rem }
}
/* fix: forza il gradiente nel brand in header */
.site-header .brand-word,.topbar .brand-word,header .brand-word{-webkit-text-fill-color:transparent!important;color:transparent!important}
/* --- FIX: footer brand inline (desktop only) --- */
@media (min-width: 992px){
  footer.site-footer .footer-brand,
  footer.site-footer .footer-brand > a,
  footer.site-footer .brand,
  footer.site-footer .brand > a{
    display:inline-flex !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:.6rem !important;
  }
  footer.site-footer .footer-brand .wordmark,
  footer.site-footer .footer-brand .brand-word{
    display:inline-block !important;
    white-space:nowrap !important;
    line-height:1 !important;
  }
  footer.site-footer .footer-brand img,
  footer.site-footer .footer-brand .shield{
    margin:0 !important;
    flex:0 0 auto !important;
  }
}
