/* =========================================================
   ONLY EVENTS INDEX V2
   Home, archivi, caroselli, card e ricerca
========================================================= */

.oe-home,
.oe-archivio{
    display:grid;
    gap:0;
    margin-top:0;
    padding-top:0;
}

.oe-sezione-full{
    position:relative;
    width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
}

.oe-container{
    width:min(100% - 28px, 1320px);
    margin-inline:auto;
}

.oe-container--wide{
    width:min(100% - 28px, 1440px);
    margin-inline:auto;
}

.oe-pagina-standard{
    width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
    padding:28px 18px 48px;
}

.oe-pagina-standard__inner{
    width:100%;
    margin:0 auto;
}

/* =========================================================
   HERO HOME V2
========================================================= */

.oe-hero{
    position:relative;
    overflow:hidden;
    width:100%;
    min-height:640px;
    margin-top:0;
    padding-top:0;
    background:
        radial-gradient(circle at 18% 18%, rgba(255,255,255,.42), transparent 24%),
        linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.72)),
        linear-gradient(135deg, #e6ded6 0%, #f8f2ec 54%, #e2d3c4 100%);
    border-top:none;
    border-bottom:1px solid rgba(20,39,69,.08);
    isolation:isolate;
}

.testata-sito + .pagina-sito .oe-home .oe-hero{
    margin-top:-1px;
}

.oe-hero::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:2;
    pointer-events:none;
    background:
        linear-gradient(90deg, rgba(255,253,250,.92) 0%, rgba(255,253,250,.44) 38%, rgba(255,253,250,.10) 70%),
        linear-gradient(180deg, rgba(255,253,250,.04) 0%, rgba(255,253,250,.74) 100%);
}

.oe-hero::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:6;
    height:50px;
    pointer-events:none;
    border-top:1px solid rgba(20,39,69,.10);
    border-bottom:1px solid rgba(20,39,69,.10);
    background:
        linear-gradient(180deg, rgba(255,255,255,.24) 0%, rgba(255,255,255,.54) 100%);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}

.oe-hero__bg{
    position:absolute;
    inset:-24px auto -24px -80px;
    z-index:1;
    overflow:visible;
}

.oe-hero__track{
    position:absolute;
    top:0;
    left:0;
    height:100%;
    display:flex;
    width:max-content;
    gap:18px;
    align-items:center;
    animation:oeHeroMarqueeV2 42s ease-in-out infinite;
    will-change:transform;
}

.oe-hero__group{
    display:flex;
    flex:0 0 auto;
    height:100%;
    gap:18px;
    align-items:center;
}

.oe-hero__item{
    position:relative;
    flex:0 0 310px;
    width:310px;
    height:440px;
    overflow:hidden;
    border-radius:34px;
    border:1px solid rgba(255,255,255,.64);
    background:#e8ded4;
    box-shadow:0 30px 80px rgba(16,24,40,.20);
    transform:rotate(-5deg);
    isolation:isolate;
}

.oe-hero__item:nth-child(2n){
    width:360px;
    height:520px;
    transform:rotate(4deg) translateY(26px);
}

.oe-hero__item:nth-child(3n){
    width:330px;
    height:470px;
    transform:rotate(-2deg) translateY(-18px);
}

.oe-hero__item:nth-child(4n){
    width:370px;
    height:545px;
    transform:rotate(5deg) translateY(12px);
}

.oe-hero__item::before,
.oe-hero__item::after{
    display:none;
}

.oe-hero__item img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    opacity:1;
    display:block;
    filter:saturate(.96) contrast(1.04);
    position:relative;
    z-index:1;
}

.oe-hero__overlay{
    display:none;
}

.oe-hero__inner{
    position:relative;
    z-index:4;
    min-height:640px;
    width:100%;
    margin:0 auto;
    padding:54px 42px 84px;
    display:grid;
    grid-template-columns:64px minmax(0,1fr) 330px;
    align-items:center;
    gap:24px;
    text-align:left;
}

.oe-hero__inner::before{
    content:"Italia";
    align-self:stretch;
    display:flex;
    align-items:flex-start;
    justify-content:center;
    writing-mode:vertical-rl;
    color:rgba(20,39,69,.54);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.18em;
    text-transform:uppercase;
    padding-top:8px;
}

.oe-hero__content{
    width:100%;
    max-width:790px;
    display:grid;
    gap:20px;
    justify-items:start;
    align-content:center;
}

.oe-hero__headline-wrap{
    width:100%;
    display:grid;
    gap:18px;
    justify-items:start;
}

.oe-hero__headline-top{
    display:block;
    margin:0;
    padding:0;
    font-size:clamp(4rem, 6.6vw, 7.15rem);
    line-height:.84;
    letter-spacing:-.085em;
    font-weight:900;
    color:var(--blu);
    text-align:left;
    text-shadow:none;
    max-width:920px;
}

.oe-hero__headline-top::before{
    content:"Only Events";
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 14px;
    margin:0 0 18px;
    border-radius:999px;
    background:rgba(255,255,255,.60);
    border:1px solid rgba(201,150,85,.22);
    color:var(--blu);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.74);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    font-size:.72rem;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.12em;
}

.oe-hero__content p,
.oe-hero__headline-wrap + p{
    margin:0;
    max-width:680px;
    color:#475467;
    font-size:1.1rem;
    line-height:1.74;
    font-weight:560;
}

.oe-hero__marquee{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:7;
    width:100%;
    height:50px;
    overflow:hidden;
    white-space:nowrap;
    border-radius:0;
    padding:0;
    background:transparent;
    border:none;
    box-shadow:none;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
}

.oe-hero__marquee::before,
.oe-hero__marquee::after{
    display:none;
}

.oe-hero__marquee-track{
    display:flex;
    align-items:center;
    gap:38px;
    width:max-content;
    height:50px;
    padding:0 24px;
    will-change:transform;
}

.oe-hero__marquee-track span{
    flex:0 0 auto;
    display:inline-block;
    font-size:.78rem;
    line-height:1;
    font-weight:950;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--blu);
    text-shadow:none;
}

.oe-hero__marquee--left .oe-hero__marquee-track{
    animation:oeHeroTextMarqueeLeftV2 20s linear infinite;
}

.oe-hero__marquee--right .oe-hero__marquee-track{
    animation:oeHeroTextMarqueeRightV2 24s linear infinite;
}

.oe-hero__azioni{
    position:relative;
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-start;
    align-items:center;
    gap:12px;
    margin-top:4px;
    border-radius:0;
    padding:0;
    background:transparent;
    border:none;
    box-shadow:none;
}

.oe-hero__azioni .bottone{
    min-width:240px;
    min-height:56px;
    padding:0 22px;
    font-size:1rem;
    border-radius:18px;
}

.oe-hero__azioni .bottone:first-child{
    background:
        linear-gradient(180deg, rgba(255,255,255,.34), rgba(255,255,255,0)),
        linear-gradient(135deg, var(--oro), var(--oro-2));
    color:#132743;
    box-shadow:
        0 18px 38px rgba(201,150,85,.30),
        inset 0 1px 0 rgba(255,255,255,.45);
    border:1px solid rgba(201,150,85,.22);
}

.oe-hero__azioni .bottone.bottone--secondario{
    background:rgba(255,255,255,.76);
    color:var(--blu);
    border:1px solid rgba(20,39,69,.12);
    box-shadow:
        0 14px 30px rgba(16,24,40,.08),
        inset 0 1px 0 rgba(255,255,255,.74);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}

/* =========================================================
   HOME BLOCCHI GRANDI
========================================================= */

.oe-home-blocchi{
    padding:24px 0 30px;
    background:
        radial-gradient(circle at 8% 0%, rgba(241,216,180,.18), transparent 30%),
        linear-gradient(180deg, #fffdf9 0%, #f5eee6 100%);
}

.oe-home-blocchi__inner{
    width:100%;
    margin:0;
    display:grid;
    gap:14px;
}

.oe-home-blocchi__griglia{
    display:grid;
    grid-template-columns:1fr;
    gap:16px;
    padding:0 24px;
}

.oe-home-card{
    position:relative;
    overflow:hidden;
    min-height:260px;
    width:100%;
    padding:34px 30px;
    border:1px solid rgba(20,39,69,.10);
    border-radius:34px;
    background:
        radial-gradient(circle at 0% 100%, rgba(241,216,180,.30), transparent 34%),
        radial-gradient(circle at 100% 0%, rgba(20,39,69,.06), transparent 36%),
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,246,241,.97));
    box-shadow:var(--ombra-soft);
    isolation:isolate;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    justify-items:center;
    align-content:center;
    gap:16px;
    text-align:center;
}

.oe-home-card > *{
    position:relative;
    z-index:3;
}

.oe-home-card::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
    opacity:.10;
    background-repeat:no-repeat;
    background-position:center;
    background-size:cover;
    transform:scale(1.02);
}

.oe-home-card::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:120px;
    z-index:1;
    pointer-events:none;
    background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.52));
}

.oe-home-card--cerca::before{
    background-image:url('/oeimages/hero/oe_cerca.webp');
}

.oe-home-card--fatti-conoscere::before{
    background-image:url('/oeimages/hero/oe_fatti_conoscere.webp');
}

.oe-home-card--ingaggia::before{
    background-image:url('/oeimages/hero/oe_ingaggia.webp');
}

.oe-home-card--cerca .oe-home-card__eyebrow,
.oe-home-card--fatti-conoscere .oe-home-card__eyebrow,
.oe-home-card--ingaggia .oe-home-card__eyebrow{
    display:none !important;
}

.oe-home-card__eyebrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:34px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(255,255,255,.70);
    color:var(--blu);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
    border:1px solid rgba(201,150,85,.22);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
    text-align:center;
    line-height:1;
}

.oe-home-card__eyebrow i{
    color:var(--oro-3);
}

.oe-home-card__icona{
    width:68px;
    height:68px;
    border-radius:24px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg, var(--blu), #335e9b);
    border:1px solid rgba(255,255,255,.18);
    box-shadow:0 18px 34px rgba(20,39,69,.22);
    color:#fff;
    font-size:1.55rem;
    line-height:1;
}

.oe-home-card h2{
    margin:0;
    font-size:clamp(2.1rem, 4.5vw, 3.5rem);
    line-height:.92;
    letter-spacing:-.07em;
    color:var(--blu);
    text-align:center;
    max-width:920px;
}

