/* ============================================
   SFONDO PAGINA — MANDALA + GRADIENT SALVIA
============================================ */
body.single-operatori {
    background:
        url('/wp-content/uploads/2026/02/mandala_chiaro.png') center top/900px no-repeat,
        radial-gradient(circle at top left, #f5f0ff 0, transparent 55%),
        radial-gradient(circle at bottom right, #ffe9d9 0, transparent 55%),
        #f7f4ef;
    background-attachment: fixed;
    background-size: cover;
}
* ============================================
   CARD SESSIONI OLIDAY — stile identico alla bio
============================================ */
.card-unica-sessioni {
    width: 100%;
    max-width: 720px; /* stessa larghezza dei card base */
    margin: 26px auto; /* centrate come le altre card */
    padding: 22px 22px 20px; /* padding uguale */
    border-radius: 20px;
    background: rgba(255,255,255,0.55);
    border: 1px solid rgba(255,255,255,0.35);
    backdrop-filter: blur(14px) saturate(160%);
    -webkit-backdrop-filter: blur(14px) saturate(160%);
    box-shadow: 0 18px 40px rgba(0,0,0,0.12);
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

/* effetto hover identico */
.card-unica-sessioni:hover {
    transform: translateY(-6px);
    background: rgba(255,255,255,0.75);
    box-shadow: 0 26px 60px rgba(0,0,0,0.18);
}

/* testi interni */
.card-unica-sessioni h3,
.card-unica-sessioni strong {
    color: #2f3e36;
}

.card-unica-sessioni span,
.card-unica-sessioni small {
    color: #444;
}

/* foto extra */
.card-unica-sessioni .extra-photo img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 12px;
    margin-bottom: 15px;
}

/* location e orario */
.card-unica-sessioni .luogo {
    font-weight: 600;
    margin-bottom: 4px;
}

/* nota yurta */
.card-unica-sessioni .yurta-note a {
    color: #1a73e8;
    text-decoration: underline;
}
.card-unica-sessioni .yurta-note {
    font-size: 0.9em;
    color: #1a73e8;
    margin-top: 10px;
}
/* ============================================
   CARD ORIZZONTALE OPERATORE
============================================ */
.operator-card {
    max-width: 980px;
    margin: 40px auto 20px;
    padding: 26px 26px 30px;
    border-radius: 24px;
    background: linear-gradient(135deg, #f3f7f4, #e4f0e8);
    box-shadow: 0 14px 40px rgba(0,0,0,0.08);
    display: flex;
    gap: 24px;
    align-items: flex-start;
    box-sizing: border-box;
}

/* CARD SOTTO NEL SINGLE OPERATORE — stessa larghezza della bio */
.single-operatori .related-operatori-wrapper {
    max-width: 980px; /* stessa larghezza della bio */
    margin: 0 auto;
}

.single-operatori .related-operatori-wrapper .operator-card {
    width: 100%;
    box-sizing: border-box;
}

/* FOTO */
.operator-photo-frame {
    flex: 0 0 220px;
    border-radius: 22px;
    padding: 10px;
    background: #fdf7f0;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.7);
}
.operator-photo {
    width: 100%;
    border-radius: 18px;
    object-fit: cover;
}

/* INFO */
.operator-info { flex: 1; }
.operator-name {
    font-size: 2.1rem;
    margin: 0 0 8px;
    color: #2f3e36;
}

/* BADGE */
.operator-titles {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}
.badge {
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 0.78rem;
    background: rgba(255,255,255,0.9);
    color: #2f3e36;
}
.badge-staff      { background:#f4d7ff; }
.badge-insegnante { background:#d9f7e8; }
.badge-stand      { background:#ffe7c2; }
.badge-artista    { background:#ffd4d4; }
/* ============================================
   BIO — VERSIONE GLASS PREMIUM
============================================ */
.operator-bio-box {
    margin-top: 14px;
    padding: 20px 22px 18px;
    border-radius: 20px;

    /* effetto glass */
    background: rgba(255, 255, 255, 0.45);
    backdrop-filter: blur(18px) saturate(180%);
    -webkit-backdrop-filter: blur(18px) saturate(180%);

    /* bordo luminoso panna */
    border: 1px solid rgba(255, 255, 255, 0.55);

    /* ombra elegante */
    box-shadow: 0 18px 40px rgba(0,0,0,0.10);

    /* transizione morbida */
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

/* effetto hover leggero */
.operator-bio-box:hover {
    transform: translateY(-4px);
    background: rgba(255, 255, 255, 0.60);
    box-shadow: 0 26px 60px rgba(0,0,0,0.16);
}

/* testo bio */
.operator-bio-box h2 {
    margin: 0 0 8px;
    font-size: 1.05rem;
    color: #2f3e36;
}
.operator-bio-box p {
    margin: 0 0 12px;
    line-height: 1.55;
    color: #2f3e36;
}

/* pulsanti social dentro il glass */
.operator-bio-social a {
    display: inline-block;
    margin-right: 10px;
    padding: 6px 12px;
    border-radius: 999px;

    background: rgba(255,255,255,0.55);
    backdrop-filter: blur(12px) saturate(160%);
    -webkit-backdrop-filter: blur(12px) saturate(160%);

    color: #2f3e36;
    font-size: 0.82rem;
    text-decoration: none;

    border: 1px solid rgba(255,255,255,0.45);
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);

    transition: all .25s ease;
}

/* hover oro-scuro */
.operator-bio-social a:hover {
    color: #8a6b2f !important;
    background: rgba(255,255,255,0.75);
    box-shadow: 0 6px 16px rgba(0,0,0,0.12);
}

/* ============================================
   CONTENITORE SOTTO LA BIO
============================================ */
.operator-extra-content {
    max-width: 720px;
    margin: 10px auto 50px;
    padding: 0 10px;
}

/* ============================================
   CARD BASE — GLASS FLOATING
============================================ */
.card-uniform,
.evento-festival-card,
.staff-card,
.evento-utente-card {
    width: 100%;
    max-width: 720px;
    margin: 26px auto;
    padding: 22px 22px 20px;
    border-radius: 20px;
    background: rgba(255,255,255,0.55);
    border: 1px solid rgba(255,255,255,0.35);
    backdrop-filter: blur(14px) saturate(160%);
    -webkit-backdrop-filter: blur(14px) saturate(160%);
    box-shadow: 0 18px 40px rgba(0,0,0,0.12);
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.card-uniform:hover,
.evento-festival-card:hover,
.staff-card:hover,
.evento-utente-card:hover {
    transform: translateY(-6px);
    background: rgba(255,255,255,0.75);
    box-shadow: 0 26px 60px rgba(0,0,0,0.18);
}

/* TESTI CARD */
.card-uniform h2,
.card-uniform h3,
.card-uniform strong {
    color: #2f3e36;
}
.card-uniform span,
.card-uniform small {
    color: #444;
}

/* ============================================
   EVENTO YOGAFEST — SPECIALE
============================================ */
.evento-festival-card {
    background: rgba(232,247,255,0.55);
    border: 1px solid rgba(255,255,255,0.55);
    backdrop-filter: blur(18px) saturate(180%);
}
.evento-festival-link {
    display: flex;
    align-items: center;
    gap: 16px;
    text-decoration: none;
    color: #2f3e36;
}
.evento-festival-thumb {
    width: 72px;
    height: 72px;
    border-radius: 12px;
    object-fit: cover;
}

/* ============================================
   EVENTI UTENTE
============================================ */
.evento-utente-card {
    display: block;
    margin: 10px 0 6px;
    padding: 12px 14px;
    border-radius: 16px;
    background: rgba(255,247,228,0.65);
    text-decoration: none;
    color: #2f3e36;
}

/* ============================================
   LEZIONI PER LUOGO
============================================ */
.lezione-item {
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px dashed rgba(0,0,0,0.08);
}
.lezione-item:last-child {
    border-bottom: none;
}

/* ============================================
   STAFF
============================================ */
.staff-card {
    background: rgba(232,225,247,0.55);
}
.staff-thumb {
    width: 100%;
    border-radius: 12px;
    margin-bottom: 10px;
}

/* ============================================
   BOTTONI WHATSAPP
============================================ */
.whatsapp-btn {
    display: inline-block;
    margin-top: 10px;
    padding: 7px 14px;
    border-radius: 999px;
    background: #25d366;
    color: #fff;
    text-decoration: none;
}


/* Card uniformi senza margini extra */
.sessioni-wrapper .card-uniform {
    margin: 0 !important; /* elimina margini di Astra/Elementor */
    padding: 18px 20px;
    border-radius: 18px;
    background: rgba(255,255,255,0.55);
    backdrop-filter: blur(14px) saturate(160%);
    -webkit-backdrop-filter: blur(14px) saturate(160%);
    border: 1px solid rgba(255,255,255,0.35);
    box-shadow: 0 12px 28px rgba(0,0,0,0.12);
}

/* Hover leggero */
.sessioni-wrapper .card-uniform:hover {
    background: rgba(255,255,255,0.75);
    transform: translateY(-3px);
    box-shadow: 0 20px 45px rgba(0,0,0,0.18);
}

/* Mobile: identico, solo un filo più spazio */
@media (max-width: 768px) {
    .sessioni-wrapper {
        gap: 10px;
    }
}


/* ============================================
   LINK ORO-SCURO AL PASSAGGIO
============================================ */
a:hover,
.evento-festival-link:hover,
.operator-bio-social a:hover,
.evento-utente-card:hover,
.whatsapp-btn:hover {
    color: #8a6b2f !important;
    text-shadow: 0 0 6px rgba(255,215,130,0.45);
}

/* ============================================
   MOBILE — CARD PIÙ STRETTE
============================================ */
@media (max-width: 768px) {

    .operator-card {
        flex-direction: column;
        padding: 20px 18px;
        margin: 24px 10px;
    }

    .operator-photo-frame {
        width: 100%;
    }

    .operator-bio-box {
        padding: 16px 14px;
    }

    .card-uniform,
    .evento-festival-card,
    .evento-utente-card,
    .staff-card {
        margin-left: 10px;
        margin-right: 10px;
        padding: 18px 14px;
        border-radius: 16px;
    }

    .evento-festival-thumb {
        width: 60px;
        height: 60px;
    }
}
/* ============================================
   FIX DESKTOP — CARD CENTRATE, NON LATERALI
============================================ */

/* forza il wrapper a comportarsi come blocco centrale */
.operator-extra,
.operatori-page-wrapper,
.operator-extra-content {
    width: 100% !important;
    max-width: 720px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    display: block !important;
}

/* impedisce al tema Astra di mettere le card in colonna laterale */
.single-operatori .site-content .ast-container,
.single-operatori .content-area,
.single-operatori .entry-content {
    display: block !important;
    float: none !important;
    width: 100% !important;
}

/* card sempre centrali */
.card-uniform,
.evento-festival-card,
.staff-card,
.evento-utente-card {
    margin-left: auto !important;
    margin-right: auto !important;
}
/* ============================================
   FROSTED EDGE — EFFETTO PREMIUM
============================================ */
.card-uniform,
.evento-festival-card,
.staff-card,
.evento-utente-card,
.operator-bio-box {
    position: relative;
    overflow: hidden;
}

/* bordo ghiacciato interno */
.card-uniform::before,
.evento-festival-card::before,
.staff-card::before,
.evento-utente-card::before,
.operator-bio-box::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;

    /* bordo frost */
    padding: 1px;
    background: linear-gradient(
        145deg,
        rgba(255,255,255,0.85),
        rgba(255,255,255,0.25),
        rgba(255,255,255,0.85)
    );

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;

    pointer-events: none;
}

.evento-festival-card:hover {
    box-shadow:
        0 26px 60px rgba(0,0,0,0.18),
        0 0 40px rgba(180, 220, 200, 0.45); /* glow salvia */
}
/* ============================================
   EVENTO YOGAFEST — PREMIUM BOOST
============================================ */

/* layer glass più luminoso e più spesso */
.evento-festival-card {
    background: rgba(232,247,255,0.80) !important;
    border: 1px solid rgba(255,255,255,0.85) !important;
    backdrop-filter: blur(26px) saturate(220%) !important;
    -webkit-backdrop-filter: blur(26px) saturate(220%) !important;
    position: relative;
    overflow: hidden;
}

/* frosted edge potenziato */
.evento-festival-card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;

    background: linear-gradient(
        135deg,
        rgba(255,255,255,0.98),
        rgba(255,255,255,0.55),
        rgba(255,255,255,0.98)
    );

    padding: 2px;

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;

    box-shadow: 0 0 80px rgba(255,255,255,0.45);
    pointer-events: none;
}

/* inner glow salvia */
.evento-festival-card::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: radial-gradient(
        circle at center,
        rgba(180, 220, 200, 0.35),
        transparent 70%
    );
    pointer-events: none;
}

/* hover premium */
.evento-festival-card:hover {
    transform: translateY(-10px) scale(1.02);
    box-shadow:
        0 40px 90px rgba(0,0,0,0.22),
        0 0 80px rgba(180, 220, 200, 0.75),
        0 0 40px rgba(255,255,255,0.55) inset !important;
}

/* titolo più grande e più scuro */
.evento-festival-card h2 {
    font-size: 1.7rem;
    color: #1f2d28;
    text-shadow: 0 0 14px rgba(255,255,255,0.65);
}

/* thumb più grande e più premium */
.evento-festival-thumb {
    width: 100px !important;
    height: 100px !important;
    border-radius: 18px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.18);
}
/* ============================================
   AVVICINA CARDS SU DESKTOP
============================================ */
.card-uniform,
.evento-festival-card,
.staff-card,
.evento-utente-card {
    margin-top: 18px !important;
    margin-bottom: 18px !important;
}
.lezione-item {
    margin-bottom: 6px !important;
    padding-bottom: 6px !important;
}
.operator-bio-box {
    margin-bottom: 18px !important;
}

@media (max-width: 768px) {
    .card-uniform,
    .evento-festival-card,
    .staff-card,
    .evento-utente-card {
        margin-top: 14px !important;
        margin-bottom: 14px !important;
    }
}
/* ============================================
   EVENTO YOGAFEST — PREMIUM MAX BOOST
============================================ */

/* CARD BASE PIÙ LUMINOSA E PIÙ COLORATA */
.evento-festival-card {
    position: relative;
    overflow: hidden;

    background: rgba(210, 240, 255, 0.85) !important;
    border: 2px solid rgba(255,255,255,0.85) !important;

    backdrop-filter: blur(28px) saturate(240%) !important;
    -webkit-backdrop-filter: blur(28px) saturate(240%) !important;

    box-shadow:
        0 20px 60px rgba(0,0,0,0.18),
        0 0 50px rgba(180, 220, 200, 0.55),
        0 0 25px rgba(255,255,255,0.45) inset !important;

    transform: translateY(0);
    transition: all .35s ease;
}

/* FROSTED EDGE POTENZIATO */
.evento-festival-card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;

    padding: 2px;
    background: linear-gradient(
        135deg,
        rgba(255,255,255,0.98),
        rgba(255,255,255,0.55),
        rgba(255,255,255,0.98)
    );

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;

    pointer-events: none;
}

/* INNER GLOW SALVIA */
.evento-festival-card::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;

    background: radial-gradient(
        circle at center,
        rgba(180, 220, 200, 0.45),
        transparent 70%
    );

    pointer-events: none;
}

/* HOVER PREMIUM */
.evento-festival-card:hover {
    transform: translateY(-10px) scale(1.03);

    box-shadow:
        0 40px 90px rgba(0,0,0,0.22),
        0 0 90px rgba(180, 220, 200, 0.75),
        0 0 50px rgba(255,255,255,0.55) inset !important;
}

/* TITOLO PIÙ GRANDE E PIÙ SCURO */
.evento-festival-card h2 {
    font-size: 1.8rem !important;
    color: #1f2d28 !important;
    text-shadow: 0 0 14px rgba(255,255,255,0.65);
}

/* THUMB PIÙ GRANDE E PIÙ PREMIUM */
.evento-festival-thumb {
    width: 110px !important;
    height: 110px !important;
    border-radius: 20px !important;

    box-shadow:
        0 10px 30px rgba(0,0,0,0.18),
        0 0 20px rgba(255,255,255,0.45) !important;
}
/* ============================================
   YOGAFEST — SUPER GLOW PREMIUM
============================================ */

.evento-festival-card {
    position: relative !important;
    overflow: hidden !important;

    background: rgba(210, 240, 255, 0.90) !important;
    border: 2px solid rgba(255,255,255,0.95) !important;

    backdrop-filter: blur(30px) saturate(260%) !important;
    -webkit-backdrop-filter: blur(30px) saturate(260%) !important;

    box-shadow:
        0 25px 70px rgba(0,0,0,0.20),
        0 0 70px rgba(180, 220, 200, 0.70),
        0 0 40px rgba(255,255,255,0.55) inset !important;

    transform: translateY(0);
    transition: all .35s ease;
}

/* Frosted edge potenziato */
.evento-festival-card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;

    padding: 3px;
    background: linear-gradient(
        135deg,
        rgba(255,255,255,1),
        rgba(255,255,255,0.55),
        rgba(255,255,255,1)
    );

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;

    pointer-events: none;
}

/* Inner glow salvia più forte */
.evento-festival-card::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;

    background: radial-gradient(
        circle at center,
        rgba(180, 220, 200, 0.55),
        transparent 75%
    );

    pointer-events: none;
}

