/*
Theme Name: Vacanze in Bulgaria
Template: flatsome
Version: 3.0
*/

/* ============================================================
   VACANZE IN BULGARIA · CSS del child theme
   Indice:
     1.  Variabili, base, reset
     2.  Tipografia ed elementi comuni
     3.  Bottoni
     4.  Hero / didascalia slider (home e viaggio)
     5.  Prosa (globale) + due colonne + pills (+ filtro proposte)
     6.  Home · Esperienze
     7.  Home · Proposte
     8.  CTA finale
     9.  Pagina Viaggio (specifico)
     10. Breadcrumb
     11. Pagina interna (citazione + modulo)
     12. Responsive
   ============================================================ */


/* ============================================================
   1. VARIABILI, BASE, RESET
   ============================================================ */
:root, .vib-home{
  --rose:#a4123f;
  --rose-deep:#7d0c30;
  --gold:#c0892d;
  --gold-soft:#e7c485;
  --ink:#241712;
  --stone:#6f6259;
  --paper:#faf6f0;
  --paper-2:#f2ece3;
  --line:rgba(36,23,18,.12);

  font-family:'Mulish',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  color:var(--ink);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.vib-home *{box-sizing:border-box;}
.vib-home img{display:block;max-width:100%;height:auto;}
.vib-home a{color:inherit;}
.vib-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}


/* ============================================================
   2. TIPOGRAFIA ED ELEMENTI COMUNI
   ============================================================ */
.vib-eyebrow{
  display:inline-flex;align-items:center;gap:.65em;
  font-size:.74rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
  color:var(--rose);
}
.vib-eyebrow::before{content:"";width:26px;height:2px;background:var(--gold);}

.vib-head{text-align:center;max-width:720px;margin-inline:auto;}
.vib-head .vib-eyebrow::after{content:"";width:26px;height:2px;background:var(--gold);}

.vib-intro.full .vib-head,
.vib-intro.full .vib-lead{max-width: 100%;}

.vib-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-weight:600;font-size:clamp(2.1rem,4.7vw,3.4rem);line-height:1.05;
  margin:1rem 0 1.5rem;color:var(--ink);
}
.vib-title em{font-style:italic;font-weight:600;color:var(--rose);}

.vib-lead{margin:1.2rem auto 0;max-width:60ch;color:var(--stone);font-size:1.06rem;}

.vib-intro.full .vib-head,
.vib-intro.full .vib-lead{max-width: 100%;}

/* ============================================================
   3. BOTTONI
   ============================================================ */