.oe-home-card p{
    margin:0 auto;
    max-width:860px;
    color:var(--testo-secondario);
    line-height:1.78;
    font-size:1.03rem;
    text-align:center;
}

.oe-home-card__azioni{
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    margin-top:4px;
}

.oe-home-card__azioni .bottone{
    min-width:240px;
    max-width:100%;
    min-height:54px;
    border-radius:18px;
}

/* =========================================================
   SEO HOME / PREFOOTER
========================================================= */

.oe-home-seo{
    padding:4px 0 28px;
    background:linear-gradient(180deg, #f5eee6 0%, #fffdf9 100%);
}

.oe-home-seo__inner{
    padding:0 24px;
}

.oe-home-seo .carta{
    position:relative;
    overflow:hidden;
    border-radius:34px;
    border:1px solid rgba(20,39,69,.10);
    padding:34px 30px;
    background:
        radial-gradient(circle at 0% 100%, rgba(241,216,180,.30), transparent 34%),
        radial-gradient(circle at 100% 0%, rgba(20,39,69,.06), transparent 36%),
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,246,241,.97));
    box-shadow:var(--ombra-soft);
}

.oe-home-seo .carta > *{
    position:relative;
    z-index:2;
}

.oe-home-seo__eyebrow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:max-content;
    max-width:100%;
    min-height:34px;
    padding:0 14px;
    margin:0 auto 14px;
    border-radius:999px;
    background:rgba(255,255,255,.70);
    color:var(--blu);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
    border:1px solid rgba(201,150,85,.22);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
    line-height:1;
}

.oe-home-seo__eyebrow i{
    color:var(--oro-3);
}

.oe-home-seo .carta h2{
    margin:0 0 14px;
    font-size:clamp(2rem, 4.3vw, 3.45rem);
    line-height:.94;
    letter-spacing:-.07em;
    text-align:center;
    color:var(--blu);
    max-width:980px;
    margin-left:auto;
    margin-right:auto;
}

.oe-home-seo .carta p{
    max-width:900px;
    margin:0 auto;
    text-align:center;
    font-size:1rem;
    line-height:1.86;
    color:var(--testo-secondario);
}

.oe-home-seo__intro{
    margin-bottom:16px !important;
}

.oe-home-seo__grid{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    margin-top:20px;
}

.oe-home-seo__item{
    padding:20px 18px;
    border-radius:24px;
    border:1px solid rgba(20,39,69,.10);
    background:rgba(255,255,255,.72);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
}

.oe-home-seo__item h3{
    margin:0 0 8px;
    text-align:center;
    font-size:1.08rem;
    line-height:1.15;
    color:var(--blu);
    letter-spacing:-.025em;
}

.oe-home-seo__item p{
    font-size:.98rem !important;
    line-height:1.8 !important;
    max-width:100% !important;
}

/* =========================================================
   PILASTRI HOME / BOX ARCHIVIO
========================================================= */

.oe-home-pilastri{
    padding:12px 0 36px;
    background:linear-gradient(180deg, #fffdf9 0%, #f5eee6 100%);
}

.oe-home-pilastri__inner{
    display:grid;
    gap:24px;
    padding:0 24px;
}

.oe-home-pilastro,
.oe-archivio-box{
    position:relative;
    overflow:hidden;
    border:1px solid rgba(20,39,69,.10);
    border-radius:34px;
    background:
        radial-gradient(circle at 0% 100%, rgba(241,216,180,.30), transparent 34%),
        radial-gradient(circle at 100% 0%, rgba(20,39,69,.06), transparent 36%),
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,246,241,.97));
    box-shadow:var(--ombra-soft);
    padding:30px 0 28px;
}

.oe-home-pilastro__head,
.oe-home-pilastro__cta,
.oe-archivio-box__head,
.oe-archivio-box__body,
.oe-archivio-box__cta{
    position:relative;
    z-index:2;
    padding-left:26px;
    padding-right:26px;
}

.oe-home-pilastro__head,
.oe-archivio-box__head{
    display:grid;
    gap:11px;
    margin-bottom:20px;
    text-align:center;
    justify-items:center;
}

.oe-home-pilastro__eyebrow,
.oe-archivio-eyebrow{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:8px;
    min-height:34px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(255,255,255,.70);
    color:var(--blu);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
    width:max-content;
    max-width:100%;
    margin:0 auto;
    border:1px solid rgba(201,150,85,.22);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
    line-height:1;
}

.oe-home-pilastro__eyebrow i,
.oe-archivio-eyebrow i{
    color:var(--oro-3);
}

.oe-home-pilastro__titolo,
.oe-archivio-box__titolo{
    margin:0;
    font-size:clamp(2rem, 4.2vw, 3.5rem);
    line-height:.94;
    color:var(--blu);
    letter-spacing:-.07em;
    text-align:center;
    margin-left:auto;
    margin-right:auto;
    max-width:960px;
}

.oe-home-pilastro__testo,
.oe-archivio-box__testo{
    margin:0;
    color:var(--testo-secondario);
    line-height:1.78;
    font-size:1rem;
    text-align:center;
    margin-left:auto;
    margin-right:auto;
    max-width:900px;
}

.oe-home-pilastro__cta,
.oe-archivio-box__cta{
    display:flex;
    justify-content:center;
    align-items:center;
    margin-top:12px;
}

.oe-home-pilastro__cta .bottone,
.oe-archivio-box__cta .bottone,
.oe-home-pilastro__head + .oe-home-carousel-wrap + .oe-home-pilastro__cta .bottone{
    min-width:260px;
    max-width:100%;
    min-height:54px;
    border-radius:18px;
}

/* =========================================================
   CAROSELLI
========================================================= */

.oe-home-carousel-wrap,
.oe-archivio-carousel-wrap,
.oe-ads-carousel-wrap{
    position:relative;
    z-index:2;
}

.oe-home-carousel,
.oe-archivio-carousel,
.oe-ads-carousel{
    position:relative;
    overflow:hidden;
    user-select:none;
    cursor:grab;
}

.oe-home-carousel.is-dragging,
.oe-archivio-carousel.is-dragging,
.oe-ads-carousel.is-dragging{
    cursor:grabbing;
}

.oe-home-carousel__viewport,
.oe-archivio-carousel__viewport,
.oe-ads-carousel__viewport{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-behavior:auto;
    scrollbar-width:none;
    -ms-overflow-style:none;
    padding:8px 0 14px;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
}

.oe-home-carousel__viewport::-webkit-scrollbar,
.oe-archivio-carousel__viewport::-webkit-scrollbar,
.oe-ads-carousel__viewport::-webkit-scrollbar{
    display:none;
}

.oe-home-carousel__track,
.oe-archivio-carousel__track{
    display:flex;
    gap:18px;
    width:max-content;
    padding:0 26px;
    flex-wrap:nowrap !important;
}

/* =========================================================
   CARD CAROSELLO FULL/LARGHE
========================================================= */

.oe-home-card-mini,
.oe-archivio-card-mini{
    position:relative;
    flex:0 0 min(760px, calc(100vw - 110px));
    min-height:360px;
    display:grid;
    grid-template-columns:44% 56%;
    padding:0;
    border-radius:32px;
    overflow:hidden;
    border:1px solid rgba(20,39,69,.10);
    background:rgba(255,255,255,.88);
    box-shadow:0 22px 58px rgba(16,24,40,.14);
    transition:
        transform .22s ease,
        box-shadow .22s ease,
        border-color .22s ease;
    text-decoration:none;
    color:inherit;
    isolation:isolate;
}

.oe-home-card-mini:hover,
.oe-archivio-card-mini:hover{
    transform:translateY(-3px);
    box-shadow:0 28px 68px rgba(16,24,40,.18);
    border-color:rgba(201,150,85,.28);
}

.oe-home-card-mini--placeholder,
.oe-archivio-card-mini--placeholder{
    display:grid;
    grid-template-columns:1fr;
    place-items:center;
    padding:28px;
    background:
        radial-gradient(circle at 0% 100%, rgba(241,216,180,.30), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,246,241,.97));
    border-style:dashed;
    border-color:rgba(201,150,85,.28);
    cursor:default;
}

.oe-home-card-mini--placeholder:hover,
.oe-archivio-card-mini--placeholder:hover{
    transform:none;
}

.oe-home-card-mini__media,
.oe-archivio-card-mini__media{
    position:relative;
    inset:auto;
    width:100%;
    height:100%;
    min-height:360px;
    border-radius:0;
    overflow:hidden;
    background:#e8ded4;
    box-shadow:none;
    display:flex;
    align-items:center;
    justify-content:center;
}

.oe-home-card-mini__media img,
.oe-archivio-card-mini__media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
    transform:none;
}

.oe-home-card-mini__media--placeholder,
.oe-archivio-card-mini__media--placeholder{
    position:relative;
    width:76px;
    height:76px;
    min-height:76px;
    border-radius:24px;
    color:#fff;
    font-size:1.55rem;
    background:linear-gradient(135deg, var(--blu), #335e9b);
    box-shadow:0 18px 34px rgba(20,39,69,.20);
    margin:0 auto 14px;
}

.oe-home-card-mini:not(.oe-home-card-mini--placeholder)::after,
.oe-archivio-card-mini:not(.oe-archivio-card-mini--placeholder)::after{
    display:none;
}

.oe-home-card-mini__body,
.oe-archivio-card-mini__body{
    position:relative;
    inset:auto;
    z-index:2;
    min-width:0;
    width:100%;
    display:grid;
    gap:11px;
    justify-items:center;
    align-content:center;
    text-align:center;
    padding:28px;
}

.oe-home-card-mini--placeholder .oe-home-card-mini__body,
.oe-archivio-card-mini--placeholder .oe-archivio-card-mini__body{
    position:relative;
    inset:auto;
    padding:0;
}

.oe-home-card-mini__nome,
.oe-archivio-card-mini__nome{
    margin:0;
    max-width:100%;
    font-size:clamp(1.45rem, 2.6vw, 2rem);
    line-height:1;
    color:var(--blu);
    font-weight:900;
    letter-spacing:-.06em;
    display:block;
    overflow:visible;
    text-align:center;
    text-shadow:none;
}

.oe-home-card-mini__meta,
.oe-archivio-card-mini__meta{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    color:var(--testo-secondario);
    font-size:.98rem;
    line-height:1.5;
    text-align:center;
    max-width:520px;
}

.oe-home-card-mini__meta i,
.oe-archivio-card-mini__meta i{
    color:var(--oro-3);
    font-size:.96rem;
    margin-top:0;
    flex:0 0 auto;
}

.oe-home-card-mini__meta span,
.oe-archivio-card-mini__meta span{
    display:block;
    overflow:visible;
    text-align:center;
}

/* =========================================================
   ADS HOME
========================================================= */

.oe-home-pilastro--ads{
    position:relative;
    overflow:hidden;
    padding-top:26px !important;
    border-color:rgba(201,150,85,.28);
    box-shadow:
        0 20px 50px rgba(16,24,40,.09),
        0 0 0 1px rgba(201,150,85,.08),
        inset 0 1px 0 rgba(255,255,255,.84);
    background:
        radial-gradient(circle at 100% 0%, rgba(255,255,255,.50), transparent 30%),
        linear-gradient(135deg,#fff8e9,#ebd19a) !important;
}

.oe-home-pilastro--ads::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 20% 30%, rgba(201,150,85,.10) 0%, transparent 40%),
        repeating-linear-gradient(135deg, rgba(201,150,85,.04) 0px, rgba(201,150,85,.04) 1px, transparent 1px, transparent 14px);
}

