@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@600;700;800&family=Source+Sans+3:wght@400;600;700&display=swap');

/* latin-ext */

/*rorbot condensed */
/* cyrillic-ext */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Condensed'), local('RobotoCondensed-Regular'), url('../fonts/robotocondensed/v16/ieVl2ZhZI2eCN5jzbjEETS9weq8-19-7DQk6YvNkeg.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Condensed'), local('RobotoCondensed-Regular'), url('../fonts/robotocondensed/v16/ieVl2ZhZI2eCN5jzbjEETS9weq8-19a7DQk6YvNkeg.woff2') format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Condensed'), local('RobotoCondensed-Regular'), url('../fonts/robotocondensed/v16/ieVl2ZhZI2eCN5jzbjEETS9weq8-1967DQk6YvNkeg.woff2') format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Condensed'), local('RobotoCondensed-Regular'), url('../fonts/robotocondensed/v16/ieVl2ZhZI2eCN5jzbjEETS9weq8-19G7DQk6YvNkeg.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Condensed'), local('RobotoCondensed-Regular'), url('../fonts/robotocondensed/v16/ieVl2ZhZI2eCN5jzbjEETS9weq8-1927DQk6YvNkeg.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Condensed'), local('RobotoCondensed-Regular'), url('../fonts/robotocondensed/v16/ieVl2ZhZI2eCN5jzbjEETS9weq8-19y7DQk6YvNkeg.woff2') format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Condensed'), local('RobotoCondensed-Regular'), url('../fonts/robotocondensed/v16/ieVl2ZhZI2eCN5jzbjEETS9weq8-19K7DQk6YvM.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/*robot conednsed */











@font-face {
  font-family: 'Glyphicons Halflings';
  src: url("../fonts/glyphicons-halflings-regular.eot");
  src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
}






@font-face {
    font-family: 'dinmedium';
    src: url('../fonts/din-medium-webfont.woff2') format('woff2'),
         url('../fonts/din-medium-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}



/*

@font-face {
    font-family: 'caviar_dreamsregular';
    src: url('../fonts/caviardreams-webfont.woff2') format('woff2'),
         url('../fonts/caviardreams-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'caviar_dreamsbold';
    src: url('../fonts/caviardreams_bold-webfont.woff2') format('woff2'),
         url('../fonts/caviardreams_bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
*/

.theme-primary, body {
  font-family: 'Source Sans 3', sans-serif;
  font-size: 16.5px;
  line-height: 1.55;
  font-weight: 400;
}

.wrap{padding-top:0.1rem !important;}

.scriptjs{
	box-shadow: 0 0 1px 1px red !important;
	
}

/* Nexi Lightbox */
.nexi-lightbox-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    padding: 1.5rem;
}

.nexi-lightbox-overlay.visible {
    display: flex;
}

.nexi-lightbox-content {
    position: relative;
    width: 100%;
    max-width: 720px;
    height: 80vh;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
}

.nexi-lightbox-frame {
    width: 100%;
    height: 100%;
    border: 0;
    background: #f9f9f9;
}

.nexi-lightbox-close {
    position: absolute;
    top: 8px;
    right: 12px;
    border: 0;
    background: transparent;
    color: #333;
    font-size: 2rem;
    line-height: 1;
    cursor: pointer;
    z-index: 2;
}

body.nexi-lightbox-open {
    overflow: hidden;
}







/* ---- Timeline ---- */

.ol_li ol {
	position: relative;
	display: block;
	margin: 60px 30px;
	height: 4px;
	background: #10c469;
}
.ol_li ol::before,
.ol_li ol::after {
	content: "";
	position: absolute;
	top: -8px;
	display: block;
	width: 0;
	height: 0;
  border-radius: 10px;
	border: 10px solid #10c469;
}
.ol_li ol::before {
	left: -5px;
}
.ol_li ol::after {
	right: -10px;
	border: 10px solid transparent;
	border-right: 0;
	border-left: 20px solid #10c469;
  border-radius: 3px;
}

/* ---- Timeline elements ---- */

.inl li {
	position: relative;
	top: -77px;
	display: inline-block;
	float: left;
	width: 150px;
	transform: rotate(-45deg);
	font: bold 14px arial;
}
.ol_li li::before {
	content: "";
	position: absolute;
	top: 3px;
	left: -29px;
	display: block;
	width: 6px;
	height: 6px;
	border: 4px solid #10c469;
	border-radius: 10px;
	background: #eee;
}

/* ---- Details ---- */

.details {
	display: none;

	position: absolute;
	left: -85px;
	top: 60px;
	padding: 15px;
	border-radius: 3px;
	border-right: 2px solid rgba(0,0,0,.1);
	border-bottom: 2px solid rgba(0,0,0,.1);
	transform: rotate(45deg);
	font: 12px arial;
	background: #fff;
}
.details::before {
	content: "";
	position: absolute;
	left: 10px;
	top: -9px;
	display: block;
	width: 0;
	height: 0;
	border: 10px solid transparent;
	border-bottom-color: #fff;
	border-top: 0;
}
/* ---- Hover effects ---- */

.ol_li li:hover {
	cursor: pointer;
  color: #28e;	z-index:100;
}
.ol_li li:hover::before {
	top: 1px;
	left: -31px;
	width: 8px;
	height: 8px;
	border-width: 5px;
	border-color: #28e;

}
.ol_li li:hover .details {
	display: block;
  color: #444;

}











@media (max-width: 767px){

  /*.ol_li ol,#imgMapContainer {
    display:none; }
	*/
	.ol_li{
		display:none;
	}
	}



.to_top {
    position: fixed;
    bottom: 5%;
    right: 5%;
    z-index: 100;
}

#imgMapContainer{
position:relative;
/*display: inline;*/
}
#Mappa_rit,#Mappa_rit{
cursor:pointer;
}