.vib-btn{
  display:inline-flex;align-items:center;gap:.5em;
  font-family:'Mulish',sans-serif;font-weight:700;font-size:.92rem;letter-spacing:.02em;
  padding:.92em 1.75em;border-radius:3px;text-decoration:none;border:1px solid transparent;cursor:pointer;
  transition:transform .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.vib-btn--primary{background:var(--rose);color:#fff;/*box-shadow:0 12px 26px -14px rgba(164,18,63,.75);*/}
.vib-btn--primary:hover{background:var(--rose-deep);transform:translateY(-2px);}
.vib-btn--ghost{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.6);backdrop-filter:blur(2px);}
.vib-btn--ghost:hover{background:rgba(255,255,255,.16);border-color:#fff;}
.vib-btn--outline{background:transparent;color:var(--rose);border-color:var(--rose);}
.vib-btn--outline:hover{background:var(--rose);color:#fff;}
.vib-btn--small{padding:.62em 1.2em;font-size:.84rem;}
a.vib-btn:focus-visible,button.vib-btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px;}


/* ============================================================
   4. HERO / DIDASCALIA SLIDER (home e viaggio)
   ============================================================ */
.vib-vslide .text-box{max-width:none;}

.vib-hero__eyebrow{color:var(--gold-soft);letter-spacing:.22em;}
.vib-hero__eyebrow::before{background:var(--gold-soft);}
.vib-hero__title{
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;
  font-size:clamp(2.9rem,7vw,5.4rem);line-height:1.0;margin:.6rem 0 0;
  /*max-width:16ch;*/
  text-shadow:0 2px 34px rgba(0,0,0,.4);
}
.vib-hero__title em{font-style:italic;font-weight:500;color:var(--gold-soft);}
.vib-hero__sub{margin:1.1rem 0 0;font-size:clamp(1.05rem,2vw,1.32rem);color:rgba(255,255,255,.92);max-width:38ch;}
.vib-hero__actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.9rem;}

.flickity-page-dots{opacity: 0.8;pointer-events: inherit;left:5%;right:5%;}
.slider-nav-light .flickity-page-dots .dot.is-selected, .slider-nav-light.slider-nav-dots-simple .flickity-page-dots .dot
{
  background-color: var(--rose-deep);
  border-color: var(--rose-deep);
}
/* ============================================================
   5. PROSA (globale) + DUE COLONNE + PILLS (+ FILTRO PROPOSTE)
   ============================================================ */
.vib-prose{color:var(--ink);font-size:1rem;line-height:1.75;}
.vib-prose > :first-child{margin-top:0;}
.vib-prose h2,
.vib-prose h3{
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;color:var(--ink);
  line-height:1.15;margin:1.7rem 0 .4rem;
}


.vib-prose h3,.vib-prose h4{font-size:1.55rem;}
/*.vib-prose h4{font-size:1.2rem;}*/
.vib-prose p{margin:0 0 .95rem;}
.vib-prose strong{color:var(--ink);}
.vib-prose a{color:var(--rose);text-decoration:underline;text-underline-offset:2px;}
.vib-prose ul{list-style:none;margin:.6rem 0;padding:0;}
.vib-prose ul li{position:relative;padding-left:1.5em;margin:.4em 0;line-height:1.55;}
.vib-prose ul li::before{
  content:"";position:absolute;left:0;top:.6em;
  width:7px;height:7px;background:var(--rose);transform:rotate(45deg);
}

/* modificatore: elenco su due colonne */
.vib-cols-2 ul{column-count:2;column-gap:48px;margin-inline:auto;}
.vib-cols-2 ul li{break-inside:avoid;}

/* pills riassuntive — CONDIVISE con i bottoni del filtro proposte */
.vib-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.4rem 0;}
.vib-pill,
.vib-viaggi .vib-filter a{display:inline-flex;align-items:center;font-size:.82rem;font-weight:600;color:var(--rose-deep);background:#fff;border:1px solid rgba(164,18,63,.25);padding:.45em .9em;border-radius:999px;}
.vib-pill strong{font-weight:800;color:var(--rose);}
.vib-pills--solid .vib-pill,
.vib-viaggi .vib-filter li.active a{background:var(--rose-deep);border-color:var(--rose-deep);color:#fff;}
.vib-pills--solid .vib-pill strong{color:var(--gold-soft);}


/* ============================================================
   6. HOME · ESPERIENZE (ux_banner)
   ============================================================ */
   .banner{background-color: transparent;  }
.vib-exp{position:relative;border-radius:6px;overflow:hidden;}
.vib-exp .text-box{pointer-events:none;}
.vib-exp .banner-link{pointer-events:auto;}
.vib-exp .text-box a{pointer-events:auto;}

/*.vib-exp::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(180deg,rgba(28,14,20,0) 32%,rgba(28,14,20,.85) 100%);}
  */
.vib-exp .overlay{background:transparent!important;}
.vib-exp .text-box{position:absolute!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;
  transform:none!important;width:auto!important;max-width:none!important;text-align:left!important;
  padding:clamp(16px,2vw,24px)!important;
  /*z-index:3;*/
  background: linear-gradient(180deg, rgb(28 14 20 / 6%) 32%, rgb(28 14 20 / 81%) 100%);
}
.vib-exp__title{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600!important;font-size:clamp(2rem,2vw,2.2rem)!important;line-height:1.1!important;color:#fff!important;margin:0;}
.vib-exp__text{margin-top:.25rem;font-size:.92rem;color:#fff;}
.vib-exp__more{margin-top:.55rem;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-soft);opacity:1;
  transform:translateY(6px);
  transition:opacity .35s ease,transform .35s ease;
  
}
.vib-exp__more::after{content:" \2192";}
.vib-exp:hover{cursor:pointer;}
/*.vib-exp:hover .vib-exp__more{opacity:1;transform:none;}*/


/* ============================================================
   7. HOME · PROPOSTE
   ============================================================ */
.vib-deals-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2vw,24px);margin-top:clamp(38px,5vw,60px);}
.vib-deal{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;}
.vib-deal::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;z-index:3;background:var(--rose);transform:scaleX(0);transform-origin:left;transition:transform .35s ease;}
.vib-deal:hover{transform:translateY(-4px);box-shadow:0 24px 44px -28px rgba(36,23,18,.5);}
.vib-deal:hover::after{transform:scaleX(1);}
.vib-deal__media{position:relative;aspect-ratio:3/2;overflow:hidden;background:#cdbfb4;}
.vib-deal__bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .6s ease;}
.vib-deal:hover .vib-deal__bg{transform:scale(1.06);}
.vib-deal__badge{position:absolute;top:12px;left:12px;z-index:2;background:var(--rose);color:#fff;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.42em .72em;border-radius:3px;}
.vib-deal__body{display:flex;flex-direction:column;flex:1;padding:clamp(18px,1.6vw,22px);}
.vib-deal__kicker{font-size:.71rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--rose);}
.vib-deal__title{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:1.6rem;line-height:1.1;margin:.3rem 0 0;}
.vib-deal__desc{margin:.55rem 0 0;font-size:.91rem;color:var(--stone);}
.vib-deal__meta{align-items: center;list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem;}
.vib-deal__meta li{margin-left:0px!important;font-size:.73rem;font-weight:700;}
.vib-deal__foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:auto;padding-top:1.2rem;}
.vib-deal__price{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.55rem;font-weight:600;color:var(--rose);white-space:nowrap;}
.vib-deal__price em{font-style:normal;font-family:'Mulish',sans-serif;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--stone);margin-right:.3em;}


