/* Font originale TibiWorld: percorso relativo alla cartella css/ */
@import url('https://fonts.googleapis.com/css2?family=Sintony:wght@400;700&display=swap');
@font-face {
    font-family: 'NovecentowideLight';
    src: url('../fonts/Novecentowide-Light-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

    .tibi-destinazioni-section { background: linear-gradient(135deg, #fff9f4 0%, #fff0e2 100%); padding: 65px 0 45px; }
    .tibi-destinazioni-titolo { text-align: center; font-size: 26px; font-weight: 400; letter-spacing: 2px; margin: 0 0 48px; }
    .tibi-destinazioni-titolo:after { content: ''; display: block; width: 75px; height: 3px; background: #ee8b42; margin: 17px auto 0; }
    .tibi-destinazione-card { display: block; position: relative; overflow: hidden; border-radius: 11px; height: 340px; box-shadow: 0 6px 16px rgba(80,45,25,.13); text-decoration: none; }
    .tibi-destinazione-card img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
    .tibi-destinazione-card:after { content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, transparent 48%, rgba(0,0,0,.76) 100%); pointer-events: none; }
    .tibi-destinazione-nome { position: absolute; bottom: 17px; left: 20px; right: 15px; z-index: 1; color: #fff; font-size: 22px; font-weight: 400; line-height: 1.25; }
    .tibi-destinazione-card:hover img { transform: scale(1.04); }
    .tibi-destinazione-card:hover .tibi-destinazione-nome { color: #fff; }
    @media (max-width: 767px) { .tibi-destinazione-card { height: 310px; } .tibi-destinazioni-section { padding: 45px 0 25px; } }

/* Testi ordinari: font Sintony del sito originale */
body, p, li, a, span, input, button, textarea, select {
    font-family: 'Sintony', sans-serif;
}

h1, h2, h3, h4, h5, h6,
.tibi-destinazioni-titolo, .tibi-destinazione-nome {
    font-family: 'NovecentowideLight', Arial, sans-serif;
}
.tibi-programma-dati h3 {font-variant: small-caps;}
/* Menu principale INCLUSI i sottomenu e il menu mobile */
#top-primary-nav .menuzord-menu > li > a,
#top-primary-nav .menuzord-menu .dropdown a,
#top-primary-nav .megamenu a,
#top-primary-nav-clone .menuzord-menu a {
    font-family: 'NovecentowideLight', Arial, sans-serif;
}

/* Testi normali Sintony; titoli e menu mantengono NovecentowideLight */
html body, html body p, html body li, html body a, html body span { font-family: 'Sintony', sans-serif !important; }
html body h1, html body h2, html body h3, html body h4, html body h5, html body h6 { font-family: 'NovecentowideLight', Arial, sans-serif !important; }
html body #top-primary-nav .menuzord-menu > li > a, html body #top-primary-nav .menuzord-menu .dropdown a, html body #top-primary-nav .megamenu a, html body #top-primary-nav-clone .menuzord-menu a { font-family: 'NovecentowideLight', Arial, sans-serif !important; font-weight: normal !important; }

/* Menu superiore: misure originali del vecchio sito (css/styles.css) */
html body #top-primary-nav .menuzord-menu > li > a { font-family: 'NovecentowideLight', Arial, sans-serif !important; font-size: 24px !important; font-weight: 400 !important; letter-spacing: 0 !important; text-transform: uppercase; color: #303538; }
html body #top-primary-nav .menuzord-menu > li > a:hover { color: #78858d; }

/* Icone LightGallery: non devono ereditare il font dei testi */
html body .lg-icon, html body .lg-icon:before, html body .lg-icon:after { font-family: 'lg' !important; }

/* Fotogallery destinazioni: miniature uniformi senza deformazioni */
#gallery-holder-destinazioni .tm-gallery .thumb { height: 205px; overflow: hidden; }
#gallery-holder-destinazioni .tm-gallery .thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 767px) { #gallery-holder-destinazioni .tm-gallery .thumb { height: 180px; } }

/* Programmi TiBi: schede con foto a sinistra e informazioni a destra */
.tibi-programma-card { display: flex; flex-wrap: wrap; gap: 0; margin: 30px 25px; border: 1px solid #e5e5e5; border-radius: 12px; overflow: hidden; box-shadow: 0 6px 16px rgba(0,0,0,.10); background: #fff; }.tibi-programma-foto { display: block; width: 38%; min-height: 265px; }
.tibi-programma-foto img { width: 100%; height: 100%; min-height: 265px; object-fit: cover; display: block; }
.tibi-programma-dati { flex: 1; min-width: 0; padding: 22px 28px; }
.tibi-programma-label { display: block; font-size: 18px; color: #565353; margin-bottom: 5px; }
.tibi-programma-dati h3 { font-size: 24px; line-height: 1.3; margin: 0 0 12px; }
.tibi-programma-dati h3 a { color: #303538; }
.tibi-programma-dati > div { margin-bottom: 3px; }
.tibi-programma-prezzo { margin-top: 18px; }
.tibi-programma-prezzo strong { color: #f5a12c; font-size: 22px; }
.tibi-programma-note { color: #666; }
.tibi-programma-leggi { display: inline-block; margin-top: 16px; background: #f5a12c; border-color: #f5a12c; min-width: 120px; text-align: center; }
.tibi-programma-sottotitolo { width: 100%; padding: 12px 22px; border-top: 1px solid #eee; }
.tibi-programmi-griglia { padding-top: 20px; }
.tibi-programmi-griglia .tibi-destinazione-card { height: 260px; }
@media (max-width: 767px) { .tibi-programma-foto { width: 100%; min-height: 210px; } .tibi-programma-foto img { height: 210px; min-height: 210px; } .tibi-programma-dati { padding: 18px; } .tibi-programmi-griglia .tibi-destinazione-card { height: 240px; } }

/* Programmi e proposte: grassetti come nel vecchio sito */
html body .tibi-programma-dati > div span[style*='font-weight'] { font-family: 'Sintony', sans-serif !important; font-weight: 700 !important; }
html body .tibi-programma-prezzo span[style*='font-weight'] { font-family: 'Sintony', sans-serif !important; font-weight: 700 !important; }

.btn-primary {
  color: #fff;
  background-color: #f5a12c;
  border-color: #f5a12c;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    color: #fff;
    background-color: #f26522;
    border-color: #f26522;
}

html body #top-primary-nav .megamenu a {
    font-size: 20px !important;
}


/* Megamenu destinazioni smartphone */
@media (max-width: 1199.98px) {

    #top-primary-nav-clone .megamenu,
    #top-primary-nav-clone .megamenu .megamenu-row,
    #top-primary-nav-clone .megamenu .megamenu-row .col3 {
        background-color: #363636 !important;
    }

    #top-primary-nav-clone .megamenu .megamenu-row li a {
        color: #fff !important;
        background-color: #363636 !important;
        border-bottom: 1px solid #444 !important;
    }

    #top-primary-nav-clone .megamenu .megamenu-row li a:hover {
        background-color: #444 !important;
    }

}