/*click menu*/
#_lg {
	   position: absolute;
   right:0px;
    background-color: #f9f9f9;
    min-width: 360px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    padding: 22px 26px;
    z-index: 1;
	color:#010144;
}
#_lgcont{
position:relative;
padding:20px;
}

#_lgcont a{
	/*font-family: 'caviar_dreamsbold';*/
}

/*click menu*/


.skin_src{
	    padding: 10px 0px;


	border-radius:5px;
	/*
  background:rgba(255, 255, 255, 0.90) none repeat scroll 0 0;
  box-shadow:2px 7px 4px rgba(10, 20, 30, 0.08);
  */


}

.ui-datepicker, .carousel-indicators, .carousel-control{
	z-index: 10001 !important;
}

.grey-bk{
background:#f0f4fb;
}


#cookie_banner_container{
  display: block;
    bottom: 0px;
    left: 0px;

    padding: 20px;
    width: 100%;
    position: fixed;
    text-align: center;
	background: rgba(200, 200, 200, 0.5);
}
#c_cnt{


	 z-index: 100;
	position:relative;

}

input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill {
    background-color: rgb(255,255,255) !important;
    background-image: none !important;
    color: rgb(0, 0, 0) !important;
}


.sectionl{
	background:#f5f7f9;
	padding-top:20px;
	padding-bottom:20px;
}


.ml-0{margin-left: 0px;} .mr-0{margin-right: 0px;}
.position-absolute{position:absolute;}
.position-relative{position:relative;}

.tit-f{
	font-family: "Roboto Condensed","Arial",sans-serif;

}

.tit-f2{
	font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
}





.full {
  background: url("../img/promo/Curcio_iubilaeum.jpg") 0 0 no-repeat;
  min-height: 400px;
}

.full.offer-pacchetti{
  background: url("../img/promo/Curcio_pacchetti_promo.jpg") 0 0 no-repeat;
}

.full.offer-pacchetto-evidenza{
  background-position: center center;
  background-repeat: no-repeat;
}
.half {
  background: url("../img/banner/roma.jpg") 0 0 no-repeat;
  min-height: 187px;

}
.half2 {
  background: url("../img/banner/toscana.jpg") 0 0 no-repeat;
  min-height: 187px;
}
.half3 {
  background: url("../img/banner/umbria.jpg") 0 0 no-repeat;
  min-height: 187px;
}
.half4 {
  background: url("../img/banner/fiumicino.jpg") 0 0 no-repeat;
  min-height: 187px;
}
.service-tile {
  min-height: 187px;
  background-position: center;
  background-repeat: no-repeat;
  display: block;
  color: #fff;
  text-decoration: none;
}
.service-tile .h-100 {
  padding: 0 18px;
}
.service-tile h3 {
  font-size: 1.35rem;
  margin-bottom: 12px;
}
.service-tile p {
  font-size: 1.05rem;
  line-height: 1.6;
}
.service-servizi {
  background-image: url("../img/servizi.jpg");
}
.service-bagagli {
  background-image: url("../img/bagagli.jpg");
}
.service-reclami {
  background-image: url("../img/reclami.jpg");
}
.service-soddisfazione {
  background-image: url("../img/soddisfazione.jpg");
}
.service-tile .service-cta {
  display: inline-block;
  margin-top: 18px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.service-tile:hover .service-cta {
  text-decoration: underline;
}
.full, .half, .half2, .half3, .half4, .service-tile {
  background-size: cover;
  position: relative;
	    border: 1px solid #ddd;
    margin-bottom: 20px;
	border-radius: 5px;
  background-color: rgba(0, 0, 0, 0.3); 
  background-blend-mode: multiply;
      color: #fff;
}
.service-tile:hover {
  color: #fff;
}
.service-tile:hover h3,
.service-tile:hover p,
.service-tile:hover .service-cta {
  color: #fff;
}



.full:hover .overlay-effect, .half:hover .overlay-effect, .half2:hover .overlay-effect, .half3:hover .overlay-effect, .half4:hover .overlay-effect, .service-tile:hover .overlay-effect {
  opacity: 1;
  cursor: pointer;
}

.overlay-effect {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  transition: .5s ease;
  background-color: rgba(0, 0, 0, 0.7);
  overflow:hidden;
  pointer-events: none;
}

/* Offers: click on background opens lightbox */
.offer-bg-link{
  position:absolute;
  top:0; bottom:0; left:0; right:0;
  z-index:1;
  display:block;
}
.offer-tile-content{
  position:relative;
  z-index:2;
}

.full a,
.half a,
.half2 a,
.half3 a,
.half4 a{
  color: #fff;

}

.full h3,
.half h3,
.half2 h3,
.half3 h3,
.half4 h3,
.service-tile h3{
 /* padding: 15px 30px;*/
}



.h-100 {
  width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);

}
.w-100 {
	position: relative;
}