.oe-home-pilastro--ads > *{
    position:relative;
    z-index:2;
}

.oe-home-pilastro--ads .oe-home-pilastro__head{
    display:none !important;
}

.oe-ads-carousel-wrap{
    display:block !important;
    width:100% !important;
}

.oe-ads-carousel{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
}

.oe-ads-carousel__viewport{
    position:relative;
    border-radius:0;
    width:100% !important;
    max-width:100% !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:8px 26px 14px !important;
    background:transparent;
}

.oe-ads-carousel__viewport::before,
.oe-ads-carousel__viewport::after{
    display:none;
}

.oe-ads-carousel__track{
    display:flex !important;
    width:max-content !important;
    max-width:none !important;
    justify-content:flex-start !important;
    align-items:stretch !important;
    gap:18px !important;
    flex-wrap:nowrap !important;
}

.oe-ads-card{
    position:relative;
    flex:0 0 min(760px, calc(100vw - 110px)) !important;
    width:min(760px, calc(100vw - 110px)) !important;
    min-height:340px;
    display:grid;
    grid-template-columns:44% 56%;
    overflow:hidden;
    border-radius:32px;
    text-decoration:none;
    color:inherit;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(167,111,53,.22);
    box-shadow:
        0 20px 48px rgba(91,64,26,.14),
        inset 0 1px 0 rgba(255,255,255,.58);
    transition:
        transform .22s ease,
        box-shadow .22s ease,
        border-color .22s ease;
}

.oe-ads-card:hover{
    transform:translateY(-3px);
    box-shadow:
        0 28px 60px rgba(91,64,26,.18),
        inset 0 1px 0 rgba(255,255,255,.66);
    border-color:rgba(167,111,53,.34);
}

.oe-ads-card__badge{
    display:none !important;
}

.oe-ads-card__badge i{
    display:none !important;
}

.oe-ads-card__media{
    position:relative;
    width:100%;
    height:100%;
    min-height:340px;
    aspect-ratio:auto;
    overflow:hidden;
    background:#f4ead7;
    border-bottom:none;
}

.oe-ads-card__media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
    transition:transform .28s ease;
}

.oe-ads-card:hover .oe-ads-card__media img{
    transform:scale(1.03);
}

.oe-ads-card__body{
    display:grid;
    gap:11px;
    padding:28px;
    align-content:center;
    justify-items:center;
    text-align:center;
    min-width:0;
}

.oe-ads-card__kicker{
    display:none !important;
}

.oe-ads-card__title{
    margin:0;
    width:100%;
    font-size:clamp(1.45rem, 2.6vw, 2rem);
    line-height:1;
    letter-spacing:-.06em;
    color:var(--blu);
    font-weight:900;
    text-align:center;
    display:block;
    overflow:visible;
}

.oe-ads-card__text{
    margin:0;
    width:100%;
    color:var(--testo-secondario);
    font-size:1rem;
    line-height:1.68;
    text-align:center;
    display:block;
    overflow:visible;
    max-width:520px;
}

.oe-ads-card__meta{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    color:var(--blu);
    font-size:.94rem;
    line-height:1.45;
    text-align:center;
}

.oe-ads-card__meta i{
    color:var(--oro-3);
    margin-top:0;
    flex:0 0 auto;
}

.oe-ads-card__meta span{
    display:block;
    overflow:visible;
    text-align:center;
}

/* =========================================================
   ARCHIVIO
========================================================= */

.oe-archivio-wrap{
    padding:24px 0 36px;
    background:linear-gradient(180deg, #fffdf9 0%, #f5eee6 100%);
}

.oe-archivio-grid{
    display:grid;
    gap:22px;
}

.oe-archivio-filtro-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
}

.oe-archivio-hero{
    position:relative;
    overflow:hidden;
    padding:32px;
    border-radius:34px;
    border:1px solid rgba(20,39,69,.10);
    background:
        radial-gradient(circle at 0% 100%, rgba(241,216,180,.30), transparent 34%),
        radial-gradient(circle at 100% 0%, rgba(20,39,69,.06), transparent 36%),
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,246,241,.97));
    box-shadow:var(--ombra-soft);
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
}

.oe-archivio-hero h1{
    margin:0 0 14px;
    font-size:clamp(2.4rem, 5vw, 4rem);
    line-height:.92;
    letter-spacing:-.07em;
    color:var(--blu);
    text-align:center;
}

.oe-archivio-hero p{
    margin:0;
    max-width:920px;
    color:var(--testo-secondario);
    line-height:1.78;
    font-size:1rem;
}

.oe-archivio-hero > p{
    text-align:center;
    margin-left:auto;
    margin-right:auto;
    max-width:820px;
}

.oe-archivio-hero__seo{
    width:100%;
    display:flex;
    justify-content:center;
}

.oe-archivio-hero__seo p{
    text-align:center;
    max-width:820px;
    margin:0 auto;
}

.oe-archivio-hero__meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
    justify-content:center;
}

.oe-archivio-chip{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:38px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(255,255,255,.68);
    border:1px solid rgba(201,150,85,.22);
    color:var(--blu);
    font-size:.88rem;
    font-weight:850;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.56);
    line-height:1;
}

.oe-archivio-chip i{
    color:var(--oro-3);
}

.oe-archivio-hero--solo-immagine{
    display:block;
    padding:0;
    min-height:0;
    overflow:hidden;
    border-radius:34px;
    background:#f4efe8;
    border:1px solid rgba(20,39,69,.10);
    box-shadow:var(--ombra-soft);
}

.oe-archivio-hero--solo-immagine img{
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:16 / 7;
    object-fit:cover;
    object-position:center center;
}

/* Risultati full width */

.oe-archivio-risultati{
    display:grid !important;
    grid-template-columns:1fr;
    gap:18px !important;
    align-items:stretch;
}

.oe-archivio-card{
    position:relative;
    overflow:hidden;
    display:grid;
    gap:0;
    padding:0;
    border-radius:32px;
    border:1px solid rgba(20,39,69,.10);
    background:rgba(255,255,255,.88);
    box-shadow:0 22px 58px rgba(16,24,40,.14);
    height:100%;
    margin:0;
}

.oe-archivio-card__main{
    display:grid;
    grid-template-columns:minmax(280px, 340px) minmax(0,1fr);
    gap:0;
    align-items:stretch;
    height:100%;
}

.oe-archivio-card__media{
    position:relative;
    display:block;
    width:100%;
    min-height:300px;
    aspect-ratio:auto;
    border-radius:0;
    overflow:hidden;
    background:#e8ded4;
    border-right:1px solid rgba(20,39,69,.08);
    box-shadow:none;
}

.oe-archivio-card__media img,
.oe-archivio-card > a img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    display:block;
    transition:transform .28s ease;
}

.oe-archivio-card:hover .oe-archivio-card__media img{
    transform:scale(1.02);
}

.oe-archivio-card__content{
    min-width:0;
    display:grid;
    align-content:center;
    justify-items:center;
    gap:12px;
    padding:28px;
    text-align:center;
}

.oe-archivio-card__top{
    display:grid;
    width:100%;
    gap:10px;
    align-items:start;
    justify-items:center;
    justify-content:center;
}

.oe-archivio-card__top > div:first-child{
    width:100%;
}

.oe-archivio-card__titolo{
    margin:0;
    font-size:clamp(1.45rem, 2.8vw, 2.1rem);
    line-height:1;
    color:var(--blu);
    letter-spacing:-.06em;
    text-align:center;
}

.oe-archivio-card__titolo a{
    color:inherit;
    text-decoration:none;
}

.oe-archivio-card__titolo a:hover{
    opacity:.86;
}

.oe-archivio-card__meta{
    display:flex;
    flex-wrap:wrap;
    gap:9px 14px;
    color:var(--testo-secondario);
    font-size:.96rem;
    line-height:1.55;
    width:100%;
    justify-content:center;
}

.oe-archivio-card__meta-item{
    display:inline-flex;
    align-items:center;
    gap:8px;
    justify-content:center;
}

.oe-archivio-card__meta-item i{
    color:var(--oro-3);
    margin-top:0;
    flex:0 0 auto;
}

.oe-archivio-card__desc{
    color:var(--testo-secondario);
    line-height:1.72;
    font-size:.98rem;
    text-align:center;
    max-width:760px;

    display:-webkit-box;
    -webkit-line-clamp:3;
    line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    text-overflow:ellipsis;
    word-break:normal;
    overflow-wrap:anywhere;
}

@media (max-width:767px){
.oe-home-pilastro--ads{
        padding-top:22px !important;
    }

    .oe-home-pilastro--ads .oe-home-pilastro__head{
        display:grid !important;
        margin-bottom:16px !important;
        padding-left:16px !important;
        padding-right:16px !important;
    }

    .oe-home-pilastro__eyebrow--ads{
        max-width:calc(100vw - 72px) !important;
        min-height:38px !important;
        padding:0 16px !important;
        font-size:.72rem !important;
        letter-spacing:.13em !important;
    }
    .oe-archivio-card__desc{
        line-height:1.65;
        font-size:.96rem;
        max-width:100%;
    }
}

.oe-archivio-card__specs{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    width:100%;
    justify-content:center;
}

.oe-archivio-spec{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 13px;
    border-radius:999px;
    background:#f4eee8;
    color:var(--blu);
    border:1px solid rgba(20,39,69,.08);
    font-size:.84rem;
    font-weight:850;
    text-align:center;
    line-height:1;
}