/* Hover premium */
.evento-festival-card:hover {
    transform: translateY(-12px) scale(1.035);

    box-shadow:
        0 45px 100px rgba(0,0,0,0.25),
        0 0 100px rgba(180, 220, 200, 0.85),
        0 0 60px rgba(255,255,255,0.65) inset !important;
}

/* Titolo più grande e più scuro */
.evento-festival-card h2 {
    font-size: 1.9rem !important;
    color: #1a2622 !important;
    text-shadow: 0 0 18px rgba(255,255,255,0.75);
}

/* Thumb più grande */
.evento-festival-thumb {
    width: 120px !important;
    height: 120px !important;
    border-radius: 22px !important;

    box-shadow:
        0 12px 32px rgba(0,0,0,0.22),
        0 0 25px rgba(255,255,255,0.55) !important;
}

/* ============================================
   CARD UNICA SESSIONI — AZZURRO BIO PERFETTO
   ============================================ */

.card-unica-sessioni {
    position: relative;
    overflow: hidden;

    /* GRADIENTE AZZURRO FREDDO (non vira mai al beige) */
    background: linear-gradient(
        145deg,
        rgba(210, 235, 255, 0.85),   /* azzurro freddo */
        rgba(225, 245, 255, 0.70),   /* azzurro chiarissimo */
        rgba(200, 225, 250, 0.85)    /* azzurro freddo */
    );

    /* GLASS */
    backdrop-filter: blur(22px) saturate(180%);
    -webkit-backdrop-filter: blur(22px) saturate(180%);
    border: 1px solid rgba(255,255,255,0.55);

    border-radius: 28px;
    padding: 34px;
    margin-top: 20px;

    /* SHADOW + GLOW */
    box-shadow:
        0 18px 40px rgba(0,0,0,0.10),
        0 0 45px rgba(180,210,255,0.55);

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        background .35s ease,
        border-color .35s ease;
}

