/*hero*/
.popular-location .single-location .location-img img {height: 230px;}
.slider-area form.search-box { margin-bottom: 30px; }

.slider-area form.search-box {}

.boton-buscador::before{content:"";position:absolute;left:0;top:0;width:101%;height:101%;background:var(--fondo-menu-principal);z-index:1;border-radius:5px;
    transition:transform 0.5s;transition-timing-function:ease;transform-origin:0 0;transition-timing-function:cubic-bezier(0.5, 1.6, 0.4, 0.7);transform:scaleX(0);border-radius:0; }
.boton-buscador:hover::before{transform:scaleX(1);color:#fff !important;z-index:-1; }

.logo .fondo-blanco { background-color: white; }
/*fin hero*/

/* preload */
.preloader .preloader-img img { max-width: 60px; }
.preloader .preloader-circle { width: 70px; height: 70px; }
/* fin preload */

/** SLICK-ARROW BANNERS **/
.slick-prev-banners, .slick-next-banners { font-size:2rem; color: var(--fondo-menu-principal); }
.slick-prev-banners:hover, .slick-next-banners:hover { color: var(--fondo-botones-principales); }

.slick-prev-bannersAgencia:hover, .slick-next-bannersAgencia:hover { background-color: var(--fondo-botones-principales); border: 1px var(--fondo-botones-principales) solid; color: white;}

.home-blog-area .single-team .team-img img { object-fit: cover; width: 100%; height: 100%; }
.home-blog-area .single-team .team-img { height: 300px; margin-bottom: 10px; }
.home-blog-area .single-team .team-caption span { font-size: 1rem; line-height: 1; margin-bottom: 0.5rem; }
.home-blog-area .single-team .team-caption h2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.home-blog-area .single-team .team-caption h3 { font-size: 1rem; line-height: 1; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }

/** reviewws + testimoniales **/
.btn.btn-go { background-color:var(--fondo-botones-principales) !important; }
.btn-ellipsis button:hover { color: var(--fondo-botones-principales, #000000);}
.icono-prev-reviews, .icono-next-reviews, .icono-prev-testimonios, .icono-next-testimonios {
    color: var(--fondo-botones-principales, #000000) !important; background-color: var(--texto-menu, var(--primary-bg-color-opacity, #ffffff)) !important;
    border: 2px solid var(--fondo-botones-principales, #000000) !important; }
.icono-prev-reviews:hover, .icono-next-reviews:hover, .icono-prev-testimonios:hover, .icono-next-testimonios:hover { 
    color: var(--texto-menu, #ffffff) !important; background-color: var(--fondo-menu-principal, var(--primary-bg-color, #000000)) !important; 
    border: 2px solid var(--fondo-menu-principal, var(--primary-bg-color, #000000)) !important; }

.h1-testimonial-active .slick-next, .h1-testimonial-active .slick-prev { font-size:2rem; color: var(--fondo-botones-principales, #000000) !important; font-weight: 700 !important;}
.h1-testimonial-active .slick-next:hover, .h1-testimonial-active .slick-prev:hover { color: var(--fondo-menu-principal, darkblue) !important; font-weight: 700 !important;}

.testimonial-area .testimonial-caption .testimonial-founder .founder-text span { color:  var(--fondo-botones-principales, #000000) !important; }

/** Contact area **/
.services-area.contact-area { color: var(--fondo-botones-principales);  }
.services-area.contact-area form { font-weight: 700; }
.services-area.contact-area h5, .services-area.contact-area .color-texto-titulos{ color: var(--fondo-botones-principales, #ffffff); font-weight: 700; }
.services-area.contact-area .texto-general { color: white !important; }
.services-area.contact-area .contact-info .item-info { justify-content: left; }

.services-area.contact-area .contact-info a { font-size: 1.25rem; color: white; }
.services-area.contact-area .contact-info a:hover { font-size: 1.25rem; font-weight:700; color: var(--fondo-botones-principales, #ffffff); }

.services-area.contact-area .single-services.contact-info .services-icon { margin-bottom: 5px; width: 37px; height: 37px; line-height: 37px; border-radius: 50%; }
.services-area.contact-area .single-services.contact-info .services-icon::before { top: -12px; left: -12px; width: 60px; height: 60px; }
.services-area.contact-area .single-services.contact-info .services-icon span { color: var(--fondo-botones-principales); font-size: 1em; padding: 2px 5px 2px 5px; }

#mapa_agencia iframe { width: 100% !important; height: 325px !important; border: 0; }

.descripcion_larga ul, .content-text ul { margin: 0px 0px 20px 20px; }
.descripcion_larga li, .content-text li { list-style: initial; }

@media (max-width: 575px) {
    .container-cotizador { padding-top:125px; padding-bottom: 0px; }
    .container-cotizador .hero__caption { padding-top: 25px;}
    
    .services-area.contact-area .contact-info .item-info { justify-content: center; }
    .footer-area .footer-logo, .footer-area #servicios_menu, .footer-area #footer_contact { text-align: center;}
    .footer-area #nosotros { margin-bottom: 20px; }
}

/** hentry cards - noticias, products **/
.hero-area2 .hero-cap h2 i { font-size: 0.8em; }
.breadcrumb{ margin-top: 50px; }
#crumb { color: var(--texto-menu); }
#crumb:hover { color: var(--fondo-botones-principales); }

.texto-general { color: var(--texto-general) !important; }
.contenedor-precio .h1 { color: var(--fondo-botones-principales); font-weight:700; }

.hentry { margin: 0 0 45px; }
.blog .hentry, .archive .hentry, .search .hentry { border-bottom: 1px solid; border-bottom-color: var(--border); padding-bottom: 20px; }
.hentry.post-style-2 { border-bottom: none; margin-bottom: 30px; }
.hentry .post-thumbnail { position: relative; }
.hentry img { height: auto; max-width: 100%; display: block; border: 0; }
.hentry .wp-post-image { margin-right: auto; }
.hentry .post-thumbnail img { border-radius: 20px; }
.hentry .entry-content { padding: 0.5rem 1rem; box-shadow: 0 2px 4px 0 rgb(0 0 0 / 16%);
	border-radius: 20px; border-top-left-radius: 0px; border-top-right-radius: 0px; }
.hentry .entry-content-wrapper { position: relative; }
.hentry .entry-meta { font-size: 14px; font-weight: 500; margin-bottom: 6px; line-height: 1em;
	display: inline-flex; flex-wrap: wrap; align-items: center; }
.hentry .entry-meta > span { margin-bottom: 5px; }
.entry-meta > span:not(:last-child) { padding-right: 15px; }
.entry-meta > span.categories-link { padding-right: 15px; }
.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%);
	clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute;
	width: 1px; word-wrap: normal !important; }
.elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible {
	position: absolute; top: -10000em; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden;
	clip: rect(0, 0, 0, 0); border: 0; }
.entry-meta > span > * { vertical-align: middle; }
.hentry .categories-link a { font-size: 11px; text-transform: uppercase; line-height: 20px; padding: 2px 10px;
	font-weight: 500; color: #fff; background-color: var(--fondo-botones-principales); margin-right: 3px;
	display: inline-block; border-radius: 3px; }
.hentry .entry-meta .price-tag { text-transform: uppercase;padding: 10px; font-weight: 700; color: var(--texto-menu, #ffffff); background-color: var(--fondo-botones-principales);
    font-size: 1.2rem;}
.hentry.post-style-2 .entry-title { font-size: 1.5rem; line-height: 1.25; font-weight: 700; margin-bottom: 6px;
	height: 50px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.hentry .entry-bottom { max-height: 35px; height: 35px; line-height: 1.3; }
.hentry .entry-bottom p {margin-top: 0; margin-bottom: 15px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.hentry .more-link-wrap { display: block; }
.hentry .more-link { font-size: 1rem; font-weight: 700; color: var(--fondo-menu-principal); }
.hentry .more-link:hover {color: var(--fondo-botones-principales); }
/** fin custom-cards hentry **/

/** bodas **/
.list-footer.tag-price { font-size:1.2rem; }
.navbar-toggler { background: var(--fondo-botones-principales); color: var(--texto-menu, #ffffff) !important; font-size: 1.5rem; }

@media only screen and (min-width: 1200px) and (max-width: 1600px){
    .contenedor-precio .h1 { font-size:2.5rem;}
}
@media only screen and (min-width: 992px) and (max-width: 1199px){
    .contenedor-precio .h1 { font-size:2rem;}
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    #bodasvue .subscribe-area { padding:0;}
    .contenedor-precio .texto-general { font-size:80%;}
    .contenedor-precio .h1 { font-size:1.5rem;}
}
@media (max-width: 575px) {
    #bodasvue .subscribe-area { padding:0px; }
    #bodasvue .subscribe-area form.search-box .input-form { width: inherit; padding-left:25px; }
    #bodasvue .subscribe-area form.search-box .input-form input { margin-bottom: auto; padding-left:10px; }
    #bodasvue .subscribe-area form.search-box .search-form { width: inherit; border-top-right-radius: 50px; border-bottom-right-radius: 50px; }
    .contenedor-precio .h1 { font-size:2.5rem;}
}

@media (max-width: 768px) {
    .header-bottom.header-sticky.sticky-bar { padding: 12px 50px; }
    #bodaDetalle .gallery, #bodaDetalle .bodaInfo { margin-left:0px; margin-right:0px; }
    #bodaDetalle #single-listing-grid-gallery { margin-bottom: 20px; }
    
    .content-text img { max-width:100% !important; }
    .content-text iframe { max-width:100% !important;} 
}

/*destinos recomendados*/
.popular-location .single-location .location-details{ }

#promodetalletw .btn.btn-cotizar { background: var(--fondo-menu-principal) !important; color: var(--texto-menu) !important; }
#promodetalletw .btn.btn-cotizar::before { background: var(--fondo-botones-principales) !important; }
/*fin destinos recomendados*/

.fb_iframe_widget span { min-width:110px !important; min-height:50px !important; }
.fb_iframe_widget span iframe { min-width:110px !important; min-height:50px !important; }

/** Gallery **/
.gallery .card { border-radius: 20px; }
.gallery .card .albums-slick img { object-fit: cover; width: 100%; height: 200px; max-height: 200px; border-top-left-radius: 20px; border-top-right-radius: 20px; }

/** pagination **/
.pagination { justify-content: center; margin-top: 50px; }
.pagination li a { font-size: 14px;position: relative; display: inline-block; padding: 0; text-align: center; margin-left: -1px; line-height: 45px; width: 45px; height: 45px; border-radius: 0 !important; color: #8a8a8a; border: 1px solid #f0e9ff; margin-right: 10px; }
ul.yiiPager a:link, ul.yiiPager a:visited { color: #8a8a8a; border: 1px solid #f0e9ff; }
ul.yiiPager li.active a { border: solid 2px var(--fondo-menu-principal, #0e509e); color: var(--fondo-menu-principal, #0e509e); font-weight: 700; }
ul.yiiPager li.active a:hover, ul.yiiPager a:hover { border: solid 2px var(--fondo-botones-principales, #0e509e); color: var(--fondo-botones-principales, #0e509e); }
ul.yiiPager .hidden a { color: #8a8a8a; border: 1px solid #f0e9ff; }


/**   MEGATOP   **/
.megatop .title-line { display:none; }
.megatop .title-top { text-align: center; font-size: 30px; font-weight: 700; margin-bottom: 22px; color: var(--texto-titulos, #1c1930); 
    font-family: "Sacramento", cursive; margin-top:2rem; }
.megatop .title-top-tema4, .megatop .title-line-bottom { display:none; }
.megatop .title-mega { text-align: center; font-size: 50px; color: var(--texto-titulos, #1c1930); font-weight: 600; margin-bottom: 70px; }
.megatop .grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 20px; max-width: 1200px; margin: 0 auto; }
.megatop .card { background: #fff; border-radius: 10px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.12); display: flex; flex-direction: column; }
.megatop .card img { width: 100%; aspect-ratio: 9 / 16; object-fit: cover; display: block; }
.megatop .card-body { padding: 14px 16px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.megatop .card-title { font-size: 1.5rem; font-weight: 700; color: var(--texto-titulos, #111); }
.megatop .card-badges { display: flex; gap: 8px; flex-wrap: wrap; }
.megatop .badge {  
    /* Mix the base color (dodgerblue) with 20% white */
    background-color: color-mix(in srgb, var(--fondo-menu-principal) 20%, white 80%);
    color: var(--fondo-menu-principal); font-size: 0.78rem; font-weight: 600; padding: 3px 10px; border-radius: 20px; }
.megatop .card-price { margin-top: auto; padding-top: 10px; border-top: 1px solid #eee; }
.megatop .card-price .label { font-size: 0.72rem; color: var(--texto-general, #888); text-transform: uppercase; letter-spacing: 0.04em; }
.megatop .card-price .amount { font-size: 1.4rem; font-weight: 800;    white-space: nowrap; }
.megatop .card-price .amount .price { font-size: 1.5rem; color: var(--fondo-botones-principales, #e63946); }
.megatop .card-price .amount .currency { font-size: 0.85rem; font-weight: 500; color: #555; }
.megatop .card-price .amount .imp { font-size: 0.78rem; font-weight: 500; color: #888; }
.megatop .loading, .megatop .error { text-align: center; padding: 40px; font-size: 1rem; color: #666; }
.megatop .error { color: #c0392b; }
.megatop .megapromos-wrap { max-width: 1200px; margin: 0 auto 32px; }
.megatop .megapromos-wrap h2 { font-size: 1.2rem; color: var(--texto-titulos, #333); margin-bottom: 12px; }
.megatop .megapromos-wrap ul { list-style: none; display: flex; flex-wrap: wrap; gap: 12px; }
.megatop .megapromos-wrap li a img { display: block; max-width: 100%; border-radius: 6px; }

/* =============================================
   RESPONSIVE BREAKPOINTS
   xlg : >= 1400px  (pantallas grandes / 4K)
   lg  : >= 992px   (desktop estándar)
   md  : >= 768px   (tablet landscape / portrait)
   xs  :  < 576px   (móviles)
   ============================================= */
/* XLG — pantallas muy grandes (>= 1400px) */
@media (min-width: 1400px) {
  .megatop .grid { grid-template-columns: repeat(5, 1fr); max-width: 1600px; gap: 24px; }
  .megatop .megapromos-wrap { max-width: 1600px; }
  .megatop h1 { font-size: 2rem; }
}
/* LG — desktop estándar (992px – 1399px) */
@media (min-width: 992px) and (max-width: 1399px) {
  .megatop .grid { grid-template-columns: repeat(5, 1fr); gap: 15px; }
}
/* MD — tablet (768px – 991px) */
@media (min-width: 768px) and (max-width: 991px) {
  .megatop .grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .megatop h1 { font-size: 1.4rem; }
  .megatop .megapromos-wrap ul { gap: 10px; }
}
/* SM — móvil grande (576px – 767px) */
@media (min-width: 576px) and (max-width: 767px) {
  .megatop .grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
  .megatop h1 { font-size: 1.3rem; }
}
/* XS — móviles pequeños (< 576px) */
@media (max-width: 575px) {
  .megatop .grid { grid-template-columns: 1fr; gap: 12px; }
  .megatop h1 { font-size: 1.2rem; margin-bottom: 16px; }
  .megatop .card img { aspect-ratio: 16 / 9; }
  .megatop .card-body { padding: 12px; }
  .megatop .card-price .amount { font-size: 1.2rem; }
  .megatop .megapromos-wrap { margin-bottom: 20px; }
  .megatop .megapromos-wrap ul { gap: 8px; }
  .megatop .megapromos-wrap h2 { font-size: 1rem; }
}
/** END MEGATOP **/