.oe-archivio-card__azioni{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    width:100%;
    margin-top:4px;
    justify-content:center;
    align-items:center;
}

.oe-archivio-inline-badges{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    justify-content:center;
}

.oe-archivio-card__badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:36px;
    padding:0 14px;
    border-radius:999px;
    font-size:.86rem;
    font-weight:900;
    border:1px solid transparent;
    text-align:center;
    line-height:1;
}

.oe-archivio-card__badge i{
    color:inherit;
}

.oe-archivio-card__badge--premium{
    background:linear-gradient(135deg, rgba(201,150,85,.18) 0%, rgba(241,216,180,.42) 100%);
    color:var(--blu);
    border-color:rgba(201,150,85,.28);
}

.oe-archivio-card__badge--rating{
    background:#eef4ff;
    color:var(--blu);
    border-color:rgba(20,39,69,.10);
}

.oe-archivio-card__ultima-visita{
    display:block;
    margin-top:8px;
    font-size:.78rem;
    line-height:1.35;
    font-weight:750;
    letter-spacing:.01em;
    color:rgba(20,39,69,.62);
}

/* =========================================================
   PAGINAZIONE / UTILITY
========================================================= */

.oe-archivio-vuoto{
    padding:28px;
    border:1px dashed rgba(201,150,85,.34);
    border-radius:26px;
    background:rgba(255,255,255,.60);
    text-align:center;
    color:var(--testo-secondario);
    line-height:1.8;
}

.oe-paginazione{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:10px;
    margin-top:14px;
}

.oe-paginazione a,
.oe-paginazione span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:44px;
    min-height:44px;
    padding:0 14px;
    border-radius:15px;
    border:1px solid rgba(20,39,69,.10);
    background:#fff;
    color:var(--blu);
    font-weight:900;
    box-shadow:var(--ombra-mini);
    line-height:1;
}

.oe-paginazione span.is-attiva{
    background:linear-gradient(135deg, var(--oro) 0%, var(--oro-2) 100%);
    color:#132743;
    border-color:transparent;
    box-shadow:0 12px 24px rgba(201,150,85,.22);
}

.oe-archivio-mt10{
    margin-top:10px;
}

.oe-archivio-mt12{
    margin-top:12px;
}

.oe-archivio-mt14{
    margin-top:14px;
}

.azioni.oe-archivio-mt14{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
    justify-content:center;
}

/* =========================================================
   VALIDAZIONE FORM
========================================================= */

.campo.has-error .input,
.campo.has-error input.input,
.campo.has-error textarea.input,
.campo.has-error select.input,
.comune-autocomplete.has-error .input,
.comune-autocomplete.has-error input.input{
    border-color:#dc2626 !important;
    box-shadow:0 0 0 4px rgba(220,38,38,.10) !important;
    background:#fffafa !important;
}

.campo.has-error label,
.comune-autocomplete.has-error label{
    color:#991b1b !important;
}

.campo__errore,
.comune-autocomplete__errore{
    margin-top:6px;
    font-size:.92rem;
    line-height:1.5;
    color:#b91c1c;
    font-weight:750;
}

.riga-check.has-error{
    padding:10px 12px;
    border:1px solid rgba(220,38,38,.22);
    border-radius:14px;
    background:#fff7f7;
}

.riga-check.has-error span{
    color:#991b1b;
}

.riga-check__errore{
    display:block;
    margin-top:6px;
    font-size:.92rem;
    line-height:1.45;
    color:#b91c1c;
    font-weight:750;
}

.blocco-ruolo.has-error{
    scroll-margin-top:110px;
}

.campo.has-error .campo-help,
.comune-autocomplete.has-error .campo-help{
    color:#7f1d1d;
}

/* =========================================================
   KEYFRAMES
========================================================= */

@keyframes oeHeroMarqueeV2{
    0%{
        transform:translateX(0);
    }
    50%{
        transform:translateX(-520px);
    }
    100%{
        transform:translateX(0);
    }
}

@keyframes oeHeroTextMarqueeLeftV2{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-560px);
    }
}

@keyframes oeHeroTextMarqueeRightV2{
    from{
        transform:translateX(-560px);
    }
    to{
        transform:translateX(0);
    }
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (min-width:768px){
    .oe-home-blocchi__griglia{
        grid-template-columns:1fr;
        padding:0 34px;
    }

    .oe-home-seo__inner{
        padding:0 34px;
    }

    .oe-home-pilastri__inner{
        padding:0 34px;
    }

    .oe-archivio-filtro-grid{
        grid-template-columns:1.3fr 1fr .8fr;
        align-items:end;
    }
}

@media (min-width:1180px){
    .oe-home-blocchi__griglia{
        grid-template-columns:repeat(3, minmax(0,1fr));
    }

    .oe-home-card{
        min-height:340px;
    }
}

@media (max-width:900px){
    .oe-hero{
        min-height:680px;
    }

    .oe-hero::before{
        background:linear-gradient(180deg, rgba(255,253,250,.22) 0%, rgba(255,253,250,.75) 42%, rgba(255,253,250,.96) 100%);
    }

    .oe-hero__bg{
        inset:8px auto auto -105px;
        height:340px;
    }

    .oe-hero__track,
    .oe-hero__group{
        height:340px;
        gap:12px;
    }

    .oe-hero__track{
        animation:oeHeroMarqueeMobileV2 34s ease-in-out infinite;
    }

    .oe-hero__item{
        width:165px;
        height:250px;
        border-radius:25px;
    }

    .oe-hero__item:nth-child(2n){
        width:188px;
        height:288px;
    }

    .oe-hero__item:nth-child(3n){
        width:176px;
        height:265px;
    }

    .oe-hero__item:nth-child(4n){
        width:192px;
        height:300px;
    }

    .oe-hero__inner{
        min-height:680px;
        display:flex;
        flex-direction:column;
        justify-content:flex-end;
        align-items:center;
        gap:18px;
        padding:292px 16px 72px;
        text-align:center;
    }

    .oe-hero__inner::before{
        display:none;
    }

    .oe-hero__content,
    .oe-hero__headline-wrap{
        width:100%;
        justify-items:center;
        text-align:center;
        gap:15px;
    }

    .oe-hero__headline-top{
        font-size:3rem;
        line-height:.89;
        letter-spacing:-.078em;
        text-align:center;
    }

    .oe-hero__headline-top::before{
        margin:0 auto 14px;
    }

    .oe-hero__content p,
    .oe-hero__headline-wrap + p{
        font-size:.97rem;
        line-height:1.68;
        text-align:center;
    }

    .oe-hero__azioni{
        display:grid;
        width:100%;
        gap:10px;
    }

    .oe-hero__azioni .bottone{
        width:100%;
        min-width:0;
    }

    @keyframes oeHeroMarqueeMobileV2{
        0%{
            transform:translateX(0);
        }
        50%{
            transform:translateX(-260px);
        }
        100%{
            transform:translateX(0);
        }
    }
}

@media (max-width:767px){
    .oe-container{
        width:min(100% - 24px, 1320px);
    }

    .oe-home-blocchi{
        padding:18px 0 22px;
    }

    .oe-home-blocchi__griglia,
    .oe-home-seo__inner,
    .oe-home-pilastri__inner{
        padding:0 14px;
    }

    .oe-home-card,
    .oe-home-seo .carta,
    .oe-home-pilastro,
    .oe-archivio-box,
    .oe-archivio-hero,
    .oe-archivio-hero--solo-immagine{
        border-radius:26px;
    }

    .oe-home-card{
        min-height:260px;
        padding:26px 20px;
    }

    .oe-home-card h2{
        font-size:2rem;
        line-height:.96;
    }

    .oe-home-card p{
        font-size:.97rem;
        line-height:1.7;
    }

    .oe-home-pilastro,
    .oe-archivio-box{
        padding:24px 0 22px;
    }

    .oe-home-pilastro__head,
    .oe-home-pilastro__cta,
    .oe-archivio-box__head,
    .oe-archivio-box__body,
    .oe-archivio-box__cta{
        padding-left:18px;
        padding-right:18px;
    }

    .oe-home-pilastro__titolo,
    .oe-archivio-box__titolo{
        font-size:2rem;
        line-height:.96;
    }

    .oe-home-carousel__track,
    .oe-archivio-carousel__track,
    .oe-ads-carousel__track{
        gap:14px !important;
        padding-left:18px;
        padding-right:18px;
    }

    .oe-home-card-mini,
    .oe-archivio-card-mini,
    .oe-ads-card{
        flex-basis:calc(100vw - 70px) !important;
        width:calc(100vw - 70px) !important;
        min-height:0;
        grid-template-columns:1fr;
        border-radius:28px;
    }

    .oe-home-card-mini__media,
    .oe-archivio-card-mini__media,
    .oe-ads-card__media{
        min-height:0;
        aspect-ratio:16 / 10;
    }

    .oe-home-card-mini__body,
    .oe-archivio-card-mini__body,
    .oe-ads-card__body{
        padding:20px;
    }

    .oe-home-card-mini__nome,
    .oe-archivio-card-mini__nome,
    .oe-ads-card__title{
        font-size:1.6rem;
    }

    .oe-ads-carousel__viewport{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .oe-archivio-wrap{
        padding:16px 0 28px;
    }

    .oe-archivio-grid{
        gap:16px;
    }

    .oe-archivio-hero{
        padding:22px 18px;
    }

    .oe-archivio-hero--solo-immagine img{
        aspect-ratio:16 / 9;
    }

    .oe-archivio-card{
        border-radius:28px;
    }

    .oe-archivio-card__main{
        grid-template-columns:1fr;
    }

    .oe-archivio-card__media{
        min-height:0;
        aspect-ratio:16 / 10;
        border-right:none;
        border-bottom:1px solid rgba(20,39,69,.08);
    }

    .oe-archivio-card__content{
        padding:22px 18px;
    }

    .oe-archivio-card__titolo{
        font-size:1.55rem;
    }

    .azioni.oe-archivio-mt14{
        display:grid;
        grid-template-columns:1fr;
    }

    .azioni.oe-archivio-mt14 .bottone{
        width:100%;
        justify-content:center;
    }

    .oe-paginazione a,
    .oe-paginazione span{
        min-width:42px;
        min-height:42px;
    }
}

@media (prefers-reduced-motion:reduce){
    .oe-hero__track,
    .oe-hero__marquee--left .oe-hero__marquee-track,
    .oe-hero__marquee--right .oe-hero__marquee-track{
        animation:none !important;
    }
}

/* =========================================================
   HOME CARD EXTRA DESKTOP
   Solo desktop: specializzazioni, premium e media
========================================================= */

.oe-home-card-mini__specs,
.oe-home-card-mini__micro{
    display:none;
}

@media (min-width:768px){
    .oe-home-card-mini__body{
        gap:12px;
    }

    .oe-home-card-mini__specs{
        display:flex;
        flex-wrap:wrap;
        justify-content:center;
        align-items:center;
        gap:8px;
        width:100%;
        max-width:520px;
        margin-top:2px;
    }

    .oe-home-card-mini__spec{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:32px;
        padding:0 12px;
        border-radius:999px;
        background:#f4eee8;
        color:var(--blu);
        border:1px solid rgba(20,39,69,.08);
        font-size:.80rem;
        font-weight:850;
        line-height:1;
        text-align:center;
        white-space:nowrap;
        box-shadow:inset 0 1px 0 rgba(255,255,255,.64);
    }

    .oe-home-card-mini__micro{
        display:flex;
        flex-wrap:wrap;
        justify-content:center;
        align-items:center;
        gap:8px;
        width:100%;
        max-width:560px;
        margin-top:2px;
    }

    .oe-home-card-mini__micro-item{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:7px;
        min-height:34px;
        padding:0 12px;
        border-radius:999px;
        background:rgba(255,255,255,.78);
        color:rgba(20,39,69,.82);
        border:1px solid rgba(20,39,69,.09);
        font-size:.80rem;
        font-weight:850;
        line-height:1;
        box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
        white-space:nowrap;
    }

    .oe-home-card-mini__micro-item i{
        color:var(--oro-3);
        font-size:.82rem;
        line-height:1;
        flex:0 0 auto;
    }

    .oe-home-card-mini__micro-item--premium{
        background:linear-gradient(135deg, rgba(201,150,85,.18) 0%, rgba(241,216,180,.42) 100%);
        color:var(--blu);
        border-color:rgba(201,150,85,.28);
        font-weight:900;
    }
}

@media (max-width:767px){
    .oe-home-card-mini__specs,
    .oe-home-card-mini__micro{
        display:none !important;
    }
}

/* =========================================================
   ONLY EVENTS - SFONDO GLOBALE CHAMPAGNE EDITORIALE
   Override finale per rendere home, sezioni e archivi coerenti
========================================================= */

.oe-home,
.oe-archivio,
.oe-home-blocchi,
.oe-home-seo,
.oe-home-pilastri,
.oe-archivio-wrap{
    background:transparent !important;
}

.oe-hero{
    background:transparent !important;
    border-bottom:1px solid rgba(20,39,69,.07);
}

.oe-hero::after{
    background:
        linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,.44) 100%) !important;
    border-top:1px solid rgba(201,150,85,.16);
    border-bottom:1px solid rgba(201,150,85,.14);
}