/* DESKTOP → HOVER WOW */
@media (min-width: 769px) {
    .card-unica-sessioni:hover {
        transform: translateY(-10px) scale(1.02);

        background: linear-gradient(
            145deg,
            rgba(225, 245, 255, 0.95),
            rgba(240, 252, 255, 0.85),
            rgba(210, 235, 255, 0.95)
        );

        border-color: rgba(255,255,255,0.85);

        box-shadow:
            0 40px 80px rgba(0,0,0,0.18),
            0 0 95px rgba(200,230,255,0.95),
            inset 0 0 35px rgba(255,255,255,0.45);
    }
}
/* MOBILE → WOW FISSO, SEMPRE AZZURRO */
@media (max-width: 768px) {

    .card-unica-sessioni {
        transform: none;

        background: linear-gradient(
            145deg,
            rgba(210, 235, 255, 0.85),
            rgba(225, 245, 255, 0.70),
            rgba(200, 225, 250, 0.85)
        );

        border-color: rgba(255,255,255,0.85);

        box-shadow:
            0 32px 70px rgba(0,0,0,0.15),
            0 0 75px rgba(200,230,255,0.85),
            inset 0 0 25px rgba(255,255,255,0.35);

        padding: 26px;
    }

    .card-unica-sessioni:hover {
        transform: none;
        background: inherit;
        box-shadow: inherit;
    }
}
/* MOBILE: DISATTIVA HOVER E TIENE SOLO L’AZZURRO CHIARO */
@media (max-width: 768px) {

    /* colore fisso azzurro chiaro */
    .card-unica-sessioni {
        background: linear-gradient(
            145deg,
            rgba(210, 235, 255, 0.85),
            rgba(225, 245, 255, 0.70),
            rgba(200, 225, 250, 0.85)
        ) !important;

        box-shadow:
            0 32px 70px rgba(0,0,0,0.15),
            0 0 75px rgba(200,230,255,0.85),
            inset 0 0 25px rgba(255,255,255,0.35) !important;

        transform: none !important;
    }

    /* annulla completamente l’hover su mobile */
    .card-unica-sessioni:hover {
        background: inherit !important;
        box-shadow: inherit !important;
        transform: none !important;
    }
}
 
