/*!
Theme Name: Helter Child
Theme URI: http://www.helter.it
Author: Letizia Tasselli
Author URI: http://www.helter.it/contatti
Description: Tema child di Helter
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: helter-child
Template: helter
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

*/

@-webkit-viewport {width: device-width;}
@-moz-viewport {width: device-width;}
@-ms-viewport {width: device-width; }
@-o-viewport {width: device-width; }
@viewport {width: device-width;}
@-moz-document url-prefix() {html{ overflow-x: hidden;}}
:root {
  --ht-white:#fff;
  --ht-black:#000;
  --ht-olive:#414033;
  --ht-olive-medium:#575b15;
  --ht-lime:#c8da64;
  --ht-lime-dark:#b5c658;
  --ht-cream:#f9f7ee;
  --ht-cream-medium:#e8e5d8;
  --ht-cream-dark:#cecabb;
  --ht-brown:#393935;
  --ht-orange:#f4ab54;
  --ht-font-primary: "moret", serif;;
  --ht-font-secondary: "Open Sauce One";
  --ht-font-400:400; 
  --ht-font-500:500;  
  --ht-font-600:600;
  --ht-font-700:700;
}
@font-face {
  font-family: "Open Sauce One";
  src: url("font/OpenSauceOne-Regular.woff2") format("woff2"),
  url("font/OpenSauceOne-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Open Sauce One";
  src: url("font/OpenSauceOne-Medium.woff2") format("woff2"),
       url("font/OpenSauceOne-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Open Sauce One";
  src: url("font/OpenSauceOne-SemiBold.woff2") format("woff2"),
       url("font/OpenSauceOne-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
* {padding: 0; margin: 0;}
html, body {height: auto; overflow-x: hidden;}
body {-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale; font-family:var(--ht-font); background-color:var(--ht-cream);font-family:var(--ht-font-secondary);}
a {-o-transition:.5s; -ms-transition:.5s; -moz-transition:.5s; -webkit-transition:.5s; transition:.5s;text-decoration: none;display: inline-block}
a:hover {}
img {height: auto;max-width: 100%;}

/*Griglia*/
.mw-1450 {max-width:1450px; margin:0 auto}
.mw-1550 {max-width:1550px; margin:0 auto}
.mw-1200 {max-width:1200px; margin:0 auto}
.mw-960 {max-width:960px; margin:0 auto}
.mw-750 {max-width:750px; margin:0 auto}

.section-container, .section-container-swiper, .section-container-cta {padding:4rem 0}
.box-cta {background-color: var(--ht-olive);border-radius: 15px; padding:2.5rem 1.5rem}
.box {background: rgba(255,255,255,.35);border: 1px solid rgba(70, 74, 56, .18);box-shadow: 0 10px 28px rgba(0,0,0,.05);backdrop-filter: blur(6px);border-radius:20px; padding:2rem 1.5rem}
.stamps {max-width: 250px;margin-top: -50px;margin-left:auto; margin-right:auto; opacity:0.5}

/*Typography*/
h1 {color: var(--ht-olive);font-family:var(--ht-font-primary); font-size: 3.4rem; line-height: 3.6rem;}
h1.info {font-size:5.5rem}
h2 {color: var(--ht-olive);font-family:var(--ht-font-primary);}
h5 {color: var(--ht-olive);font-family:var(--ht-font-primary);font-size:1.5rem}
p {font-family:var(--ht-font-secondary); font-size: 0.9rem;line-height: 1.6rem;}
ol, ul {padding-left:0}
p.mini {font-size:0.85rem;line-height: 1.4rem;}
hr {border-bottom:1px dashed var(--ht-cream);margin:1.5rem 0!important}
hr.mini {border-bottom:1px dashed var(--ht-cream);margin:0.8rem 0 1.1rem 0!important}
.brush-underline {position: relative;display: inline-block;z-index: 0;}
.brush-underline::after{content: ""; position: absolute; left: -6%;right: -6%;bottom: -0.08em;height: 0.50em;background: url("/images/underline.svg") no-repeat center;background-size: 100% 100%;z-index: -1; pointer-events: none;}
blockquote {font-family:var(--ht-font-secondary);}

/*Modal*/
.modal-body, .modal-header {background-color:var(--ht-cream)}
/*Link*/
a.cr {color: var(--ht-cream);position: relative;text-decoration: none;}
a.cr:hover {color: var(--ht-cream);}
a.cr::before {content: ''; color: var(--ht-cream);position: absolute;width: 100%;height: 1px;border-radius: 1px;background-color: var(--ht-cream);bottom: -1px;left: 0;transform-origin: right;transform: scaleX(0);transition: transform .3s ease-in-out;}
a.cr:hover::before {color:var(--ht-cream);transform-origin: left;transform: scaleX(1);}
a.ol {color: var(--ht-olive);position: relative;text-decoration: none;}
a.ol:hover {color: var(--ht-olive);}
a.ol::before {content: ''; color: var(--ht-olive);position: absolute;width: 100%;height: 1px;border-radius: 1px;background-color: var(--ht-olive);bottom: -1px;left: 0;transform-origin: right;transform: scaleX(0);transition: transform .3s ease-in-out;}
a.ol:hover::before {color:var(--ht-olive);transform-origin: left;transform: scaleX(1);}
a.olive {background-color: var(--ht-olive); font-weight: var(--ht-font-700); text-align:center; color: var(--ht-cream);  padding:12px 10px; border-radius:5px;font-family: var(--ht-font-secondary); font-weight: var(--ht-font-600); text-decoration:none; font-size:0.9em; display: inline-flex; width: auto; align-items: center; justify-content: center;}
a.olive:hover {background-color: #706f64;}
a.lime {background-color: var(--ht-lime); font-weight: var(--ht-font-700); text-align:center; color: var(--ht-olive);  padding:12px 10px; border-radius:5px;font-family: var(--ht-font-secondary); font-weight: var(--ht-font-600); text-decoration:none; font-size:0.9em; display: block; width: 100%;}
a.lime:hover {background-color: var(--ht-lime-dark);}
button.lime {background-color: var(--ht-lime); border:0; font-weight: var(--ht-font-700); text-align:center; color: var(--ht-olive);  padding:12px 10px; border-radius:5px!important;font-family: var(--ht-font-secondary); font-weight: var(--ht-font-600); text-decoration:none; font-size:0.9em; display: block; width: 100%;}
button.lime:hover {background-color: var(--ht-lime-dark);}
button.olive {-o-transition:.5s; -ms-transition:.5s; -moz-transition:.5s; -webkit-transition:.5s; transition:.5s;background-color: var(--ht-olive); border:0; font-weight: var(--ht-font-700); text-align:center; color: var(--ht-cream);  padding:12px 10px; border-radius:5px!important;font-family: var(--ht-font-secondary); font-weight: var(--ht-font-600); text-decoration:none; font-size:0.9em; display: block; width: 100%;}
button.olive:hover {background-color: #706f64;}
span.olive{background-color: var(--ht-olive); font-weight: var(--ht-font-700); text-align:center; color: var(--ht-cream);  padding:12px 10px; border-radius:5px;font-family: var(--ht-font-secondary); font-weight: var(--ht-font-600); text-decoration:none; font-size:0.9em; display: inline-flex; width: auto; align-items: center; justify-content: center;}
span.olive:hover {background-color: #706f64;}

svg.button-icon {margin-top:-4px}
.green-box {background-color: var(--ht-olive); padding:20px; border-radius:10px}
.cream-bg {background-color: var(--ht-cream)}
.olive-bg {background-color: var(--ht-olive)}
.itinerari-bg {background-image: url("/images/xenia-viaggi-itinerari-bg.jpg"); background-size: cover;}
.giraffe-bg{position: relative;}
.giraffe-bg::before{content:"";position:absolute;inset:0;background: url("/images/giraffe-pattern.svg") no-repeat center/cover;opacity: .15;pointer-events:none;z-index:0;}
.giraffe-bg > *{position: relative;z-index:1;}

/*Mailchimp*/
input#mce-EMAIL {width: 100%;padding: 18px 10px;border-top-left-radius: 10px;border-bottom-left-radius: 10px;border: none; background-color:var(--ht-cream);font-family:var(--ht-font-secondary);font-size:0.9rem}
label.privacy {max-width: 95%;font-size: 0.75rem;margin-left: 8px;line-height: 1rem;}
.mc-field-group.input-group ul{list-style: none;padding: 0;margin: 0;}
.mc-field-group.input-group li{display: flex;align-items: flex-start;gap: 10px;}
.mc-field-group.input-group input[type="radio"]{accent-color: var(--ht-orange);margin: 0;margin-top: .2em;flex: 0 0 auto;}
.mc-field-group.input-group label{margin: 0;line-height: 1.35;}
input#mc-embedded-subscribe {width:100%; background-color:var(--ht-cream-dark); border:0; border-top-right-radius:10px;border-bottom-right-radius:10px;color:var(--ht-olive);font-family:var(--ht-font-secondary);padding:18px; font-size:0.9rem; font-weight:var(--ht-font-600)}
#mc-embedded-subscribe-form input[type="email"]{outline: none;}
#mc-embedded-subscribe-form input[type="email"]:focus-visible{border-color: var(--ht-orange);box-shadow: 0 0 0 3px rgba(244,171,84,.28);outline: none;}
#mc-embedded-subscribe-form input[type="email"]:focus{border-color: var(--ht-orange);box-shadow: 0 0 0 3px rgba(244,171,84,.28);outline: none;}

/*Ricerca*/
#carouselRandom .hero-search{
  width: min(900px, 92vw);
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
#carouselRandom #search-area.search-fullscreen{background: rgba(255,255,255,0.7) !important;padding: 15px 10px !important;align-items: stretch !important;}
#carouselRandom .search-box{position: relative;z-index: 20;}
#carouselRandom #search-results{
  position: relative !important;
  z-index: 10;
  width: 100%;
 /* max-height: 52vh;      */   
  overflow: auto;
  margin-top: 0 !important;
  transform: none !important;}
/* quando hidden deve sparire davvero */
#carouselRandom #search-results.hidden{ display:none !important; }
#carouselRandom #search-results.visible{ display:block !important; opacity:1 !important; }

/* ======================
   Fullscreen Search
   ====================== */
.search-fullscreen {border-radius:10px;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  padding:12px;
  background-color:  rgba(255, 255, 255, 0.7);;
  transition: backdrop-filter 0.3s ease, background-color 0.3s ease;
}
.search-fullscreen.focused {backdrop-filter: blur(6px);background-color: rgba(255, 255, 255, 0.7);}

/* ======================
   Search Box
   ====================== */
.search-box {width: 100%;position: relative;}
.search-box .ais-SearchBox-form {display: flex;justify-content: center;align-items: center;position: relative;width: 100%;}
.search-overlay{position: fixed;inset: 0;background: rgba(0,0,0,.55);z-index: 9998;}
.search-overlay{ z-index: 9998; }
#carouselRandom #search-area{ position:relative; z-index:10001; }
#carouselRandom .hero-search,
#carouselRandom #search-area{position: relative;z-index: 10001;}
#carouselRandom #search-results{position: absolute;left: 0;right: 0;top: calc(100% + 12px); z-index: 10002;}
#carouselRandom #search-area{position: relative;}
#carouselRandom #search-results.visible{overflow: auto;}
.search-box input.ais-SearchBox-input {
  font-size: 1.5rem;
  width: 100%;
  padding: 1rem 1rem;
  border-radius: 8px;
  border: 2px solid #ccc;
  outline: none;
  background: white;
  box-shadow: 0 0 0 transparent;
  transition: all 0.3s ease;
}
.search-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(3px);
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease;
  z-index: 9000; /* sotto la search */
}
#search-area{
  position: relative;
  z-index: 9001;
}
.search-overlay.is-active{
  opacity: 1;
  pointer-events: auto;
}

div#hits {border-radius:10px;background-color: rgba(255,255,255,0.7);padding: 15px!important;}
h5.search {margin-bottom:0!important}
.search-box input.ais-SearchBox-input:focus {border-color: var(--ht-olive);box-shadow: 0 10px 25px rgba(0, 87, 160, 0.25);}
li.ais-Hits-item.visible {margin-left: 0; margin-bottom:10px}
.search-box::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 80%;
  height: 15px;
  border-radius: 50%;
  background: rgba(112, 157, 181, 0.15);
  filter: blur(8px);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.ais-SearchBox-form {position: relative;}
.ais-SearchBox-submitIcon {
  width: 24px !important;
  height: 24px !important;
  fill: #ccc;
  display: block;
}
.ais-SearchBox-resetIcon {
  width: 24px !important;
  height: 24px !important;
  fill: #ccc;
  display: block;
}
.ais-SearchBox-submit,
.ais-SearchBox-reset {
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  line-height: 1;
}
.ais-Hits-item p {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {display: none;}
.ais-SearchBox-form:not(.has-reset) .ais-SearchBox-submit {display: block;}
.ais-SearchBox-form.has-reset .ais-SearchBox-reset {display: block;}
.ais-SearchBox-reset:not([style*="display: none"]) ~ .ais-SearchBox-submit {display: none;}
.ais-SearchBox-form:not(.has-reset) .ais-SearchBox-submit {display: block;}

.ais-SearchBox-submit,
.ais-SearchBox-reset {
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

.ais-SearchBox-submitIcon,
.ais-SearchBox-resetIcon {
  width: 24px;
  height: 24px;
  fill: var(--ht-olive);
}

/* Posizionamento lente */
.ais-SearchBox-submit {
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 0;
  cursor: default;
  z-index: 1;
}

/* Stile lente SVG */
.ais-SearchBox-submitIcon {
  width: 24px;
  height: 24px;
  fill: var(--ht-olive);
  display: block;
}
.ais-SearchBox-resetIcon {display: none;}
.ais-SearchBox-reset {
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  line-height: 1;
}

.ais-SearchBox-reset::before {
  content: '';
  display: block;
  width: 36px; /* aumenta da 24 a 36 o piÃ¹ */
  height: 36px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40" stroke="%414033a0" stroke-width="2" fill="none"><line x1="10" y1="10" x2="30" y2="30"/><line x1="30" y1="10" x2="10" y2="30"/></svg>') no-repeat center;
  background-size: contain;
}

/* ======================
   Risultati
   ====================== */
.search-results {
  width: 100%;
  margin-top: 1rem;
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.5s ease;
}
.search-results.hidden.visible {display: block;}
.search-results.visible {opacity: 1;transform: translateY(0);}
.search-results.hidden {display: none;}
.ais-Hits-item.visible {opacity: 1;transform: translateY(0);}
ol.ais-Hits-list {padding-left:0}
ol.ais-Hits-list li {list-style-type: none;}

/* ======================
   Risultato Singolo
   ====================== */
.ais-Hits-item {padding:0.5rem;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0.0);
  transition: transform 0.3s ease, opacity 0.3s ease;
  opacity: 0;
  transform: translateY(20px);
}

a.button-search { display:inline-block;}
.ais-Hits-item:hover {transform: translateY(-4px);}
.ais-Hits-item h3 {margin-top: 0;font-size: 1.8rem;margin-bottom: 0.5rem;}
.ais-Hits-item p {margin: 0;font-size: 1rem;color: #555;}

.hit-label { background-color: var(--mx-light-blue); font-weight:var(--mx-font-550);
  font-size: 0.75rem; display:inline-block; color: var(--mx-white);
  text-transform: uppercase; border-radius:4px; padding-left:5px; padding-right:5px;
  margin-bottom: 0.5rem;
  letter-spacing: 0.5px;
}
.ais-Hits-item mark,
.ais-Hits-item em,
.ais-Hits-item .ais-Highlight-highlighted {
  background-color: #fdf2d0;
  color: #000;
  font-style: normal;
  padding: 0 2px;
  border-radius: 3px;
}

/* ======================
   Paginazione
   ====================== */
.ais-Pagination {
  display: flex;
  justify-content: center;
  margin-top: 2rem;
  list-style: none;
  padding: 0;
  gap: 0.5rem;
}

.ais-Pagination-list {
  display: flex;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

.ais-Pagination-item {
  list-style: none;
}

.ais-Pagination-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 0.5rem;
  border: 1px solid #ccc;
  border-radius: 6px;
  text-decoration: none;
  color: var(--ht-olive);
  font-weight: 500;
  font-size: 0.95rem;
  background-color: #fff;
  transition: all 0.2s ease;
}

.ais-Pagination-link:hover {
  background-color: var(--mx-light-blue);
  border-color: var(--mx-light-blue);
}

.ais-Pagination-item--selected .ais-Pagination-link {
  background-color: var(--mx-blue);
  color: #fff;
  border-color: var(--mx-blue);
}

.ais-Pagination-link svg {
  display: block;
}

/*Swiper*/
.destination-card.w {background-color:var(--ht-white)}
.destinations-slider {position: relative;overflow: hidden;}
.swiper {width: 100%;overflow: visible !important;padding-left: 0;padding-right: 0; padding-top: 15px !important;}
.swiper-wrapper {padding-left: max(20px, calc((100vw - 1450px) / 2));}
.swiper-slide {width: 380px !important; height: auto;}
.destination-card {background: #f5f5f0;border-radius: 20px;padding: 30px;height: 100%;display: flex;flex-direction: column;text-decoration: none;color: inherit;transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04); position: relative; will-change: transform; }
.destination-card h2 {color: var(--ht-olive);font-family:var(--ht-font-primary); font-size: 2.5rem;margin-bottom: 10px;font-weight: var(--ht-font-600);color: #333; transition: color 0.3s ease;}
.destination-card p {font-family:var(--ht-font-secondary);color: var(--ht-olive);margin-bottom: 20px;flex-grow: 1;line-height: 1.4; font-size:0.9rem}
.destination-card img {width: 100%;height: 300px;object-fit: cover; object-position: right bottom; border-radius: 15px;transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);}
.destination-card:hover {transform: translateY(-8px);box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);overflow: hidden;}
.destination-card:hover img {transform: scale(1.05);}
.destination-card::before {content: '';position: absolute;bottom: 30px;left: 30px;right: 30px;height: 300px;border-radius: 15px;background: linear-gradient(to top, rgba(0,0,0,0.1) 0%, transparent 50%);opacity: 0;transition: opacity 0.4s ease;pointer-events: none;}
.slider-navigation {width: 100%;margin-top: 40px;}
.navigation-wrapper {max-width: 1450px;margin: 0 auto;padding: 0 20px 0 0;display: flex;gap: 15px;align-items: center;}
.swiper-button-prev,
.swiper-button-next {position: static !important;width: 50px;height: 50px;background: white;border-radius: 50%;box-shadow: 0 2px 10px rgba(0,0,0,0.1);margin: 0;transition: all 0.3s ease;}
.swiper-button-prev:hover,
.swiper-button-next:hover {background: #333;}
.swiper-button-prev:hover:after,
.swiper-button-next:hover:after {color:var(--ht-orange);}
.swiper-button-prev:after,
.swiper-button-next:after {font-size: 10px;color: #333;}
.swiper-button-prev, .swiper-button-next {background: var(--ht-cream);}
.swiper-button-prev:hover, .swiper-button-next:hover {background: var(--ht-cream);}
.swiper-button-next:after, .swiper-button-prev:after {font-size:1.5rem!important}
.swiper-button-next, .swiper-button-prev {width: calc(var(--swiper-navigation-size) / 30 * 30)!important;}
.swiper-button-disabled {opacity: 0.3;cursor: not-allowed;}
@media (max-width: 1500px) {
.swiper-wrapper {padding-left: 20px;}
}
@media (max-width: 768px) {
.swiper-slide {width: 300px !important;}
.destination-card h2 {font-size: 1.8rem;}
.destination-card img {height: 220px;}
.navigation-wrapper {padding: 0 0;}
.swiper-button-prev,
.swiper-button-next {width: 40px;height: 40px;} 
.swiper-button-prev:after,
.swiper-button-next:after {font-size: 16px;}
#mega-menu-wrap-primary #mega-menu-primary a.mega-menu-link .mega-description-group .mega-menu-description {display:none}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {padding:5px 15px;     background-color: var(--ht-cream-medium);    font-weight: 600; border-top: 1px dashed var(--ht-cream-dark) !important;}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {top:18px!important}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover {font-weight: 600;  background-color: #e4e0cf;}
}
@media (max-width: 480px) {
.swiper-slide {width: 260px !important;}
.destination-card:hover {transform: translateY(-2px);}
}
/* PAGINAZIONE */
.page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    list-style: none;
    margin: 40px 0 0;
    padding: 0;
}

.page-numbers li {
    margin: 0;
    padding: 0; list-style-type:none;
}

.page-numbers a,
.page-numbers span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 14px;
    border-radius: 999px;
    text-decoration: none;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    transition: all 0.25s ease;
    border: 1px solid #d7cfc3;
    background: #ffffff;
    color: #5f5448;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);
}

/* Hover */
.page-numbers a:hover {
    background: #8a7763;
    border-color: #8a7763;
    color: #ffffff;
    transform: translateY(-2px);
}

/* Pagina attiva */
.page-numbers .current {
    background: linear-gradient(135deg, #8a7763, #a6917a);
    color: #ffffff;
    border-color: #8a7763;
    box-shadow: 0 8px 18px rgba(138, 119, 99, 0.22);
}
.itinerari-results {
  transition: opacity 0.2s;
}
.itinerari-results.is-filtering {
  opacity: 0;
}
/* Freccia next */
.page-numbers .next {
    padding: 0 18px;
    font-size: 18px;
}

/* Responsive */
@media (max-width: 768px) {
    .page-numbers {
        gap: 8px;
        flex-wrap: wrap;
    }

    .page-numbers a,
    .page-numbers span {
        min-width: 40px;
        height: 40px;
        font-size: 14px;
        padding: 0 12px;
    }
}
/* Header */
.header-wrapper {max-width:1450px; margin: 0 auto;}
#masthead {transition: opacity 0.5s ease-in-out;width:100%;position: fixed;z-index: 1000; left: 50%; transform: translateX(-50%);background: rgba(255, 255, 255, 0.2);-webkit-backdrop-filter: blur(10px);backdrop-filter: blur(10px) !important;}
.navbar-expand-lg {padding:5px 15px 5px 15px !important;}
#masthead.scrolled {background: rgba(255, 255, 255, 0.8);}
#mega-menu-wrap-primary {width:100%}
#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-1 a.mega-menu-logo {width:100px; height:84px}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {margin:0 10px;padding: 0px 0px;position: relative;text-decoration: none;font-family: var(--ht-font-secondary);font-size: 0.85rem;font-weight: var(--ht-font-600);color: var(--ht-cream);transition: color 0.3s ease-in-out;}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover {font-weight: var(--ht-font-600);}
#masthead.scrolled #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {color: var(--ht-olive);}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link::before {content: ''; color: var(--ht-cream);position: absolute;width: 100%;height: 1px;border-radius: 1px;background-color: var(--ht-cream);bottom: -1px;left: 0;transform-origin: right;transform: scaleX(0);transition: transform .3s ease-in-out;}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover::before {color:var(--ht-cream);transform-origin: left;transform: scaleX(1);}
#masthead.scrolled #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link::before {content: ''; color: var(--ht-olive);position: absolute;width: 100%;height: 1px;border-radius: 1px;background-color: var(--ht-olive);bottom: -1px;left: 0;transform-origin: right;transform: scaleX(0);transition: transform .3s ease-in-out;}
#masthead.scrolled #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover::before {color:var(--ht-olive);transform-origin: left;transform: scaleX(1);}
.header .site-title {position: relative;width: 150px;height: 51px;}
.header .site-title::before {content: '';position: absolute;top: 0;left: 0;width: 150px;height: 51px;background-image: url(/images/logo-xenia.svg);background-size: 150px 51px;background-repeat: no-repeat;opacity: 1;transition: opacity 0.3s ease-in-out;}
.header .site-title::after {content: '';position: absolute;top: 0;left: 0;width: 150px;height: 51px;background-image: url(/images/logo-xenia-scrolled.svg);background-size: 150px 51px;background-repeat: no-repeat;opacity: 0;transition: opacity 0.3s ease-in-out;}
#masthead.scrolled .site-title::before {opacity: 0;}
#masthead.scrolled .site-title::after {opacity: 1;}
.header .site-title a {display: block;width: 100%;height: 100%;position: relative;z-index: 1;}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus, #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:active {font-weight: var(--ht-font-600);}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu {margin-top:15px; border-bottom-left-radius:15px; border-bottom-right-radius:15px;padding-top:15px}
/* tutte le immagini dei widget media_image dentro al mega menu */
#mega-menu-wrap-primary li.mega-menu-item-type-widget.widget_media_image img{border-radius: 10px;max-width: 100% !important;height: auto;display: block;margin: 0 auto;}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu .mega-description-group .mega-menu-description {display:none}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {padding:5px 15px 0 15px!important}
#masthead:has(#mega-menu-primary li.mega-menu-item.mega-toggle-on) {background: var(--ht-cream) !important;}
#mega-menu-wrap-primary #mega-menu-primary p {line-height:1.2rem; font-size:0.85rem; padding-bottom:15px}
li#mega-menu-item-custom_html-2 {margin-top:0!important}
#masthead:has(#mega-menu-primary li.mega-menu-item.mega-toggle-on)
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {color: var(--ht-olive) !important;}
.textwidget.custom-html-widget {margin-top:-5px}
#masthead:has(#mega-menu-primary li.mega-menu-item.mega-toggle-on)
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link::before{background-color: var(--ht-olive) !important;}
#masthead:has(#mega-menu-primary li.mega-menu-item.mega-toggle-on) .site-title::before {opacity: 0;}
#masthead:has(#mega-menu-primary li.mega-menu-item.mega-toggle-on) .site-title::after  {opacity: 1;}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width: 14px !important;
  height: 14px !important;
  margin-left: .15em !important;
  position: relative !important;
      top: -2px;
}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator:after{
  content: "" !important;
  display: inline-block !important;
  width: 6px !important;
  height: 6px !important;
  border-right: 2px solid currentColor !important;
  border-bottom: 2px solid currentColor !important;
  transform: rotate(45deg) translateY(-1px) !important; /* chevron down */
  transform-origin: center !important;
}

#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item.mega-toggle-on > a.mega-menu-link > span.mega-indicator:after{transform: rotate(-135deg) translateY(1px) !important; /* chevron up */}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link{font-weight: var(--ht-font-600) !important;}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link{font-family: var(--ht-font-secondary) !important;}
#masthead.scrolled #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link{font-weight: var(--ht-font-600) !important;}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-673 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-664 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-665 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-667 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-666 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-672 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-669 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-670 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-680 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-681 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-737 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-736 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-738 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-808 a
{font-size:0.8rem}


#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-677 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-679 a,
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item.mega-menu-item-678 a
{padding-bottom:20px; text-transform:uppercase;font-size:0.8rem;padding-top:5px;}

@media (min-width: 769px) {
#mega-menu-wrap-primary,
#mega-menu-wrap-primary #mega-menu-primary {display: flex !important;visibility: visible !important;opacity: 1 !important;justify-content: flex-end !important;height: auto !important;overflow: visible !important;}
#mega-menu-wrap-primary #mega-menu-primary{display: flex !important;justify-content: flex-end !important;margin-left: auto !important;height: auto !important;overflow: visible !important;visibility: visible !important;opacity: 1 !important}
.mega-hide-on-desktop {display:none!important}

}
@media (max-width: 1450px) {
#carouselRandom .carousel-item img, #carouselRandom .carousel-item video {height:700px!important;} 
}
@media only screen and (max-width: 768px) {
 /* abbasso la caption + area search sotto al menu */
  #carouselRandom .carousel-caption,
  #carouselRandom .hero-search,
  #carouselRandom #search-area{
    z-index: 1 !important;
  }

  /* risultati (se presenti) sotto al menu */
  #carouselRandom #search-results{
    z-index: 2 !important;
  }

  /* overlay ricerca sotto al menu */
  .search-overlay{
    z-index: 0 !important;
  }

#masthead,
#mega-menu-wrap-primary{z-index: 10000 !important;}
.navbar-expand-lg {background: rgba(255, 255, 255, 1);border-radius:0;transition: background 0.3s ease-in-out, box-shadow 0.3s ease-in-out;padding:0 !important;}
#mega-menu-wrap-primary {z-index: 10000;}
#mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open + #mega-menu-primary {padding: 0 0;} 
.header-wrapper {padding: 0 0;}
header {top: 0; padding:0;}
.navbar-brand {display:none}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {margin:0!important}
#mega-menu-wrap-primary .mega-menu-toggle img {width: 140px;}
#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-2 .mega-toggle-animated-inner, #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-2 .mega-toggle-animated-inner::before, #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-2 .mega-toggle-animated-inner::after {background-color:var(--ht-olive) !important; border-radius: 0px !important; height: 2px !important;}
.navbar-expand {padding:5px 10px 5px 10px !important}
#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-2 .mega-toggle-animated {margin-top: 3px;}
#mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open + #mega-menu-primary {height:100vh; background-color:var(--ht-cream) !important}
ul#mega-menu-primary {height:100vh}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {height:50px; line-height:50px; padding:0 1rem !important; border-top:1px dashed var(--ht-cream-medium) !important; color: var(--ht-olive) !important; background-color:var(--ht-cream)}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover {color: var(--ht-olive) !important; background-color:var(--ht-cream-medium)}
#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item > ul.mega-sub-menu {margin-top: 0 !important;}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link{position: relative;}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link::before{content:'';position:absolute;left:0;bottom:-1px;width:100%;height:1px;border-radius:1px;background-color: var(--ht-olive);transform: scaleX(0);transform-origin: right;transition: transform .3s ease-in-out;}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover::before,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus::before,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:active::before{transform: scaleX(1);transform-origin: left;}
}

.carousel-item::before {content: '';position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0, 0, 0, 0.3);z-index: 1;}
.carousel-item img,
.carousel-item video {width: 100%;height: 1000px;object-fit: cover; margin-bottom: -7px;}  
#carouselHero .carousel-caption {z-index: 2;left: 50%;bottom: 50%;transform: translate(-50%, 50%);text-align: center;width: 100%;}
.carousel-caption h1 {font-size: 4.1rem; line-height:4.4rem; font-weight: var(--ht-font-700);font-family:var(--ht-font-primary);color:var(--ht-cream)}
#carouselHero .carousel-item img, #carouselHero .carousel-item video {height: 500px;}
.carousel-item { position: relative; } /* fondamentale per ::before */
#carouselRandom .carousel-item { position: relative; }
#carouselRandom .carousel-item::before{content:'';position:absolute;inset:0;background: rgba(0,0,0,.30);z-index: 1;pointer-events:none;}
#carouselRandom .carousel-item img,
#carouselRandom .carousel-item video{width:100%;height:1000px;object-fit:cover;display:block;}
#carouselRandom{ position: relative; }
#carouselRandom .carousel-item::before{ z-index: 1; }

/*Accordion*/
.accordion {border:0!important}
.accordion-item {color:var(--ht-olive)!important;background-color:var(--ht-cream-medium)!important;border:0!important}
.accordion-button, .accordion-button:not(.collapsed) {color:var(--ht-olive)!important;background-color:var(--ht-cream-medium)!important;}
.accordion-button {font-family:var(--ht-font-primary); font-size:1.5rem;}
.accordion-body {font-family:var(--ht-font-secondary);font-size:0.95rem; color:var(--ht-olive)!important;}
.accordion-header {border-top:1px dashed var(--ht-brown)}
.accordion-header.first {border-top:0 dashed var(--ht-brown)}
.accordion-button:focus {box-shadow: none;border-color: rgba(0,0,0,.125);}
.accordion-collapse.collapse.show {border-top: 1px dashed var(--ht-brown)}

/*Form*/
#wpforms-form-40 {background-color:var(--ht-cream-medium); padding:20px; border-radius:10px;}
label.wpforms-field-label-inline {font-size:0.8rem!important; margin-top:5px}
select#wpforms-40-field_4 {color:var(--ht-olive)!important;font-family:var(--ht-font-secondary); font-size:0.9rem!important; padding-top:0!important; padding-bottom:0!important}
.wpforms-container .wpforms-form .wpforms-field-label {margin-bottom:5px!important;color:var(--ht-olive)!important;font-family:var(--ht-font-secondary); font-size:0.85rem!important}
.wpforms-container .wpforms-field, .wp-core-ui div.wpforms-container .wpforms-field {padding:0 0 15px 0!important}
div.wpforms-container-full:not(:empty) {margin: 0px auto!important;}
form#wpforms-form-40 input:focus, form#wpforms-form-40 textarea:focus, form#wpforms-form-40 select:focus {border:1.5px solid #f4ab54;box-shadow: 0 0 0px 0 rgba(229, 66, 10, 0.75);}
button#wpforms-submit-40 {width:100%;background-color: var(--ht-olive); font-weight: var(--ht-font-700); text-align:center; color: var(--ht-cream);  padding:12px 10px; border-radius:5px;font-family: var(--ht-font-secondary); font-weight: var(--ht-font-600); text-decoration:none; font-size:0.9em;}

/*Itinerario*/
span.green.mini {font-size: 0.9rem;}
.itinerario-hero {position: relative;margin-bottom: 40px;}
.hero-image {height: 600px;background-size: cover;background-position: center;position: relative;}
.hero-overlay {position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: linear-gradient(to bottom, rgba(0,0,0,0.3), rgba(0,0,0,0.7));display: flex;align-items: center;justify-content: center;text-align: center;}
.hero-overlay .subtitle {font-weight:var(--ht-font-600)}
.info-grid {background-color:var(--ht-olive); border-radius:15px; padding:20px; margin-top:-80px; z-index: 100;position: relative;}
.info-item {color:var(--ht-cream); font-weight:var(--ht-font-700); font-size:0.9rem; margin-bottom:15px}
.info-label {display: inline-flex;align-items: center;gap: 8px;}
.info-icon {width: 15px;height: 15px;display: inline-block; margin-right:5px; margin-top: -3px;}
.info-icon.big {width: 18px;height: 18px;display: inline-block; margin-right:5px; margin-top: -3px;}
span.info-value.esperto {margin-bottom:0;color:var(--ht-lime);font-family:var(--ht-font-primary); line-height: 1.6rem;display:block; font-size:1.45rem; font-weight:var(--ht-font-400)}
.info-value.prezzo {font-size:1.3rem;  display: inline-flex;flex-direction: column;align-items: flex-end;line-height: 1.1;}
.info-value.su-richiesta {display: inline-flex;flex-direction: column;align-items: flex-end;}
.prezzo-note {font-size: .55em;}
.info-item-price{color:var(--ht-cream); font-weight:var(--ht-font-600);display: flex;justify-content: space-between;align-items: center;font-size:0.9rem}
.box-itinerario {background-color:var(--ht-cream); border-radius:15px; padding:2rem 1.5rem 1.5rem 1.5rem}
.day-meta {font-weight:var(--ht-font-600)}
img.info-icon.info-icon-02 {margin-top: 0px;}
ul.inclusi-list li {list-style-type:square; font-size:0.9rem; margin:5px 0}
ul.inclusi-list {padding-left:1rem}
.day-meta {display: flex;flex-wrap: wrap;align-items: center;gap: 0;}
.day-meta .day-meta-item{display: inline-flex;align-items: center;padding-right: 14px;margin-right: 14px;border-right: 1px solid rgba(0,0,0,.25);}
.day-meta .day-meta-item:last-child{border-right: 0;margin-right: 0;padding-right: 0;}
.accordion-itinerario .accordion-item{background: var(--ht-cream);border-color: rgba(255,255,255,.25);}
.accordion-itinerario .accordion-button{background: var(--ht-cream);color: var(--ht-olive);box-shadow: none;}
.accordion-itinerario .accordion-item { background: var(--ht-cream)!important;}
.accordion-itinerario .accordion-button, .accordion-itinerario .accordion-button:not(.collapsed) {background: var(--ht-cream);}
.accordion-itinerario .accordion-button:not(.collapsed){background:var(--ht-cream);}
.accordion-itinerario .accordion-body{background: var(--ht-cream);}
.accordion-itinerario .accordion-button, .accordion-itinerario .accordion-button:not(.collapsed){background: var(--ht-cream)!important;}
span.giorno {font-family:var(--ht-font-secondary);font-weight:var(--ht-font-600); font-size:0.8rem; text-transform:uppercase }
.accordion-itinerario .accordion-button {padding:0.5rem 0 !important}
.accordion-itinerario .accordion-body {padding:1.5rem 0 !important}
.accordion-itinerario .accordion-body p {margin-bottom:0}
.accordion-itinerario .accordion-button {display:flex;align-items:center;}
.accordion-itinerario .accordion-button .giorno{padding:1.2rem 18px 1.2rem 0!important;display:inline-flex;align-items:center;margin-right: 18px;border-right: 1px solid rgba(0,0,0,.25);white-space: nowrap;}
.accordion-itinerario .accordion-button .titolo-giornata{flex: 1;}
.destinazioni-badges {display: flex; justify-content: center;gap: 0;flex-wrap: wrap;}
a.badge.badge-genitore {
    background-color: var(--ht-lime);
    padding: 5px 8px;
    margin: 0 3px;
    border-radius: 30px;
    color: var(--ht-olive);
    text-decoration: none;
    display: inline-block;
    transition: all 0.3s ease;
}
a.badge.badge-destinazione {
    background-color: var(--ht-lime);
    padding: 5px 8px;
    margin: 0 3px;
    border-radius: 30px;
    color: var(--ht-olive);
    text-decoration: none;
    display: inline-block;
    transition: all 0.3s ease;
}
a.badge.badge-genitore:hover,
a.badge.badge-destinazione:hover {transform: translateY(-2px);box-shadow: 0 2px 8px rgba(0,0,0,0.1);}
.descrizione-itinerario img {border-radius:15px;}
.day-description img {border-radius:15px; width:100%; margin-bottom:10px}
.day-description ul, li {list-style-type:square; font-size: 0.9rem;margin-left:7px}
.descrizione-itinerario ul, li {font-size: 0.9rem;line-height: 1.6rem; list-style-type:square; margin-left:7px}
.descrizione-itinerario a {color: var(--ht-orange);position: relative;text-decoration: none;}
.descrizione-itinerario a:hover {color: var(--ht-orange);}
.descrizione-itinerario a::before {content: ''; color: var(--ht-orange);position: absolute;width: 100%;height: 1px;border-radius: 1px;background-color: var(--ht-orange);bottom: -1px;left: 0;transform-origin: right;transform: scaleX(0);transition: transform .3s ease-in-out;}
.descrizione-itinerario a:hover::before {color:var(--ht-orange);transform-origin: left;transform: scaleX(1);}
.accordion-body a {color: var(--ht-orange);position: relative;text-decoration: none;}
.accordion-body a:hover {color: var(--ht-orange);}
.accordion-body a::before {content: ''; color: var(--ht-orange);position: absolute;width: 100%;height: 1px;border-radius: 1px;background-color: var(--ht-orange);bottom: -1px;left: 0;transform-origin: right;transform: scaleX(0);transition: transform .3s ease-in-out;}
.accordion-body a:hover::before {color:var(--ht-orange);transform-origin: left;transform: scaleX(1);}

/*Mappa*/
.mappa-tappa {width: 100%;height: 450px !important;margin: 25px 0;border-radius: 15px;overflow: hidden;}
.leaflet-control-attribution {font-size: 10px;background: rgba(255,255,255,0.8) !important;}
.leaflet-popup-content-wrapper {border-radius: 12px;box-shadow: 0 3px 14px rgba(0,0,0,0.3);}
.leaflet-popup-tip {box-shadow: 0 3px 14px rgba(0,0,0,0.3);}
.custom-marker {animation: markerBounce 1s ease-out;}
@keyframes markerBounce {
    0% {
        transform: translateY(-100px);
        opacity: 0;
    }
    50% {
        transform: translateY(10px);
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}
.distance-label {
    animation: fadeIn 1.5s ease-in;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: scale(0.8);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/*Tassonomie*/
h6.badge {background-color: var(--ht-lime); padding:4px 10px 5px 10px; border-radius:20px; color:var(--ht-olive); font-size:0.85em; z-index:100; position:absolute; margin: 15px;}
.card-itinerario {background: #f5f5f0;border-radius: 20px;padding: 30px;height: 100%;display: flex;flex-direction: column;text-decoration: none;color: inherit;transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04); position: relative; will-change: transform; }
.card-itinerario img {border-top-left-radius:20px; border-top-right-radius:20px}
.card-text p {line-height: 1.4rem;}
.divider {border-top: 1px dashed #ccc;margin: 10px 0;height: 1px;}
span.persona {font-size:0.7rem; display:block; margin-top:-8px}
span.green {font-size:1.4rem; color:var(--ht-olive-medium); font-weight:var(--ht-font-600); margin-top:-3px}
span.durata {    letter-spacing: -0.2px;font-size:0.9rem; color:var(--ht-olive-medium); font-weight:var(--ht-font-600); margin-top:-3px}
.card-itinerario .clamp-2{display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;}
.card-footer {padding:20px}
.card-body h2{color:var(--ht-olive-medium);}
span.d-block {margin-bottom: -2px;}
p.prezzo {font-size:0.8rem}
.card-body {}

/*Filtri*/
.itinerari-filter .form-label { color: inherit;font-size: 0.7rem;text-transform: uppercase;}
.itinerari-filter .form-select { border-radius: 5px;font-size: 0.85rem;font-weight: var(--ht-font-500);}
.form-select {padding: 12.5px 10px!important;}
.itinerari-filter{background: rgba(255,255,255,.06);border: 1px solid rgba(255,255,255,.12);border-radius: 5px;padding: 14px;backdrop-filter: blur(8px);}
.select-xenia{
  border-radius: 5px;
  padding: 12px 44px 12px 14px;  /* spazio a destra per la freccia */
  font-weight: 600;
  border: 1px solid rgba(0,0,0,.12);
  box-shadow: 0 8px 22px rgba(0,0,0,.06);
  background-color: #fff;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

/* hover/focus */
.select-xenia:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 32px rgba(0,0,0,.10);
}

.select-xenia:focus{
  border-color: rgba(0,0,0,.35);
  box-shadow: 0 0 0 .25rem rgba(0,0,0,.12);
}
.select-xenia:disabled{
  opacity: .55;
  cursor: not-allowed;
  background-color: rgba(255,255,255,.65);
  box-shadow: none;
  transform: none;
}
.itinerari-filter .btn{
  border-radius: 5px;
  padding: 12px 14px;
  font-weight: 700;
  box-shadow: 0 10px 24px rgba(0,0,0,.10);
}
.itinerari-filter .btn:hover{
  transform: translateY(-1px);
}
.select-xenia{
  appearance: none;
  -webkit-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(0,0,0,.55) 50%),
    linear-gradient(135deg, rgba(0,0,0,.55) 50%, transparent 50%);
  background-position:
    calc(100% - 18px) 55%,
    calc(100% - 12px) 55%;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
}
.itinerari-grid{ position: relative; }
.itinerari-loader{
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,.65);
  backdrop-filter: blur(4px);
  display: grid;
  place-items: center;
  z-index: 50;
}
.itinerari-loader::after{
  content: "";
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 3px solid rgba(0,0,0,.15);
  border-top-color: rgba(0,0,0,.65);
  animation: spin .8s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg); } }

/*Liste Regalo*/
.gift-list-container {}
.wrapper-form  {padding:3rem; margin:0 auto}
.password-form-wrapper {margin: 0 auto;}
 #access_password:focus,
#access_password:focus-visible {outline: none; box-shadow: none;border:2px solid var(--ht-orange)!important;}
.form-regalo-container {background: white; padding: 40px; border-radius: 10px; box-shadow: 0 2px 15px rgba(0,0,0,0.1);}
.giftlist-gallery img {border-radius:15px; width:100%}
.gradient-green {background: #414033;
background: -webkit-linear-gradient(90deg,rgba(65, 64, 51, 1) 0%, rgba(115, 112, 83, 1) 50%);
background: -moz-linear-gradient(90deg,rgba(65, 64, 51, 1) 0%, rgba(115, 112, 83, 1) 50%);
background: linear-gradient(90deg,rgba(65, 64, 51, 1) 0%, rgba(115, 112, 83, 1) 50%);
filter: progid:DXImageTransform.Microsoft.gradient(
  startColorstr="#414033",
  endColorstr="#737053",
  GradientType=1
);
color: var(--ht-white); padding: 35px; border-radius: 12px; text-align: center; box-shadow: 0 4px 15px rgba(0,0,0,0.2);}

.gradient-orange {
background: #F4AB54;
background: -webkit-linear-gradient(90deg, rgba(244, 171, 84, 1) 0%, rgba(244, 159, 84, 1) 50%);
background: -moz-linear-gradient(90deg, rgba(244, 171, 84, 1) 0%, rgba(244, 159, 84, 1) 50%);
background: linear-gradient(90deg, rgba(244, 171, 84, 1) 0%, rgba(244, 159, 84, 1) 50%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#F4AB54", endColorstr="#F49F54", GradientType=1);
color: var(--ht-white); padding: 35px; border-radius: 12px; text-align: center; box-shadow: 0 4px 15px rgba(0,0,0,0.2);}
.gift-donations-table {width: 100%;border-collapse: collapse;}
@media (max-width: 768px) {
  .gift-donations-table thead {
    display: none;
  }

  .gift-donations-table,
  .gift-donations-table tbody,
  .gift-donations-table tr,
  .gift-donations-table td {
    display: block;
    width: 100%;
  }

  .gift-donations-table tr {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 10px 12px;
    margin-bottom: 12px;
    background: #fff;
  }

  .gift-donations-table td {
    border: 0 !important;
    padding: 8px 0 !important;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
  }

  /* Etichetta a sinistra */
  .gift-donations-table td::before {
    content: attr(data-label);
    font-weight: 600;
    color: #495057;
    flex: 0 0 110px;
  }

  /* Valore a destra */
  .gift-donations-table td > * {
    margin: 0;
  }

  /* Messaggio: vai a capo bene */
  .gift-donations-table td[data-label="Messaggio"] {
    flex-direction: column;
  }
  .gift-donations-table td[data-label="Messaggio"]::before {
    margin-bottom: 6px;
    flex: none;
  }

  /* Importo: no-wrap */
  .gift-donations-table td[data-label="Importo"] strong {
    white-space: nowrap;
  }
}

/*Footer*/
footer{position: relative;background-color: var(--ht-olive);overflow: hidden;}
footer::before{content: "";position: absolute;inset: 0;background-image: url(/images/zebra-bg.svg);background-size: cover;background-repeat: no-repeat;background-position: center;opacity: .50;pointer-events: none;z-index: 0;}
footer > *{position: relative;z-index: 1;}
.footer-olive {border-bottom:1px solid var(--ht-olive);background-color:#504f45;}
footer ul li {font-family:var(--ht-font-secondary); color:var(--ht-cream); font-size:0.9rem; list-style-type:none; margin-bottom:5px;}
footer h4 {font-family:var(--ht-font-primary); color:var(--ht-cream);font-size:1.8rem}
footer h5 {font-family:var(--ht-font-secondary); color:var(--ht-cream);font-size:1.2rem}
footer h6 {font-family:var(--ht-font-primary); font-size:1.3rem; color:var(--ht-cream); border-bottom:1px dashed #706f64; padding-bottom:8px; margin-bottom:10px;display:inline-block}
footer p {font-family:var(--ht-font-secondary); color:var(--ht-cream); font-size:0.9rem;line-height: 1.6rem;}
footer .ref a:before, .ref-1 a:after { content: ''; border-bottom: solid 1px white; position: absolute; bottom: 0; width: 0;}
ul.social li {display:inline-block; margin-left:15px;}
.icon {width: 25px;height: 25px; color:var(--ht-cream);transition: transform 220ms ease-in-out; }
.icon:hover {transform: scale(1.2);transform-origin: center;}
.pattern {background-image:url(/images/pattern.svg); background-repeat:repeat-x;height:20px}
.pattern-02 {background-image:url(/images/pattern-02.svg); background-repeat:repeat-x;height:20px}
.pattern-inverse {background-image:url(/images/pattern-inverse.svg); background-repeat:repeat-x;height:20px}
.text-white {color:var(--ht-cream)!important;}

@media only screen and (max-width: 1450px) {
.section-container {padding:4rem 1.5rem}
.section-container-cta{padding:4rem 2.2rem}
.slider-navigation {margin-left:2.2rem}
.swiper-wrapper {padding-left:2.2rem;}
}

@media only screen and (max-width: 1200px) {
.carousel-caption h1 {font-size: 3.8rem; line-height:4.1rem;}
h1 {font-size: 3rem; line-height: 3.2rem;}
}

@media only screen and (max-width: 991px) {
.accordion-button {font-size:1.2rem;}
.accordion-body {font-size:0.85rem;}
#carouselHero .carousel-item img {height: 350px;}
.mw-960 {max-width:100%}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {margin:0 5px}
}

@media only screen and (max-width: 767px) {
.destination-card {padding: 20px;}
.mw-750 {max-width:100%}
.carousel-caption h1 {font-size: 3.4rem; line-height:3.6rem;}
h1 {font-size: 2.7rem; line-height: 2.9rem;}
.section-container {padding: 3rem 1.5rem;}
.carousel-item img,
.carousel-item video {height: 750px;} 
.destination-card p {font-size: 0.85rem;}
.info-grid {margin-top:0}
.section-container-cta{padding:3rem 2.5rem}
.gift-donations-table td::before {display:none}
}

@media only screen and (max-width: 650px) {
.pattern, .pattern-02, .pattern-inverse {height: 15px;}
}

@media only screen and (max-width: 576px) {
#carouselRandom #search-area.search-fullscreen {padding:6px 5px !important}
.swiper {padding-top:0!important}
.wrapper-form {padding:2.5rem 2rem; width:100%; max-width:100%!important;}
.section-container-cta{padding:2.5rem 2.3rem}
#carouselHero .carousel-item img {height: 250px;}
.destination-card {padding: 20px;}
.carousel-caption h1 {font-size: 2.8rem; line-height:3rem;}
h1 {font-size: 2.4rem;line-height: 2.6rem;}
.pattern, .pattern-02, .pattern-inverse {height: 10px;}
.carousel-item img,
.carousel-item video {height: 550px;} 
.section-container {padding:2.5rem 1.5rem}
.section-container-swiper {padding:2.5rem 0}
.itinerari-bg {background-attachment: scroll !important;}
}

  @media (max-width: 768px){

  body.mmm-open #carouselRandom .carousel-caption{
    display: none !important;
  }

}

h1.print, h3.print {display:none}

@media print {
body {font-size: 12pt;line-height: 1.5;color: #000;background: white;}
* {background: white !important;color: black !important;box-shadow: none !important;text-shadow: none !important;}
header, footer, nav, .sidebar, .ads, img, video, .no-print {display: none !important;}
.hero-image img, .destinazioni-badges {display:none}
.hero-image h1, .hero-image blockquote {color:#000!important}
.info-grid {padding:0;margin-top:0}
.itinerario-hero {margin-bottom:0}
section.container.fluid.section-container-cta.pt-0 {display:none}
.container, .mw-1450 {width:100%; max-width:100%; padding:0}
.section-container, .section-container-swiper, .section-container-cta {padding:0}
.hero-image blockquote, h2.mb-2, .hero-image, hr.mini, button.lime, a.lime {display:none}
h1 {font-size:2rem; text-align:left; margin-bottom:0!important}
h1.print, h3.print {display:block}
.pattern-02 {display:none}
h1, h2, h3 {page-break-after: avoid;}
h3 {font-size:1.5rem;font-family: var(--ht-font-primary)!important;}
.info-agente {display:none}
.info-item {margin-bottom:0}
p, li {page-break-inside: avoid;}
p {margin-bottom:10px}

a[href]:after {content: " (" attr(href) ")";}
.accordion-button {font-family: var(--ht-font-secondary)!important;font-weight: var(--ht-font-600)!important;font-size: 0.8rem!important;text-transform:uppercase!important}
h2 {font-family: var(--ht-font-secondary)!important;font-weight: var(--ht-font-600)!important;font-size: 0.8rem!important;}
.mappa-tappa {display: none !important;}
.day-meta.mb-2 {margin-bottom:0!important}
.day-meta .day-meta-item {display:none}
.accordion-itinerario .accordion-button .giorno {padding:0 15px 0 0!important}
.accordion-itinerario .accordion-button, .accordion .accordion-button {padding: 15px 0 0.5rem 0 !important;}
.accordion-itinerario .accordion-body, .accordion .accordion-body {padding:0 0 10px 0!important;}
.accordion-itinerario .accordion-button, .accordion .accordion-button {padding:0}
.accordion-itinerario .accordion-collapse.collapse:not(.show), .accordion .accordion-collapse.collapse:not(.show) {display: block !important;}
.accordion-collapse.collapse.show {border-top: 0 dashed var(--ht-brown);}
.accordion-itinerario .accordion-collapse,
.accordion-itinerario .accordion-collapse.collapse,
.accordion-itinerario .accordion-collapse.collapsing {display: block !important;height: auto !important;max-height: none !important;overflow: visible !important;visibility: visible !important;}
.accordion-itinerario .accordion-button, .accordion .accordion-button {background: transparent !important;box-shadow: none !important;color: #000 !important;}
.accordion-itinerario .accordion-button::after, .accordion .accordion-button::after {display: none !important;content: none !important;}
.accordion-itinerario .accordion-item,.accordion-itinerario .accordion-body {break-inside: avoid;page-break-inside: avoid;}
.accordion-itinerario .accordion-item, .accordion .accordion-item {margin-top:5px}
.accordion-itinerario .accordion-body, .accordion .accordion-body {padding:5px 0}
.accordion-itinerario .accordion-body p, .accordion .accordion-body p {margin-bottom: 0;line-height: 1.4rem;}
  /* tutti gli accordion NON itinerario */
  .accordion:not(.accordion-itinerario) .accordion-item,
  .accordion:not(.accordion-itinerario) .accordion-body{
    break-inside: auto !important;
    page-break-inside: auto !important;
  }
ul.inclusi-list {margin-bottom:0}
  /* se hai testi lunghi in p/ul/li meglio non bloccarli */
  .accordion:not(.accordion-itinerario) p,
  .accordion:not(.accordion-itinerario) ul,
  .accordion:not(.accordion-itinerario) ol,
  .accordion:not(.accordion-itinerario) li{
    break-inside: auto !important;
    page-break-inside: auto !important;
  }
.inclusi-text {font-size:0.85rem!important}
ul.inclusi-list li {margin: 0 0;}
  .info-item-price{
    display: flex !important;
    justify-content: flex-start !important; /* niente “spazio tra” */
    align-items: baseline !important;
    gap: 6pt; /* spazio tra label e prezzo */
    flex-wrap: nowrap !important;
    white-space: nowrap !important; /* una riga sola */
  }

  .info-item-price .info-label,
  .info-item-price .info-value,
  .info-item-price .prezzo-note{
    white-space: nowrap !important;
  }

  /* lo small va inline e senza margin-top */
  .info-item-price .prezzo-note{
    display: inline !important;
    margin: 0 !important;
  }
  
.info-value.prezzo {font-size: 0.9rem;}
.info-value.prezzo{display: inline !important; }
.info-value.prezzo .prezzo-note{ display: inline !important; margin: 0 !important; }
.mt-3 {margin-top:0!important}
h1.text-center.text-white.mb-3 {display:none}
.box-itinerario {padding:0!important}
}


/* HERO: niente pannellone */
#carouselRandom #search-area.search-fullscreen{align-items: stretch;}
#carouselRandom .search-box{
  max-width: 720px;
  margin: 0 auto;
}
#carouselRandom .search-box input.ais-SearchBox-input{font-size: 1rem; font-weight:var(--ht-font-600);padding: .9rem 1.2rem;border-radius: 12px;}
#carouselRandom .carousel-caption{
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  width: min(900px, 92vw) !important;
  z-index: 999;

  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}
#search-overlay.is-active ~ * .carouselRandom .carousel-caption {z-index: 3000 !important;}
#carouselRandom .hero-search{width: 100%;position: relative;}
#carouselRandom .search-box{ position: relative; z-index: 30;}

/* RISULTATI: overlay sotto input, non spinge la pagina */
#carouselRandom #search-results{
  position: absolute !important;
  left: 0;
  right: 0;
  top: calc(100% + 10px);   /* subito sotto l’input */
  z-index: 20;

  /* max-height: 55vh;*/
  overflow: auto;

  margin: 0 !important;
  transform: none !important;
}

/* show/hide */
#carouselRandom #search-results.hidden{ display:none !important; }
#carouselRandom #search-results.visible{ display:block !important; opacity:1 !important; }