/*
.cont2{

	position:relative;
	min-height: 200px;
}
.h-1002{
	position: absolute;
	top: 50%;
    transform: translateY(-50%);
}

*/


@media screen and (max-width: 768px) {
  .full, .half, .half2, .service-tile {margin-bottom: 10px;}
}
.offers{
	text-align: center;
	color:#fff;
}
.offers .price{
	font-size: 20px;
}
.offers h3{
	text-shadow: 1px 1px 2px #000;
}


.social{
	text-align: right;
}

.social-icon {
    display: inline-block;
    width: 25px;
    height: 25px;

    margin-left: 15px;
    vertical-align: middle;
    background: no-repeat center;
    background-size: contain;
}

.social-icon--facebook {
    background-image: url("../img/social/svg/facebook.svg");
}
.social-icon--twitter {
    background-image: url("../img/social/svg/twitter.svg");
}
.social-icon--youtube {
    background-image: url("../img/social/svg/youtube.svg");
}
.social-icon--instagram {
    background-image: url("../img/social/svg/insta.svg");
}
.social-icon--snapchat {
    background-image: url("../img/social/svg/snapchat.svg");
}
.social-icon--google {
    background-image: url("../img/social/svg/google_plus.svg");
}
.social-icon--whatsapp {
    background-image: url("../img/social/svg/whatsapp.svg");
}

/* Home featured grid (pacchetti/categorie) */
#featured-offers { text-align: left; }
.pck-feature-card{
  display:block;
  text-decoration:none;
  color:inherit;
}
.pck-feature-card__inner{
  position:relative;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  box-shadow: 0 6px 22px rgba(0,0,0,.08);
}
.pck-feature-card__media{
  position:relative;
  height:270px;
  background-image: var(--pck-bg);
  background-size: cover;
  background-position:center;
  transition: background-image .25s ease;
}
.pck-feature-card__media::after{
  content:'';
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.45) 100%);
  opacity:1;
  pointer-events:none;
}
.pck-feature-card__date{
  position:absolute;
  top:14px;
  left:14px;
  z-index:3;
  width:58px;
  height:58px;
  border-radius:10px;
  background: rgba(255,255,255,.22);
  border: 1px solid rgba(255,255,255,.26);
  backdrop-filter: blur(6px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff;
  text-shadow: 0 1px 2px rgba(0,0,0,.6);
}
.pck-feature-card__date-day{ font-size:18px; font-weight:700; line-height:1; }
.pck-feature-card__date-mon{ font-size:11px; font-weight:700; letter-spacing:.12em; margin-top:3px; }
.pck-feature-card__hover{
  position:absolute;
  inset:0;
  padding:18px;
  display:flex;
  flex-direction:column;
  gap:10px;
  background: rgba(0,0,0,.72);
  z-index:4;
  transform: translateY(100%);
  transition: transform .28s ease;
}
.pck-feature-card__hover-title{
  font-size:18px;
  font-weight:700;
  color:#fff;
}
.pck-feature-card__hover-text{
  font-size:13px;
  line-height:1.45;
  color: rgba(255,255,255,.86);
  max-height: 7.2em;
  overflow:hidden;
}
.pck-feature-card__overlay-cta{
  margin-top:auto;
  align-self:flex-end;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  font-weight:700;
  letter-spacing:.03em;
}
.pck-feature-card__overlay-cta-text{
  color:#fff;
  text-transform: uppercase;
  font-size:12px;
}
.pck-feature-card__overlay-cta-icon{
  width:46px;
  height:46px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f4c542;
  color:#111;
  flex:0 0 auto;
}
.pck-feature-card:hover .pck-feature-card__media{ background-image: var(--pck-bg-hover) !important; }
.pck-feature-card:hover .pck-feature-card__hover{ transform: translateY(0); }
.pck-feature-card__meta{
  padding:12px 14px 14px 14px;
  text-align:left;
  min-height: 110px;
}
.pck-feature-card__title{
  font-size:16px;
  font-weight:600;
  color:#2b2b2b;
}
.pck-feature-card__price{
  margin-top:6px;
  font-size:18px;
  font-weight:700;
  color:#111;
  min-height: 24px;
}
.pck-feature-card__price.is-empty{ opacity:0; }



@media (max-width: 767px){
.app-footer,.social  {
	text-align:center !important;
}

}




.about-back{
	text-align: center;
	/*background: url('../img/curcio/1.jpg')  no-repeat center center fixed;*/
	background: url('../img/curcio/1.jpg')  no-repeat center center fixed;
	-webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
    padding: 50px 15px 20px 15px;
min-height: 480px;

}




.about-back2{
	text-align: center;
	background: url('../img/curcio/1.jpg')  no-repeat center center fixed;
/*	background: url('../img/azienda/3.jpg')  no-repeat center center fixed;*/
	-webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
    padding: 50px 15px 20px 15px;
min-height: 400px;

}

.spot{
	display: inline-block;
/*	background-color:  rgba(255,255,255,0.75);*/
	border-radius: 5px;
	 padding: 8px 20px;
}
.spot h1{

/*	color: #444;*/

	font-weight: 700;
	font-size: 1.75em;
	font-family: "Roboto Condensed","Arial",sans-serif;
	margin:0;

}

/*
#_part,#_arr{


}
*/
.menu_sel{
	max-height:170px;overflow:hidden;
}

.border-0{
	border-radius: 0px;

}

.pointy{
	pointer-events:visible !important;
}
.pointn{
	pointer-events:none !important;
}


.h-30{
	min-height: 280px;
}

.h-20{
	min-height: 200px;
}
.h-50{
	min-height: 50px;
}
.h-80{
	min-height: 80px;
}


.img_lf{
	width: 90px; height: 90px; line-height: 100px;
}

.img_lf2{
	width: 145px; height: 145px; line-height: 100px;
}

.nopadding {
   padding: 0 !important;
   margin: 0 !important;
}


.more-items-li{
	visibility: hidden;
}


.mt-0{
	margin-top: 0px;
}

.ex1 {
  min-height: 150px;
}
.ex2 {
  min-height: 200px;
}
.m-h-10{
	min-height: 10px !important;
}
.a-r{
 text-align: right;
}
.f-l{
  float:left !important;
}
.amount{
  text-decoration: none !important;
}
.amount-sm{
  font-size: 20px !important;
}
.amount-lg{
  font-size: 35px !important;
}
.style-4 ins{
  text-decoration: none;
}
.offerta{
  top: 40px;
    left: -10px;
    position: absolute;
    z-index: 1;
}
.rel{
  position: relative;
}


.modal-dialog2{
  width: 400px;
  margin:30px auto;
}

.absolute{
  position: absolute;
}
.top-0{
  top:0;
  }
.r-0{
  right: 0;
}
.centered {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 100000000;
  transform: translate(-50%, -50%);
  background: rgba(242, 242, 242, 0.5);

  padding:15px;
  border-radius:10px;
  text-align: center;

}


@keyframes lampeggio {
  0%, 100% {
      opacity: 1;
  }
  50% {
      opacity: 0;
  }
}

.lampeggia {
  animation: lampeggio 2s infinite;
}



.message {
  color: white;
  /*background-color: rgb(253, 167, 167);*/
  padding: 10px; 
  border-radius: 5px;
  position: fixed;
  top: 10%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10001;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s, visibility 0.5s;
  max-width: 90%; 
  min-width: 300px; 
  text-align: center; 
  word-wrap: break-word; 

}

.message.show {
  opacity: 1;
  visibility: visible;
  
}
.opacity-75{opacity:.75!important}
.pointer{
cursor:pointer !important;
}







small {
    font-size: .775em;
}

.fz-sm{
  font-size: 17px !important;
}
.fz-md{
  font-size: 21px !important;
}
.fz-lg{
  font-size: 25px !important;
}

/*prevnext*/
.date-navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 10px 0;
    padding: 1px;
    background: #f8f9fa;
    border-radius: 2px;
}