/* ============================================================
   7-bis. PROPOSTE · shortcode [vib_viaggi]
   Card = [col].vib-card con [ux_image_box]. Struttura reale:
   .col-inner > .box > .box-image + .box-text > .box-text-inner
   I bottoni del filtro ereditano l'aspetto da .vib-pill (sezione 5);
   qui resta solo il layout della barra.
   ============================================================ */

/* --- barra dei filtri (solo layout, l'aspetto e' dei pill) --- */
.vib-viaggi .vib-filter{
  list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;
  /*margin:0 0 clamp(28px,4vw,48px);*/
  margin:0 0 30px;
  padding:0;
}
.vib-viaggi .vib-filter li{margin:0;}
.vib-viaggi .vib-filter a{cursor:pointer;text-decoration:none;transition:color .2s ease,border-color .2s ease,background .2s ease;}
.vib-viaggi .vib-filter a:hover{border-color:var(--rose);color:var(--rose);}

/* --- catena flessibile dalla colonna fino al testo --- */
.vib-card{display:flex;/*margin-bottom:clamp(16px,2vw,24px);*/}
.vib-card .col-inner{
  position:relative;display:flex;flex-direction:column;flex:1;width:100%;
  background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden;
  transition:transform .3s ease,box-shadow .3s ease;
}
.vib-card .col-inner > .box{
  display:flex;flex-direction:column;flex:1;margin:0;
}
/* --- testo della card su griglia a righe condivise --- */
.vib-card .box-text{
  flex:1;
  display:grid !important;
  grid-template-rows:auto auto auto 1fr auto;
  padding:clamp(18px,1.6vw,22px) !important;
  text-align:left !important;
}
.vib-card .box-text-inner{
  display:contents;
}