/
/* BORDO FROST */
.card-unica-sessioni::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;

    padding: 1px;
    background: linear-gradient(
        135deg,
        rgba(255,255,255,0.95),
        rgba(255,255,255,0.35),
        rgba(255,255,255,0.95)
    );

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;

    pointer-events: none;
}
  body.page-id-3899 {
    background:
        url('/wp-content/uploads/2026/02/mandala_chiaro.png') center top/900px no-repeat,
        radial-gradient(circle at top left, #f5f0ff 0, transparent 55%),
        radial-gradient(circle at bottom right, #ffe9d9 0, transparent 55%),
        #f7f4ef;
    background-attachment: fixed;
    background-size: cover;
}
/* =========================
   WRAPPER 3/4 PAGINA
   ========================= */
.page-id-3899 .oliday-wrapper {
    width: 75%;
    margin: 60px auto;
    padding: 50px 40px;

    background: rgba(220, 240, 245, 0.55); /* azzurrino chiaro Oliday */
    backdrop-filter: blur(14px) saturate(160%);
    -webkit-backdrop-filter: blur(14px) saturate(160%);

    border-radius: 30px;
    border: 1px solid rgba(255,255,255,0.7);
    box-shadow:
        0 25px 60px rgba(0,0,0,0.18),
        0 0 35px rgba(200,230,240,0.45);
}

/* =========================
   CONTENITORE CARD VERTICALE
   ========================= */
.page-id-3899 .elementor-widget-container {
    display: block;          /* niente flex, niente grid */
}

/* =========================
   CARD VERTICALI + HOVER WOW
   ========================= */
.page-id-3899 .oliday-operator-card {
    background: #eaf4f3 !important;
    border-radius: 22px;
    padding: 28px;
    margin-bottom: 28px;

    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 22px;

    box-shadow: 0 10px 28px rgba(0,0,0,0.14);
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.page-id-3899 .oliday-operator-card:hover {
    transform: translateY(-8px);
    background: #ffffff !important;
    box-shadow:
        0 24px 60px rgba(0,0,0,0.26),
        0 0 24px rgba(255,255,255,0.55) inset;
}

/* =========================
   IMMAGINI (STESSE DIMENSIONI, MA PICCOLE)
   ========================= */
.page-id-3899 .oliday-operator-foto img {
    width: 110px;
    height: 110px;
    object-fit: cover;
    border-radius: 18px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.25);
}

/* =========================
   TITOLI PICCOLI, NERI
   ========================= */
.page-id-3899 .oliday-operator-info h2 a {
    font-size: 1.1rem !important;
    font-weight: 700;
    color: #000000 !important;
}

/* =========================
   TESTO
   ========================= */
.page-id-3899 .oliday-operator-card p,
.page-id-3899 .oliday-operator-card span {
    color: #1a1a1a !important;
}

/* =========================
   BADGE COLORATI, SENZA ICONE
   ========================= */
.page-id-3899 .badge-icon svg {
    display: none !important;
}

.page-id-3899 .oliday-operator-badges .badge {
    background: #ffffff;
    color: #1a1a1a;
    border-radius: 999px;
    padding: 6px 16px;
    font-size: 0.78rem;
    font-weight: 600;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

/* =========================
   MOBILE: CARD IN COLONNA
   ========================= */
@media (max-width: 768px) {
    .page-id-3899 .oliday-wrapper {
        width: 92%;
        margin: 30px auto;
        padding: 40px 24px;
    }

    .page-id-3899 .oliday-operator-card {
        flex-direction: column;
        text-align: center;
    }

    .page-id-3899 .oliday-operator-foto img {
        width: 150px;
        height: 150px;
    }
/* ============================================================
   MOBILE — wrapper più largo + sfondo più chiaro
   ============================================================ */

@media (max-width: 768px) {

    /* Sfondo più chiaro su mobile */
    .page-id-3899 {
        background: #f8fcfd !important; /* azzurro chiarissimo */
    }

    /* Wrapper più largo e più visibile */
    .page-id-3899 .oliday-wrapper {
        width: 92% !important;
        margin: 30px auto !important;

        background: rgba(210, 230, 235, 0.55); /* leggermente più scuro del desktop */
        backdrop-filter: blur(16px) saturate(160%);
        -webkit-backdrop-filter: blur(16px) saturate(160%);
    }

    /* Card verticali + più scure per stacco */
    .page-id-3899 .oliday-operator-card {
        width: 100%;
        flex-direction: column;
        text-align: center;

        background: #e5f2f1 !important; /* un filo più scura */
        box-shadow:
            0 12px 28px rgba(0,0,0,0.22),   /* ombra sotto */
            0 0 18px rgba(255,255,255,0.35) inset;
        transition: transform .25s ease, box-shadow .25s ease;
    }

    /* Hover WOW mobile */
    .page-id-3899 .oliday-operator-card:hover {
        transform: translateY(-10px) scale(1.03);
        box-shadow:
            0 22px 55px rgba(0,0,0,0.32),   /* ombra più profonda */
            0 0 28px rgba(255,255,255,0.55) inset; /* glow interno */
        background: #ffffff !important;
    }

    /* Foto più grandi su mobile */
    .page-id-3899 .oliday-operator-foto img {
        width: 160px;
        height: 160px;
    }
}
/* ============================================
   PROGRAMMA OLIDAY/YOGAFEST — GLASS PREMIUM
============================================ */
.programma-card {
    position: relative;
    overflow: hidden;

    background: rgba(255,255,255,0.55) !important;
    border: 1px solid rgba(255,255,255,0.35) !important;
    backdrop-filter: blur(16px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(160%) !important;

    border-radius: 20px;
    padding: 20px;
    margin: 14px auto;

    box-shadow: 0 18px 40px rgba(0,0,0,0.12);
    transition: 
        transform .28s ease,
        box-shadow .28s ease,
        background .28s ease,
        border-color .28s ease;
}

/* ============================================
   HOVER CHIARO — VERSIONE POTENTE
============================================ */
.programma-card:hover {
    transform: translateY(-10px) scale(1.02);

    /* QUI IL CHIARO CHE TI MANCA */
    background: rgba(255,255,255,0.92) !important;  /* molto più luminoso */
    border-color: rgba(255,255,255,0.75) !important;

    box-shadow:
        0 32px 70px rgba(0,0,0,0.22),
        0 0 55px rgba(200, 240, 230, 0.65) !important; /* glow salvia più forte */
}

/* ============================================
   FROSTED EDGE
============================================ */
.programma-card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;

    padding: 1px;
    background: linear-gradient(
        145deg,
        rgba(255,255,255,0.85),
        rgba(255,255,255,0.25),
        rgba(255,255,255,0.85)
    );

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;

    pointer-events: none;
}
/* ===========================
   PROGRAMMA OLIDAY – PAGINA 2540
=========================== */
#post-2540 .manifesto-festival {
    position: relative;
    padding: 60px 20px;
    background: url('/wp-content/uploads/2026/02/mandala_chiaro.png') center top no-repeat;
    radial-gradient(circle at top left, #f5f0ff 0, transparent 55%),
        radial-gradient(circle at bottom right, #ffe9d9 0, transparent 55%),
        #f7f4ef;
    background-attachment: fixed;
    background-size: cover;
    background-size: cover; /* Mandala nitido */
    z-index: 1;
}

/* Nessuna sfocatura sull'immagine mandala */
#post-2540 .manifesto-festival::before {
    display: none;
}

/* Griglia eventi */
#post-2540 .manifesto-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    position: relative;
    z-index: 2;
}

/* Titolo giorno */
#post-2540 .manifesto-col h2 {
    text-align: center;
    font-size: 2rem;
    margin-bottom: 25px;
    color: #2e4d2e; /* verde scuro salvia */
}

/* Card eventi con glass + gradient salvia/azzurro */
#post-2540 .evento {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 20px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(210,232,220,0.65), rgba(215,235,245,0.65));
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 18px 30px rgba(0,0,0,0.20);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    border-left: 6px solid #8c9b8c;
}

/* Hover “wow” sulle card */
#post-2540 .evento:hover {
    transform: translateY(-8px) scale(1.025);
    box-shadow: 0 28px 40px rgba(0,0,0,0.30);
}