.oe-home-card,
.oe-home-seo .carta,
.oe-home-pilastro,
.oe-archivio-box,
.oe-archivio-hero{
    background:
        radial-gradient(circle at 0% 100%, rgba(255,255,255,.42), transparent 38%),
        radial-gradient(circle at 100% 0%, rgba(201,150,85,.12), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.66), rgba(255,250,245,.50)) !important;
    border-color:rgba(20,39,69,.085) !important;
    box-shadow:
        0 24px 70px rgba(91,64,26,.105),
        inset 0 1px 0 rgba(255,255,255,.62) !important;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
}

.oe-home-card::after,
.oe-home-seo .carta::after,
.oe-home-pilastro::after,
.oe-archivio-box::after,
.oe-archivio-hero::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
    opacity:.72;
    background:
        linear-gradient(118deg, transparent 0 12%, rgba(255,255,255,.22) 12.2% 17%, transparent 17.2% 100%),
        linear-gradient(44deg, transparent 0 70%, rgba(201,150,85,.08) 70.2% 73%, transparent 73.2% 100%);
}

.oe-home-card > *,
.oe-home-seo .carta > *,
.oe-home-pilastro > *,
.oe-archivio-box > *,
.oe-archivio-hero > *{
    position:relative;
    z-index:2;
}

.oe-home-card-mini,
.oe-archivio-card-mini,
.oe-ads-card,
.oe-archivio-card{
    background:rgba(255,255,255,.72) !important;
    border-color:rgba(20,39,69,.085) !important;
    box-shadow:
        0 22px 58px rgba(91,64,26,.115),
        inset 0 1px 0 rgba(255,255,255,.56) !important;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
}

.oe-home-card-mini__body,
.oe-archivio-card-mini__body,
.oe-ads-card__body,
.oe-archivio-card__content{
    background:
        radial-gradient(circle at 100% 0%, rgba(201,150,85,.075), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.24), rgba(255,255,255,.04));
}

.oe-home-card-mini__spec,
.oe-archivio-spec,
.oe-home-card-mini__micro-item,
.oe-archivio-chip,
.oe-home-pilastro__eyebrow,
.oe-archivio-eyebrow,
.oe-home-seo__eyebrow{
    background:rgba(255,255,255,.58) !important;
    border-color:rgba(201,150,85,.18) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.62);
}

.oe-home-pilastro--ads{
    background:
        radial-gradient(circle at 100% 0%, rgba(255,255,255,.46), transparent 32%),
        linear-gradient(135deg, rgba(255,248,233,.78), rgba(235,209,154,.58)) !important;
}

.oe-home-pilastro--ads::before{
    background:
        radial-gradient(circle at 20% 30%, rgba(201,150,85,.10) 0%, transparent 40%),
        linear-gradient(120deg, transparent 0 38%, rgba(255,255,255,.20) 38.2% 42%, transparent 42.2% 100%) !important;
}

.oe-pagina-standard{
    background:transparent !important;
}

.oe-archivio-vuoto{
    background:rgba(255,255,255,.56) !important;
    border-color:rgba(201,150,85,.26) !important;
}

@media (max-width:767px){
    .oe-home-card,
    .oe-home-seo .carta,
    .oe-home-pilastro,
    .oe-archivio-box,
    .oe-archivio-hero{
        background:
            radial-gradient(circle at 0% 100%, rgba(255,255,255,.38), transparent 38%),
            linear-gradient(180deg, rgba(255,255,255,.62), rgba(255,250,245,.46)) !important;
        backdrop-filter:blur(14px);
        -webkit-backdrop-filter:blur(14px);
    }
}

/* =========================================================
   FIX PLACEHOLDER LOCATION HOME
   Icona location pulita, senza box, senza cornici interne
========================================================= */

.oe-home-card-mini--placeholder .oe-home-card-mini__media--placeholder-location{
    position:relative !important;
    width:auto !important;
    height:auto !important;
    min-width:0 !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    margin:0 auto 18px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    outline:0 !important;
    overflow:visible !important;
    background:transparent !important;
    box-shadow:none !important;
    color:var(--oro-3) !important;
    font-size:2.8rem !important;
    line-height:1 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.oe-home-card-mini--placeholder .oe-home-card-mini__media--placeholder-location i{
    display:block !important;
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    color:var(--oro-3) !important;
    font-size:inherit !important;
    line-height:1 !important;
    background:transparent !important;
    box-shadow:none !important;
    filter:none !important;
}

.oe-home-card-mini--placeholder .oe-home-card-mini__media--placeholder-location::before,
.oe-home-card-mini--placeholder .oe-home-card-mini__media--placeholder-location::after{
    display:none !important;
    content:none !important;
}

.oe-home-card-mini--placeholder .oe-home-card-mini__body{
    background:transparent !important;
    box-shadow:none !important;
    padding:0 !important;
}

.oe-home-card-mini--placeholder .oe-home-card-mini__body::before,
.oe-home-card-mini--placeholder .oe-home-card-mini__body::after{
    display:none !important;
    content:none !important;
}

@media (max-width:767px){
    .oe-home-card-mini--placeholder .oe-home-card-mini__media--placeholder-location{
        aspect-ratio:auto !important;
        margin:0 auto 16px !important;
        font-size:2.75rem !important;
    }
}

/* =========================================================
   ONLY EVENTS - ICON COLOR METAL BRONZE CHIARO
   Override finale icone home, archivi, card e sezioni
========================================================= */

.oe-home-pilastro__eyebrow i,
.oe-archivio-eyebrow i,
.oe-home-seo__eyebrow i,
.oe-home-card__eyebrow i,
.oe-home-card-mini__meta i,
.oe-archivio-card-mini__meta i,
.oe-ads-card__meta i,
.oe-archivio-card__meta-item i,
.oe-archivio-chip i,
.oe-home-card-mini__micro-item i,
.oe-archivio-card__badge i{
    color:#c89b5f !important;
}

.oe-home-card-mini--placeholder .oe-home-card-mini__media--placeholder-location,
.oe-home-card-mini--placeholder .oe-home-card-mini__media--placeholder-location i{
    color:#c89b5f !important;
}

.oe-home-card-mini__micro-item--premium i,
.oe-archivio-card__badge--premium i{
    color:#c89b5f !important;
}

/* =========================================================
   ONLY EVENTS - CTA FINALE CAROSELLI HOME
   Card finale: Scopri altre Location / Scopri altri professionisti
========================================================= */

.oe-home-card-mini--cta-ricerca{
    display:grid !important;
    grid-template-columns:1fr !important;
    place-items:center !important;
    min-height:360px;
    padding:28px !important;
    text-decoration:none;
    color:inherit;
    border-style:solid !important;
    border-color:rgba(201,150,85,.26) !important;
    background:
        radial-gradient(circle at 0% 100%, rgba(201,150,85,.20), transparent 36%),
        radial-gradient(circle at 100% 0%, rgba(20,39,69,.08), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.74), rgba(255,250,245,.58)) !important;
    box-shadow:
        0 22px 58px rgba(91,64,26,.115),
        inset 0 1px 0 rgba(255,255,255,.62) !important;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    cursor:pointer;
}

.oe-home-card-mini--cta-ricerca:hover{
    transform:translateY(-3px);
    border-color:rgba(201,150,85,.38) !important;
    box-shadow:
        0 28px 68px rgba(91,64,26,.16),
        inset 0 1px 0 rgba(255,255,255,.70) !important;
}

