/* =========================================================
   MONETTI · LIVELLO DI MIGLIORAMENTO (sopra il sito originale)
   Non tocca il layout: aggiunge solo cursore + fluidità + reveal
   ========================================================= */

html { scroll-behavior: smooth; }

/* EB Garamond locale (titoli): toglie la dipendenza da Google Fonts per il font principale */
@font-face {
    font-family: 'EB Garamond';
    src: url('../fonts/EBGaramond12-Regular.ttf') format('truetype');
    font-weight: 400; font-style: normal; font-display: swap;
}

/* ---------- Cursore custom (come la versione migliorativa) ---------- */
.enh-cursor {
    position: fixed; top: 0; left: 0; width: 7px; height: 7px; border-radius: 50%;
    background: #b5a27e; pointer-events: none; z-index: 2147483647;
    transform: translate(-50%, -50%); mix-blend-mode: multiply;
    transition: width .35s cubic-bezier(.16,1,.3,1), height .35s cubic-bezier(.16,1,.3,1), background-color .35s, border .35s, opacity .3s;
}
.enh-cursor.hover { width: 46px; height: 46px; background: rgba(181,162,126,.12); border: 1px solid #b5a27e; mix-blend-mode: normal; }
@media (hover: hover) and (pointer: fine) {
    html.enh-cursor-on, html.enh-cursor-on * { cursor: none !important; }
    html.enh-cursor-on input, html.enh-cursor-on textarea, html.enh-cursor-on select { cursor: text !important; }
}
@media (hover: none), (pointer: coarse) { .enh-cursor { display: none !important; } }

/* ---------- Reveal morbido sezione per sezione (additivo, con fallback) ---------- */
.enh-pre {
    opacity: 0; transform: translateY(34px); filter: blur(6px);
    transition: opacity 1.05s cubic-bezier(.16,1,.3,1), transform 1.05s cubic-bezier(.16,1,.3,1), filter 1.05s cubic-bezier(.16,1,.3,1);
    will-change: opacity, transform;
}
.enh-in { opacity: 1 !important; transform: none !important; filter: none !important; }

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .enh-pre { opacity: 1 !important; transform: none !important; filter: none !important; }
}

/* ---------- Dropdown menu gestito in JS (spostato in <body>, position:fixed) ----------
   Il sotto-menu viene spostato in fondo al body e posizionato via JS: così esce da
   qualsiasi overflow/stacking del tema e non può finire sotto altri blocchi. */