/* Foto operatore – più grandi, radius delicato */
#post-2540 .evento-thumb img {
    width: 110px;
    height: 110px;
    object-fit: cover;
    border-radius: 12px;
}

/* Testi nelle card */
#post-2540 .evento-titolo {
    font-size: 1.2rem;
    font-weight: 700;
    color: #333;
}

#post-2540 .evento-operatore a {
    font-size: 1rem;
    color: #3a5a45;
    text-decoration: none;
    font-weight: 600;
}

#post-2540 .evento-tipo {
    font-size: 0.9rem;
    color: #5a6b63;
    font-style: italic;
}

#post-2540 .evento-orario {
    font-weight: bold;
    color: #2a4d2a;
}

/* Pulsante WhatsApp */
#post-2540 .programma-whatsapp {
    margin-top: 6px;
    display: inline-block;
    padding: 7px 14px;
    background-color: #5a7c68;
    color: #fff !important;
    border-radius: 10px;
    font-weight: 600;
    font-size: 0.9rem;
    transition: all 0.25s ease;
}

#post-2540 .programma-whatsapp:hover {
    background-color: #7fa08a;
    transform: translateY(-2px);
}

/* ===========================
   MOBILE
=========================== */
@media (max-width: 768px) {
    #post-2540 .manifesto-grid {
        flex-direction: column;
        align-items: center;
    }
    #post-2540 .evento {
        width: 90%;
        flex-direction: column;
        text-align: center;
    }
    #post-2540 .evento-thumb img {
        width: 130px;
        height: 130px;
        margin-bottom: 8px;
    }
}
* ===========================
   PROGRAMMA OLIDAY – PAGINA 2540