.oe-home-card-mini--cta-ricerca .oe-home-card-mini__body{
    width:100%;
    min-height:100%;
    display:grid;
    place-items:center;
    align-content:center;
    justify-items:center;
    gap:0;
    padding:0 !important;
    text-align:center;
    background:transparent !important;
    box-shadow:none !important;
}

.oe-home-card-mini--cta-ricerca .oe-home-card-mini__nome{
    max-width:520px;
    margin:0 auto;
    color:var(--blu);
    font-size:clamp(1.9rem, 3vw, 2.75rem);
    line-height:.96;
    letter-spacing:-.07em;
    font-weight:950;
    text-align:center;
}

.oe-home-card-mini--cta-ricerca::before{
    content:"";
    position:absolute;
    inset:18px;
    z-index:0;
    pointer-events:none;
    border-radius:24px;
    border:1px dashed rgba(201,150,85,.30);
}

.oe-home-card-mini--cta-ricerca::after{
    display:none !important;
}

.oe-home-card-mini--cta-ricerca > *{
    position:relative;
    z-index:2;
}

@media (max-width:767px){
    .oe-home-card-mini--cta-ricerca{
        min-height:230px;
        padding:22px !important;
    }

    .oe-home-card-mini--cta-ricerca .oe-home-card-mini__nome{
        font-size:1.85rem;
        line-height:1;
    }

    .oe-home-card-mini--cta-ricerca::before{
        inset:14px;
        border-radius:20px;
    }
}

/* =========================================================
   FIX ADS HOME - PILL DORATO "IN EVIDENZA VICINO A TE"
========================================================= */

.oe-home-pilastro--ads .oe-home-pilastro__head--ads{
    display:grid !important;
    justify-items:center !important;
    text-align:center !important;
    margin-bottom:18px !important;
    padding-left:26px !important;
    padding-right:26px !important;
}

.oe-home-pilastro--ads .oe-home-pilastro__eyebrow--ads{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:max-content !important;
    max-width:100% !important;
    min-height:34px !important;
    padding:0 15px !important;
    border-radius:999px !important;
    background:linear-gradient(135deg, var(--oro), var(--oro-2)) !important;
    color:#132743 !important;
    border:1px solid rgba(167,111,53,.28) !important;
    box-shadow:
        0 10px 22px rgba(167,111,53,.18),
        inset 0 1px 0 rgba(255,255,255,.46) !important;
    font-size:.72rem !important;
    font-weight:950 !important;
    letter-spacing:.09em !important;
    line-height:1 !important;
    text-transform:uppercase !important;
}

.oe-home-pilastro--ads .oe-home-pilastro__eyebrow--ads span{
    color:inherit !important;
}

@media (max-width:767px){
    .oe-home-pilastro--ads .oe-home-pilastro__head--ads{
        margin-bottom:14px !important;
        padding-left:18px !important;
        padding-right:18px !important;
    }

    .oe-home-pilastro--ads .oe-home-pilastro__eyebrow--ads{
        min-height:32px !important;
        padding:0 13px !important;
        font-size:.68rem !important;
        letter-spacing:.075em !important;
    }
}

/* =========================================================
   ARCHIVI - INTRO SEO H1
========================================================= */

.oe-archivio-seo-intro{
    text-align:center;
}

.oe-archivio-seo-intro .oe-archivio-box__head{
    align-items:center;
    text-align:center;
}

.oe-archivio-seo-intro__titolo{
    margin:0;
    color:var(--blu);
    font-size:clamp(1.85rem, 4vw, 3.15rem);
    line-height:1.04;
    font-weight:1000;
    letter-spacing:-.055em;
}

.oe-archivio-seo-intro__testo{
    width:min(100%, 820px);
    margin:12px auto 0;
    color:var(--testo-secondario);
    font-size:1.04rem;
    line-height:1.68;
    font-weight:750;
}

@media (max-width:760px){
    .oe-archivio-seo-intro__titolo{
        font-size:clamp(1.55rem, 8vw, 2.25rem);
        line-height:1.06;
        letter-spacing:-.045em;
    }

    .oe-archivio-seo-intro__testo{
        margin-top:10px;
        font-size:.94rem;
        line-height:1.55;
    }
}

/* =========================================================
   ONLY EVENTS - PALETTE PERLA & ORO
   Override finale pulsanti, icone, pill e dettagli premium
========================================================= */

:root{
    --oe-perla-1:#fffaf0;
    --oe-perla-2:#f6ead2;
    --oe-perla-3:#ead7aa;
    --oe-oro-perla-1:#fff7e6;
    --oe-oro-perla-2:#ead7aa;
    --oe-oro-perla-3:#c8a86a;
    --oe-oro-perla-4:#a9823e;
    --oe-blu-profondo:#142b52;
}

/* Pulsanti principali globali */
.bottone,
button.bottone,
a.bottone{
    -webkit-tap-highlight-color:transparent;
}

.bottone:not(.bottone--secondario){
    background:
        linear-gradient(180deg, rgba(255,255,255,.52) 0%, rgba(255,255,255,0) 38%),
        linear-gradient(180deg, var(--oe-oro-perla-1) 0%, var(--oe-oro-perla-2) 52%, var(--oe-oro-perla-3) 100%) !important;
    color:var(--oe-blu-profondo) !important;
    border:1px solid rgba(200,168,106,.42) !important;
    box-shadow:
        0 18px 38px rgba(200,168,106,.22),
        0 7px 16px rgba(18,39,86,.09),
        inset 0 2px 0 rgba(255,255,255,.76),
        inset 0 -4px 10px rgba(124,92,39,.14) !important;
}

.bottone:not(.bottone--secondario):hover{
    box-shadow:
        0 24px 48px rgba(200,168,106,.28),
        0 10px 22px rgba(18,39,86,.12),
        inset 0 2px 0 rgba(255,255,255,.82),
        inset 0 -4px 12px rgba(124,92,39,.17) !important;
}

/* Pulsanti secondari globali */
.bottone--secondario{
    background:
        linear-gradient(180deg, rgba(255,255,255,.88) 0%, rgba(255,250,242,.74) 100%) !important;
    color:var(--oe-blu-profondo) !important;
    border:1px solid rgba(200,168,106,.26) !important;
    box-shadow:
        0 14px 30px rgba(91,64,26,.075),
        inset 0 1px 0 rgba(255,255,255,.84) !important;
}

.bottone--secondario:hover{
    border-color:rgba(200,168,106,.38) !important;
    box-shadow:
        0 18px 38px rgba(91,64,26,.105),
        inset 0 1px 0 rgba(255,255,255,.90) !important;
}

/* Hero home: primo pulsante */
.oe-hero__azioni .bottone:first-child{
    background:
        linear-gradient(180deg, rgba(255,255,255,.52) 0%, rgba(255,255,255,0) 38%),
        linear-gradient(180deg, var(--oe-oro-perla-1) 0%, var(--oe-oro-perla-2) 52%, var(--oe-oro-perla-3) 100%) !important;
    color:var(--oe-blu-profondo) !important;
    border:1px solid rgba(200,168,106,.42) !important;
    box-shadow:
        0 18px 38px rgba(200,168,106,.22),
        0 7px 16px rgba(18,39,86,.09),
        inset 0 2px 0 rgba(255,255,255,.76),
        inset 0 -4px 10px rgba(124,92,39,.14) !important;
}

/* Pill pubblicità "In evidenza vicino a te" */
.oe-home-pilastro--ads .oe-home-pilastro__eyebrow--ads{
    background:
        linear-gradient(180deg, rgba(255,255,255,.50) 0%, rgba(255,255,255,0) 38%),
        linear-gradient(180deg, var(--oe-oro-perla-1) 0%, var(--oe-oro-perla-2) 52%, var(--oe-oro-perla-3) 100%) !important;
    color:var(--oe-blu-profondo) !important;
    border:1px solid rgba(200,168,106,.42) !important;
    box-shadow:
        0 12px 26px rgba(200,168,106,.20),
        inset 0 2px 0 rgba(255,255,255,.72),
        inset 0 -3px 8px rgba(124,92,39,.12) !important;
}

/* Paginazione attiva */
.oe-paginazione span.is-attiva{
    background:
        linear-gradient(180deg, rgba(255,255,255,.52) 0%, rgba(255,255,255,0) 38%),
        linear-gradient(180deg, var(--oe-oro-perla-1) 0%, var(--oe-oro-perla-2) 52%, var(--oe-oro-perla-3) 100%) !important;
    color:var(--oe-blu-profondo) !important;
    border-color:rgba(200,168,106,.42) !important;
    box-shadow:
        0 12px 24px rgba(200,168,106,.22),
        inset 0 1px 0 rgba(255,255,255,.72) !important;
}

/* Icone singole oro/perla */
.oe-home-pilastro__eyebrow i,
.oe-archivio-eyebrow i,
.oe-home-seo__eyebrow i,
.oe-home-card__eyebrow i,
.oe-home-card-mini__meta i,
.oe-archivio-card-mini__meta i,
.oe-ads-card__meta i,
.oe-archivio-card__meta-item i,
.oe-archivio-chip i,
.oe-home-card-mini__micro-item i,
.oe-archivio-card__badge i,
.oe-home-card-mini--placeholder .oe-home-card-mini__media--placeholder-location,
.oe-home-card-mini--placeholder .oe-home-card-mini__media--placeholder-location i,
.oe-home-card-mini__micro-item--premium i,
.oe-archivio-card__badge--premium i{
    color:var(--oe-oro-perla-4) !important;
}

/* Box icone quadrate già presenti in index */
.oe-home-card__icona,
.oe-home-card-mini__media--placeholder,
.oe-archivio-card-mini__media--placeholder{
    background:
        radial-gradient(circle at 24% 14%, rgba(255,255,255,.78) 0%, rgba(255,255,255,0) 34%),
        linear-gradient(180deg, var(--oe-oro-perla-1) 0%, var(--oe-oro-perla-2) 54%, var(--oe-oro-perla-3) 100%) !important;
    color:var(--oe-blu-profondo) !important;
    border:1px solid rgba(200,168,106,.36) !important;
    box-shadow:
        0 18px 34px rgba(200,168,106,.22),
        0 8px 18px rgba(18,39,86,.08),
        inset 0 2px 0 rgba(255,255,255,.76),
        inset 0 -4px 10px rgba(124,92,39,.12) !important;
}