.date-item {
    text-align: center;
    padding: 1px 3px;
    cursor: pointer;
    flex: 1;
    transition: all 0.3s ease;
}

.date-item.active {
    background: #010144;
    color: #ccc;
    border-radius: 2px;
    transform: scale(1.05);
}

.date-item:hover:not(.active) {
    background: #e9ecef;
}
.date-item.disabled {
    opacity: 0.5;
    cursor: not-allowed;
    background-color: #eee;
}



/*.prevnext*/


.app-menu a{font-size:1.3rem !important;}
.theme-primary .menubar .app-menu li.active>a,.theme-primary .menubar .app-menu li.menu-heading>a,.theme-primary .menubar .app-menu li.open>a,.theme-primary .menubar .app-menu li:hover>a,.theme-primary .navbar-brand,.theme-primary .navbar-brand:focus,.theme-primary .navbar-brand:hover,.theme-primary .theme-color{color:#fff !important;}

.fw-900{font-weight:900!important}
.menu-side{font-size: 1.2rem;}

/* Booking card */
.booking-card {
	background: rgba(255, 255, 255, 0.7);
    border-radius: 18px;
    box-shadow: 0 14px 32px rgba(20, 32, 54, .18);
    padding: 24px 28px;
    backdrop-filter: blur(5px);
}

.booking-card__row {
	margin-bottom: 18px;
}

.booking-card__row:last-child {
	margin-bottom: 0;
}

.booking-card__trip {
	display: flex;
	align-items: center;
	gap: 18px;
	font-size: 16px;
}

.booking-card__row--fields > [class*="col-"],
.booking-card__row--dates > [class*="col-"] {
	margin-bottom: 12px;
}

.booking-card__swap-col {
	display: grid;
	align-items: center;
	justify-content: center;
}

.booking-card__swap-btn {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.booking-card__swap-btn .fa {
	font-size: 18px;
}

.btn-circle {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.booking-input {
	position: relative;
}

.booking-input__icon {
	position: absolute;
	top: 50%;
	left: 18px;
	transform: translateY(-50%);
	font-size: 18px;
	color: #5f6b82;
}

.booking-input__control {
	width: 100%;
	border-radius: 14px;
	border: 1px solid #d5d9e2;
	box-shadow: none;
	padding: 16px 18px 16px 52px;
	font-size: 16px;
	line-height: 1.3;
	color: #1d2a46;
	transition: border-color .18s ease, box-shadow .18s ease;
}

.booking-input__control:focus {
	border-color: #0d4d8b;
	box-shadow: 0 0 0 3px rgba(13,77,139,.18);
}

.booking-input__control::placeholder {
	color: #6f7c94;
	opacity: 1;
}

.booking-passengers {
	position: relative;
}

.booking-passengers .booking-input__control {
	cursor: pointer;
}

.booking-passengers.is-open .booking-input__control {
	border-color: #0d4d8b;
	box-shadow: 0 0 0 3px rgba(13,77,139,.18);
}

.booking-card__popover {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	width: 100%;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 24px 45px rgba(25,35,52,.22);
	padding: 18px;
	z-index: 30;
}

.booking-card__popover-line {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
	font-size: 15px;
}

.booking-card__popover-line:last-child {
	margin-bottom: 0;
}

.booking-card__stepper {
	display: flex;
	align-items: center;
	gap: 10px;
}

.booking-card__stepper button {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 1px solid #d5d9e2;
	background: #fff;
	font-size: 18px;
	line-height: 1;
}

.booking-card__stepper span {
	min-width: 20px;
	text-align: center;
	font-weight: 600;
}

.booking-card__submit-col {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.booking-card__submit {
	padding: 10px 22px;
	border-radius: 14px;
	font-size: 16px;
	font-weight: 600;
}

@media (min-width: 768px) {
	.booking-card__row--fields > [class*="col-"],
	.booking-card__row--dates > [class*="col-"] {
		margin-bottom: 0;
	}
}

@media (max-width: 1200px) {
	.booking-card {
		padding: 20px;
	}

	.booking-card__submit-col {
		justify-content: flex-start;
	}

	.booking-card__row--fields {
		display: grid;
		grid-template-columns: 1fr;
		grid-template-areas:
			"from"
			"swap"
			"to"
			"pass";
		gap: 12px;
		margin-left: 0;
		margin-right: 0;
    margin-bottom: 7px;
	}

	.booking-card__row--fields > .col-xs-12 {
		float: none;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		margin: 0;
	}

	.booking-card__row--fields > .col-xs-12:first-child {
		grid-area: from;
}

	.booking-card__row--fields > .col-xs-12:nth-child(3) {
		grid-area: to;
}

	.booking-card__row--fields > .col-xs-12:nth-child(4) {
		grid-area: pass;
}

	.booking-card__swap-col {
		grid-area: swap;
		justify-content: flex-end;
		margin: 0;
		width: 40px !important;
		position: absolute;
		top: 74px;
		right: 18px;
}

	.booking-card__swap-btn {
		    width: 36px;
        height: 36px;
        margin-top: 10px;
        z-index: 1;
	}

	.booking-card__row--dates {
		margin-left: 0;
		margin-right: 0;
	}

	.booking-card__row--dates > .col-xs-12 {
		float: none;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		margin-bottom: 12px;
	}

	.booking-card__row--dates > .col-xs-12:last-child {
		margin-bottom: 0;
	}
}



a:focus,a:hover{color:#31708f !important;}
.alert-custom.alert-info{border-color:#010144 !important;}
@media (max-width: 767px) {
	.mail-container td.pull-right {
		float: none !important;
		display: block;
		width: 100%;
		text-align: left;
		padding-top: 12px;
	}

	.mail-container td.pull-right .mail-item-star,
	.mail-container td.pull-right .mail-item-star a {
		text-align: left;
	}
}

/* BEGIN MENU TEST 2026-09-24 — rimuovere questo blocco per il ripristino. */
body.curcio-header { padding-top: 0; }
body.curcio-header h1,
body.curcio-header h2,
body.curcio-header h3,
body.curcio-header h4,
body.curcio-header h5,
body.curcio-header h6,
body.curcio-header button,
body.curcio-header .btn,
body.curcio-header .curcio-menu,
body.curcio-header .tit-f,
body.curcio-header .tit-f2 { font-family: 'Outfit', sans-serif; font-weight: 800; }
body.curcio-header input,
body.curcio-header select,
body.curcio-header textarea { font-family: 'Source Sans 3', sans-serif; }
body.curcio-header h1,
body.curcio-header h2,
body.curcio-header h3,
body.curcio-header h4,
body.curcio-header h5,
body.curcio-header h6 { font-family: 'Outfit', sans-serif; font-weight: 800; letter-spacing: -.02em; }
body.curcio-header h1 { font-size: clamp(2rem, 4vw, 3.55rem); line-height: .98; }
body.curcio-header h2 { font-size: clamp(1.75rem, 3.2vw, 3rem); line-height: 1; }
body.curcio-header h3 { font-size: 1.45rem; line-height: 1.1; }
body.curcio-header h4 { font-size: 1.25rem; line-height: 1.2; }
body.curcio-header h5 { font-size: 1.1rem; }
body.curcio-header h6 { font-size: 1rem; }
body.curcio-header .app-main { margin-left: 0; }
body.menubar-top.curcio-header .app-main { width: 100%; max-width: 1680px; margin-right: auto; margin-left: auto; padding-right: 24px; padding-left: 24px; }
.curcio-site-header { position: absolute; z-index: 1030; top: 0; left: 0; right: 0; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "logo navigation account"; align-items: center; gap: 14px; width: calc(100% - 48px); max-width: 1632px; min-height: 66px; margin: 12px auto 0; padding: 6px 18px; border-radius: 18px; background: #010144; color: #fff; box-shadow: 0 8px 24px rgba(1, 1, 68, .14); }
.curcio-inner .curcio-site-header { position: relative; }
.curcio-topbar { display: contents; }
.curcio-logo { grid-area: logo; flex-shrink: 0; }
.curcio-logo img { display: block; width: 112px; height: auto; }
.curcio-topbar #_lgcont { grid-area: account; position: relative; margin-left: auto; padding: 0; font-size: 14px; white-space: nowrap; }
.curcio-account-toggle, .curcio-menu-toggle { border: 1px solid rgba(255,255,255,.25); border-radius: 12px; background: transparent; color: #fff; padding: 10px 14px; font: inherit; min-height: 44px; }
.curcio-topbar a.text-white:hover, .curcio-topbar a.text-white:focus { color: #f4df37 !important; }
.curcio-account-toggle:hover, .curcio-menu-toggle:hover { background: rgba(255,255,255,.12); }
.curcio-topbar #_lg { display: none; top: calc(100% + 14px); width: 360px; min-width: 0; max-width: calc(100vw - 40px); border: 1px solid #dde3ed; border-radius: 16px; box-shadow: 0 14px 36px rgba(1,1,68,.18); z-index: 2; }
.curcio-topbar #_lg.is-open { display: block; }
.curcio-menu-toggle { display: none; align-items: center; gap: 8px; }
.curcio-navigation { grid-area: navigation; min-width: 0; background: transparent !important; padding: 0; }
.curcio-navigation .menubar-scroll, .curcio-navigation .slimScrollDiv, .curcio-navigation .menubar-scroll-inner { height: auto !important; overflow: visible !important; width: auto !important; }
.curcio-navigation .slimScrollBar, .curcio-navigation .slimScrollRail { display: none !important; }
.curcio-menu, .curcio-submenu { list-style: none; margin: 0; padding: 0; }
.curcio-menu { display: flex; align-items: center; justify-content: center; flex-wrap: nowrap; gap: 1px; }
.curcio-menu > li { position: relative; display: flex; align-items: center; border-radius: 12px; }
.curcio-menu a { display: block; padding: 10px 8px; font-size: 16px; font-weight: 600; line-height: 1.35; color: #fff; text-decoration: none; white-space: nowrap; border-radius: 11px; }
.curcio-menu a:hover, .curcio-menu a:focus, .curcio-menu a[aria-current="page"] { color: #010144 !important; background: rgba(255,255,255,.92); }
.curcio-menu .menu-separator { display: none; }
.curcio-submenu-toggle { display: grid; place-items: center; width: 28px; min-height: 40px; padding: 0; border: 0; border-radius: 10px; background: transparent; color: #fff; }
.curcio-submenu-toggle[aria-expanded="true"] i { transform: rotate(180deg); }
.curcio-menu .has-submenu > a { padding-right: 4px; }
.curcio-menu .curcio-submenu { display: none; position: absolute; top: 100%; left: 0; min-width: 260px; max-height: min(70vh, 560px); overflow-y: auto; padding: 8px; border: 1px solid #dde3ed; border-radius: 16px; background: #f5f7fb; box-shadow: 0 14px 36px rgba(1,1,68,.14); z-index: 1; }
.curcio-menu .is-open > .curcio-submenu { display: block; }
.curcio-submenu a { padding: 11px 12px; color: #010144; font-weight: 500; text-shadow: none; }
.curcio-submenu a:hover, .curcio-submenu a:focus, .curcio-submenu a[aria-current="page"] { color: #010144 !important; background: rgba(1,1,68,.07); }
.curcio-site-header a:focus-visible, .curcio-site-header button:focus-visible { outline: 3px solid #c2a600; outline-offset: 2px; }
.curcio-inner #c_slide .carousel-inner { display: none; }
.curcio-inner #c_slide.visible { padding: 24px 0; background: #fff; }
.curcio-inner #c_slide .cont_slide { position: relative !important; bottom: auto; display: flow-root; }
.curcio-home #c_slide .carousel-inner > .item > img { width: 100%; }
.curcio-home #c_slide .curcio-slide-indicators { display: flex !important; z-index: 10 !important; align-items: center; justify-content: flex-start; gap: 7px; right: auto; bottom: 18px; left: max(24px, calc((100% - 1680px) / 2 + 24px)); width: auto; margin: 0; }
.curcio-home #c_slide .curcio-slide-indicators li { width: 9px; height: 9px; margin: 0; border: 0; border-radius: 999px; background: rgba(255,255,255,.9); box-shadow: 0 1px 4px rgba(1,1,68,.2); transition: width .25s ease, background-color .25s ease; }
.curcio-home #c_slide .curcio-slide-indicators li.active { width: 30px; height: 9px; margin: 0; background: #f4df37; }
.curcio-events-strip { position: relative; display: grid; grid-template-columns: auto minmax(240px, 1fr) auto; align-items: center; gap: 20px; min-height: 72px; overflow: hidden; margin: 18px 12px 24px; padding: 12px 24px; border-radius: 16px; background: linear-gradient(105deg, #04386d 0%, #005eaa 64%, #00376b 100%); color: #fff; box-shadow: 0 12px 28px rgba(1,1,68,.12); }
.curcio-events-strip::after { position: absolute; right: 18%; bottom: -36px; width: 280px; height: 90px; border-radius: 50%; background: repeating-linear-gradient(90deg, rgba(255,255,255,.08) 0 3px, transparent 3px 12px); content: ''; transform: rotate(-5deg); pointer-events: none; }
.curcio-events-strip__title { position: relative; z-index: 1; display: flex; align-items: center; gap: 18px; padding-right: 22px; border-right: 1px solid rgba(255,255,255,.65); white-space: nowrap; }
.curcio-events-strip__title i { color: #f4df37; font-size: 31px; transform: rotate(-8deg); }
body.curcio-header .curcio-events-strip__title strong { font-family: 'Outfit', sans-serif; font-size: 21px; font-weight: 800; line-height: 1.15; }
.curcio-events-strip p { position: relative; z-index: 1; margin: 0; color: #fff; font-size: 14px; line-height: 1.35; }
.curcio-events-strip__button { position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 44px; padding: 10px 24px; border-radius: 999px; background: #f4df37; color: #010144; font-weight: 800; white-space: nowrap; }
.curcio-events-strip__button:hover, .curcio-events-strip__button:focus { background: #fff06a; color: #010144 !important; text-decoration: none; }

.curcio-experience-card { display: block; height: 100%; overflow: hidden; border-radius: 20px; background: #fff; color: inherit; text-align: left; text-decoration: none; box-shadow: 0 14px 32px rgba(1,1,68,.09); transition: transform .2s ease, box-shadow .2s ease; }
.curcio-experience-card:hover, .curcio-experience-card:focus { color: inherit !important; text-decoration: none; transform: translateY(-3px); box-shadow: 0 22px 42px rgba(1,1,68,.15); }
.curcio-experience-card img { display: block; width: 100%; height: 205px; object-fit: cover; }
.curcio-experience-body { min-height: 180px; padding: 1.25rem 1.3rem 1.4rem; }
.curcio-experience-body > span { color: #167dac; font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
body.curcio-header .curcio-experience-body h3 { margin: .35rem 0 .55rem; color: #010144; font-family: 'Outfit', sans-serif; font-size: 1.45rem; font-weight: 800; line-height: 1.1; letter-spacing: -.02em; }
.curcio-experience-body p { margin: 0; color: #557282; line-height: 1.55; }
.curcio-destination-price strong { color: #010144; font-size: 1.25rem; }
#departures .curcio-experience-body h3 { margin: .35rem 0 .55rem; color: #010144; font-family: 'Outfit', sans-serif; font-size: 1.45rem; font-weight: 800; line-height: 1.1; letter-spacing: -.02em; text-shadow: none; }
#departures .curcio-experience-body p { color: #557282; text-shadow: none; }
#services > [class*="col-"], #departures > [class*="col-"] { margin-bottom: 24px; }
.curcio-about-section .app-main { padding-right: 0 !important; padding-left: 0 !important; }
.curcio-info-section .widget { height: 100%; overflow: hidden; border-radius: 20px; background: #fff; box-shadow: 0 14px 32px rgba(1,1,68,.08); }
.curcio-info-section .widget-header { padding: 1.25rem 1.3rem 0; }
body.curcio-header .curcio-info-section .widget-title { margin: 0; color: #167dac; font-family: 'Source Sans 3', sans-serif; font-size: .72rem; font-weight: 800; line-height: 1.3; letter-spacing: .1em; text-transform: uppercase; }
.curcio-info-section .widget-separator { display: none; }
.curcio-info-section .widget-body { padding: .45rem 1.3rem 1.4rem; }
body.curcio-header .curcio-info-section .widget-body > h4 { margin: 0 0 .7rem; color: #010144 !important; font-family: 'Outfit', sans-serif; font-size: 1.45rem; font-weight: 800; line-height: 1.1; letter-spacing: -.02em; }
#toggle-cerca-biglietti-section { padding: 10px; border: 1px solid #e4e9f1; border-radius: 16px; background: #fff; box-shadow: 0 10px 26px rgba(1,1,68,.07); }
#toggle-cerca-biglietti-section > .row { margin-right: 0; margin-left: 0; }
#toggle-cerca-biglietti-section > .row > .app-main { padding-right: 0; padding-left: 0; }
.curcio-ticket-tools { display: flex; gap: 8px; padding: 0; }
.curcio-ticket-tools__item { flex: 0 1 auto; }
.curcio-ticket-tool { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; padding: 10px 15px; border-radius: 11px; color: #010144; font-weight: 700; transition: background-color .2s ease, color .2s ease; }
.curcio-ticket-tool:hover, .curcio-ticket-tool:focus { background: #eef2f8; color: #010144 !important; }
.curcio-ticket-tool .toggle-icon { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 7px; background: #eef2f8; color: #010144; }
#risultato { padding-right: 0; padding-left: 0; }
#risultato .mail-item { overflow: hidden; border-radius: 14px; box-shadow: 0 8px 22px rgba(1,1,68,.07); }
.curcio-ticket-rules { margin-right: 0; margin-left: 0; }
.curcio-ticket-rules > .panel-body, .curcio-ticket-rules > .panel-body > [class*="col-"] { padding-right: 0; padding-left: 0; }
.curcio-ticket-rules .row.m-b-xl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0 0 20px !important; }
.curcio-ticket-rules .row.m-b-xl > [class*="col-"] { float: none; width: auto; min-width: 0; padding: 16px !important; border: 1px solid #e4e9f1; border-radius: 14px; background: #fff; box-shadow: 0 8px 22px rgba(1,1,68,.06); }
.curcio-ticket-rules h4 { margin: 0 0 8px; color: #010144; }
.curcio-ticket-rules .text-muted { opacity: 1; color: #557282; }

.app-footer h5, .app-footer h6 { margin: 0 0 8px; color: #aaacae; font-family: 'Source Sans 3', sans-serif !important; font-size: 13px !important; font-weight: 400 !important; line-height: 1.45; letter-spacing: 0; }
.app-footer .copyright { color: #aaacae; font-size: 13px; line-height: 1.55; letter-spacing: 0; }
@media (max-width: 1279px) {
  .curcio-site-header { display: block; width: 100%; min-height: 0; margin-top: 8px; padding: 0 24px; border-radius: 0; background: transparent; box-shadow: none; }
  .curcio-topbar { display: flex; align-items: center; gap: 8px; min-height: 58px; padding: 6px 10px; border-radius: 16px; background: #010144; box-shadow: 0 8px 24px rgba(1,1,68,.14); }
  .curcio-menu-toggle { display: inline-flex; font-size: 14px; }
  .curcio-navigation { display: none; padding: 8px 0 12px; }
  .curcio-navigation.is-open { display: block; margin-top: 8px; padding: 8px; border: 1px solid #dde3ed; border-radius: 16px; background: #fff !important; box-shadow: 0 14px 36px rgba(1,1,68,.16); }
  .curcio-menu { display: block; max-height: 70vh; overflow-y: auto; }
  .curcio-menu > li { flex-wrap: wrap; }
  .curcio-menu > li > a { flex: 1; min-height: 46px; padding: 13px 12px; color: #010144; font-size: 16px; text-shadow: none; }
  .curcio-submenu-toggle { width: 48px; min-height: 46px; }
  .curcio-submenu-toggle i { display: inline-block; font-size: 22px; font-weight: 700; line-height: 1; }
  .curcio-menu > .has-submenu > .curcio-submenu-toggle { margin-right: 4px; background: #eef2f8; color: #010144; }
  .curcio-menu .curcio-submenu { position: static; flex-basis: 100%; min-width: 0; max-height: none; margin: 0 4px 8px; box-shadow: none; }
  .curcio-topbar #_lg { right: -76px; max-width: calc(100vw - 44px); }
}
@media (max-width: 767px) {
  .curcio-ticket-tools { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .curcio-ticket-tools__item { min-width: 0; }
  .curcio-ticket-tool { justify-content: center; width: 100%; min-height: 48px; padding: 8px 7px; font-size: 13px; white-space: nowrap; }
  .curcio-ticket-tool .toggle-icon { flex: 0 0 20px; width: 20px; height: 20px; }
  .curcio-ticket-rules .row.m-b-xl { grid-template-columns: 1fr; }
  .mail-container td.pull-right { padding-right: 0; padding-left: 0; }

  .curcio-home #c_slide .curcio-slide-indicators { bottom: 12px; left: 12px; }
  .curcio-events-strip { grid-template-columns: 1fr; gap: 12px; margin-top: 12px; padding: 18px; }
  .curcio-events-strip__title { padding: 0 0 12px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.4); white-space: normal; }
  .curcio-events-strip p br { display: none; }
  .curcio-events-strip__button { width: 100%; }

  .curcio-site-header { padding-right: 12px; padding-left: 12px; }
  body.menubar-top.curcio-header .app-main { padding-right: 12px; padding-left: 12px; }
  .curcio-info-section { padding-right: 0 !important; padding-left: 0 !important; }
  .curcio-experience-card img { height: 220px; }
  .curcio-experience-body { min-height: 0; }
}
@media (max-width: 480px) {
  .curcio-topbar { flex-wrap: wrap; }
  .curcio-logo img { width: 88px; }
  .curcio-topbar #_lgcont { position: static; font-size: 12px; }
  .curcio-topbar { position: relative; }
  .curcio-topbar #_lg { right: 0; top: calc(100% + 8px); }
  .curcio-account-toggle { padding: 8px; max-width: 140px; overflow-wrap: anywhere; }
  .curcio-topbar #_lgcont > a { margin-right: 6px !important; }
  .curcio-menu-toggle { padding: 8px 10px; }
  .curcio-menu-toggle span { display: none; }
}
/* END MENU TEST 2026-09-24 */