/* --- linea rossa in alto + hover --- */
.vib-card .col-inner::after{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;z-index:3;
  background:var(--rose);transform:scaleX(0);transform-origin:left;transition:transform .35s ease;
}
.vib-card:hover .col-inner{transform:translateY(-4px);box-shadow:0 24px 44px -28px rgba(36,23,18,.5);}
.vib-card:hover .col-inner::after{transform:scaleX(1);}

/* --- immagine: altezza fissa, copertura --- */
.vib-card .box-image{margin:0 !important;}
.vib-card .box-image img{display:block;width:100%;height:220px;object-fit:cover;}

/* --- footer sempre in fondo --- */
.vib-card .vib-deal__foot{margin-top:0;padding-top:1.2rem;}

/* --- stato nascosto per il filtro --- */
.vib-card.is-hidden{display:none !important;}


/* ============================================================
   8. CTA FINALE
   ============================================================ */
.vib-cta{position:relative;background:var(--rose-deep);color:#fff;text-align:center;overflow:hidden;border-top:1px solid rgba(231,196,133,.25);}
.vib-cta__mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:0;font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(7rem,22vw,17rem);line-height:1;color:rgba(255,255,255,.06);white-space:nowrap;pointer-events:none;user-select:none;}
.vib-cta .row{position:relative;z-index:2;}
.vib-cta__eyebrow{justify-content:center;color:var(--gold-soft);}
.vib-cta__eyebrow::before,.vib-cta__eyebrow::after{content:"";width:26px;height:2px;background:var(--gold-soft);}
.vib-cta__eyebrow::after{display:inline-block;}
.vib-cta__title{color:white;font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(2.1rem,4.6vw,3.2rem);line-height:1.08;margin:1rem 0 0;}
.vib-cta__title em{font-style:italic;color:var(--gold-soft);}
.vib-cta__text{margin:.9rem auto 1.9rem;max-width:540px;color:rgba(255,255,255,.85);}
.vib-cta .vib-btn--primary{background:#fff;color:var(--rose-deep);box-shadow:0 14px 30px -16px rgba(0,0,0,.5);}
.vib-cta .vib-btn--primary:hover{background:var(--gold-soft);color:var(--ink);}

/* CTA · variante chiara su fondo carta */
.vib-cta--light{background:var(--paper);color:var(--ink);border-top:1px solid var(--line);}
.vib-cta--light .vib-cta__mark{color:rgba(164,18,63,.06);}
.vib-cta--light .vib-cta__eyebrow{color:var(--rose);}
.vib-cta--light .vib-cta__eyebrow::before,
.vib-cta--light .vib-cta__eyebrow::after{background:var(--gold);}
.vib-cta--light .vib-cta__title{color:var(--ink);}
.vib-cta--light .vib-cta__title em{color:var(--rose);}
.vib-cta--light .vib-cta__text{color:var(--stone);}
.vib-cta--light .vib-btn--primary{background:var(--rose);color:#fff;box-shadow:0 12px 26px -14px rgba(164,18,63,.75);}
.vib-cta--light .vib-btn--primary:hover{background:var(--rose-deep);color:#fff;}

/* ============================================================
   9. PAGINA VIAGGIO (specifico)
   ============================================================ */
.vib-viaggio{overflow-x:hidden;}
.vib-viaggio .vib-head--left{text-align:left;margin-inline:0;max-width:none;}
.vib-viaggio .vib-head--left .vib-eyebrow::after{display:none;}

.vib-viaggio .vib-prose p{margin:0 0 2rem;line-height:1.5em;font-size:1.15em;}
.vib-viaggio .vib-programma{padding-bottom: 0px!important;}
.vib-viaggio .vib-programma h3/*,
.vib-viaggio .vib-programma h4*/{
  display:block;padding-left:.85rem;border-left:3px solid var(--rose);
  font-size:1.95rem;font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;
  margin-bottom: 15px;
}

.vib-viaggio .vib-facts{background:#fff;border:1px solid var(--line);border-radius:9px;padding:clamp(20px,2vw,28px);box-shadow:0 18px 40px -30px rgba(36,23,18,.4);}
.vib-viaggio .vib-facts__h{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:1.5rem;margin:0 0 .7rem;color:var(--ink);}

.vib-viaggio .gallery-col .box-image{border-radius:6px;overflow:hidden;}
.vib-viaggio .gallery-col img{width:100%;height:220px;object-fit:cover;}

.vib-viaggio .vib-inout{background:#fff;border:1px solid var(--line);border-radius:9px;padding:clamp(20px,2vw,28px);height:100%;}
.vib-viaggio .vib-inout__h{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:1.5rem;margin:0 0 .8rem;display:flex;align-items:center;gap:.5em;}
.vib-viaggio .vib-inout--yes .vib-inout__h::before{content:"\2713";color:#3f7a6b;font-size:.85em;font-weight:800;}
.vib-viaggio .vib-inout--no .vib-inout__h{color:var(--stone);}
.vib-viaggio .vib-inout--no .vib-inout__h::before{content:"\2715";color:#c0392b;font-size:.8em;font-weight:800;}
.vib-viaggio .vib-inout--no .vib-prose ul li::before{background:var(--stone);}

.vib-viaggio .vib-map{position:relative;border-radius:9px;overflow:hidden;border:1px solid var(--line);margin-top:1.5rem;}
.vib-viaggio .vib-map iframe{display:block;width:100%;min-height:440px;border:0;}

.vib-viaggio .vib-related .box-text .name a,
.vib-viaggio .vib-related .box-text h5 a{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:1.25rem;color:var(--ink);}
.vib-viaggio .vib-related .box-image{border-radius:6px;overflow:hidden;}


/* ============================================================
   10. BREADCRUMB
   ============================================================ */
.vib-breadcrumb{background:var(--paper)!important;border-bottom:1px solid var(--line);}
.vib-breadcrumb .section-content{padding-top:0;padding-bottom:0;}
.vib-breadcrumb #breadcrumbs{font-family:'Mulish',sans-serif;font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;}
.vib-breadcrumb #breadcrumbs a{color:var(--stone);text-decoration:none;transition:color .2s ease;}
.vib-breadcrumb #breadcrumbs a:hover{color:var(--rose);}
.vib-breadcrumb #breadcrumbs .divider{color:var(--gold);margin:0 .2em;}
.vib-breadcrumb #breadcrumbs .breadcrumb_last{color:var(--rose);font-weight:800;}


/* ============================================================
   11. PAGINA INTERNA (citazione + modulo)
   ============================================================ */
.vib-pullquote{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:500;
  font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.3;color:var(--ink);max-width:42ch;margin:0 auto;
  text-align:center;padding-top:1.6rem;}
.vib-pullquote::before{content:"";display:block;width:64px;height:2px;background:var(--gold);margin:0 auto 1.6rem;}

.vib-form{background:#fff;border:1px solid var(--line);border-radius:10px;padding:clamp(24px,3vw,40px);box-shadow:0 24px 50px -34px rgba(36,23,18,.45);max-width:720px;margin:0 auto;}

.vib-form label{display:block;font-weight:700;font-size:.85rem;color:var(--ink);margin:1.1rem 0 .35rem;}
.vib-form input[type=text],.vib-form input[type=email],.vib-form input[type=tel],
.vib-form textarea,.vib-form select{width:100%;border:1px solid var(--line);border-radius:6px;padding:.75em .9em;font-size:1rem;font-family:inherit;color:var(--ink);background:#fff;transition:border-color .6s ease,box-shadow .6s ease;}
.vib-form input:focus,.vib-form textarea:focus,.vib-form select:focus{outline:none;border-color:var(--rose);box-shadow:0 0 0 3px rgba(164,18,63,.12);}
.vib-form textarea{min-height:150px;resize:vertical;}
.vib-form .wpcf7-acceptance{display:block;margin:.5rem 0;}
.vib-form .wpcf7-acceptance .wpcf7-list-item{margin:0;}
.vib-form .wpcf7-acceptance label{font-weight:500;font-size:.92rem;color:var(--stone);display:inline-flex;gap:.55em;align-items:flex-start;margin:.2rem 0;}
/*.vib-form input[type=submit]{appearance:none;-webkit-appearance:none;border:0;cursor:pointer;background:var(--rose);color:#fff;font-weight:700;letter-spacing:.02em;padding:.9em 2.1em;border-radius:3px;font-size:.95rem;margin-top:1.5rem;transition:background .25s ease,transform .25s ease;box-shadow:0 12px 26px -14px rgba(164,18,63,.75);}
.vib-form input[type=submit]:hover{background:var(--rose-deep);transform:translateY(-2px);}
*/
.vib-form .wpcf7-submit,
.vib-footer .wpcf7-submit{
  display:inline-flex;align-items:center;gap:.5em;
  font-family:'Mulish',sans-serif;font-weight:700;font-size:.92rem;letter-spacing:.02em;
  padding:.92em 1.75em;border:1px solid transparent;border-radius:3px;cursor:pointer;
  background:var(--rose);color:#fff;
  transition:background .25s ease,transform .25s ease;
  padding-block: 7.65px;
  margin: 0px;
}
.vib-form .wpcf7-submit:hover,
.vib-footer .wpcf7-submit:hover{background:var(--rose-deep);transform:translateY(-2px);}

/* ============================================================
   12. RESPONSIVE
   ============================================================ */
@media (max-width:980px){
  .vib-deals-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:680px){
  .vib-cols-2 ul{column-count:1;}
}
@media (max-width:560px){
  .vib-deals-grid{grid-template-columns:1fr;}
  .vib-hero__actions{flex-direction:column;align-items:stretch;}
  .vib-hero__actions .vib-btn{width:100%;justify-content:center;}
  .vib-head{max-width: 320px;}
  .vib-form{width:300px;}
}
@media (max-width:549px){
  .vib-exp{height:200px!important;min-height:200px!important;}
}
@media (prefers-reduced-motion:reduce){
  .vib-home *{transition:none!important;animation:none!important;}
}


/* ============================================================
   PAGINA CONTENUTO GENERICA · aggiunte (es. Chi siamo)
   ============================================================ */
.vib-article{margin-inline:auto;}

.vib-highlight{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:1.35rem;line-height:1.4;color:var(--rose-deep);border-left:3px solid var(--gold);padding-left:1rem;margin:1.6rem 0;}

.vib-timeline{list-style:none;margin:1.6rem auto 0;padding:0;max-width:680px;}
.vib-timeline li{position:relative;padding:0 0 1.5rem 1.9rem;border-left:2px solid var(--line);}
.vib-timeline li:last-child{border-left-color:transparent;padding-bottom:0;}
.vib-timeline li::before{content:"";position:absolute;left:-8px;top:.15em;width:14px;height:14px;border-radius:50%;background:var(--rose);}
.vib-timeline .yr{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;color:var(--rose);font-size:1.2rem;line-height:1.2;}
.vib-timeline .ev{display:block;color:var(--ink);margin-top:.1rem;}
.vib-timeline .tag{display:inline-block;margin-top:.3rem;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);}


/* ============================================================
   FOOTER · UX Block ".vib-footer" (coerente con il sito)
   Sostituisce la sezione FOOTER del tuo style.css.
   ============================================================ */
.vib-footer{background:#211611;color:rgba(255,255,255,.72);border-top:1px solid rgba(231,196,133,.22);}
/*.vib-footer .section-content{padding-block:clamp(48px,6vw,74px)!important;}*/
.vib-footer a{color:rgba(255,255,255,.72);text-decoration:none;transition:color .2s ease;}
.vib-footer a:hover{color:var(--gold-soft);}

.vib-footer__label{display:block;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft);margin:0 0 1.2rem;}
.vib-footer__brand{font-family:'Cormorant Garamond',Georgia,serif;font-size:2rem;font-weight:600;color:#fff;line-height:1;}
.vib-footer__tag{margin:.8rem 0 0;color:rgba(255,255,255,.58);font-size:.92rem;max-width:32ch;line-height:1.5;}

.vib-footer__contacts p{margin:.4em 0;line-height:1.5;}
.vib-footer__contacts strong{color:#fff;font-weight:700;}
.vib-footer__contacts .lbl{color:var(--gold-soft);font-weight:700;}

.vib-footer__nav{list-style:none;margin:0;padding:0;}
.vib-footer__nav li{margin:.5em 0;}
.vib-footer__nav a{display:inline-flex;align-items:center;gap:.5em;}
.vib-footer__nav a::before{content:"";width:6px;height:6px;background:var(--rose);transform:rotate(45deg);transition:background .2s ease;}
.vib-footer__nav a:hover::before{background:var(--gold-soft);}

.vib-footer__social{display:flex;gap:.6rem;margin-top:1.4rem;}
.vib-footer__social a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.25);color:#fff;}
.vib-footer__social a:hover{background:var(--rose);border-color:var(--rose);color:#fff;}
.vib-footer__social svg{width:18px;height:18px;fill:currentColor;}

.vib-footer .vib-btn--primary,
.vib-footer .vib-btn--primary:hover{color:#fff;}

/* riga inferiore: dati legali + copyright */
.vib-footer__bottom{border-top:1px solid rgba(255,255,255,.1);
  /*margin-top:clamp(36px,5vw,56px);*/
  padding-top:30px;
  font-size:.78rem;color:rgba(255,255,255,.5);}
.vib-footer__legal{display:flex;flex-wrap:wrap;gap:.25rem .9rem;}
.vib-footer__legal span::after{content:"·";margin-left:.9rem;color:rgba(255,255,255,.3);}
.vib-footer__legal span:last-child::after{content:"";}
.vib-footer__copy strong{color:rgba(255,255,255,.75);font-weight:700;}
.absolute-footer{padding:0px;}



/* ============================================================
   SOCIAL · sezione fissa fine viaggio (.vib-social)
   Da appendere a style.css.
   ============================================================ */

/* ============================================================
      SOCIAL · sezione fissa fine viaggio (.vib-social)
      ============================================================ */
   .vib-social{background:#211611;text-align:center;margin-top:20px;}
   .vib-social .vib-eyebrow{color:white;}
   .vib-social .vib-title{color:#fff;}
   .vib-social .vib-lead{color:rgba(255,255,255,.7);}
   .vib-social__links{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:1.9rem;}
   .vib-social__link{
     display:inline-flex;align-items:center;gap:.6em;
     padding:.78em 1.5em;border-radius:999px;border:1px solid var(--line);background:#fff;
     color:var(--ink);font-family:'Mulish',sans-serif;font-weight:700;font-size:.95rem;text-decoration:none;
     transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease;
   }
   .vib-social__link svg{width:20px;height:20px;fill:currentColor;}
   .vib-social__link:hover{transform:translateY(-3px);color:#fff;border-color:transparent;box-shadow:0 14px 30px -16px rgba(0,0,0,.5);}
   .vib-social__link--yt:hover{background:#e0201b;}
   .vib-social__link--fb:hover{background:#1877f2;}
   .vib-social__link--ig:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);}