/* Badge premium */
.oe-home-card-mini__micro-item--premium,
.oe-archivio-card__badge--premium{
    background:
        linear-gradient(180deg, rgba(255,255,255,.58) 0%, rgba(255,255,255,0) 38%),
        linear-gradient(180deg, rgba(255,247,230,.92) 0%, rgba(234,215,170,.72) 100%) !important;
    color:var(--oe-blu-profondo) !important;
    border-color:rgba(200,168,106,.36) !important;
    box-shadow:
        0 10px 22px rgba(200,168,106,.12),
        inset 0 1px 0 rgba(255,255,255,.72) !important;
}

/* Chip, tag, pill e micro elementi */
.oe-home-card-mini__spec,
.oe-archivio-spec,
.oe-home-card-mini__micro-item,
.oe-archivio-chip,
.oe-home-pilastro__eyebrow,
.oe-archivio-eyebrow,
.oe-home-seo__eyebrow,
.oe-home-card__eyebrow{
    background:
        linear-gradient(180deg, rgba(255,255,255,.76) 0%, rgba(255,250,242,.58) 100%) !important;
    border-color:rgba(200,168,106,.22) !important;
    color:var(--oe-blu-profondo) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.74),
        0 8px 18px rgba(91,64,26,.045) !important;
}

/* Ads box più coerente Perla & Oro */
.oe-home-pilastro--ads{
    border-color:rgba(200,168,106,.24) !important;
    background:
        radial-gradient(circle at 100% 0%, rgba(255,255,255,.56), transparent 32%),
        radial-gradient(circle at 0% 100%, rgba(234,215,170,.26), transparent 38%),
        linear-gradient(135deg, rgba(255,250,240,.82), rgba(246,234,210,.62)) !important;
    box-shadow:
        0 20px 50px rgba(91,64,26,.09),
        0 0 0 1px rgba(200,168,106,.08),
        inset 0 1px 0 rgba(255,255,255,.84) !important;
}

.oe-home-pilastro--ads::before{
    background:
        radial-gradient(circle at 20% 30%, rgba(200,168,106,.10) 0%, transparent 40%),
        linear-gradient(120deg, transparent 0 38%, rgba(255,255,255,.24) 38.2% 42%, transparent 42.2% 100%) !important;
}

/* CTA finale caroselli */
.oe-home-card-mini--cta-ricerca{
    border-color:rgba(200,168,106,.26) !important;
    background:
        radial-gradient(circle at 0% 100%, rgba(234,215,170,.28), transparent 36%),
        radial-gradient(circle at 100% 0%, rgba(20,39,69,.06), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.76), rgba(255,250,245,.60)) !important;
}

.oe-home-card-mini--cta-ricerca::before{
    border-color:rgba(200,168,106,.34) !important;
}

.oe-home-card-mini--cta-ricerca:hover{
    border-color:rgba(200,168,106,.40) !important;
}

/* Card e box: riflesso perla leggermente più coerente */
.oe-home-card,
.oe-home-seo .carta,
.oe-home-pilastro,
.oe-archivio-box,
.oe-archivio-hero{
    background:
        radial-gradient(circle at 0% 100%, rgba(255,255,255,.46), transparent 38%),
        radial-gradient(circle at 100% 0%, rgba(234,215,170,.14), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.68), rgba(255,250,245,.52)) !important;
    border-color:rgba(20,39,69,.078) !important;
}

/* Card caroselli e risultati */
.oe-home-card-mini,
.oe-archivio-card-mini,
.oe-ads-card,
.oe-archivio-card{
    border-color:rgba(20,39,69,.078) !important;
    box-shadow:
        0 22px 58px rgba(91,64,26,.105),
        inset 0 1px 0 rgba(255,255,255,.62) !important;
}

/* Mobile: mantiene tutto morbido e leggibile */
@media (max-width:767px){
    .bottone:not(.bottone--secondario),
    .oe-hero__azioni .bottone:first-child{
        box-shadow:
            0 14px 30px rgba(200,168,106,.20),
            0 6px 14px rgba(18,39,86,.08),
            inset 0 2px 0 rgba(255,255,255,.76),
            inset 0 -4px 10px rgba(124,92,39,.13) !important;
    }

    .oe-home-card__icona,
    .oe-home-card-mini__media--placeholder,
    .oe-archivio-card-mini__media--placeholder{
        box-shadow:
            0 14px 28px rgba(200,168,106,.20),
            0 6px 14px rgba(18,39,86,.07),
            inset 0 2px 0 rgba(255,255,255,.76),
            inset 0 -4px 10px rgba(124,92,39,.11) !important;
    }
}

/* =========================================================
   ONLY EVENTS - HOME PROFILI 1:1
   Override finale Blue Horizon

   Agisce SOLO su:
   - Nuove location
   - Nuovi Event Artist

   NON modifica:
   - card archivio
   - risultati ricerca
   - card pubblicitarie
   - logica caroselli
========================================================= */

/* =========================================================
   CONTENITORE SEZIONI HOME
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads){
    border-color:rgba(47,111,149,.10) !important;

    background:
        radial-gradient(
            circle at 8% 0%,
            rgba(255,255,255,.96) 0%,
            rgba(255,255,255,0) 32%
        ),
        radial-gradient(
            circle at 94% 100%,
            rgba(159,192,211,.10) 0%,
            rgba(159,192,211,0) 34%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #f5f9fb 100%
        ) !important;

    box-shadow:
        0 16px 40px rgba(41,69,88,.065),
        inset 0 1px 0 rgba(255,255,255,.96) !important;
}

/* Elimina il vecchio riflesso champagne
   solo dalle sezioni profili della Home */
.oe-home-pilastro:not(.oe-home-pilastro--ads)::after{
    background:
        radial-gradient(
            circle at 92% 0%,
            rgba(159,192,211,.08),
            transparent 34%
        ) !important;

    opacity:1;
}

/* =========================================================
   TESTATA
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-pilastro__head{
    margin-bottom:14px;

    text-align:center;

    justify-items:center;
}

/* Pill titolo */
.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-pilastro__eyebrow{
    min-height:32px;

    padding:0 13px;

    border:
        1px solid rgba(47,111,149,.13) !important;

    background:
        linear-gradient(
            180deg,
            #f3f8fb 0%,
            #e7f1f6 100%
        ) !important;

    color:#245a78 !important;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.92) !important;

    font-size:.68rem;

    letter-spacing:.09em;

    text-align:center;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-pilastro__eyebrow i{
    color:#2f6f95 !important;
}

/* =========================================================
   CAROSELLO HOME
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-carousel__viewport{
    padding-top:4px;

    padding-bottom:10px;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-carousel__track{
    gap:12px;

    padding-left:22px;
    padding-right:22px;
}

/* =========================================================
   CARD PROFILO HOME
   IMPORTANTE:
   escludiamo placeholder e CTA finale
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca){
    position:relative;

    flex:0 0 222px !important;

    width:222px !important;

    min-height:0 !important;

    display:flex !important;

    flex-direction:column;

    grid-template-columns:1fr !important;

    align-items:stretch;

    overflow:hidden;

    padding:0;

    border-radius:20px;

    border:
        1px solid rgba(47,111,149,.11) !important;

    background:#ffffff !important;

    box-shadow:
        0 10px 24px rgba(41,69,88,.065),
        inset 0 1px 0 rgba(255,255,255,.96) !important;

    backdrop-filter:none;
    -webkit-backdrop-filter:none;

    transform:translateZ(0);

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

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca):hover{
    transform:translateY(-3px);

    border-color:
        rgba(47,111,149,.23) !important;

    box-shadow:
        0 15px 32px rgba(41,69,88,.10),
        inset 0 1px 0 rgba(255,255,255,.98) !important;
}

/* =========================================================
   FOTO PROFILO
   1:1 REALE
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca)
.oe-home-card-mini__media{
    position:relative;

    flex:0 0 auto;

    width:100% !important;

    height:auto !important;

    min-height:0 !important;

    aspect-ratio:1 / 1 !important;

    overflow:hidden;

    border-radius:0;

    background:
        linear-gradient(
            135deg,
            #e5edf2 0%,
            #f0f5f8 100%
        );

    box-shadow:none;
}

/*
 * La foto viene visualizzata nel quadrato.
 *
 * cover evita deformazioni.
 * Dal momento che la foto profilo viene caricata
 * dal sito già pensando a un formato quadrato,
 * il contenitore non la forza più nel vecchio 16:10.
 */
.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca)
.oe-home-card-mini__media img{
    display:block;

    width:100% !important;
    height:100% !important;

    min-width:100%;
    min-height:100%;

    object-fit:cover !important;

    object-position:center center !important;

    transform:scale(1.001);

    filter:
        saturate(1.02)
        contrast(1.01);

    transition:
        transform .38s ease;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca):hover
.oe-home-card-mini__media img{
    transform:scale(1.025);
}

/* =========================================================
   CORPO CARD
   TUTTO CENTRATO
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca)
.oe-home-card-mini__body{
    position:relative;

    flex:1 1 auto;

    width:100%;

    min-width:0;

    display:grid;

    justify-items:center;

    align-content:start;

    gap:7px;

    padding:12px 11px 13px;

    text-align:center;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(159,192,211,.08),
            transparent 34%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f8fbfc 100%
        ) !important;

    box-shadow:none !important;
}

/* =========================================================
   NOME
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini__nome{
    width:100%;

    max-width:100%;

    margin:0 auto;

    color:#1b2733;

    font-size:1.02rem;

    line-height:1.10;

    letter-spacing:-.025em;

    font-weight:950;

    text-align:center;

    overflow-wrap:anywhere;

    text-shadow:none;
}

/* =========================================================
   LOCALITÀ
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini__meta{
    width:100%;

    max-width:100%;

    display:flex;

    align-items:center;
    justify-content:center;

    gap:5px;

    margin:0;

    color:#687786;

    font-size:.76rem;

    line-height:1.30;

    font-weight:800;

    text-align:center;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini__meta i{
    flex:0 0 auto;

    color:#2f6f95 !important;

    font-size:.72rem;

    margin:0;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini__meta span{
    min-width:0;

    display:block;

    text-align:center;

    overflow:hidden;

    text-overflow:ellipsis;

    white-space:nowrap;
}

/* =========================================================
   SPECIALIZZAZIONI
========================================================= */