.enh-dropdown {
    display: block !important;            /* annulla il display:none del tema sui .sub-menu */
    position: fixed; z-index: 2147483000;
    min-width: 210px; margin: 0; padding: 8px 0; list-style: none;
    background: #fff; border-top: 2px solid #b5a27e;
    box-shadow: 0 18px 50px rgba(0,0,0,.18);
    opacity: 0; visibility: hidden; transform: translateY(8px);
    transition: opacity .25s ease, transform .25s ease, visibility 0s linear .25s;
}
.enh-dropdown.open { opacity: 1; visibility: visible; transform: translateY(0); transition: opacity .25s ease, transform .25s ease; }
.enh-dropdown li { display: block !important; float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.enh-dropdown li::before, .enh-dropdown li::after { content: none !important; display: none !important; }
.enh-dropdown li > a {
    display: block !important; padding: 9px 22px; color: #2a2a2a;
    font-size: 13px; line-height: 1.5; text-transform: none; letter-spacing: .03em;
    white-space: nowrap; text-decoration: none; transition: color .2s, background .2s;
}
.enh-dropdown li > a:hover { color: #b5a27e; background: #f6f3ec; }
.enh-dropdown .di, .enh-dropdown .admi, .enh-dropdown i { display: none !important; }  /* nasconde freccette/icone interne */
@media (hover: none), (pointer: coarse) { .enh-dropdown { display: none !important; } }

/* =========================================================
   MENU FULL-SCREEN SPLIT (overlay, aperto dall'hamburger)
   ========================================================= */
.efs-overlay {
    position: fixed; inset: 0; z-index: 2147483600;
    background: #f6f3ec;
    display: grid; grid-template-columns: 0.92fr 1.25fr; overflow: hidden;
    opacity: 0; visibility: hidden;
    transition: opacity .5s cubic-bezier(.16,1,.3,1), visibility 0s linear .5s;
    font-family: 'got','Montserrat',sans-serif;
}
body.efs-open .efs-overlay { opacity: 1; visibility: visible; transition: opacity .55s cubic-bezier(.16,1,.3,1); }
body.efs-open { overflow: hidden; }

.efs-close { position: absolute; top: 1.7rem; right: 1.7rem; z-index: 10; width: 46px; height: 46px; border-radius: 50%; background: transparent; border: 1px solid rgba(34,31,33,.22); cursor: pointer; opacity: 0; transform: scale(.8); transition: opacity .5s ease .1s, transform .6s cubic-bezier(.16,1,.3,1) .1s, border-color .3s, background .3s; }
body.efs-open .efs-close { opacity: 1; transform: scale(1); }
.efs-close:hover { border-color: #b5a27e; background: rgba(181,162,126,.12); }
.efs-close::before, .efs-close::after { content: ''; position: absolute; top: 50%; left: 14px; right: 14px; height: 1.5px; background: #221f21; }
.efs-close::before { transform: translateY(-50%) rotate(45deg); }
.efs-close::after  { transform: translateY(-50%) rotate(-45deg); }

/* aside scuro */
.efs-aside { position: relative; background: #221f21; color: #f3efe7; display: flex; flex-direction: column; justify-content: space-between; padding: 3rem 3rem 2.6rem; overflow: hidden; clip-path: inset(0 100% 0 0); transition: clip-path .8s cubic-bezier(.16,1,.3,1); }
body.efs-open .efs-aside { clip-path: inset(0 0 0 0); }
.efs-aside::after { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 70% 50% at 20% 90%, rgba(181,162,126,.16), transparent 60%); pointer-events: none; }
.efs-logo { position: relative; z-index: 2; opacity: 0; transform: translateY(-10px); transition: opacity .6s ease .35s, transform .6s cubic-bezier(.16,1,.3,1) .35s; }
.efs-logo img { height: 42px; width: auto; display: block; }
body.efs-open .efs-logo { opacity: 1; transform: translateY(0); }
.efs-aside-body { position: relative; z-index: 2; opacity: 0; transform: translateY(14px); transition: opacity .7s ease .5s, transform .7s cubic-bezier(.16,1,.3,1) .5s; }
body.efs-open .efs-aside-body { opacity: 1; transform: translateY(0); }
.efs-eyebrow { display: block; font-size: .58rem; letter-spacing: .35em; text-transform: uppercase; color: #b5a27e; margin-bottom: 1rem; }
.efs-payoff { font-family: 'gara','EB Garamond',serif; font-size: clamp(1.5rem, 2.3vw, 2.1rem); line-height: 1.18; color: #f3efe7; }
.efs-aside-foot { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 1rem; opacity: 0; transform: translateY(14px); transition: opacity .7s ease .62s, transform .7s cubic-bezier(.16,1,.3,1) .62s; }
body.efs-open .efs-aside-foot { opacity: 1; transform: translateY(0); }
.efs-contact a { display: block; color: #b6afa4; text-decoration: none; font-size: .82rem; letter-spacing: .04em; transition: color .3s; margin-bottom: .35rem; }
.efs-contact a:hover { color: #b5a27e; }
.efs-socials { display: flex; gap: .8rem; }
.efs-socials a { width: 38px; height: 38px; border: 1px solid rgba(243,239,231,.16); border-radius: 50%; display: flex; align-items: center; justify-content: center; transition: border-color .3s, background .3s; }
.efs-socials a:hover { border-color: #b5a27e; background: rgba(181,162,126,.12); }
.efs-socials img { width: 15px; height: 15px; filter: brightness(0) invert(1); opacity: .8; }

/* pannello principale chiaro */
.efs-main { display: flex; flex-direction: column; justify-content: center; padding: 4rem 4.5rem; overflow-y: auto; }
.efs-links { list-style: none; margin: 0; padding: 0; }
.efs-links li { border-top: 1px solid rgba(34,31,33,.12); overflow: hidden; }
.efs-links li:last-child { border-bottom: 1px solid rgba(34,31,33,.12); }
.efs-links a {
    display: flex; align-items: baseline; justify-content: space-between; gap: 1.5rem;
    padding: 1.05rem .4rem; text-decoration: none; position: relative;
    opacity: 0; transform: translateX(-26px);
    transition: opacity .6s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1), padding-left .4s cubic-bezier(.16,1,.3,1);
}
body.efs-open .efs-links a { opacity: 1; transform: translateX(0); }
.efs-links a::after { content: ''; position: absolute; left: .4rem; right: .4rem; bottom: 0; height: 1px; background: #b5a27e; transform: scaleX(0); transform-origin: left; transition: transform .5s cubic-bezier(.16,1,.3,1); }
.efs-links a:hover { padding-left: 1.1rem; }
.efs-links a:hover::after { transform: scaleX(1); }
.efs-name { font-family: 'gara','EB Garamond',serif; font-size: clamp(1.9rem, 3.4vw, 2.9rem); font-weight: 400; line-height: 1; color: #221f21; transition: color .3s; }
.efs-links a:hover .efs-name { color: #9c8862; }
.efs-meta { font-size: .6rem; letter-spacing: .28em; text-transform: uppercase; color: #8f8f8f; white-space: nowrap; transition: color .3s; }
.efs-links a:hover .efs-meta { color: #b5a27e; }
body.efs-open .efs-links li:nth-child(1) a { transition-delay: .34s; }
body.efs-open .efs-links li:nth-child(2) a { transition-delay: .40s; }
body.efs-open .efs-links li:nth-child(3) a { transition-delay: .46s; }
body.efs-open .efs-links li:nth-child(4) a { transition-delay: .52s; }
body.efs-open .efs-links li:nth-child(5) a { transition-delay: .58s; }
body.efs-open .efs-links li:nth-child(6) a { transition-delay: .64s; }
body.efs-open .efs-links li:nth-child(7) a { transition-delay: .70s; }
.efs-sub { margin-top: 2.6rem; opacity: 0; transform: translateY(14px); transition: opacity .7s ease .7s, transform .7s cubic-bezier(.16,1,.3,1) .7s; }
body.efs-open .efs-sub { opacity: 1; transform: translateY(0); }
.efs-sub-top { margin-top: 0; margin-bottom: 2.4rem; padding-bottom: 1.6rem; border-bottom: 1px solid rgba(34,31,33,.12); transition-delay: .28s; }
body.efs-open .efs-sub-top { transition-delay: .28s; }
.efs-sub-label { display: block; font-size: .56rem; letter-spacing: .35em; text-transform: uppercase; color: #9c8862; margin-bottom: 1rem; }
.efs-sub ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 1rem 2rem; }
.efs-sub a { color: #221f21; text-decoration: none; font-size: .72rem; letter-spacing: .22em; text-transform: uppercase; position: relative; transition: color .3s; }
.efs-sub a::after { content: ''; position: absolute; left: 0; bottom: -3px; width: 100%; height: 1px; background: #b5a27e; transform: scaleX(0); transform-origin: right; transition: transform .35s cubic-bezier(.16,1,.3,1); }
.efs-sub a:hover { color: #9c8862; }
.efs-sub a:hover::after { transform: scaleX(1); transform-origin: left; }

@media (max-width: 860px) {
    .efs-overlay { grid-template-columns: 1fr; grid-template-rows: auto 1fr; }
    .efs-aside { flex-direction: row; align-items: center; justify-content: flex-start; padding: 1.4rem 1.5rem; clip-path: inset(0 0 100% 0); }
    body.efs-open .efs-aside { clip-path: inset(0 0 0 0); }
    .efs-aside-body, .efs-aside-foot { display: none; }
    .efs-logo img { height: 26px; }
    .efs-main { padding: 1.8rem 1.5rem 2.5rem; justify-content: flex-start; }
    .efs-name { font-size: clamp(1.7rem, 9vw, 2.4rem); }
    .efs-close { top: 1rem; right: 1.1rem; border-color: rgba(243,239,231,.4); }
    .efs-close::before, .efs-close::after { background: #f3efe7; }
}

/* =========================================================
   HERO SLIDER HOME (3 slide crossfade, sostituisce l'immagine statica)
   ========================================================= */
#headerhomeimg { padding: 0 !important; border: 0 !important; margin: 0 !important; line-height: 0; }
#headerhomeimg .vc_figure, #headerhomeimg figure { margin: 0 !important; }
.mh-slider { position: relative; width: 100%; aspect-ratio: 1774 / 887; overflow: hidden; background: linear-gradient(180deg,#cdd6dc,#e8ebe9 55%,#f2ede4); }
.mh-slide { position: absolute; inset: 0; display: block; background-size: cover; background-position: center; opacity: 0; transition: opacity 1.1s ease; }
.mh-slide.is-active { opacity: 1; }
.mh-dots { position: absolute; left: 0; right: 0; bottom: 18px; display: flex; justify-content: center; gap: 10px; z-index: 5; line-height: 0; }
.mh-dot { width: 9px; height: 9px; border-radius: 50%; border: 1px solid #b5a27e; background: transparent; cursor: pointer; padding: 0; transition: background .3s, transform .3s; }
.mh-dot.is-active { background: #b5a27e; transform: scale(1.15); }
/* frecce avanti/indietro */
.mh-arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 6; width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(34,31,33,.25); background: rgba(255,255,255,.55); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); cursor: pointer; display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity .35s ease, background .3s, border-color .3s; }
.mh-slider:hover .mh-arrow { opacity: 1; }
.mh-arrow:hover { background: #fff; border-color: #b5a27e; }
.mh-arrow::before { content: ''; width: 11px; height: 11px; border-top: 1.6px solid #221f21; border-right: 1.6px solid #221f21; }
.mh-prev { left: 22px; } .mh-prev::before { transform: rotate(-135deg); margin-left: 4px; }
.mh-next { right: 22px; } .mh-next::before { transform: rotate(45deg); margin-right: 4px; }
@media (hover: none), (pointer: coarse) { .mh-arrow { opacity: 1; } }
@media (max-width: 600px) { .mh-dots { bottom: 10px; } .mh-arrow { width: 38px; height: 38px; opacity: 1; } .mh-prev { left: 8px; } .mh-next { right: 8px; } }

/* segnaposto Rolex home (alto a dx) */
.fotooro img { max-height: 73px; }

/* voce "Menu" dell'hamburger: maiuscolo + posizione fissa dopo l'icona
   (senza 'left' Chrome la sovrapponeva all'icona; Firefox no) */
.portfolio-nav-opener::after { text-transform: uppercase !important; letter-spacing: .04em !important; left: 100% !important; right: auto !important; margin-left: 12px !important; white-space: nowrap !important; }

/* "I Nostri Store": nuovo sfondo (marmo grigio/diamante) + blocco più largo (non full-width) */
.vc_custom_1773102849138 {
    background-image: url('../media/img/fondo-gioiello.png') !important;
    background-size: cover !important;
    background-position: center !important;
    position: relative !important;
    box-sizing: border-box !important;
    /* full-bleed: estendo a destra di 24px per coprire l'area della scrollbar */
    width: calc(100vw + 24px) !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw - 24px) !important;
    left: auto !important;
    transform: none !important;
    /* full-screen anche in altezza */
    min-height: 100vh !important;
    display: flex !important;
    align-items: center !important;
    padding-top: 6vh !important;
    padding-bottom: 6vh !important;
    /* contenuto interno alle proporzioni attuali (min(1560px, 94vw)), centrato */
    padding-left: max(3vw, calc(50vw - 780px)) !important;
    padding-right: max(3vw, calc(50vw - 780px)) !important;
}
/* mobile: full-bleed simmetrico (niente +24px scrollbar che spingeva le card a dx) */
@media (max-width: 767px) {
    .vc_custom_1773102849138 {
        width: 100vw !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        min-height: auto !important;
        display: block !important;
        padding-left: 5vw !important;
        padding-right: 5vw !important;
        padding-top: 8vh !important;
        padding-bottom: 8vh !important;
    }
    .vc_custom_1773102849138 .vc_column-inner,
    .vc_custom_1773102849138 .wpb_wrapper { max-width: 100% !important; }
}

/* home: voci grandi ROLEX/TUDOR/GIOIELLERIA — su mobile riduco per non tagliare "GIOIELLERIA" */
@media (max-width: 767px) {
    .elegrandeul { margin-top: 0 !important; }
    .elegrandeul li a { font-size: clamp(34px, 13vw, 56px) !important; white-space: nowrap; }
    .elegrandeul li { margin-bottom: 26px !important; }
}

/* banner home ricostruiti con tag mio (niente quirk srcset/lazy/attr del tema) */
.monetti-banner { display: block; width: 100%; line-height: 0; overflow: hidden; }
.monetti-banner img { display: block; width: 100%; height: auto; }

/* offset globale del contenuto sotto l'header fisso — solo mobile
   (sostituisce il vecchio fix specifico dello slide home) */
@media (max-width: 767px) {
    #main { margin-top: 70px !important; }
}

/* fascia orario Rolex: versione verticale solo da mobile, centrata e non deformata */
.monetti-fascia { display: block; width: 100%; height: auto; }
@media (max-width: 767px) {
    .monetti-fascia-pic { display: block; text-align: center; line-height: 0; }
    .monetti-fascia { max-width: 420px; margin: 0 auto; }
}

/* facciata via-dei-mille: immagine a tutta larghezza (il wrapper inline la teneva a metà) */
#facciata, #facciata .vc_figure, #facciata .vc_single_image-wrapper { display: block !important; width: 100% !important; max-width: 100% !important; margin: 0 !important; border: 0 !important; line-height: 0; }
#facciata img { display: block !important; width: 100% !important; height: auto !important; max-height: none !important; max-width: 100% !important; object-fit: contain !important; object-position: top !important; }

/* =========================================================
   PAGINA GIOIELLERIA
   ========================================================= */
.gio-hero { position: relative; width: 100%; background: #f3f3f1; overflow: hidden; }
.gio-hero-bg { display: block; width: 100%; height: auto; }
.gio-hero-text { position: absolute; left: 11%; top: 50%; transform: translateY(-50%); z-index: 2; text-align: center; }
.gio-eyebrow { display: block; font-family: 'got','Montserrat',sans-serif; font-size: 13px; letter-spacing: .28em; text-transform: uppercase; color: #b5a27e; margin-bottom: 12px; }
.gio-title { font-family: 'gara','EB Garamond',serif; font-weight: 400; text-transform: uppercase; font-size: clamp(2.2rem, 4.6vw, 4rem); color: #1d1d1d; margin: 0; line-height: 1; letter-spacing: .03em; }
.gio-divider { display: block; width: 72px; height: 2px; background: #b5a27e; margin: 22px auto 0; }

.gio-brands { background: #fff; padding: 84px 2rem 92px; text-align: center; }
.gio-brands-head { font-family: 'got','Montserrat',sans-serif; font-weight: 400; font-size: 13px; letter-spacing: .28em; text-transform: uppercase; color: #c2b18c; margin: 0 0 60px; }
.gio-brands-rows { max-width: 1040px; margin: 0 auto; display: flex; flex-direction: column; gap: 60px; }
.gio-brand-row { display: flex; justify-content: center; align-items: center; gap: clamp(36px, 9vw, 120px); flex-wrap: wrap; }
.gio-brand img { display: block; width: auto; object-fit: contain; transition: opacity .3s; }
.gio-row-2 .gio-brand img { max-height: 56px; max-width: 300px; }
.gio-row-3 .gio-brand img { max-height: 78px; max-width: 200px; }
.gio-brand:hover img { opacity: .6; }

.gio-form-sec { background: #fff; padding: 26px 2rem 110px; }
.gio-form-wrap { max-width: 1120px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1.15fr; gap: 5rem; align-items: start; }
.gio-form-left h2 { font-family: 'gara','EB Garamond',serif; font-weight: 400; text-transform: uppercase; font-size: 26px; color: #1d1d1d; margin: 0 0 16px; letter-spacing: .06em; }
.gio-form-left p { font-family: 'got','Montserrat',sans-serif; font-size: 14px; line-height: 1.75; color: #6f6f6f; max-width: 42ch; }
.gio-field { margin-bottom: 28px; }
.gio-field input, .gio-field textarea { width: 100% !important; border: 0 !important; border-bottom: 1px solid #d2d2d2 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; padding: 10px 2px !important; margin: 0 !important; font-family: 'got','Montserrat',sans-serif !important; font-size: 13px !important; letter-spacing: .14em; text-transform: uppercase; color: #333; transition: border-color .3s; height: auto !important; }
.gio-field input::placeholder, .gio-field textarea::placeholder { color: #b6b6b6; letter-spacing: .14em; text-transform: uppercase; }
.gio-field input:focus, .gio-field textarea:focus { outline: none; border-bottom-color: #b5a27e !important; }
.gio-field textarea { resize: vertical; min-height: 90px !important; }
.gio-submit { display: inline-block; background: transparent !important; border: 1px solid #cbb894 !important; border-radius: 0 !important; box-shadow: none !important; color: #9c8862 !important; font-family: 'got','Montserrat',sans-serif; font-size: 13px; letter-spacing: .22em; text-transform: uppercase; padding: 15px 46px; cursor: pointer; transition: background .4s, color .4s, border-color .4s; }
.gio-submit:hover { background: #b5a27e !important; border-color: #b5a27e !important; color: #fff !important; }
.gio-form .form-note { margin-top: 16px; font-size: 12px; color: #888; font-family: 'got',sans-serif; }
@media (max-width: 900px) {
    .gio-form-wrap { grid-template-columns: 1fr; gap: 2.2rem; }
}
@media (max-width: 768px) {
    /* hero impilato: titolo sopra, immagine anello sotto (niente sovrapposizione) */
    .gio-hero { display: flex; flex-direction: column; background: #fff; }
    .gio-hero-text { position: static; transform: none; left: auto; top: auto; order: -1; padding: 54px 22px 18px; }
    .gio-title { font-size: clamp(2.1rem, 10vw, 3.2rem); }
    .gio-eyebrow { font-size: 12px; }
    .gio-divider { margin-top: 18px; }
    .gio-hero-bg { background: #f3f3f1; }
}
@media (max-width: 600px) {
    .gio-row-2 .gio-brand img, .gio-row-3 .gio-brand img { max-height: 40px; max-width: 160px; }
    .gio-brand-row { gap: 26px; }
    .gio-brands { padding: 54px 1.2rem 60px; }
    .gio-form-sec { padding: 10px 1.2rem 72px; }
    .gio-form-left h2 { font-size: 22px; }
}

/* 4a colonna footer: logo Fondation de la Haute Horlogerie */
@media (min-width: 768px) {
    .row-fhh > [class*="col-md-4"] { flex: 0 0 25% !important; max-width: 25% !important; width: 25% !important; }
}
.fhh-col { display: flex; }
.fhh-link { display: inline-block; align-self: flex-start; line-height: 0; transition: opacity .3s, transform .3s; }
.fhh-link:hover { opacity: .85; transform: translateY(-2px); }
.fhh-link img { width: 100%; max-width: 200px; height: auto; display: block; }
@media (max-width: 767px) { .fhh-col { margin-top: 14px; } }

/* =========================================================
   CAROSELLO LOGHI BRAND (scorrimento infinito, stessa misura)
   ========================================================= */
.rigaloghi, .elencologhi { display: block !important; width: 100%; }
.mlogos { width: 100%; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.mlogos-track { display: flex; width: max-content; align-items: center; animation: mlogos-scroll 38s linear infinite; }
.mlogos:hover .mlogos-track { animation-play-state: paused; }
.mlogos .slot { flex: 0 0 auto; width: 190px; height: 72px; display: flex; align-items: center; justify-content: center; padding: 0 22px; }
.mlogos .slot img { max-height: 44px; max-width: 100%; width: auto; object-fit: contain; filter: grayscale(1); opacity: .55; transition: filter .4s, opacity .4s, transform .4s; }
.mlogos .slot:hover img { filter: grayscale(0); opacity: 1; transform: scale(1.05); }
.mlogos .slot-link a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; cursor: pointer; }
@keyframes mlogos-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .mlogos-track { animation: none; } }
@media (max-width: 600px) { .mlogos .slot { width: 140px; height: 58px; padding: 0 14px; } .mlogos .slot img { max-height: 36px; } }
/* mobile: più aria sopra/sotto il carosello + swipe nativo (niente auto-scroll) */
@media (max-width: 767px) {
    .rigaloghi, .elencologhi { margin-top: 34px !important; margin-bottom: 34px !important; }
    .mlogos { overflow-x: auto; -webkit-overflow-scrolling: touch; scroll-snap-type: x proximity; -webkit-mask-image: none; mask-image: none; }
    .mlogos::-webkit-scrollbar { display: none; }
    .mlogos { scrollbar-width: none; }
    .mlogos-track { animation: none !important; width: max-content; }
    .mlogos .slot { scroll-snap-align: center; }
}

/* =========================================================
   EVENTS & CAMPAIN — indice (stile PDF: fondo scuro, righe data/foto/testo)
   ========================================================= */
.ev-wrap { background: #221f21; color: #f3efe7; padding: clamp(48px, 7vw, 86px) 0 clamp(60px, 9vw, 100px); }
.ev-head { text-align: center; font-family: 'gara','EB Garamond',serif; font-weight: 400; font-size: clamp(2rem, 4.4vw, 3.3rem); letter-spacing: .06em; margin: 0 0 clamp(34px, 5vw, 56px); color: #f3efe7; }
.ev-list { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.ev-row { display: grid; grid-template-columns: 160px minmax(240px, 360px) minmax(0, 1fr); gap: clamp(24px, 3vw, 44px); align-items: center; padding: clamp(28px, 3.6vw, 44px) 0; border-top: 1px solid rgba(243,239,231,.16); }
.ev-row:last-child { border-bottom: 1px solid rgba(243,239,231,.16); }
.ev-date { font-family: 'gara','EB Garamond',serif; font-size: clamp(18px, 1.7vw, 23px); color: #b5a27e; letter-spacing: .05em; text-transform: uppercase; }
.ev-thumb { display: block; overflow: hidden; line-height: 0; min-width: 0; }
.ev-thumb img { display: block; width: 100%; height: 232px; object-fit: cover; transition: transform .7s cubic-bezier(.16,1,.3,1); }
.ev-thumb:hover img { transform: scale(1.05); }
.ev-body { min-width: 0; }
.ev-title { font-family: 'gara','EB Garamond',serif; font-weight: 400; font-size: clamp(1.35rem, 1.9vw, 1.7rem); line-height: 1.15; text-transform: uppercase; color: #f3efe7; margin: 0 0 14px; letter-spacing: .02em; overflow-wrap: break-word; }
.ev-excerpt { font-family: 'got','Montserrat',sans-serif; font-size: 14px; line-height: 1.7; color: #b3ada4; margin: 0 0 26px; max-width: 54ch; }
.ev-entra { display: inline-block; font-family: 'got','Montserrat',sans-serif; font-size: 12px; letter-spacing: .22em; text-transform: uppercase; color: #f3efe7; border: 1px solid rgba(243,239,231,.4); padding: 13px 40px; transition: background .4s, color .4s, border-color .4s; }
.ev-entra:hover { background: #b5a27e; border-color: #b5a27e; color: #221f21; }
@media (max-width: 860px) {
    .ev-row { grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 30px 0; }
    .ev-date { font-size: 17px; order: 1; }
    .ev-thumb { order: 2; } .ev-thumb img { height: 220px; }
    .ev-body { order: 3; }
    .ev-title { font-size: clamp(1.15rem, 5.6vw, 1.55rem); }
    .ev-excerpt { max-width: none; }
}

/* =========================================================
   PAGINA SINGOLA NEWS (na-*)
   ========================================================= */
.na-article { background: #fff; }
.na-hero { position: relative; width: 100%; height: clamp(320px, 56vh, 620px); overflow: hidden; }
.na-hero > img { width: 100%; height: 100%; object-fit: cover; display: block; }
.na-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(34,31,33,.12) 0%, rgba(34,31,33,.28) 50%, rgba(34,31,33,.66) 100%); }
.na-hero-cap { position: absolute; left: 0; right: 0; bottom: clamp(28px, 7%, 74px); text-align: center; z-index: 2; padding: 0 22px; }
.na-date { display: block; font-family: 'got','Montserrat',sans-serif; font-size: 13px; letter-spacing: .28em; text-transform: uppercase; color: #e7d9bb; margin-bottom: 12px; }
.na-title { font-family: 'gara','EB Garamond',serif; font-weight: 400; text-transform: uppercase; font-size: clamp(1.9rem, 4.6vw, 3.5rem); margin: 0; line-height: 1.05; letter-spacing: .03em; color: #fff; }
.na-body { max-width: 760px; margin: 0 auto; padding: clamp(44px, 6vw, 70px) 24px 6px; }
.na-lead { font-family: 'gara','EB Garamond',serif; font-size: clamp(1.2rem, 1.7vw, 1.5rem); line-height: 1.6; color: #2a2628; margin: 0 0 30px; }
.na-sub { font-family: 'gara','EB Garamond',serif; font-weight: 400; text-transform: uppercase; font-size: clamp(1.1rem, 1.5vw, 1.35rem); letter-spacing: .04em; color: #b5a27e; margin: 34px 0 16px; }
.na-body p { font-family: 'got','Montserrat',sans-serif; font-size: 15px; line-height: 1.85; color: #5b5658; margin: 0 0 22px; }
.na-divider { display: block; width: 60px; height: 2px; background: #b5a27e; margin: 14px auto clamp(34px, 5vw, 50px); }
.na-gallery { max-width: 1180px; margin: 0 auto; padding: 0 24px clamp(50px, 7vw, 84px); display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.na-gallery a { display: block; overflow: hidden; line-height: 0; }
.na-gallery img { width: 100%; height: 260px; object-fit: cover; display: block; transition: transform .7s cubic-bezier(.16,1,.3,1); }
.na-gallery a:hover img { transform: scale(1.06); }
.na-back { text-align: center; padding: 0 0 clamp(56px, 8vw, 90px); }
.na-back a { display: inline-block; font-family: 'got','Montserrat',sans-serif; font-size: 12px; letter-spacing: .22em; text-transform: uppercase; color: #9c8862; border: 1px solid #cbb894; padding: 13px 42px; transition: background .4s, color .4s, border-color .4s; }
.na-back a:hover { background: #b5a27e; border-color: #b5a27e; color: #fff; }
@media (max-width: 860px) { .na-gallery:not(.na-poster) { grid-template-columns: repeat(2, 1fr); } .na-gallery:not(.na-poster) img { height: 210px; } }
@media (max-width: 560px) { .na-gallery:not(.na-poster) { grid-template-columns: 1fr; } .na-gallery:not(.na-poster) img { height: 240px; } }

/* campagna a tutta pagina (poster verticale): mostrata intera, non ritagliata */
.na-poster { grid-template-columns: 1fr; max-width: 680px; padding-top: 6px; }
.na-poster a { line-height: 0; box-shadow: 0 16px 50px rgba(34,31,33,.18); }
.na-poster img { width: 100%; height: auto; object-fit: contain; }

/* =========================================================
   LIGHTBOX gallery news (.nlb)
   ========================================================= */
.na-gallery a { cursor: pointer; }
.nlb { position: fixed; inset: 0; z-index: 2147483600; background: rgba(20,18,19,.93); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: opacity .35s ease, visibility .35s; }
.nlb.is-open { opacity: 1; visibility: visible; }
.nlb-fig { margin: 0; max-width: 92vw; max-height: 86vh; display: flex; flex-direction: column; align-items: center; }
.nlb-img { max-width: 92vw; max-height: 80vh; width: auto; height: auto; object-fit: contain; box-shadow: 0 18px 60px rgba(0,0,0,.5); opacity: 0; transition: opacity .3s ease; }
.nlb-img.is-ready { opacity: 1; }
.nlb-cap { color: #cfc8bd; font-family: 'got','Montserrat',sans-serif; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; margin-top: 14px; text-align: center; max-width: 80vw; }
.nlb-count { position: absolute; bottom: 22px; left: 0; right: 0; text-align: center; color: #b5a27e; font-family: 'got','Montserrat',sans-serif; font-size: 12px; letter-spacing: .18em; }
.nlb-close, .nlb-prev, .nlb-next { position: absolute; background: rgba(255,255,255,.08); border: 1px solid rgba(243,239,231,.35); cursor: pointer; transition: background .3s, border-color .3s; padding: 0; }
.nlb-close { top: 20px; right: 22px; width: 46px; height: 46px; border-radius: 50%; }
.nlb-close::before, .nlb-close::after { content: ''; position: absolute; left: 50%; top: 50%; width: 18px; height: 1.5px; background: #f3efe7; }
.nlb-close::before { transform: translate(-50%,-50%) rotate(45deg); }
.nlb-close::after { transform: translate(-50%,-50%) rotate(-45deg); }
.nlb-prev, .nlb-next { top: 50%; transform: translateY(-50%); width: 52px; height: 52px; border-radius: 50%; }
.nlb-prev { left: 24px; } .nlb-next { right: 24px; }
.nlb-prev::before, .nlb-next::before { content: ''; position: absolute; left: 50%; top: 50%; width: 13px; height: 13px; border-top: 2px solid #f3efe7; border-right: 2px solid #f3efe7; }
.nlb-prev::before { transform: translate(-30%,-50%) rotate(-135deg); }
.nlb-next::before { transform: translate(-70%,-50%) rotate(45deg); }
.nlb-close:hover, .nlb-prev:hover, .nlb-next:hover { background: #b5a27e; border-color: #b5a27e; }
.nlb.is-single .nlb-prev, .nlb.is-single .nlb-next, .nlb.is-single .nlb-count { display: none; }
@media (max-width: 600px) { .nlb-prev, .nlb-next { width: 42px; height: 42px; } .nlb-prev { left: 8px; } .nlb-next { right: 8px; } .nlb-close { top: 12px; right: 12px; } }

/* =========================================================
   HOME — ultime 3 news (Events & Campain) con pannelli espandibili
   ========================================================= */
.home-news { background: transparent; padding: clamp(54px, 7vw, 96px) 0; }
.hn-head { text-align: center; margin-bottom: clamp(28px, 4vw, 52px); padding: 0 22px; }
.hn-eyebrow { display: block; font-family: 'got','Montserrat',sans-serif; font-size: 13px; letter-spacing: .28em; text-transform: uppercase; color: #b5a27e; margin-bottom: 12px; }
.hn-title { font-family: 'gara','EB Garamond',serif; font-weight: 400; font-size: clamp(1.9rem, 3.4vw, 2.9rem); text-transform: uppercase; letter-spacing: .04em; color: #1d1d1d; margin: 0; line-height: 1.05; }
.hn-divider { display: block; width: 64px; height: 2px; background: #b5a27e; margin: 18px auto 0; }
.hn-row { display: flex; gap: 14px; max-width: 1320px; margin: 0 auto; padding: 0 24px; }
.hn-card { position: relative; flex: 1 1 0; min-width: 0; height: clamp(360px, 46vw, 520px); overflow: hidden; display: block; line-height: 0; transition: flex-grow .6s cubic-bezier(.16,1,.3,1); }
.hn-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s cubic-bezier(.16,1,.3,1); }
.hn-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(34,31,33,0) 38%, rgba(34,31,33,.74) 100%); transition: background .5s ease; }
.hn-cap { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 24px 26px; text-align: left; }
.hn-date { display: block; font-family: 'got','Montserrat',sans-serif; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: #e7d9bb; margin-bottom: 8px; }
.hn-name { display: block; font-family: 'gara','EB Garamond',serif; font-size: clamp(1.05rem, 1.4vw, 1.45rem); line-height: 1.18; text-transform: uppercase; color: #fff; letter-spacing: .02em; }
/* effetto: la card sotto al mouse si allarga, le altre si stringono (sempre 3 colonne) */
.hn-row:hover .hn-card { flex-grow: .7; }
.hn-row .hn-card:hover { flex-grow: 2.4; }
.hn-card:hover img { transform: scale(1.05); }
.hn-card:hover::after { background: linear-gradient(180deg, rgba(34,31,33,0) 46%, rgba(34,31,33,.66) 100%); }
.hn-more { text-align: center; margin-top: clamp(30px, 4vw, 50px); }
.hn-more a { display: inline-block; font-family: 'got','Montserrat',sans-serif; font-size: 12px; letter-spacing: .22em; text-transform: uppercase; color: #9c8862; border: 1px solid #cbb894; padding: 13px 42px; transition: background .4s, color .4s, border-color .4s; }
.hn-more a:hover { background: #b5a27e; border-color: #b5a27e; color: #fff; }
@media (max-width: 780px) {
    .hn-row { flex-direction: column; }
    .hn-card { flex: none; height: 280px; }
    .hn-row:hover .hn-card, .hn-row .hn-card:hover { flex-grow: 0; }
}

/* =========================================================
   WIDGET WHATSAPP FLOTTANTE (basso a sinistra, su tutte le pagine)
   ========================================================= */
.wa-fab { position: fixed; left: 24px; bottom: 24px; z-index: 2147483200; width: 58px; height: 58px; border-radius: 50%; background: #25D366; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 24px rgba(0,0,0,.22); transition: transform .3s cubic-bezier(.16,1,.3,1), box-shadow .3s; }
.wa-fab:hover { transform: translateY(-3px) scale(1.05); box-shadow: 0 12px 32px rgba(37,211,102,.5); }
.wa-fab svg { width: 32px; height: 32px; fill: #fff; position: relative; z-index: 2; }
.wa-fab::before { content: ''; position: absolute; inset: 0; border-radius: 50%; background: #25D366; z-index: 1; animation: wa-pulse 2.4s ease-out infinite; }
@keyframes wa-pulse { 0% { transform: scale(1); opacity: .5; } 70% { transform: scale(1.7); opacity: 0; } 100% { opacity: 0; } }
.wa-tip { position: absolute; left: 70px; top: 50%; transform: translateY(-50%) translateX(-6px); white-space: nowrap; background: #221f21; color: #f3efe7; font-family: 'got','Montserrat',sans-serif; font-size: 12px; letter-spacing: .04em; padding: 9px 14px; border-radius: 6px; opacity: 0; pointer-events: none; box-shadow: 0 6px 18px rgba(0,0,0,.2); transition: opacity .3s ease, transform .3s ease; z-index: 3; }
.wa-tip::after { content: ''; position: absolute; left: -5px; top: 50%; transform: translateY(-50%); border: 5px solid transparent; border-right-color: #221f21; }
.wa-fab:hover .wa-tip { opacity: 1; transform: translateY(-50%) translateX(0); }
/* nascondo il widget quando il menu fullscreen o la lightbox sono aperti */
body.efs-open .wa-fab { opacity: 0; pointer-events: none; }
@media (max-width: 600px) { .wa-fab { width: 52px; height: 52px; left: 16px; bottom: 16px; } .wa-fab svg { width: 28px; height: 28px; } .wa-tip { display: none; } }
@media (prefers-reduced-motion: reduce) { .wa-fab::before { animation: none; } }

/* ===== Form Everest nella sezione Gioielleria: stessa estetica del form demo ===== */
.gio-form-sec .everest-forms { margin: 0; }
.gio-form-sec .everest-forms .evf-field-label,
.gio-form-sec .everest-forms label:not(.everest-forms-privacy-policy-label) { display: none; }
.gio-form-sec .everest-forms input[type="text"],
.gio-form-sec .everest-forms input[type="email"],
.gio-form-sec .everest-forms input[type="tel"],
.gio-form-sec .everest-forms textarea {
    width: 100% !important; border: 0 !important; border-bottom: 1px solid #d2d2d2 !important;
    border-radius: 0 !important; background: transparent !important; box-shadow: none !important;
    padding: 10px 2px !important; margin: 0 0 4px !important;
    font-family: 'got','Montserrat',sans-serif !important; font-size: 13px !important;
    letter-spacing: .14em; text-transform: uppercase; color: #333;
    transition: border-color .3s; height: auto !important;
}
.gio-form-sec .everest-forms input::placeholder,
.gio-form-sec .everest-forms textarea::placeholder { color: #b6b6b6; letter-spacing: .14em; text-transform: uppercase; }
.gio-form-sec .everest-forms input:focus,
.gio-form-sec .everest-forms textarea:focus { outline: none; border-bottom-color: #b5a27e !important; }
.gio-form-sec .everest-forms textarea { resize: vertical; min-height: 90px !important; }
.gio-form-sec .everest-forms .evf-field { margin-bottom: 24px !important; padding: 0 !important; }
.gio-form-sec .everest-forms .everest-forms-privacy-policy-label,
.gio-form-sec .everest-forms .evf-field-privacy-policy label { display: inline; font-family: 'got','Montserrat',sans-serif; font-size: 11px; letter-spacing: .06em; color: #8a8a8a; text-transform: none; }
.gio-form-sec .everest-forms button[type="submit"],
.gio-form-sec .everest-forms .everest-forms-submit-button {
    display: inline-block; background: transparent !important; border: 1px solid #cbb894 !important;
    border-radius: 0 !important; box-shadow: none !important; color: #9c8862 !important;
    font-family: 'got','Montserrat',sans-serif; font-size: 13px; letter-spacing: .22em; text-transform: uppercase;
    padding: 15px 46px; cursor: pointer; transition: background .4s, color .4s, border-color .4s;
}
.gio-form-sec .everest-forms button[type="submit"]:hover,
.gio-form-sec .everest-forms .everest-forms-submit-button:hover { background: #b5a27e !important; border-color: #b5a27e !important; color: #fff !important; }

/* WP/wpautop: neutralizza eventuali <br>/<p> vuoti iniettati nelle griglie */
.na-gallery br, .ev-list br { display: none; }
.na-gallery > p:empty, .ev-list > p:empty { display: none; }

/* Sezioni custom (gioielleria/events/news/home-news) dentro vc_row: niente margini
   tra le righe VC — nello statico erano sezioni contigue dentro #content */
.vc_row:has(.gio-hero), .vc_row:has(.gio-brands), .vc_row:has(.gio-form-sec),
.vc_row:has(.ev-wrap), .vc_row:has(.na-article), .vc_row:has(.home-news) { margin-bottom: 0 !important; }
.vc_row:has(.gio-hero) .wpb_content_element, .vc_row:has(.gio-brands) .wpb_content_element,
.vc_row:has(.gio-form-sec) .wpb_content_element, .vc_row:has(.ev-wrap) .wpb_content_element,
.vc_row:has(.na-article) .wpb_content_element, .vc_row:has(.home-news) .wpb_content_element { margin-bottom: 0 !important; }

/* wpautop: i <p> iniettati attorno a elementi inline nelle sezioni custom
   spariscono dal layout (i figli tornano diretti nel grid/flex) */
.ev-row > p, .ev-body > p:has(> .ev-entra),
.na-hero > p, .na-gallery > p, .na-back > p,
.gio-hero > p, .gio-brand > p,
.home-news p:has(> .hn-card) { display: contents; }

/* ===== MODIFICHE DEBUG (6 lug 2026) — richieste cliente ===== */
/* 1) Testi +2px (lug 2026) e ulteriore +1px (1 set 2026) — i titoli restano invariati */
body { font-size: 17px; }
.testo { font-size: 18px !important; }
.home .testo.testostore { font-size: 17px !important; }
.formcontatti_evere input, .formcontatti_evere textarea { font-size: 17px !important; }
.evf-privacy-policy-consent-message { font-size: 16px !important; }
.acapo { font-size: 17px; }
.dirris { font-size: 15px; }

/* 5) Sezione boutique in home: via la foto cristalli -> fondo pieno grigio chiarissimo */
.vc_custom_1773102849138 { background-image: none !important; background-color: #ededed !important; }
/* leggibilita su fondo chiaro */
#boutique .titolo.titoloshop.bianco { color: #221f21; }
#boutique .blocchipulstore div { border-color: #221f21; color: #221f21; }
#boutique .rigabianca { background: #b5a27e; }

/* round 2: pulsante non selezionato piu leggibile */
#boutique .blocchipulstore div:not(.store_selezionato) { color: #221f21 !important; border-color: #221f21 !important; opacity: 1 !important; }
/* round 2: card boutique home senza indirizzi/orari/tel; mappa a tutta larghezza */
#boutique .infostore { display: none !important; }
#boutique .inlinea .mappa_store { width: 100% !important; }

/* slider banner Baume / Pasquale Bruni / Chanel in home (stile hero) */
.mb-banner-slider { aspect-ratio: 1855 / 848; background: #edeae4; }

/* dot del banner-slider come le lineette dello slider hero (swiper) */
.mb-banner-slider .mh-dots { gap: 8px; bottom: 16px; }
.mb-banner-slider .mh-dot { width: 28px; height: 4px; border-radius: 0; border: 0; background: rgba(255,255,255,.8); box-shadow: 0 1px 3px rgba(0,0,0,.3); transition: width .3s ease, background .3s ease; }
.mb-banner-slider .mh-dot.is-active { width: 50px; background: #ffffff; transform: none; }

/* pagina Gioielleria: "work in progress" leggibile sul beige della nuova foto */
.gio-hero .gio-eyebrow { color: #6f5c3e; text-shadow: 0 1px 2px rgba(255,255,255,.35); }


/* ============================================================
   WOOCOMMERCE — CARRELLO & CASSA in stile Monetti (31 ago 2026)
   Scopo: ripulire le pagine carrello/pagamento (default Woo)
   con la palette del sito: nero caldo #221f21, oro #b5a27e,
   avorio #f6f3ec, testi 'got' (Gotham), titoli 'gara' (EB Garamond).
   ============================================================ */

/* ---- fascia titolo pagina (Carrello / Pagamento / Mio account) ---- */
body.woocommerce-cart .mf-breadcrumb.page-banner,
body.woocommerce-checkout .mf-breadcrumb.page-banner,
body.woocommerce-account .mf-breadcrumb.page-banner {
  background: #f6f3ec !important;
  border-bottom: 1px solid #e9e2d4;
}
body.woocommerce-cart .mf-breadcrumb h1.heading,
body.woocommerce-checkout .mf-breadcrumb h1.heading,
body.woocommerce-account .mf-breadcrumb h1.heading {
  font-family: 'gara','EB Garamond',serif !important;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 30px;
  color: #221f21 !important;
}
body.woocommerce-cart .mf-breadcrumb a, body.woocommerce-cart .mf-breadcrumb span,
body.woocommerce-checkout .mf-breadcrumb a, body.woocommerce-checkout .mf-breadcrumb span,
body.woocommerce-account .mf-breadcrumb a, body.woocommerce-account .mf-breadcrumb span {
  font-family: 'got','Montserrat',sans-serif;
  font-size: 11px;
  letter-spacing: .18em;
  color: #8f8f8f !important;
}

/* ---- avvisi Woo (via il viola default) ---- */
#content .woocommerce-message,
#content .woocommerce-info,
#content .woocommerce-error {
  border-top: 2px solid #b5a27e !important;
  background: #faf8f3 !important;
  color: #221f21 !important;
  font-family: 'got','Montserrat',sans-serif;
  font-size: 13.5px;
  letter-spacing: .02em;
  line-height: 1.6;
}
#content .woocommerce-message::before,
#content .woocommerce-info::before { color: #b5a27e !important; }
#content .woocommerce-error { border-top-color: #a94433 !important; }
#content .woocommerce-error::before { color: #a94433 !important; }
#content .woocommerce-message a, #content .woocommerce-info a {
  color: #9c8862 !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ---- link e bottoni Woo ---- */
#content .woocommerce a:not(.button):not(.remove) { color: #9c8862; }
#content .woocommerce a:not(.button):not(.remove):hover { color: #221f21; }

#content .woocommerce .button,
#content .woocommerce button.button,
#content .woocommerce a.button,
#content .woocommerce #place_order {
  font-family: 'got','Montserrat',sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  background: #221f21 !important;
  border: 1px solid #221f21 !important;
  border-radius: 0 !important;
  padding: 15px 30px !important;
  line-height: 1 !important;
  transition: background .35s ease, border-color .35s ease, color .35s ease;
  box-shadow: none !important;
  text-decoration: none !important;
  height: auto !important;
}
#content .woocommerce .button:hover,
#content .woocommerce button.button:hover,
#content .woocommerce a.button:hover,
#content .woocommerce #place_order:hover {
  background: #b5a27e !important;
  border-color: #b5a27e !important;
  color: #fff !important;
}
/* secondari: applica codice / aggiorna carrello */
#content .woocommerce button[name="apply_coupon"],
#content .woocommerce button[name="update_cart"] {
  background: transparent !important;
  color: #221f21 !important;
  border: 1px solid rgba(34,31,33,.35) !important;
}
#content .woocommerce button[name="apply_coupon"]:hover,
#content .woocommerce button[name="update_cart"]:hover {
  border-color: #b5a27e !important;
  color: #9c8862 !important;
  background: rgba(181,162,126,.08) !important;
}
#content .woocommerce button.button:disabled,
#content .woocommerce button.button[disabled] {
  opacity: .45 !important;
  color: #221f21 !important;
  background: transparent !important;
  border-color: rgba(34,31,33,.3) !important;
}

/* ---- titoli sezione (Totale carrello, Dettagli di fatturazione, Il tuo ordine) ---- */
#content .woocommerce h2,
#content .woocommerce h3,
#content h3#order_review_heading {
  font-family: 'gara','EB Garamond',serif !important;
  font-weight: 500 !important;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: #221f21 !important;
  font-size: 22px;
}

/* ============ CARRELLO ============ */
.woocommerce-cart #content table.shop_table {
  border: 0 !important;
  border-radius: 0;
  font-family: 'got','Montserrat',sans-serif;
}
.woocommerce-cart #content table.shop_table th {
  font-family: 'got','Montserrat',sans-serif;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: #8f8f8f;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #e5dfd2 !important;
  padding: 12px 10px !important;
}
.woocommerce-cart #content table.shop_table td {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #efe9dd !important;
  padding: 24px 10px !important;
  vertical-align: middle;
  font-size: 15px;
  color: #221f21;
}
.woocommerce-cart #content td.product-thumbnail img {
  width: 92px !important;
  height: auto !important;
  background: #f7f5f0;
}
.woocommerce-cart #content td.product-name a {
  font-family: 'got','Montserrat',sans-serif;
  font-size: 14.5px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #221f21 !important;
}
.woocommerce-cart #content td.product-name a:hover { color: #9c8862 !important; }
#content .woocommerce a.remove {
  width: 26px; height: 26px;
  line-height: 23px !important;
  font-size: 18px !important;
  color: #8f8f8f !important;
  border: 1px solid #ddd6c6;
  border-radius: 50%;
  background: transparent !important;
  font-weight: 400 !important;
}
#content .woocommerce a.remove:hover {
  color: #fff !important;
  background: #b5a27e !important;
  border-color: #b5a27e;
}
#content .woocommerce .woocommerce-Price-amount { color: #221f21; }
.woocommerce-cart #content td.product-subtotal .woocommerce-Price-amount { font-weight: 600; letter-spacing: .02em; }

/* quantità */
#content .woocommerce .quantity .qty {
  width: 66px; height: 42px;
  border: 1px solid #d9d2c1;
  border-radius: 0;
  background: #fff;
  text-align: center;
  font-family: 'got','Montserrat',sans-serif;
  font-size: 14px;
  color: #221f21;
}
#content .woocommerce .quantity .qty:focus { outline: none; border-color: #b5a27e; }

/* riga azioni: coupon + aggiorna */
.woocommerce-cart #content table.shop_table td.actions {
  border-bottom: 0 !important;
  padding: 26px 0 0 !important;
}
.woocommerce-cart #content td.actions .coupon .input-text {
  width: 220px !important;
  height: 46px;
  border: 1px solid #d9d2c1 !important;
  border-radius: 0;
  background: #fff;
  padding: 0 14px !important;
  font-family: 'got','Montserrat',sans-serif;
  font-size: 13px;
  color: #221f21;
  margin-right: 10px !important;
}
.woocommerce-cart #content td.actions .coupon .input-text:focus { outline: none; border-color: #b5a27e; }

/* riepilogo totali */
.woocommerce-cart #content .cart-collaterals { display: flex; justify-content: flex-end; }
.woocommerce-cart #content .cart_totals {
  float: none !important;
  width: 100% !important;
  max-width: 520px;
  background: #faf8f3;
  border: 1px solid #ece5d5;
  padding: 30px 32px 32px;
}
.woocommerce-cart #content .cart_totals h2 { margin: 0 0 14px; font-size: 20px; }
.woocommerce-cart #content .cart_totals table.shop_table td { padding: 14px 0 !important; }
.woocommerce-cart #content .cart_totals table.shop_table th {
  border-bottom: 1px solid #e5dfd2 !important;
  padding: 14px 0 !important;
  text-align: left;
  vertical-align: top;
}
.woocommerce-cart #content .cart_totals .order-total td,
.woocommerce-cart #content .cart_totals .order-total th { border-bottom: 0 !important; padding-top: 18px !important; }
.woocommerce-cart #content .cart_totals .order-total .woocommerce-Price-amount { font-size: 19px; font-weight: 600; }
.woocommerce-cart #content .wc-proceed-to-checkout { padding-bottom: 0 !important; }
.woocommerce-cart #content .wc-proceed-to-checkout a.checkout-button {
  display: block;
  text-align: center;
  font-size: 13px !important;
  padding: 17px 20px !important;
  margin-bottom: 0 !important;
}
.woocommerce-cart #content .wc-proceed-to-checkout .ppc-button-wrapper { margin-top: 16px; }

/* spedizione nel riepilogo (radio) */
#content .woocommerce ul#shipping_method { list-style: none; margin: 0; padding: 0; }
#content .woocommerce ul#shipping_method li { margin: 0 0 8px; padding: 0; text-indent: 0; }
#content .woocommerce ul#shipping_method li label {
  font-family: 'got','Montserrat',sans-serif;
  font-size: 13.5px;
  color: #221f21;
}
#content .woocommerce input[type="radio"],
#content .woocommerce input[type="checkbox"] { accent-color: #b5a27e; }
#content .woocommerce .woocommerce-shipping-destination { font-size: 12.5px; color: #8f8f8f; }

/* ============ CASSA ============ */
/* layout: fatturazione a sinistra, riepilogo+pagamento a destra */
.woocommerce-checkout #content form.woocommerce-checkout::after { content: ""; display: table; clear: both; }
@media (min-width: 1100px) {
  .woocommerce-checkout #content form.woocommerce-checkout #customer_details {
    float: left;
    width: calc(100% - 505px);
  }
  .woocommerce-checkout #content form.woocommerce-checkout h3#order_review_heading,
  .woocommerce-checkout #content form.woocommerce-checkout #order_review {
    float: right;
    width: 460px;
    clear: right;
  }
  .woocommerce-checkout #content #customer_details .col-1,
  .woocommerce-checkout #content #customer_details .col-2 {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
  }
  .woocommerce-checkout #content #customer_details .col-2 { margin-top: 26px; }
}
.woocommerce-checkout #content h3#order_review_heading { margin: 0 0 16px; padding-top: 4px; }
.woocommerce-checkout #content #order_review {
  background: #faf8f3;
  border: 1px solid #ece5d5;
  padding: 26px 28px 28px;
}

/* campi form */
.woocommerce-checkout #content form .form-row label {
  font-family: 'got','Montserrat',sans-serif;
  font-size: 11px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #8f8f8f;
  margin-bottom: 6px;
}
.woocommerce-checkout #content form .form-row .required { color: #b5a27e !important; text-decoration: none !important; }
.woocommerce-checkout #content form .form-row { margin-bottom: 16px; }
.woocommerce-checkout #content form .input-text,
.woocommerce-checkout #content form select,
.woocommerce-checkout #content form textarea {
  height: 46px;
  border: 1px solid #d9d2c1 !important;
  border-radius: 0 !important;
  background: #fff !important;
  padding: 0 14px !important;
  font-family: 'got','Montserrat',sans-serif !important;
  font-size: 14px !important;
  color: #221f21 !important;
  box-shadow: none !important;
  transition: border-color .3s ease;
}
.woocommerce-checkout #content form textarea {
  height: auto;
  min-height: 110px;
  padding: 12px 14px !important;
  line-height: 1.6;
}
.woocommerce-checkout #content form .input-text:focus,
.woocommerce-checkout #content form select:focus,
.woocommerce-checkout #content form textarea:focus { border-color: #b5a27e !important; outline: none !important; }
.woocommerce-checkout #content form ::placeholder { color: #b9b3a6; opacity: 1; }

/* select2 (paese/provincia) */
.woocommerce-checkout #content .select2-container .select2-selection--single {
  height: 46px !important;
  border: 1px solid #d9d2c1 !important;
  border-radius: 0 !important;
  background: #fff;
}
.woocommerce-checkout #content .select2-container .select2-selection__rendered {
  line-height: 44px !important;
  padding-left: 14px;
  font-family: 'got','Montserrat',sans-serif;
  font-size: 14px;
  color: #221f21 !important;
}
.woocommerce-checkout #content .select2-container .select2-selection__arrow { height: 44px !important; }
.woocommerce-checkout #content .select2-container--focus .select2-selection--single,
.woocommerce-checkout #content .select2-container--open .select2-selection--single { border-color: #b5a27e !important; }
.select2-dropdown {
  border: 1px solid #d9d2c1 !important;
  border-radius: 0 !important;
  font-family: 'got','Montserrat',sans-serif;
  font-size: 14px;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background: #b5a27e !important;
  color: #fff !important;
}

/* tabella riepilogo ordine */
.woocommerce-checkout #content #order_review table.shop_table {
  border: 0 !important;
  background: transparent;
  font-family: 'got','Montserrat',sans-serif;
}
.woocommerce-checkout #content #order_review table.shop_table th,
.woocommerce-checkout #content #order_review table.shop_table td {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #e7e0d0 !important;
  padding: 13px 0 !important;
  font-size: 14px;
  color: #221f21;
}
.woocommerce-checkout #content #order_review thead th {
  font-size: 11px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: #8f8f8f;
  font-weight: 500;
}
.woocommerce-checkout #content #order_review .order-total th,
.woocommerce-checkout #content #order_review .order-total td { border-bottom: 0 !important; padding-top: 16px !important; }
.woocommerce-checkout #content #order_review .order-total .woocommerce-Price-amount { font-size: 19px; font-weight: 600; }

/* box pagamento */
.woocommerce-checkout #content #payment {
  background: transparent !important;
  border-radius: 0 !important;
  margin-top: 6px;
}
.woocommerce-checkout #content #payment ul.payment_methods {
  border-bottom: 1px solid #e7e0d0 !important;
  padding: 4px 0 16px !important;
  list-style: none;
}
.woocommerce-checkout #content #payment ul.payment_methods li {
  margin: 10px 0;
  text-indent: 0;
}
.woocommerce-checkout #content #payment ul.payment_methods li label {
  font-family: 'got','Montserrat',sans-serif;
  font-size: 14px;
  color: #221f21;
  letter-spacing: .03em;
}
.woocommerce-checkout #content #payment ul.payment_methods li img { max-height: 20px; vertical-align: middle; margin-left: 6px; }
.woocommerce-checkout #content #payment div.payment_box {
  background: #f1ecdf !important;
  color: #5d594f !important;
  font-family: 'got','Montserrat',sans-serif;
  font-size: 12.5px !important;
  line-height: 1.6;
  border-radius: 0 !important;
}
.woocommerce-checkout #content #payment div.payment_box::before { border-bottom-color: #f1ecdf !important; }
.woocommerce-checkout #content #payment .form-row.place-order { padding: 18px 0 0 !important; }
.woocommerce-checkout #content .woocommerce-privacy-policy-text p,
.woocommerce-checkout #content .woocommerce-terms-and-conditions-wrapper {
  font-family: 'got','Montserrat',sans-serif;
  font-size: 12px;
  color: #8f8f8f;
  line-height: 1.65;
}
.woocommerce-checkout #content .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox span {
  font-size: 12.5px;
  color: #221f21;
}
.woocommerce-checkout #content #place_order {
  width: 100%;
  font-size: 13px !important;
  padding: 17px 20px !important;
  margin-top: 14px;
}

/* note ordine (colonna dx dei dettagli) */
.woocommerce-checkout #content .woocommerce-additional-fields h3 { font-size: 18px; }

/* coupon toggle in cassa */
.woocommerce-checkout #content form.checkout_coupon {
  border: 1px solid #ece5d5 !important;
  border-radius: 0 !important;
  padding: 20px !important;
  background: #faf8f3;
}
.woocommerce-checkout #content form.checkout_coupon .input-text { height: 46px; }

/* mobile */
@media (max-width: 1099px) {
  .woocommerce-checkout #content form.woocommerce-checkout #customer_details,
  .woocommerce-checkout #content form.woocommerce-checkout h3#order_review_heading,
  .woocommerce-checkout #content form.woocommerce-checkout #order_review {
    float: none;
    width: 100%;
  }
  .woocommerce-checkout #content form.woocommerce-checkout h3#order_review_heading { margin-top: 30px; }
}
@media (max-width: 768px) {
  .woocommerce-cart #content .cart-collaterals { justify-content: stretch; }
  .woocommerce-cart #content .cart_totals { max-width: none; padding: 22px 20px; }
  .woocommerce-cart #content td.actions .coupon .input-text { width: 100% !important; margin: 0 0 10px !important; }
  body.woocommerce-cart .mf-breadcrumb h1.heading,
  body.woocommerce-checkout .mf-breadcrumb h1.heading { font-size: 24px; }
}

/* rifiniture cassa/carrello (round 2) */
.woocommerce-cart #content td.actions .coupon { float: left; display: flex; align-items: center; }
.woocommerce-cart #content td.actions > .button[name="update_cart"],
.woocommerce-cart #content td.actions button[name="update_cart"] { float: right; }
.woocommerce-checkout #content .woocommerce-terms-and-conditions-wrapper .form-row label,
.woocommerce-checkout #content .woocommerce-terms-and-conditions-wrapper label {
  text-transform: none !important;
  letter-spacing: .02em !important;
  font-size: 12.5px !important;
  color: #221f21 !important;
}
.woocommerce-checkout #content .woocommerce-terms-and-conditions-wrapper a { text-decoration: underline; text-underline-offset: 3px; }
.woocommerce-cart #content table.shop_table td:first-child,
.woocommerce-cart #content table.shop_table th:first-child { padding-left: 14px !important; }
#content .woocommerce ul#shipping_method li input[type="radio"] { margin-right: 8px; vertical-align: -1px; }

/* ---- round 3: carrello a 2 colonne + arie e padding (31 ago) ---- */

/* fascia titolo piu' ariosa */
body.woocommerce-cart .mf-breadcrumb.page-banner,
body.woocommerce-checkout .mf-breadcrumb.page-banner,
body.woocommerce-account .mf-breadcrumb.page-banner {
  padding-top: 30px !important;
  padding-bottom: 28px !important;
  margin-bottom: 12px;
}

/* carrello: prodotti a sx, totale a dx allineato in alto */
@media (min-width: 1100px) {
  .woocommerce-cart #content .woocommerce::after { content: ""; display: table; clear: both; }
  .woocommerce-cart #content form.woocommerce-cart-form { float: left; width: calc(100% - 505px); }
  .woocommerce-cart #content .cart-collaterals { float: right; width: 460px; display: block; }
  .woocommerce-cart #content .cart_totals { max-width: none; padding: 28px 28px 30px; }
}

/* niente strisce bianche dentro i pannelli avorio */
.woocommerce-cart #content .cart_totals table.shop_table,
.woocommerce-cart #content .cart_totals table.shop_table tr,
.woocommerce-cart #content .cart_totals table.shop_table th,
.woocommerce-cart #content .cart_totals table.shop_table td,
.woocommerce-checkout #content #order_review table.shop_table,
.woocommerce-checkout #content #order_review table.shop_table tr,
.woocommerce-checkout #content #order_review table.shop_table th,
.woocommerce-checkout #content #order_review table.shop_table td {
  background: transparent !important;
}

/* respiro tabella carrello */
.woocommerce-cart #content table.shop_table.cart th { padding: 12px 14px !important; }
.woocommerce-cart #content table.shop_table.cart td { padding: 22px 14px !important; }

/* respiro pannello Totale carrello */
.woocommerce-cart #content .cart_totals table.shop_table th {
  padding: 16px 16px 16px 0 !important;
  width: 110px;
  vertical-align: top;
}
.woocommerce-cart #content .cart_totals table.shop_table td { padding: 16px 0 !important; }
.woocommerce-cart #content .cart_totals tr.cart-subtotal td,
.woocommerce-cart #content .cart_totals tr.order-total td { text-align: right; }

/* respiro riepilogo in cassa + importi a destra */
.woocommerce-checkout #content #order_review table.shop_table th,
.woocommerce-checkout #content #order_review table.shop_table td { padding: 14px 8px !important; }
.woocommerce-checkout #content #order_review table.shop_table th:first-child,
.woocommerce-checkout #content #order_review table.shop_table td:first-child { padding-left: 0 !important; }
.woocommerce-checkout #content #order_review table.shop_table th:last-child,
.woocommerce-checkout #content #order_review table.shop_table td:last-child { padding-right: 0 !important; }
.woocommerce-checkout #content #order_review thead th:last-child,
.woocommerce-checkout #content #order_review .cart_item td:last-child,
.woocommerce-checkout #content #order_review .cart-subtotal td,
.woocommerce-checkout #content #order_review .order-total td { text-align: right; }
.woocommerce-checkout #content #order_review .woocommerce-shipping-totals td { text-align: left; }
/* aria tra colonna riepilogo e footer */
.woocommerce-cart #content .cart-collaterals { margin-bottom: 60px; }
.woocommerce-cart #content .cart_totals { padding-bottom: 36px; }
.woocommerce-cart #content .woocommerce { padding-bottom: 20px; }
.woocommerce-checkout #content form.woocommerce-checkout { padding-bottom: 60px; }
.woocommerce-cart #content .cart_totals table.shop_table tr.order-total th,
.woocommerce-cart #content .cart_totals table.shop_table tr.order-total td { border: 0 !important; }

/* ---- pagine legali (privacy / termini / spedizione e resi) ---- */
#content .legal-doc { max-width: 880px; margin: 0 auto; padding: 6px 0 54px; font-family: 'got','Montserrat',sans-serif; font-size: 15px; line-height: 1.75; color: #3c3a38; }
#content .legal-doc h2, #content .legal-doc h3 { font-family: 'gara','EB Garamond',serif; color: #221f21; letter-spacing: .08em; text-transform: uppercase; margin: 1.7em 0 .5em; font-size: 22px; font-weight: 500; }
#content .legal-doc h3 { font-size: 19px; }
#content .legal-doc a { color: #9c8862; text-decoration: underline; text-underline-offset: 3px; }
#content .legal-doc ul, #content .legal-doc ol { padding-left: 1.3em; margin: .6em 0 1em; }
#content .legal-doc li { margin: .3em 0; }
#content .legal-doc strong, #content .legal-doc b { color: #221f21; }

/* ---- link legali nel footer ---- */
.footer-legal { text-align: center; padding: 16px 16px 2px; font-family: 'got','Montserrat',sans-serif; font-size: 11px; letter-spacing: .16em; text-transform: uppercase; }
.footer-legal a { color: #8f8f8f !important; text-decoration: none; transition: color .3s ease; }
.footer-legal a:hover { color: #b5a27e !important; }
.footer-legal span { color: #55514f; margin: 0 4px; }
/* titolo interno pagine legali (fascia breadcrumb nascosta) */
#content .legal-doc .legal-title { font-family: 'gara','EB Garamond',serif; font-size: 34px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: #221f21; text-align: center; margin: 30px 0 36px; }
#content .legal-doc .legal-title::after { content: ""; display: block; width: 56px; height: 1px; background: #b5a27e; margin: 18px auto 0; }
/* posizione link legali: chiusura dell'area widget, prima della fascia bottom */
.footer-legal { padding: 4px 16px 30px; }

/* CookieYes: bottone "rivedi consenso" sopra il widget WhatsApp (entrambi in basso a sx) */
.cky-btn-revisit-wrapper {
  bottom: 100px !important;
  left: 30px !important;
}

/* menu "Footer brand": spaziatura tra le voci (solo barra footer, non l'header) */
.footer-bottom .footer-nav li { display: inline-block; margin-right: 28px; }
.footer-bottom .footer-nav li:last-child { margin-right: 0; }
.footer-bottom .footer-nav li { display: inline-block !important; margin-right: 28px !important; }
.footer-bottom .footer-nav li:last-child { margin-right: 0 !important; }
/* il tema ha un margin !important piu' specifico sui li: uso flex+gap sull'ul */
.footer-bottom ul.list-inline.footer-nav { display: inline-flex !important; gap: 30px; flex-wrap: wrap; margin: 0; padding: 0; }
.footer-bottom ul.list-inline.footer-nav > li { margin: 0 !important; padding: 0 !important; }
#menu-menu-sec-header-1 > li { margin: 0 !important; padding: 0 !important; }
#footer #menu-menu-sec-header-1 > li.menu-item { margin: 0 !important; padding: 0 !important; }

/* ===== Flag privacy allineato — SOLO form Contatti (171) e Gioielleria (273), scoping per ID form (1 set 2026) ===== */
#evf-form-171 .evf-field-privacy-policy,
#evf-form-273 .evf-field-privacy-policy {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    column-gap: 10px;
}
/* Contatti: la label "Privacy Policy *" resta su riga propria sopra il flag */
#evf-form-171 .evf-field-privacy-policy > .evf-field-label { flex: 0 0 100%; display: block !important; margin: 0 0 10px !important; }
/* Gioielleria: label di campo nascosta (estetica placeholder del form gio), resta solo il testo di consenso */
#evf-form-273 .evf-field-privacy-policy > .evf-field-label { display: none !important; }
#evf-form-171 .evf-field-privacy-policy input[type="checkbox"],
#evf-form-273 .evf-field-privacy-policy input[type="checkbox"] {
    flex: 0 0 auto;
    width: 16px; height: 16px;
    margin: 4px 0 0 !important;
    position: static !important;
}
#evf-form-171 .evf-field-privacy-policy .evf-privacy-policy-consent-message,
#evf-form-273 .evf-field-privacy-policy .evf-privacy-policy-consent-message {
    flex: 1 1 0;
    min-width: 180px;
    display: block !important;
    margin: 0 !important;
    line-height: 1.55;
}
#evf-form-171 .evf-field-privacy-policy .evf-privacy-policy-local-page-contents,
#evf-form-273 .evf-field-privacy-policy .evf-privacy-policy-local-page-contents { flex: 0 0 100%; }

/* ===== Orologio Rolex nel menu mobile — sotto il logo, sopra le voci (1 set 2026) =====
   Solo nel menu full-screen sotto i 860px: su desktop l'orologio sta già nell'header. */
.efs-clock { display: none; }
@media (max-width: 860px) {
    .efs-clock { display: flex; justify-content: center; margin: 0 0 1.7rem; opacity: 0; transform: translateY(14px); transition: opacity .7s ease .18s, transform .7s cubic-bezier(.16,1,.3,1) .18s; }
    body.efs-open .efs-clock { opacity: 1; transform: translateY(0); }
    .efs-clock-link { position: relative; display: block; width: 150px; height: 70px; }
    /* strato cliccabile sopra l'iframe: i click sull'iframe non arrivano al link */
    .efs-clock-cover { position: absolute; inset: 0; z-index: 1; }
    .efs-clock iframe { width: 150px; height: 70px; border: 0; display: block; }
}

/* ===== Corpo testo +1px anche nelle sezioni custom (1 set 2026 — richiesta cliente) =====
   Solo scritte generiche: titoli, eyebrow, pulsanti e voci di navigazione restano invariati. */
.ev-excerpt { font-size: 15px; }
.na-body p { font-size: 16px; }
.gio-form-left p { font-size: 15px; }
#content .legal-doc { font-size: 16px; }
.gio-field input, .gio-field textarea { font-size: 14px !important; }
.gio-form-sec .everest-forms input[type="text"],
.gio-form-sec .everest-forms input[type="email"],
.gio-form-sec .everest-forms input[type="tel"],
.gio-form-sec .everest-forms textarea { font-size: 14px !important; }
.gio-form-sec .everest-forms .everest-forms-privacy-policy-label,
.gio-form-sec .everest-forms .evf-field-privacy-policy label { font-size: 12px; }
.gio-form .form-note { font-size: 13px; }

/* ===== Storia: foto fluttuanti ~15% più grandi (1 set 2026 — richiesta cliente) =====
   Lo scale sta sul figure interno perché l'animazione "fluttua" occupa già il
   transform del .immaspar; su mobile scale ridotto (foto a coppie in colonne al 50%). */
.immaspar .vc_figure { transform: scale(1.15); }
/* le due in basso (vetrina B/N e famiglia) ancora più grandi — round 2 richiesta cliente */
.immaspar_uno .vc_figure, .immaspar_quattro .vc_figure { transform: scale(1.3); }
@media (max-width: 767px) {
    .immaspar .vc_figure { transform: scale(1.07); }
    .immaspar_uno .vc_figure, .immaspar_quattro .vc_figure { transform: scale(1.15); }
}