=========================== */
#post-2540 .manifesto-festival {
    position: relative;
    padding: 60px 20px;
    background: url('URL_DEL_TUO_MANDALA') center top no-repeat;
    background-size: cover; /* Mandala nitido */
    z-index: 1;
}

/* Nessuna sfocatura sull'immagine mandala */
#post-2540 .manifesto-festival::before {
    display: none;
}

/* Griglia eventi */
#post-2540 .manifesto-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    position: relative;
    z-index: 2;
}
* ===========================
   FIX CENTRATURA MOBILE PAGINA 2540
=========================== */

@media (max-width: 768px) {

  /* Tolgo padding laterali del contenitore Astra */
  #post-2540 .ast-container,
  #post-2540 .entry-content,
  #post-2540 .elementor-section,
  #post-2540 .elementor-container {
      padding-left: 0 !important;
      padding-right: 0 !important;
  }

  /* Centro la griglia */
  #post-2540 .manifesto-grid {
      display: flex !important;
      flex-direction: column !important;
      align-items: center !important;
  }

  /* Centro le colonne */
  #post-2540 .manifesto-col {
      width: 100% !important;
      display: flex;
      flex-direction: column;
      align-items: center;
  }

  /* Centro le card */
  #post-2540 .evento {
      width: 92% !important;
      margin: 0 auto 20px auto !important;
  }

}
@media (max-width: 768px) {

  /* AZZERO QUALSIASI PADDING LATERALE */
  body #post-2540,
  body #post-2540 * {
    box-sizing: border-box;
  }

  body #post-2540 .ast-container,
  body #post-2540 .entry-content,
  body #post-2540 .wp-block-group,
  body #post-2540 .elementor,
  body #post-2540 .elementor-section,
  body #post-2540 .elementor-container,
  body #post-2540 .elementor-widget-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 100% !important;
  }

  /* CONTENITORE MANIFESTO */
  body #post-2540 .manifesto-festival {
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  /* GRIGLIA → FLEX CENTRATO */
  body #post-2540 .manifesto-grid {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
  }

  /* COLONNE */
  body #post-2540 .manifesto-col {
    width: 100% !important;
    align-items: center !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* CARD EVENTO */
  body #post-2540 .evento {
    width: 94% !important;
    margin: 0 auto 22px auto !important;
    left: 0 !important;
    right: 0 !important;
  }

}

.galleria-extra {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 18px;
}

.foto-sessione-extra {
    width: calc(33.33% - 10px);
    border-radius: 18px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.12);
    transition: all 0.3s ease;
}

.foto-sessione-extra:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 35px rgba(0,0,0,0.2);
}

@media (max-width:768px) {
    .foto-sessione-extra {
        width: 100%;
    }
}
extra-photo {
    width: 100%;
    display: block;
    margin: 15px 0;
}

.extra-photo img {
    width: 100%;
    height: auto;
    display: block;
}