@media (min-width:768px){

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__specs{
        display:flex;

        width:100%;

        max-width:100%;

        flex-wrap:wrap;

        align-items:center;
        justify-content:center;

        gap:5px;

        margin-top:1px;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__spec{
        min-height:24px;

        padding:0 8px;

        border-radius:999px;

        border:
            1px solid rgba(47,111,149,.10) !important;

        background:
            #eaf3f8 !important;

        color:
            #245a78 !important;

        box-shadow:none !important;

        font-size:.62rem;

        line-height:1;

        font-weight:900;

        text-align:center;

        white-space:nowrap;
    }

    /* =====================================================
       MICRO INFO
    ===================================================== */

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__micro{
        display:flex;

        width:100%;

        max-width:100%;

        flex-wrap:wrap;

        align-items:center;
        justify-content:center;

        gap:5px;

        margin-top:1px;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__micro-item{
        min-height:24px;

        padding:0 8px;

        gap:4px;

        border-radius:999px;

        border:
            1px solid rgba(47,111,149,.09) !important;

        background:
            #f4f7fa !important;

        color:
            #687786 !important;

        box-shadow:none !important;

        font-size:.62rem;

        line-height:1;

        font-weight:900;

        white-space:nowrap;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__micro-item i{
        color:#5b8da9 !important;

        font-size:.62rem;
    }

    /* =====================================================
       PREMIUM
       REAL GOLD RISERVATO AL PREMIUM
    ===================================================== */

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__micro-item--premium{
        position:relative;

        overflow:hidden;

        border:
            1px solid rgba(169,111,53,.30) !important;

        background:
            linear-gradient(
                115deg,
                #fff6dc 0%,
                #e5bc79 24%,
                #fff0bf 44%,
                #c99655 64%,
                #f3d79e 82%,
                #fff6dc 100%
            ) !important;

        background-size:220% 100% !important;

        color:
            #6d471d !important;

        box-shadow:
            0 5px 12px rgba(169,111,53,.14),
            inset 0 1px 0 rgba(255,255,255,.62) !important;

        font-weight:950;

        animation:
            oeHomePremiumRealGold
            5.5s
            ease-in-out
            infinite;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__micro-item--premium i{
        color:#8a5927 !important;
    }
}

@keyframes oeHomePremiumRealGold{
    0%,
    100%{
        background-position:0% 50%;
    }

    50%{
        background-position:100% 50%;
    }
}

/* =========================================================
   PLACEHOLDER
   STESSA LARGHEZZA DELLE CARD
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini--placeholder{
    flex:0 0 222px !important;

    width:222px !important;

    min-height:316px !important;

    grid-template-columns:1fr !important;

    place-items:center;

    padding:18px !important;

    border-radius:20px;

    border:
        1px dashed rgba(47,111,149,.18) !important;

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(159,192,211,.12),
            transparent 38%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f4f8fa 100%
        ) !important;

    box-shadow:
        0 8px 20px rgba(41,69,88,.045),
        inset 0 1px 0 rgba(255,255,255,.96) !important;

    backdrop-filter:none;
    -webkit-backdrop-filter:none;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini--placeholder
.oe-home-card-mini__body{
    width:100%;

    display:grid;

    justify-items:center;

    align-content:center;

    gap:8px;

    padding:0 !important;

    background:transparent !important;

    text-align:center;
}

/* Event Artist placeholder */
.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini--placeholder
.oe-home-card-mini__media--placeholder:not(.oe-home-card-mini__media--placeholder-location){
    width:58px !important;

    height:58px !important;

    min-height:58px !important;

    aspect-ratio:1 / 1 !important;

    margin:0 auto 10px;

    border-radius:18px;

    border:
        1px solid rgba(47,111,149,.13) !important;

    background:
        linear-gradient(
            180deg,
            #edf5f9 0%,
            #dcebf2 100%
        ) !important;

    color:#2f6f95 !important;

    box-shadow:
        0 8px 18px rgba(47,111,149,.10),
        inset 0 1px 0 rgba(255,255,255,.96) !important;

    font-size:1.20rem;
}

/* Location placeholder esistente:
   mantiene la sua icona libera, ma la portiamo in blu */
.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini--placeholder
.oe-home-card-mini__media--placeholder-location,
.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini--placeholder
.oe-home-card-mini__media--placeholder-location i{
    color:#2f6f95 !important;
}

/* =========================================================
   CTA FINALE DEL CAROSELLO
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini--cta-ricerca{
    flex:0 0 222px !important;

    width:222px !important;

    min-height:316px !important;

    display:grid !important;

    grid-template-columns:1fr !important;

    place-items:center !important;

    padding:18px !important;

    border-radius:20px;

    border:
        1px solid rgba(47,111,149,.16) !important;

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(159,192,211,.16),
            transparent 42%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #edf5f9 100%
        ) !important;

    box-shadow:
        0 9px 22px rgba(41,69,88,.055),
        inset 0 1px 0 rgba(255,255,255,.98) !important;

    backdrop-filter:none;
    -webkit-backdrop-filter:none;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini--cta-ricerca::before{
    inset:12px;

    border-radius:15px;

    border:
        1px dashed rgba(47,111,149,.20) !important;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini--cta-ricerca:hover{
    border-color:
        rgba(47,111,149,.28) !important;

    box-shadow:
        0 14px 30px rgba(41,69,88,.09),
        inset 0 1px 0 rgba(255,255,255,.98) !important;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-card-mini--cta-ricerca
.oe-home-card-mini__nome{
    max-width:180px;

    color:#245a78;

    font-size:1.30rem;

    line-height:1.03;

    letter-spacing:-.045em;

    text-align:center;
}

/* =========================================================
   CTA SOTTO IL CAROSELLO
========================================================= */

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-pilastro__cta{
    margin-top:8px;

    text-align:center;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-pilastro__cta .bottone,
.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-pilastro__cta .bottone--secondario{
    min-width:240px;

    min-height:44px;

    border-radius:999px;

    border:
        1px solid rgba(47,111,149,.18) !important;

    background:
        linear-gradient(
            180deg,
            #3d7fa4 0%,
            #2f6f95 100%
        ) !important;

    color:#ffffff !important;

    box-shadow:
        0 9px 20px rgba(47,111,149,.17),
        inset 0 1px 0 rgba(255,255,255,.18) !important;
}

.oe-home-pilastro:not(.oe-home-pilastro--ads)
.oe-home-pilastro__cta .bottone:hover{
    transform:translateY(-1px);

    border-color:
        rgba(47,111,149,.25) !important;

    background:
        linear-gradient(
            180deg,
            #4385aa 0%,
            #286487 100%
        ) !important;

    box-shadow:
        0 12px 25px rgba(47,111,149,.22),
        inset 0 1px 0 rgba(255,255,255,.20) !important;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width:767px){

    /*
     * IMPORTANTE:
     * questa regola viene DOPO il vecchio:
     *
     * .oe-home-card-mini__media{
     *     aspect-ratio:16 / 10;
     * }
     *
     * quindi per la Home il vecchio 16:10
     * viene definitivamente annullato.
     */

    .oe-home-pilastri{
        padding:
            8px
            0
            26px;
    }

    .oe-home-pilastri__inner{
        padding:
            0
            0;

        gap:18px;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads){
        border-left:0 !important;
        border-right:0 !important;

        border-radius:0 !important;

        padding:
            18px
            0
            18px;

        box-shadow:
            0 8px 22px rgba(41,69,88,.045) !important;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-pilastro__head{
        padding-left:12px;
        padding-right:12px;

        margin-bottom:11px;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-pilastro__eyebrow{
        min-height:30px;

        padding:0 11px;

        font-size:.64rem;

        letter-spacing:.075em;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-carousel__track{
        gap:10px !important;

        padding-left:
            max(
                12px,
                env(safe-area-inset-left)
            ) !important;

        padding-right:
            max(
                12px,
                env(safe-area-inset-right)
            ) !important;
    }

    /* =====================================================
       CARD MOBILE
    ===================================================== */

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca){
        flex:0 0 188px !important;

        width:188px !important;

        min-height:0 !important;

        border-radius:18px;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca)
    .oe-home-card-mini__media{
        width:100% !important;

        height:auto !important;

        min-height:0 !important;

        aspect-ratio:1 / 1 !important;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca)
    .oe-home-card-mini__media img{
        width:100% !important;

        height:100% !important;

        object-fit:cover !important;

        object-position:center center !important;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca)
    .oe-home-card-mini__body{
        padding:
            10px
            9px
            11px;

        gap:6px;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__nome{
        font-size:.94rem;

        line-height:1.08;

        text-align:center;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__meta{
        gap:4px;

        font-size:.70rem;

        line-height:1.25;

        text-align:center;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__meta i{
        font-size:.66rem;
    }

    /* Manteniamo nascosti specializzazioni e micro
       su mobile come nel comportamento attuale */
    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__specs,
    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__micro{
        display:none !important;
    }

    /* Placeholder mobile */

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini--placeholder{
        flex:0 0 188px !important;

        width:188px !important;

        min-height:256px !important;

        padding:14px !important;

        border-radius:18px;
    }

    /* CTA finale mobile */

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini--cta-ricerca{
        flex:0 0 188px !important;

        width:188px !important;

        min-height:256px !important;

        padding:14px !important;

        border-radius:18px;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini--cta-ricerca::before{
        inset:10px;

        border-radius:14px;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini--cta-ricerca
    .oe-home-card-mini__nome{
        max-width:150px;

        font-size:1.12rem;

        line-height:1.04;
    }

    /* Pulsante finale */

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-pilastro__cta{
        padding-left:12px;
        padding-right:12px;

        margin-top:6px;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-pilastro__cta .bottone{
        width:min(100%, 320px);

        min-width:0;

        min-height:42px;

        font-size:.80rem;
    }
}

/* =========================================================
   MOBILE MOLTO PICCOLO
========================================================= */

@media (max-width:420px){

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini:not(.oe-home-card-mini--placeholder):not(.oe-home-card-mini--cta-ricerca),
    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini--placeholder,
    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini--cta-ricerca{
        flex-basis:176px !important;

        width:176px !important;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__nome{
        font-size:.90rem;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__meta{
        font-size:.67rem;
    }
}

/* =========================================================
   RIDUZIONE MOVIMENTI
========================================================= */

@media (prefers-reduced-motion:reduce){

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini,
    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__media img{
        transition:none !important;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini:hover{
        transform:none !important;
    }

    .oe-home-pilastro:not(.oe-home-pilastro--ads)
    .oe-home-card-mini__micro-item--premium{
        animation:none !important;

        background-position:50% 50% !important;
    }
}