/* Expo Automóviles del Mundo - ajustes finales de producción */
:root{
  --expo-green:#2F6B3F;
  --expo-red:#A22323;
  --expo-black:#111111;
  --expo-light:#f3f3f3;
  --expo-shadow:0 15px 35px rgba(0,0,0,.08);
  --expo-shadow-hover:0 18px 40px rgba(0,0,0,.11);
}

html{scroll-behavior:smooth!important;}
body{background:#fff;}
section{padding-top:90px!important;padding-bottom:90px!important;}
section.full-screen{padding-top:0!important;padding-bottom:0!important;}
[id]{scroll-margin-top:120px!important;}
#experiencias{scroll-margin-top:120px!important;}
#patrocinadores{scroll-margin-top:230px!important;}
#contacto{scroll-margin-top:120px!important;}

/* Header */
.navbar .container-fluid{min-height:74px!important;padding-left:60px!important;padding-right:60px!important;}
.navbar .container-fluid>.col-auto.col-lg-2{flex:0 0 150px!important;max-width:150px!important;}
.navbar .nav-link{font-weight:600;opacity:1!important;}
.navbar .nav-link:hover,
.navbar .nav-link.active,
.navbar .current-menu-item>.nav-link{color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;}
header .navbar-brand{padding:12px 0!important;display:flex!important;align-items:center!important;}
header .navbar-brand img,
.navbar-brand img,
.navbar.navbar-shrink .navbar-brand img,
.sticky .navbar-brand img,
header.sticky.sticky-active .navbar-brand img{max-height:72px!important;width:auto!important;transform:none!important;transition:none!important;}
header.sticky.sticky-active .navbar-brand .alt-logo{visibility:visible!important;opacity:1!important;width:auto!important;}
header.sticky.sticky-active .navbar-brand .default-logo{visibility:hidden!important;opacity:0!important;width:0!important;}

/* Header contact button */
.header-contact-btn,
.header-contact-btn:focus,
.header-contact-btn:active{width:136px!important;min-width:136px!important;height:44px!important;background:transparent!important;border:1px solid #e5e5e5!important;color:#111!important;box-shadow:none!important;overflow:hidden!important;white-space:nowrap;max-width:none;margin-left:auto;margin-right:auto;}
.header-contact-btn .btn-double-text,
.header-contact-btn .btn-double-text:before,
.header-contact-btn .expo-inline-icon{color:#111!important;}
.header-contact-btn:hover{background:#111!important;border-color:#111!important;color:#fff!important;transform:none!important;}
.header-contact-btn:hover .btn-double-text,
.header-contact-btn:hover .btn-double-text:before,
.header-contact-btn:hover .expo-inline-icon{color:#fff!important;}
.expo-inline-icon{width:1em!important;height:1em!important;display:block!important;color:currentColor!important;}

/* Hero */
.expo-main-title{color:var(--expo-red)!important;}
.expo-intro-date{display:block;margin-bottom:18px;font-weight:700;color:#111!important;}
.expo-hero-image{background-position:center center!important;background-size:cover!important;}
.btn-gradient-fuel-yellow-blue{background:var(--expo-red)!important;background-image:none!important;color:#fff!important;border:0!important;transform:none!important;}
.btn-gradient-fuel-yellow-blue:hover{background:var(--expo-green)!important;color:#fff!important;transform:none!important;}
.btn-dark-gray{background:var(--expo-green)!important;border-color:var(--expo-green)!important;color:#fff!important;transform:none!important;}
.btn-dark-gray:hover{background:var(--expo-red)!important;border-color:var(--expo-red)!important;color:#fff!important;transform:none!important;}
.btn,.btn:hover,.btn:focus{transform:none!important;}
.swiper-pagination-wrapper,.swiper-number-line-pagination{display:none!important;}

/* IV Expo block */
.expo-about-block{padding-top:90px!important;padding-bottom:18px!important;}
.expo-about-block .expo-about-row{margin-bottom:0!important;}
.expo-about-block .expo-roman{font-size:130px!important;line-height:100px!important;letter-spacing:-8px!important;display:inline-block;overflow:visible!important;padding-right:18px!important;transform:translateX(12px)!important;color:#555!important;}
.expo-about-title-green,
.expo-about-title-green strong{color:var(--expo-green)!important;font-family:var(--alt-font)!important;font-weight:600!important;font-size:42px!important;line-height:52.34px!important;letter-spacing:-2px!important;}
.expo-about-title-green strong{display:flex!important;flex-direction:column!important;justify-content:center!important;width:145px!important;height:157.03px!important;max-width:145px!important;}
.expo-about-title-green strong span{display:block!important;white-space:nowrap!important;}
.expo-about-block p strong{font-weight:700;color:#111!important;}

/* Stats */
.expo-stats{background:#fff;padding-top:24px!important;}
.expo-stat-item{border-top:1px solid rgba(0,0,0,.14);padding-top:28px;height:100%;}
.expo-stat-number{font-size:54px;line-height:.95;font-weight:700;color:var(--expo-black);letter-spacing:-2px;}
.expo-stat-title{font-size:18px;font-weight:700;color:var(--expo-red)!important;margin-bottom:8px;}
.expo-stat-text{font-size:16px;line-height:28px;color:#777;max-width:260px;}

/* Section titles */
.expo-section-heading,
.expo-features-title,
.expo-sponsors-title,
.expo-allies-title,
.expo-sede-title,
.expo-features h3{font-family:var(--alt-font)!important;font-weight:600!important;font-size:38px!important;line-height:44px!important;letter-spacing:-2px!important;color:#111!important;}
.expo-features h3 strong{color:#111!important;}
.expo-features .expo-features-title{max-width:760px!important;margin-left:auto!important;margin-right:auto!important;}
.expo-features .expo-features-title br{display:block!important;}
.expo-features .expo-features-title strong{display:inline-block!important;}

/* Experiences */
.expo-features{background:#f7f4ef;}
.expo-features .feature-box{height:286px;min-height:286px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:42px 22px!important;}
.expo-features .expo-card-icon{width:48px;height:48px;margin-bottom:24px;color:var(--expo-green)!important;display:flex;align-items:center;justify-content:center;}
.expo-features .expo-card-icon svg{width:48px!important;height:48px!important;display:block;}
.expo-features .expo-card-icon svg.expo-mic-svg{transform:translateY(3px)!important;transform-origin:center center!important;}
.expo-features .expo-card-title{font-size:17px!important;line-height:1.25!important;font-weight:700!important;white-space:nowrap;max-width:none;margin-left:auto;margin-right:auto;letter-spacing:-.1px;}
.expo-features .expo-card-text{font-size:16px!important;line-height:28px!important;height:84px!important;margin-bottom:0;overflow:hidden;}
.expo-features .feature-box:hover{border-color:transparent!important;box-shadow:none!important;}
.expo-features .feature-box-overlay{background:var(--expo-green)!important;}
.expo-features .feature-box:hover .expo-card-icon,
.expo-features .feature-box:hover .expo-card-title,
.expo-features .feature-box:hover .expo-card-text{color:#fff!important;}

/* Venue */
.expo-sede .btn{min-width:180px;}

/* Photo carousel */
.expo-photo-carousel{padding:0 4.5vw 90px!important;overflow:hidden!important;}
.expo-photo-carousel .container-fluid{padding-left:0!important;padding-right:0!important;overflow:hidden!important;}
.expo-gallery-swiper{width:100%!important;padding-left:0!important;padding-right:0!important;overflow:hidden!important;}
.expo-gallery-slide{width:auto!important;}
.expo-gallery-slide:nth-child(odd) .expo-gallery-img{width:380px;height:490px;}
.expo-gallery-slide:nth-child(even) .expo-gallery-img{width:640px;height:490px;}
.expo-gallery-img{object-fit:cover;border-radius:15px;box-shadow:var(--expo-shadow);display:block;}
.expo-gallery-swiper,
.expo-gallery-swiper .swiper-wrapper,
.expo-gallery-swiper .swiper-slide,
.expo-gallery-swiper .expo-gallery-img{cursor:grab!important;}
.expo-gallery-swiper:active,
.expo-gallery-swiper:active .swiper-wrapper,
.expo-gallery-swiper:active .swiper-slide,
.expo-gallery-swiper:active .expo-gallery-img{cursor:grabbing!important;}

/* Featured logos */
.expo-featured-logos{background:var(--expo-light)!important;padding-top:80px!important;padding-bottom:55px!important;}
.expo-featured-label{font-family:var(--alt-font)!important;font-size:17px!important;line-height:1.28!important;color:#111!important;text-align:center!important;margin-bottom:16px!important;font-style:italic!important;font-weight:500!important;}
.expo-featured-card{height:230px!important;background:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:26px!important;border-radius:6px!important;box-shadow:var(--expo-shadow)!important;transition:transform .2s ease,box-shadow .2s ease!important;}
.expo-featured-card:hover{transform:translateY(-2px)!important;box-shadow:var(--expo-shadow-hover)!important;}
.expo-featured-card img{max-width:100%!important;max-height:165px!important;width:auto!important;height:auto!important;object-fit:contain!important;}

/* Sponsors */
.expo-sponsors{background:var(--expo-light);padding-top:65px!important;}
.expo-sponsors .row-cols-md-5>.col{display:flex;}
.expo-sponsor-card{width:100%;aspect-ratio:1/1;min-height:auto!important;height:auto!important;background:#fff;display:flex;align-items:center;justify-content:center;padding:22px;border-radius:6px!important;box-shadow:var(--expo-shadow)!important;overflow:hidden!important;transition:transform .2s ease,box-shadow .2s ease;}
.expo-sponsor-card:hover{transform:translateY(-2px)!important;box-shadow:var(--expo-shadow-hover)!important;}
.expo-sponsor-card img{max-width:100%;max-height:128px;width:auto;height:auto;object-fit:contain;filter:none!important;opacity:1!important;}

/* Allies */
.expo-allies{padding-top:80px;margin-top:80px;border-top:1px solid rgba(0,0,0,.08);overflow:hidden!important;}
.expo-allies-carousel-wrap{width:calc(100% - 120px)!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important;position:relative!important;}
.expo-allies-swiper{width:100%!important;max-width:none!important;margin:0!important;padding:6px 0 0!important;overflow:hidden!important;}
.expo-allies-swiper .swiper-wrapper{align-items:center!important;transition-timing-function:linear!important;}
.expo-ally-slide{width:220px!important;display:flex;align-items:center;justify-content:center;}
.expo-ally-card{width:210px!important;height:116px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:10px 14px!important;background:#fff!important;border-radius:6px!important;box-shadow:none!important;transform:none!important;transition:none!important;}
.expo-ally-card:hover{box-shadow:none!important;transform:none!important;}
.expo-ally-card img{max-width:98%!important;max-height:98px!important;width:auto!important;height:auto!important;object-fit:contain!important;filter:none!important;opacity:1!important;}
.expo-allies-nav{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
.expo-allies-swiper,
.expo-allies-swiper .swiper-wrapper,
.expo-allies-swiper .swiper-slide,
.expo-allies-swiper .expo-ally-card,
.expo-allies-swiper .expo-ally-card img{cursor:grab!important;}
.expo-allies-swiper:active,
.expo-allies-swiper:active .swiper-wrapper,
.expo-allies-swiper:active .swiper-slide,
.expo-allies-swiper:active .expo-ally-card,
.expo-allies-swiper:active .expo-ally-card img{cursor:grabbing!important;}

/* Footer */
footer{background:#111!important;background-image:none!important;padding-top:85px!important;}
footer a:hover{color:var(--expo-green)!important;}
footer .expo-footer-headline{font-size:40px!important;line-height:1.12!important;max-width:520px;color:#fff!important;margin-top:0!important;margin-bottom:40px!important;}
footer .footer-separator{display:inline-block;margin:0 12px;color:#777;}
footer .privacy-link{margin-left:0!important;}
footer .footer-impulmax-logo img{max-width:190px;width:100%;height:auto;}
footer .footer-impulmax-box{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;}
.scroll-progress{display:none!important;}

/* Hide template custom cursor layers */
.magic-cursor,.drag-cursor,.cursor-drag,.ball-cursor,.cursor-page-inner,.cursor-page-inner.drag,.cursor-page-inner .drag-cursor,.magic-cursor-wrapper{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;}

@media (min-width:1200px) and (max-width:1599px){
  #inicio .row>.col-xl-5{flex:0 0 48%!important;max-width:48%!important;}
  #inicio .row>.col-xl-7{flex:0 0 52%!important;max-width:52%!important;}
  #inicio .expo-main-title{margin-right:0!important;max-width:640px!important;font-size:76px!important;line-height:.95!important;letter-spacing:-3px!important;}
  #inicio .border-start{margin-left:76px!important;padding-left:44px!important;}
}
@media (max-width:1199px){
  .expo-stat-number{font-size:46px;}
  .expo-about-block .expo-roman{font-size:110px!important;line-height:86px!important;}
  .expo-about-title-green,.expo-about-title-green strong{font-size:38px!important;line-height:48px!important;}
  .expo-about-title-green strong{height:145px!important;}
  .expo-section-heading,.expo-features-title,.expo-sponsors-title,.expo-allies-title,.expo-sede-title,.expo-features h3{font-size:34px!important;line-height:40px!important;}
  footer .expo-footer-headline{font-size:34px!important;}
}
@media (max-width:991px){
  section,.expo-section,.expo-sede,.expo-sponsors,.expo-stats{padding-top:75px!important;padding-bottom:75px!important;}
  #experiencias{scroll-margin-top:95px!important;}
  #patrocinadores{scroll-margin-top:170px!important;}
  #contacto{scroll-margin-top:95px!important;}
  .navbar .container-fluid{min-height:68px!important;padding-left:25px!important;padding-right:25px!important;}
  .navbar .container-fluid>.col-auto.col-lg-2{flex:0 0 auto!important;max-width:none!important;}
  header .navbar-brand img,.navbar-brand img,.navbar.navbar-shrink .navbar-brand img,.sticky .navbar-brand img,header.sticky.sticky-active .navbar-brand img{max-height:64px!important;}
  header .navbar-brand .default-logo,
  header .navbar-brand .alt-logo,
  header.sticky.sticky-active .navbar-brand .default-logo,
  header.sticky.sticky-active .navbar-brand .alt-logo{visibility:hidden!important;opacity:0!important;width:0!important;max-width:0!important;display:none!important;}
  header .navbar-brand .mobile-logo,
  header.sticky.sticky-active .navbar-brand .mobile-logo{visibility:visible!important;opacity:1!important;width:auto!important;max-width:100%!important;display:inline-block!important;}
  .header-contact-btn{display:none!important;}
  .expo-features .feature-box{height:260px;}
  .expo-about-block .expo-roman{font-size:92px!important;line-height:76px!important;}
  .expo-about-title-green,.expo-about-title-green strong{font-size:34px!important;line-height:42px!important;}
  .expo-gallery-slide:nth-child(odd) .expo-gallery-img,
  .expo-gallery-slide:nth-child(even) .expo-gallery-img{width:70vw;height:360px;}
  .expo-featured-card{height:210px!important;}
  .expo-featured-card img{max-height:145px!important;}
  .expo-allies-carousel-wrap{width:calc(100% - 50px)!important;max-width:none!important;}
}
@media (max-width:767px){
  section,.expo-section,.expo-sede,.expo-sponsors,.expo-stats{padding-top:60px!important;padding-bottom:60px!important;}
  #experiencias{scroll-margin-top:90px!important;}
  #patrocinadores{scroll-margin-top:150px!important;}
  #contacto{scroll-margin-top:90px!important;}
  .expo-features .expo-features-title{max-width:360px!important;}
  .expo-features .feature-box{height:auto;min-height:250px;}
  .expo-features .expo-card-title{white-space:normal;font-size:16px!important;}
  .expo-stat-number{font-size:42px!important;}
  .expo-sponsor-card img{max-height:90px!important;}
  .expo-about-block .row{gap:12px;}
  .expo-about-block .expo-roman{font-size:76px!important;line-height:64px!important;letter-spacing:-5px!important;}
  .expo-about-title-green,.expo-about-title-green strong{font-size:32px!important;line-height:40px!important;letter-spacing:-1px!important;}
  .expo-about-title-green strong{width:145px!important;height:125px!important;}
  .expo-section-heading,.expo-features-title,.expo-sponsors-title,.expo-allies-title,.expo-sede-title,.expo-features h3{font-size:30px!important;line-height:36px!important;letter-spacing:-1.2px!important;}
  .expo-photo-carousel{padding-left:18px!important;padding-right:18px!important;padding-bottom:60px!important;}
  .expo-gallery-slide:nth-child(odd) .expo-gallery-img,
  .expo-gallery-slide:nth-child(even) .expo-gallery-img{width:82vw;height:320px;}
  .expo-featured-logos{padding-top:55px!important;padding-bottom:40px!important;}
  .expo-featured-card{height:180px!important;padding:22px!important;}
  .expo-featured-card img{max-height:125px!important;}
  .expo-allies{padding-top:55px;margin-top:55px;}
  .expo-allies-carousel-wrap{width:calc(100% - 32px)!important;max-width:none!important;}
  .expo-ally-slide{width:182px!important;}
  .expo-ally-card{width:172px!important;height:100px!important;padding:9px 12px!important;}
  .expo-ally-card img{max-height:82px!important;max-width:96%!important;}
  footer .expo-footer-headline{font-size:30px!important;max-width:100%;}
  footer .footer-separator{display:none!important;}
  footer .privacy-link{display:block;margin-top:6px!important;}
}
@media (max-width:575px){
  .expo-main-title{font-size:3.4rem!important;line-height:3.55rem!important;letter-spacing:-2px!important;}
  .expo-features .feature-box{min-height:230px!important;}
  .expo-featured-label{font-size:16px!important;}
  .expo-featured-card{height:165px!important;}
}

/* V25 mobile/header/footer refinements */
.header-contact-btn{font-size:13px!important;}
.header-contact-btn > span{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:100%!important;}
.header-contact-btn .expo-inline-icon{width:14px!important;height:14px!important;flex:0 0 auto!important;}
.header-contact-btn .btn-double-text{font-size:13px!important;line-height:1!important;}

.footer-contact-disabled{cursor:default!important;}

@media (max-width:991px){
  [data-mobile-nav-style=modern] .navbar-modern-inner{width:60vw!important;right:-60vw!important;transform:translate3d(20vw,0,0)!important;-webkit-transform:translate3d(20vw,0,0)!important;}
  .navbar-collapse-show[data-mobile-nav-style=modern] .navbar,
  .navbar-collapse-show[data-mobile-nav-style=modern] .page-layout{transform:translate3d(-60vw,0,0)!important;-webkit-transform:translate3d(-60vw,0,0)!important;}
  [data-mobile-nav-style=modern] .navbar-modern-inner .navbar-collapse{padding-left:38px!important;padding-right:38px!important;}
  [data-mobile-nav-style=modern] .navbar-modern-inner .navbar-nav .nav-item .nav-link{font-size:18px!important;}
}

@media (max-width:767px){
  .expo-about-block .expo-about-row{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:0!important;}
  .expo-about-block .expo-about-row>div:nth-child(1){width:auto!important;flex:0 0 auto!important;max-width:none!important;text-align:left!important;padding-right:12px!important;}
  .expo-about-block .expo-about-row>div:nth-child(2){width:auto!important;flex:0 0 auto!important;max-width:calc(100% - 95px)!important;margin-top:0!important;padding-left:0!important;}
  .expo-about-block .expo-about-row>div:nth-child(3){width:100%!important;flex:0 0 100%!important;max-width:100%!important;margin-top:22px!important;}
  .expo-about-title-green strong{width:auto!important;max-width:none!important;height:auto!important;min-height:76px!important;}
  .expo-about-title-green,.expo-about-title-green strong{font-size:30px!important;line-height:34px!important;}
  footer .row.mb-6.align-items-start{align-items:flex-start!important;}
  footer .footer-impulmax-box{order:5!important;width:100%!important;margin-top:30px!important;margin-bottom:0!important;}
  footer .footer-impulmax-logo img{max-width:170px!important;}
  footer .footer-legal{display:flex!important;flex-direction:column!important;gap:6px!important;align-items:flex-start!important;margin-top:8px!important;}
  footer .footer-legal .privacy-link{order:1!important;display:inline-block!important;margin-top:0!important;}
  footer .footer-legal .footer-copy{order:2!important;display:block!important;}
  footer .footer-legal .footer-separator{display:none!important;}
}

@media (max-width:575px){
  [data-mobile-nav-style=modern] .navbar-modern-inner{width:68vw!important;right:-68vw!important;transform:translate3d(16vw,0,0)!important;-webkit-transform:translate3d(16vw,0,0)!important;}
  .navbar-collapse-show[data-mobile-nav-style=modern] .navbar,
  .navbar-collapse-show[data-mobile-nav-style=modern] .page-layout{transform:translate3d(-58vw,0,0)!important;-webkit-transform:translate3d(-58vw,0,0)!important;}
  [data-mobile-nav-style=modern] .navbar-modern-inner .navbar-collapse{padding-left:32px!important;padding-right:28px!important;}
}

/* V26 responsive audit refinements */
@media (min-width:1600px){
  #inicio .expo-main-title{font-size:clamp(82px,4.8vw,96px)!important;line-height:.94!important;}
}
@media (min-width:1500px) and (max-width:1599px){
  #inicio .row>.col-xl-5{flex:0 0 46%!important;max-width:46%!important;}
  #inicio .row>.col-xl-7{flex:0 0 54%!important;max-width:54%!important;}
  #inicio .expo-main-title{font-size:72px!important;line-height:.94!important;letter-spacing:-3px!important;max-width:600px!important;}
  #inicio .border-start{margin-left:70px!important;padding-left:40px!important;}
}
@media (min-width:1400px) and (max-width:1499px){
  #inicio .row>.col-xl-5{flex:0 0 45%!important;max-width:45%!important;}
  #inicio .row>.col-xl-7{flex:0 0 55%!important;max-width:55%!important;}
  #inicio .expo-main-title{font-size:64px!important;line-height:.94!important;letter-spacing:-2.6px!important;max-width:540px!important;margin-bottom:24px!important;}
  #inicio .border-start{margin-left:62px!important;padding-left:38px!important;}
  #inicio p{font-size:15px!important;line-height:28px!important;margin-bottom:24px!important;max-width:92%!important;}
  #inicio .btn{padding:14px 28px!important;font-size:14px!important;}
}
@media (min-width:1200px) and (max-width:1399px){
  #inicio .row>.col-xl-5{flex:0 0 46%!important;max-width:46%!important;}
  #inicio .row>.col-xl-7{flex:0 0 54%!important;max-width:54%!important;}
  #inicio .expo-main-title{font-size:58px!important;line-height:.96!important;letter-spacing:-2.3px!important;max-width:500px!important;margin-bottom:22px!important;}
  #inicio .border-start{margin-left:54px!important;padding-left:34px!important;}
  #inicio p{font-size:14.5px!important;line-height:27px!important;margin-bottom:22px!important;max-width:94%!important;}
  #inicio .btn{padding:13px 26px!important;font-size:13px!important;}
}
@media (min-width:1200px) and (max-height:820px){
  #inicio .expo-main-title{font-size:clamp(56px,4.45vw,68px)!important;line-height:.93!important;margin-bottom:20px!important;}
  #inicio .expo-intro-date{margin-bottom:12px!important;}
  #inicio p{line-height:26px!important;margin-bottom:20px!important;}
  #inicio .btn{padding-top:12px!important;padding-bottom:12px!important;}
}
@media (min-width:992px) and (max-width:1199px){
  #inicio .expo-main-title{font-size:52px!important;line-height:1!important;letter-spacing:-2px!important;}
  #inicio .border-start{margin-left:36px!important;padding-left:28px!important;}
  #inicio p{max-width:95%!important;}
}
@media (max-width:991px){
  #inicio{padding-top:0!important;}
  #inicio .expo-main-title{font-size:clamp(42px,7vw,58px)!important;line-height:1.04!important;letter-spacing:-2px!important;}
  #inicio p{max-width:100%!important;}
}
@media (max-width:575px){
  #inicio .expo-main-title{font-size:clamp(38px,11vw,48px)!important;line-height:1.06!important;letter-spacing:-1.6px!important;}
  #inicio .md-h-500px{height:360px!important;}
}
@media (max-width:374px){
  #inicio .expo-main-title{font-size:36px!important;line-height:1.08!important;}
  #inicio .md-h-500px{height:320px!important;}
}


/* V27 final polish: restore approved hero scale and refine retained notes */
.expo-sede .bg-base-color{background:var(--expo-green)!important;}
.expo-sede .text-gradient-base-color{background:none!important;background-image:none!important;color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;}
.footer-contact-disabled{cursor:pointer!important;}
.expo-allies{border-top:0!important;}
.expo-allies-carousel-wrap{width:calc(100% - 80px)!important;max-width:1320px!important;}

@media (min-width:1600px){
  #inicio .row>.col-xl-5{flex:0 0 48%!important;max-width:48%!important;}
  #inicio .row>.col-xl-7{flex:0 0 52%!important;max-width:52%!important;}
  #inicio .expo-main-title{font-size:76px!important;line-height:.95!important;letter-spacing:-3px!important;max-width:640px!important;margin-right:0!important;}
  #inicio .border-start{margin-left:76px!important;padding-left:44px!important;}
}
@media (min-width:1440px) and (max-width:1599px){
  #inicio .row>.col-xl-5{flex:0 0 48%!important;max-width:48%!important;}
  #inicio .row>.col-xl-7{flex:0 0 52%!important;max-width:52%!important;}
  #inicio .expo-main-title{font-size:72px!important;line-height:.95!important;letter-spacing:-3px!important;max-width:610px!important;margin-right:0!important;margin-bottom:24px!important;}
  #inicio .border-start{margin-left:70px!important;padding-left:42px!important;}
  #inicio p{max-width:88%!important;}
}
@media (min-width:1200px) and (max-width:1439px){
  #inicio .row>.col-xl-5{flex:0 0 48%!important;max-width:48%!important;}
  #inicio .row>.col-xl-7{flex:0 0 52%!important;max-width:52%!important;}
  #inicio .expo-main-title{font-size:64px!important;line-height:.96!important;letter-spacing:-2.5px!important;max-width:560px!important;margin-right:0!important;margin-bottom:22px!important;}
  #inicio .border-start{margin-left:58px!important;padding-left:36px!important;}
  #inicio p{font-size:15px!important;line-height:27px!important;max-width:92%!important;}
}
@media (min-width:1200px) and (max-height:820px){
  #inicio .expo-main-title{font-size:clamp(60px,5vw,72px)!important;line-height:.95!important;margin-bottom:18px!important;}
  #inicio p{line-height:25px!important;margin-bottom:18px!important;}
  #inicio .btn{padding-top:12px!important;padding-bottom:12px!important;}
}
@media (max-width:991px){
  .expo-allies-carousel-wrap{width:calc(100% - 50px)!important;max-width:none!important;}
}
@media (max-width:767px){
  .expo-allies-carousel-wrap{width:calc(100% - 32px)!important;max-width:none!important;}
}

/* V28 cierre: ajustes finales retenidos */
/* Espaciado uniforme icono/texto */
.header-contact-btn > span,
.expo-sede .btn.left-icon > span{
  gap:7px!important;
}
.header-contact-btn .btn-double-text{
  font-size:14px!important;
}
.expo-sede .btn.left-icon .btn-double-text{
  font-size:15px!important;
}

/* Hero: corrección de escala solicitada */
@media (min-width:1440px) and (max-width:1599px){
  #inicio .expo-main-title{
    font-size:70px!important;
    line-height:.95!important;
    letter-spacing:-3px!important;
    max-width:600px!important;
  }
}
@media (min-width:1200px) and (max-width:1439px){
  #inicio .expo-main-title{
    font-size:64px!important;
    line-height:.96!important;
    max-width:560px!important;
  }
}
@media (min-width:1200px) and (max-height:820px){
  #inicio .expo-main-title{
    font-size:clamp(60px,4.85vw,70px)!important;
  }
}

/* Mobile nav: asegurar visibilidad de los enlaces */
@media (max-width:991px){
  [data-mobile-nav-style=modern] .navbar-modern-inner{
    z-index:99999!important;
    background:#111!important;
  }
  [data-mobile-nav-style=modern] .navbar-modern-inner .navbar-collapse{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    overflow-y:auto!important;
  }
  [data-mobile-nav-style=modern] .navbar-modern-inner .navbar-nav{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  [data-mobile-nav-style=modern] .navbar-modern-inner .navbar-nav .nav-item{
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
  }
  [data-mobile-nav-style=modern] .navbar-modern-inner .navbar-nav .nav-item .nav-link{
    display:block!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    opacity:1!important;
    visibility:visible!important;
    padding:12px 0!important;
  }
  [data-mobile-nav-style=modern] .navbar-modern-inner .navbar-nav .nav-item .nav-link:hover{
    color:var(--expo-green)!important;
    -webkit-text-fill-color:var(--expo-green)!important;
  }
}

/* Patrocinadores: refinar logo Collin Street Bakery */
.expo-sponsor-card img[src*="collin_street_bakery"]{
  max-width:112%!important;
  max-height:150px!important;
}

/* Footer mobile: bloque final centrado */
.footer-developed-mobile{display:none;}
@media (max-width:767px){
  footer .footer-impulmax-box{
    order:5!important;
    width:100%!important;
    flex:0 0 100%!important;
    max-width:100%!important;
    margin-top:34px!important;
    text-align:center!important;
    align-items:center!important;
  }
  footer .footer-developed-desktop{display:none!important;}
  footer .footer-legal{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
    gap:8px!important;
    width:100%!important;
    margin-top:18px!important;
  }
  footer .footer-legal .privacy-link{order:1!important;margin:0!important;}
  footer .footer-legal .footer-copy{order:2!important;display:block!important;}
  footer .footer-legal .footer-developed-mobile{order:3!important;display:block!important;}
  footer .footer-legal .footer-separator{display:none!important;}
}

/* V29 responsive/text/menu refinements */
/* Texto fluido: evitar cortes manuales y controlar composición por ancho */
.expo-features-title{max-width:980px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:balance;}
.expo-footer-headline{max-width:560px!important;text-wrap:balance;}

/* IV Expo: dos líneas visuales sin <br> */
.expo-about-title-green strong{width:320px!important;max-width:320px!important;height:132px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;}
.expo-about-title-green strong span{display:block!important;white-space:nowrap!important;}

/* Anclas: punto intermedio; no tapar títulos ni dejar aire excesivo */
#experiencias,#patrocinadores{scroll-margin-top:112px!important;}
@media (max-width:991px){#experiencias,#patrocinadores{scroll-margin-top:88px!important;}}

/* Desktop: reducir aire entre patrocinadores y aliados */
@media (min-width:992px){
  .expo-allies{padding-top:52px!important;margin-top:48px!important;}
}

/* Mobile header: mostrar menú sin empujar la página ni ocultar enlaces */
@media (max-width:991px){
  body.navbar-collapse-show .page-layout,
  body.navbar-collapse-show .navbar,
  .navbar-collapse-show[data-mobile-nav-style=modern] .navbar,
  .navbar-collapse-show[data-mobile-nav-style=modern] .page-layout{
    transform:none!important;
    -webkit-transform:none!important;
  }
  [data-mobile-nav-style=modern] .navbar-modern-inner{display:none!important;}
  header .navbar .navbar-collapse.show,
  header .navbar .navbar-collapse.collapsing{
    position:absolute!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:auto!important;
    max-height:calc(100vh - 76px)!important;
    overflow-y:auto!important;
    background:#111!important;
    padding:22px 30px 26px!important;
    z-index:99999!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    box-shadow:0 18px 40px rgba(0,0,0,.22)!important;
  }
  header .navbar .navbar-collapse.show .navbar-nav,
  header .navbar .navbar-collapse.collapsing .navbar-nav{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:0!important;
    opacity:1!important;
    visibility:visible!important;
    width:100%!important;
  }
  header .navbar .navbar-collapse.show .navbar-nav .nav-item,
  header .navbar .navbar-collapse.collapsing .navbar-nav .nav-item{
    display:block!important;
    width:100%!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
  header .navbar .navbar-collapse.show .navbar-nav .nav-link,
  header .navbar .navbar-collapse.collapsing .navbar-nav .nav-link{
    display:block!important;
    width:100%!important;
    padding:12px 0!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    font-size:18px!important;
    line-height:1.25!important;
    opacity:1!important;
    visibility:visible!important;
    text-align:left!important;
  }
  header .navbar .navbar-collapse.show .navbar-nav .nav-link:hover{color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;}
}

/* Mobile: ajustes solicitados de composición y footer */
@media (max-width:767px){
  .expo-about-title-green strong{width:auto!important;max-width:none!important;height:auto!important;min-height:70px!important;}
  .expo-about-title-green,.expo-about-title-green strong{font-size:30px!important;line-height:34px!important;}
  .expo-features-title{max-width:92vw!important;}
  footer .row .col-lg-5.col-6:first-child{width:42%!important;flex:0 0 42%!important;max-width:42%!important;}
  footer .row .col-lg-5.col-6:nth-child(2){width:58%!important;flex:0 0 58%!important;max-width:58%!important;}
  footer a[href^="mailto:"]{white-space:nowrap!important;font-size:clamp(16px,4.2vw,20px)!important;letter-spacing:-.2px!important;}
}
@media (max-width:390px){
  footer .row .col-lg-5.col-6:first-child,
  footer .row .col-lg-5.col-6:nth-child(2){width:100%!important;flex:0 0 100%!important;max-width:100%!important;margin-bottom:18px!important;}
}

/* V30 definitiva - ajustes consolidados desde V29 */
/* Hero: recuperar escala original aprobada y ajustar solo layout */
@media (min-width:1600px){
  #inicio .row>.col-xl-5{flex:0 0 48%!important;max-width:48%!important;}
  #inicio .row>.col-xl-7{flex:0 0 52%!important;max-width:52%!important;}
  #inicio .expo-main-title{font-size:76px!important;line-height:.95!important;letter-spacing:-3px!important;max-width:640px!important;margin-right:0!important;}
}
@media (min-width:1440px) and (max-width:1599px){
  #inicio .row>.col-xl-5{flex:0 0 48%!important;max-width:48%!important;}
  #inicio .row>.col-xl-7{flex:0 0 52%!important;max-width:52%!important;}
  #inicio .expo-main-title{font-size:72px!important;line-height:.95!important;letter-spacing:-3px!important;max-width:610px!important;margin-right:0!important;margin-bottom:24px!important;}
}
@media (min-width:1200px) and (max-width:1439px){
  #inicio .row>.col-xl-5{flex:0 0 48%!important;max-width:48%!important;}
  #inicio .row>.col-xl-7{flex:0 0 52%!important;max-width:52%!important;}
  #inicio .expo-main-title{font-size:64px!important;line-height:.96!important;letter-spacing:-2.5px!important;max-width:560px!important;margin-right:0!important;margin-bottom:22px!important;}
}

/* Anclas: punto intermedio, sin aire excesivo */
#experiencias{scroll-margin-top:104px!important;}
#patrocinadores{scroll-margin-top:104px!important;}
@media (max-width:991px){
  #experiencias,#patrocinadores{scroll-margin-top:82px!important;}
}

/* Aliados: mismo ancho útil que patrocinadores y menos aire entre secciones */
.expo-allies{padding-top:44px!important;margin-top:38px!important;border-top:0!important;}
.expo-allies-carousel-wrap{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;}
@media (max-width:991px){.expo-allies-carousel-wrap{width:100%!important;max-width:none!important;}}

/* Menú mobile: usar el collapse de Bootstrap visible y legible */
@media (max-width:991px){
  body.navbar-collapse-show .page-layout,
  body.navbar-collapse-show .navbar,
  .navbar-collapse-show[data-mobile-nav-style=modern] .navbar,
  .navbar-collapse-show[data-mobile-nav-style=modern] .page-layout{transform:none!important;-webkit-transform:none!important;}
  [data-mobile-nav-style=modern] .navbar-modern-inner{display:none!important;}
  header .navbar{position:relative!important;z-index:10000!important;}
  header .navbar .navbar-collapse.show,
  header .navbar .navbar-collapse.collapsing{
    position:absolute!important;top:100%!important;left:0!important;right:0!important;width:100%!important;height:auto!important;
    max-height:calc(100vh - 76px)!important;overflow-y:auto!important;background:#111!important;padding:22px 30px 26px!important;
    z-index:99999!important;display:block!important;visibility:visible!important;opacity:1!important;box-shadow:0 18px 40px rgba(0,0,0,.22)!important;
  }
  header .navbar .navbar-collapse.show .navbar-nav,
  header .navbar .navbar-collapse.collapsing .navbar-nav{display:flex!important;flex-direction:column!important;align-items:flex-start!important;width:100%!important;opacity:1!important;visibility:visible!important;}
  header .navbar .navbar-collapse.show .navbar-nav .nav-item,
  header .navbar .navbar-collapse.collapsing .navbar-nav .nav-item{display:block!important;width:100%!important;opacity:1!important;visibility:visible!important;}
  header .navbar .navbar-collapse.show .navbar-nav .nav-link,
  header .navbar .navbar-collapse.collapsing .navbar-nav .nav-link{display:block!important;width:100%!important;padding:12px 0!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:18px!important;line-height:1.25!important;text-align:left!important;opacity:1!important;visibility:visible!important;}
  header .navbar .navbar-collapse.show .navbar-nav .nav-link:hover{color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;}
}

/* Footer mobile: Impulmax, aviso, copyright y desarrollado por KOSHCA al final */
.footer-developed-mobile{display:none;}
@media (max-width:767px){
  footer .footer-impulmax-box{order:5!important;width:100%!important;flex:0 0 100%!important;max-width:100%!important;margin-top:34px!important;margin-bottom:0!important;text-align:center!important;align-items:center!important;}
  footer .footer-developed-desktop{display:none!important;}
  footer .footer-legal{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:8px!important;width:100%!important;margin-top:18px!important;}
  footer .footer-legal .privacy-link{order:1!important;margin:0!important;}
  footer .footer-legal .footer-copy{order:2!important;display:block!important;}
  footer .footer-legal .footer-developed-mobile{order:3!important;display:block!important;}
  footer .footer-legal .footer-separator{display:none!important;}
}

/* Texto fluido: no forzar saltos manuales en componentes de texto */
.expo-card-text{height:auto!important;min-height:84px!important;}

/* V31 ajustes finales solicitados */
/* IV Expo: desktop en 3 líneas; mobile en 2 líneas sin <br> */
.expo-about-title-green strong{
  width:145px!important;
  max-width:145px!important;
  height:157.03px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
}
.expo-about-title-green strong .expo-title-word{
  display:block!important;
  white-space:nowrap!important;
}
@media (max-width:767px){
  .expo-about-title-green strong{
    width:auto!important;
    max-width:260px!important;
    height:auto!important;
    min-height:72px!important;
    display:block!important;
  }
  .expo-about-title-green strong .expo-title-word{display:inline!important;white-space:normal!important;}
  .expo-about-title-green strong .expo-title-word-2::after{content:"\A";white-space:pre!important;}
  .expo-about-title-green strong .expo-title-word-1::after{content:" "!important;}
}

/* Anclas finas */
#experiencias{scroll-margin-top:92px!important;}
#patrocinadores{scroll-margin-top:116px!important;}
@media (max-width:991px){
  #experiencias{scroll-margin-top:76px!important;}
  #patrocinadores{scroll-margin-top:96px!important;}
}

/* Mobile: reducir espacio entre header y hero */
@media (max-width:991px){
  .ipad-top-space-margin,
  section#inicio.ipad-top-space-margin{margin-top:0!important;}
  #inicio .col-xl-7{margin-bottom:24px!important;}
  #inicio .border-start{padding-top:0!important;margin-top:0!important;}
}
@media (max-width:575px){
  .navbar .container-fluid{min-height:62px!important;}
  header .navbar-brand img,.navbar-brand img,.navbar.navbar-shrink .navbar-brand img,.sticky .navbar-brand img,header.sticky.sticky-active .navbar-brand img{max-height:58px!important;}
  #inicio .col-xl-7{margin-bottom:18px!important;}
}

/* Experiencias: iconos nuevos con el mismo peso visual */
.expo-features .expo-card-icon svg{width:42px!important;height:42px!important;}
.expo-features .expo-card-icon .expo-icon-auto{width:44px!important;height:44px!important;}
.expo-features .expo-card-icon .expo-icon-shield{width:42px!important;height:42px!important;}
.expo-features .expo-card-icon .expo-icon-mic{width:44px!important;height:44px!important;transform:translateY(1px)!important;}
.expo-features .expo-card-icon .expo-icon-family{width:44px!important;height:44px!important;}
.expo-features .expo-card-icon .expo-icon-food{width:44px!important;height:44px!important;}
.expo-features .expo-card-icon .expo-icon-bookmark{width:40px!important;height:40px!important;}

/* Aliados: ancho alineado a patrocinadores y logos pequeños más proporcionales */
.expo-allies-carousel-wrap{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;}
.expo-ally-card img[src*="aire_ingenieros"],
.expo-ally-card img[src*="lopez_mateos"],
.expo-ally-card img[src*="mazda_acueducto"],
.expo-ally-card img[src*="jimenez"],
.expo-ally-card img[src*="guadalajara"]{
  max-width:112%!important;
  max-height:108px!important;
}
@media (max-width:767px){
  .expo-ally-card img[src*="aire_ingenieros"],
  .expo-ally-card img[src*="lopez_mateos"],
  .expo-ally-card img[src*="mazda_acueducto"],
  .expo-ally-card img[src*="jimenez"],
  .expo-ally-card img[src*="guadalajara"]{
    max-width:110%!important;
    max-height:90px!important;
  }
}

/* V32 ajustes finales: hero, iconos y proporción de logos */
/* Hero: recuperar proporción aprobada y evitar desbordes en mobile */
@media (min-width:1600px){
  #inicio .expo-main-title{font-size:76px!important;line-height:.95!important;letter-spacing:-3px!important;max-width:640px!important;}
}
@media (min-width:1440px) and (max-width:1599px){
  #inicio .expo-main-title{font-size:70px!important;line-height:.95!important;letter-spacing:-3px!important;max-width:600px!important;}
}
@media (min-width:1200px) and (max-width:1439px){
  #inicio .expo-main-title{font-size:64px!important;line-height:.96!important;letter-spacing:-2.5px!important;max-width:545px!important;}
}
@media (max-width:991px){
  #inicio .expo-main-title{
    max-width:calc(100vw - 40px)!important;
    width:100%!important;
    font-size:clamp(38px,10.2vw,50px)!important;
    line-height:1.05!important;
    letter-spacing:-1.7px!important;
    margin-right:0!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  #inicio .border-start{padding-left:20px!important;padding-right:20px!important;}
}
@media (max-width:575px){
  #inicio .expo-main-title{font-size:clamp(36px,10vw,46px)!important;line-height:1.06!important;letter-spacing:-1.4px!important;}
}

/* Experiencias: iconos más fieles a referencias compartidas */
.expo-features .expo-card-icon svg{color:var(--expo-green)!important;}
.expo-features .expo-card-icon .expo-icon-auto{width:43px!important;height:43px!important;}
.expo-features .expo-card-icon .expo-icon-food{width:43px!important;height:43px!important;}
.expo-features .expo-card-icon .expo-icon-family{width:43px!important;height:43px!important;}

/* Aliados: equilibrar logos internos sin modificar la tarjeta */
.expo-ally-card img{max-width:92%!important;max-height:86px!important;}
.expo-ally-card img[src*="jimenez"]{max-width:82%!important;max-height:78px!important;}
.expo-ally-card img[src*="aire_ingenieros"]{max-width:88%!important;max-height:76px!important;}
.expo-ally-card img[src*="lopez_mateos"]{max-width:82%!important;max-height:70px!important;}
.expo-ally-card img[src*="mazda_acueducto"]{max-width:86%!important;max-height:70px!important;}
.expo-ally-card img[src*="guadalajara"]{max-width:86%!important;max-height:76px!important;}
.expo-ally-card img[src*="alambrados"]{max-width:92%!important;max-height:78px!important;}
.expo-ally-card img[src*="torvi"]{max-width:78%!important;max-height:80px!important;}
@media (max-width:767px){
  .expo-ally-card img{max-width:90%!important;max-height:78px!important;}
  .expo-ally-card img[src*="jimenez"]{max-width:80%!important;max-height:70px!important;}
  .expo-ally-card img[src*="aire_ingenieros"],
  .expo-ally-card img[src*="lopez_mateos"],
  .expo-ally-card img[src*="mazda_acueducto"]{max-width:84%!important;max-height:64px!important;}
}

/* V33 cierre: hero original aprobado, iconos finales y equilibrio de aliados */
/* Hero: recuperar escala original; corregir solo layout por breakpoint */
@media (min-width:1600px){
  #inicio .row>.col-xl-5{flex:0 0 48%!important;max-width:48%!important;}
  #inicio .row>.col-xl-7{flex:0 0 52%!important;max-width:52%!important;}
  #inicio .expo-main-title{font-size:76px!important;line-height:.95!important;letter-spacing:-3px!important;max-width:640px!important;margin-right:0!important;}
}
@media (min-width:1440px) and (max-width:1599px){
  #inicio .row>.col-xl-5{flex:0 0 48%!important;max-width:48%!important;}
  #inicio .row>.col-xl-7{flex:0 0 52%!important;max-width:52%!important;}
  #inicio .expo-main-title{font-size:72px!important;line-height:.95!important;letter-spacing:-3px!important;max-width:610px!important;margin-right:0!important;margin-bottom:24px!important;}
}
@media (min-width:1200px) and (max-width:1439px){
  #inicio .row>.col-xl-5{flex:0 0 48%!important;max-width:48%!important;}
  #inicio .row>.col-xl-7{flex:0 0 52%!important;max-width:52%!important;}
  #inicio .expo-main-title{font-size:64px!important;line-height:.96!important;letter-spacing:-2.5px!important;max-width:560px!important;margin-right:0!important;margin-bottom:22px!important;}
}
@media (max-width:991px){
  #inicio .expo-main-title{font-size:clamp(38px,10vw,50px)!important;line-height:1.06!important;letter-spacing:-1.5px!important;max-width:calc(100vw - 40px)!important;margin-right:0!important;}
}

/* Iconos de experiencias: formas ajustadas y peso visual uniforme */
.expo-features .expo-card-icon svg{color:var(--expo-green)!important;width:44px!important;height:44px!important;display:block!important;margin:0 auto!important;}
.expo-features .expo-card-icon .expo-icon-auto{width:46px!important;height:46px!important;}
.expo-features .expo-card-icon .expo-icon-food{width:44px!important;height:44px!important;}
.expo-features .expo-card-icon .expo-icon-family{width:46px!important;height:46px!important;}
.expo-features .expo-card-icon .expo-icon-mic{width:44px!important;height:44px!important;transform:translateY(1px)!important;}
.expo-features .expo-card-icon .expo-icon-bookmark{width:40px!important;height:40px!important;}
.expo-features .expo-card-icon .expo-icon-shield{width:42px!important;height:42px!important;}

/* Aliados: normalización manual; no tocar caja, solo tamaño interno del logo */
.expo-ally-card img{max-width:84%!important;max-height:78px!important;object-fit:contain!important;}
.expo-ally-card img[src*="jimenez"]{max-width:68%!important;max-height:64px!important;}
.expo-ally-card img[src*="cupra"]{max-width:74%!important;max-height:68px!important;}
.expo-ally-card img[src*="torvi"]{max-width:72%!important;max-height:72px!important;}
.expo-ally-card img[src*="aire_ingenieros"]{max-width:78%!important;max-height:66px!important;}
.expo-ally-card img[src*="lopez_mateos"]{max-width:82%!important;max-height:64px!important;}
.expo-ally-card img[src*="mazda_acueducto"]{max-width:84%!important;max-height:64px!important;}
.expo-ally-card img[src*="guadalajara"]{max-width:78%!important;max-height:68px!important;}
.expo-ally-card img[src*="alambrados"]{max-width:84%!important;max-height:70px!important;}
.expo-ally-card img[src*="optica_del_parque"]{max-width:86%!important;max-height:76px!important;}
.expo-ally-card img[src*="jps"]{max-width:82%!important;max-height:76px!important;}
.expo-ally-card img[src*="plaza_mexico"]{max-width:86%!important;max-height:76px!important;}
@media (max-width:767px){
  .expo-ally-card img{max-width:82%!important;max-height:70px!important;}
  .expo-ally-card img[src*="jimenez"]{max-width:66%!important;max-height:58px!important;}
  .expo-ally-card img[src*="cupra"]{max-width:72%!important;max-height:60px!important;}
  .expo-ally-card img[src*="aire_ingenieros"],
  .expo-ally-card img[src*="lopez_mateos"],
  .expo-ally-card img[src*="mazda_acueducto"],
  .expo-ally-card img[src*="guadalajara"]{max-width:80%!important;max-height:60px!important;}
}

/* V34 cierre: ajustes solicitados */
/* Redacción */
/* El texto queda en HTML como: Descubre todo lo que hace única la Expo Automóviles del Mundo */

/* Anclas: menos aire en Experiencias, un poco más en Patrocinadores */
#experiencias{scroll-margin-top:82px!important;}
#patrocinadores{scroll-margin-top:126px!important;}
@media (max-width:991px){
  #experiencias{scroll-margin-top:70px!important;}
  #patrocinadores{scroll-margin-top:104px!important;}
}

/* Aliados: eliminar línea residual y acercar a Patrocinadores */
.expo-allies{border-top:0!important;margin-top:45px!important;padding-top:50px!important;}

/* Aliados: mantener caja; ajustar solo logos indicados */
.expo-ally-card img[src*="forza"]{max-width:94%!important;max-height:84px!important;}
.expo-ally-card img[src*="cupra"]{max-width:84%!important;max-height:76px!important;}
.expo-ally-card img[src*="alvamex"]{max-width:92%!important;max-height:82px!important;}
.expo-ally-card img[src*="versa"]{max-width:92%!important;max-height:80px!important;}
.expo-ally-card img[src*="sheraton"]{max-width:90%!important;max-height:78px!important;}
.expo-ally-card img[src*="rosehauss"]{max-width:90%!important;max-height:76px!important;}
.expo-ally-card img[src*="cuauhtemoc"]{max-width:90%!important;max-height:78px!important;}
/* mantener Jiménez contenido */
.expo-ally-card img[src*="jimenez"]{max-width:68%!important;max-height:64px!important;}
@media (max-width:767px){
  .expo-ally-card img[src*="forza"]{max-width:92%!important;max-height:76px!important;}
  .expo-ally-card img[src*="cupra"]{max-width:82%!important;max-height:68px!important;}
  .expo-ally-card img[src*="alvamex"],
  .expo-ally-card img[src*="versa"]{max-width:90%!important;max-height:72px!important;}
  .expo-ally-card img[src*="sheraton"],
  .expo-ally-card img[src*="rosehauss"],
  .expo-ally-card img[src*="cuauhtemoc"]{max-width:88%!important;max-height:70px!important;}
}

/* Iconos de Experiencias más fieles a referencias */
.expo-features .expo-card-icon .expo-icon-auto{width:48px!important;height:48px!important;}
.expo-features .expo-card-icon .expo-icon-food{width:46px!important;height:46px!important;}
.expo-features .expo-card-icon .expo-icon-family{width:48px!important;height:48px!important;}

/* Hero: mantener escala de V33 y evitar desborde visual en mobile */
@media (max-width:991px){
  #inicio .expo-main-title{max-width:calc(100vw - 52px)!important;overflow-wrap:normal!important;word-break:normal!important;}
}

/* V36 - Sede image sizing: keep template placeholder proportions and avoid overlap with gallery */
.expo-sede-img-wrap img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;border-radius:15px!important;}
@media (min-width: 992px){
  .expo-sede .row.align-items-center.position-relative{min-height:620px!important;}
  .expo-sede-img-left{aspect-ratio:421/524!important;}
  .expo-sede-img-right{aspect-ratio:421/313!important;}
  .expo-sede-img-center{aspect-ratio:500/614!important;}
  .expo-sede{padding-bottom:150px!important;}
}
@media (max-width: 991px){
  .expo-sede-img-wrap{aspect-ratio:auto!important;}
  .expo-sede-img-wrap img{height:auto!important;}
}

/* v38 fixes: SVG hover color and stable gallery sizing */
.expo-features .feature-box:hover .expo-card-icon svg,
.expo-features .feature-box:hover .expo-card-icon svg path{
    color:#ffffff!important;
    fill:#ffffff!important;
}

.expo-photo-carousel .expo-gallery-slide.is-vertical .expo-gallery-img{
    width:380px!important;
    height:490px!important;
}
.expo-photo-carousel .expo-gallery-slide.is-wide .expo-gallery-img{
    width:640px!important;
    height:490px!important;
}

@media (max-width: 991px){
    .expo-photo-carousel .expo-gallery-slide.is-vertical .expo-gallery-img,
    .expo-photo-carousel .expo-gallery-slide.is-wide .expo-gallery-img{
        width:70vw!important;
        height:360px!important;
    }
}
@media (max-width: 575px){
    .expo-photo-carousel .expo-gallery-slide.is-vertical .expo-gallery-img,
    .expo-photo-carousel .expo-gallery-slide.is-wide .expo-gallery-img{
        width:82vw!important;
        height:320px!important;
    }
}

/* v38.1 - ajustes finales de iconos */
.expo-features .feature-box:hover .expo-card-icon .expo-icon-shield .expo-shield-star{
    fill: var(--expo-green) !important;
}
.expo-features .expo-card-icon .expo-icon-family{
    width: 48px !important;
    height: 48px !important;
}

/* v38.3 - Sede: recuperar proporción tipo placeholder original */
@media (min-width: 992px){
  .expo-sede .col-lg-6.position-relative{
    min-height:640px!important;
  }
  .expo-sede .row.align-items-center.position-relative{
    height:640px!important;
    min-height:640px!important;
    display:block!important;
    margin:0!important;
  }
  .expo-sede-img-wrap{
    position:absolute!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:15px!important;
    transform:none!important;
  }
  .expo-sede-img-wrap img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    display:block!important;
    border-radius:15px!important;
  }
  .expo-sede-img-left{
    width:225px!important;
    height:167px!important;
    left:0!important;
    top:72px!important;
    bottom:auto!important;
    z-index:1!important;
  }
  .expo-sede-img-right{
    width:262px!important;
    height:195px!important;
    left:318px!important;
    top:64px!important;
    bottom:auto!important;
    z-index:1!important;
    text-align:left!important;
  }
  .expo-sede-img-center{
    width:305px!important;
    height:374px!important;
    left:125px!important;
    top:210px!important;
    bottom:auto!important;
    z-index:3!important;
  }
  .expo-sede-img-left img{object-position:center center!important;}
  .expo-sede-img-right img{object-position:center center!important;}
  .expo-sede-img-center img{object-position:center center!important;}
  .expo-sede{padding-bottom:95px!important;}
}

@media (min-width: 992px) and (max-width: 1199px){
  .expo-sede .col-lg-6.position-relative{min-height:600px!important;}
  .expo-sede .row.align-items-center.position-relative{height:600px!important;min-height:600px!important;}
  .expo-sede-img-left{width:205px!important;height:153px!important;left:0!important;top:75px!important;}
  .expo-sede-img-right{width:238px!important;height:177px!important;left:272px!important;top:65px!important;}
  .expo-sede-img-center{width:285px!important;height:350px!important;left:105px!important;top:205px!important;}
}

@media (max-width: 991px){
  .expo-sede-img-wrap{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    bottom:auto!important;
    width:100%!important;
    height:auto!important;
    transform:none!important;
  }
}


/* V40 ajustes finales: título IV Expo, logo y galería */
.expo-about-title-green strong{
  display:grid!important;
  grid-template-columns:1fr!important;
  row-gap:0!important;
  width:145px!important;
  max-width:145px!important;
  height:auto!important;
  min-height:145px!important;
  align-content:center!important;
  font-weight:700!important;
  line-height:.94!important;
  letter-spacing:-0.035em!important;
}
.expo-about-title-green strong .expo-title-word{
  display:block!important;
  white-space:nowrap!important;
  font-weight:700!important;
  line-height:.94!important;
}
.expo-about-title-green strong .expo-title-word::after{
  content:none!important;
}
.expo-photo-carousel .expo-gallery-slide:nth-child(2) .expo-gallery-img{
  object-position:right center!important;
}
@media (max-width:767px){
  .expo-about-title-green strong{
    display:grid!important;
    grid-template-columns:auto auto!important;
    column-gap:.22em!important;
    row-gap:0!important;
    width:auto!important;
    max-width:310px!important;
    min-height:0!important;
    height:auto!important;
    align-content:start!important;
    line-height:.95!important;
  }
  .expo-about-title-green strong .expo-title-word{
    display:block!important;
    white-space:nowrap!important;
    line-height:.95!important;
  }
  .expo-about-title-green strong .expo-title-word-3{
    grid-column:1 / span 2!important;
  }
  .expo-about-title-green strong .expo-title-word-1::after,
  .expo-about-title-green strong .expo-title-word-2::after,
  .expo-about-title-green strong .expo-title-word-3::after{
    content:none!important;
  }
}


/* V41 - recuperar proporciones aprobadas desde versión anterior */
/* Hero: reducir tamaño y comportamiento para que se vea como la versión previa */
@media (min-width: 1200px){
  #inicio .expo-main-title{
    font-size:64px!important;
    line-height:1.03!important;
    letter-spacing:-2.6px!important;
    max-width:560px!important;
    margin-right:0!important;
    margin-bottom:26px!important;
  }
}
@media (min-width: 992px) and (max-width:1199px){
  #inicio .expo-main-title{
    font-size:56px!important;
    line-height:1.04!important;
    letter-spacing:-2.2px!important;
    max-width:500px!important;
    margin-right:0!important;
  }
}
@media (min-width: 768px) and (max-width:991px){
  #inicio .expo-main-title{
    font-size:52px!important;
    line-height:1.06!important;
    letter-spacing:-2px!important;
    max-width:500px!important;
    margin-right:0!important;
  }
}
@media (max-width:767px){
  #inicio .expo-main-title{
    font-size:50px!important;
    line-height:1.06!important;
    letter-spacing:-1.8px!important;
    max-width:470px!important;
    margin-right:0!important;
    margin-bottom:24px!important;
  }
}
@media (max-width:575px){
  #inicio .expo-main-title{
    font-size:48px!important;
    line-height:1.06!important;
    letter-spacing:-1.6px!important;
    max-width:455px!important;
  }
}
@media (max-width:420px){
  #inicio .expo-main-title{
    font-size:40px!important;
    line-height:1.08!important;
    letter-spacing:-1.2px!important;
    max-width:calc(100vw - 44px)!important;
  }
}

/* Bloque IV / Expo Automóviles del Mundo: recuperar texto simple de la versión vieja */
.expo-about-title-green,
.expo-about-title-green strong{
  color:var(--expo-green)!important;
  font-family:var(--alt-font)!important;
  font-weight:600!important;
  font-size:45px!important;
  line-height:1.09!important;
  letter-spacing:-2px!important;
}
.expo-about-title-green strong{
  display:inline!important;
  width:auto!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  white-space:normal!important;
}
@media (max-width:1199px){
  .expo-about-title-green,
  .expo-about-title-green strong{font-size:42px!important;line-height:1.08!important;}
}
@media (max-width:767px){
  .expo-about-title-green,
  .expo-about-title-green strong{font-size:38px!important;line-height:1.08!important;letter-spacing:-1.5px!important;}
}
@media (max-width:575px){
  .expo-about-title-green,
  .expo-about-title-green strong{font-size:34px!important;line-height:1.1!important;letter-spacing:-1px!important;}
}


/* V42 - ajustes finales aprobados */
/* Fecha abreviada y hero ya aprobados en HTML. */

/* Bloque IV / Expo Automóviles del Mundo: misma composición, más peso y menor interlineado */
.expo-about-title-green,
.expo-about-title-green strong{
  font-weight:700!important;
  line-height:.98!important;
  letter-spacing:-2.2px!important;
}
@media (max-width:1199px){
  .expo-about-title-green,
  .expo-about-title-green strong{line-height:.98!important;font-weight:700!important;}
}
@media (max-width:767px){
  .expo-about-title-green,
  .expo-about-title-green strong{line-height:1!important;font-weight:700!important;letter-spacing:-1.6px!important;}
}

/* Ícono familia: silueta simple, legible y en verde del sitio */
.expo-features .expo-card-icon .expo-icon-family{
  width:52px!important;
  height:52px!important;
  color:var(--expo-green)!important;
  fill:currentColor!important;
  display:block!important;
  margin:0 auto!important;
}
.expo-features .feature-box:hover .expo-card-icon .expo-icon-family,
.expo-features .feature-box:hover .expo-card-icon .expo-icon-family *{
  color:#fff!important;
  fill:#fff!important;
}

/* Carrusel: tamaño estable y encuadre consistente también al arrastrar o en slides clonados */
.expo-photo-carousel .expo-gallery-slide{
  flex:0 0 auto!important;
  overflow:hidden!important;
}
.expo-photo-carousel .expo-gallery-img{
  object-fit:cover!important;
  object-position:center center!important;
  backface-visibility:hidden!important;
  transform:translateZ(0)!important;
  will-change:transform!important;
}
.expo-photo-carousel .expo-gallery-slide.is-ford-blue .expo-gallery-img{
  object-position:right center!important;
}
.expo-photo-carousel .expo-gallery-slide:nth-child(2) .expo-gallery-img{
  object-position:right center!important;
}
.expo-gallery-swiper .swiper-wrapper{
  align-items:center!important;
}

/* QA responsive: evitar desbordes en alturas bajas y anchos comunes */
@media (min-width:992px) and (max-width:1200px) and (max-height:620px){
  #inicio .expo-main-title{font-size:52px!important;line-height:1.03!important;max-width:500px!important;margin-bottom:20px!important;}
  #inicio p{margin-bottom:24px!important;}
  #inicio .btn{padding-top:18px!important;padding-bottom:18px!important;}
}
@media (min-width:1360px) and (max-width:1460px){
  #inicio .expo-main-title{max-width:560px!important;}
}


/* v43 ajustes finales aprobados */
/* IV Expo: más peso, menos interlineado, desktop 3 líneas / mobile 2 líneas, sin <br> */
.expo-about-title-green strong{
  font-weight:800!important;
  line-height:.88!important;
  letter-spacing:-0.04em!important;
}
.expo-about-title-green strong .expo-title-word{
  display:block!important;
  font-weight:800!important;
  line-height:.88!important;
  white-space:nowrap!important;
}
@media (max-width:767px){
  .expo-about-title-green strong{
    display:grid!important;
    grid-template-columns:auto auto!important;
    column-gap:.22em!important;
    row-gap:0!important;
    width:auto!important;
    max-width:270px!important;
    min-height:0!important;
    line-height:.9!important;
  }
  .expo-about-title-green strong .expo-title-word{display:block!important;line-height:.9!important;white-space:nowrap!important;}
  .expo-about-title-green strong .expo-title-word-3{grid-column:1 / span 2!important;}
}

/* Galería: frente del Ford completo, con un poco más de aire para la persona */
.expo-photo-carousel .expo-gallery-slide.is-ford-blue .expo-gallery-img,
.expo-photo-carousel .expo-gallery-slide:nth-child(2) .expo-gallery-img{
  object-position:94% center!important;
}

/* Patrocinadores y aliados: logos normalizados en JPG 500x500 con fondo blanco */
.expo-sponsor-card{padding:12px!important;}
.expo-sponsor-card img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
}
.expo-ally-card img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
}

/* Ajustes responsive finales para resoluciones comunes y pantallas de baja altura */
@media (min-width:992px) and (max-width:1210px) and (max-height:620px){
  #inicio .expo-main-title{font-size:52px!important;line-height:1.02!important;max-width:500px!important;margin-bottom:18px!important;}
  #inicio p{font-size:16px!important;line-height:1.55!important;margin-bottom:22px!important;}
  #inicio .btn{padding-top:12px!important;padding-bottom:12px!important;}
}
@media (min-width:1366px) and (max-width:1536px){
  #inicio .expo-main-title{line-height:.96!important;}
}


/* v44 ajustes controlados */
/* Ícono Ambiente familiar restaurado desde v42: no modificar */

/* Ford azul: encuadre aprobado con más aire para la persona, manteniendo el frente del auto */
.expo-photo-carousel .expo-gallery-slide.is-ford-blue .expo-gallery-img,
.expo-photo-carousel .expo-gallery-slide:nth-child(2) .expo-gallery-img{
  object-position:86% center!important;
}

/* Carrusel de aliados: formato rectangular 600x300, mayor legibilidad, sin tocar patrocinadores */
.expo-ally-slide{
  width:260px!important;
}
.expo-ally-card{
  width:250px!important;
  height:126px!important;
  padding:8px 10px!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.expo-ally-card img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  filter:none!important;
  opacity:1!important;
}
@media (max-width:767px){
  .expo-ally-slide{width:220px!important;}
  .expo-ally-card{width:210px!important;height:106px!important;padding:7px 9px!important;}
}

/* Seguridad visual responsive: evitar desbordes horizontales */
html, body{max-width:100%;overflow-x:hidden;}
img{max-width:100%;}


/* v46 ajustes finales solicitados */


/* v49: Aliados normalizados desde archivo fuente 500x300
   La imagen resuelve el peso visual; el código sólo centra y contiene. */
.expo-ally-slide{
  width:260px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.expo-ally-card{
  width:250px!important;
  height:150px!important;
  padding:0!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.expo-ally-card img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  filter:none!important;
  opacity:1!important;
  background:#fff!important;
}
@media (max-width:767px){
  .expo-ally-slide{width:220px!important;}
  .expo-ally-card{width:210px!important;height:126px!important;padding:0!important;}
}

/* v49: Logos destacados normalizados desde archivo fuente */
.expo-featured-card{
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.expo-featured-card img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  background:#fff!important;
}

/* v49: Mobile únicamente - reducir espacio entre bloque descriptivo y estadísticas */
@media (max-width:767px){
  .expo-about-block{padding-bottom:4px!important;}
  .expo-stats{padding-top:12px!important;}
}
@media (max-width:575px){
  .expo-about-block{padding-bottom:0!important;}
  .expo-stats{padding-top:10px!important;}
}

/* v50 final: carrusel de aliados con altura original y sin escalado individual por marca */
.expo-ally-slide{
  width:220px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.expo-ally-card{
  width:210px!important;
  height:116px!important;
  padding:0!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  border-radius:6px!important;
}
.expo-ally-card img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  filter:none!important;
  opacity:1!important;
  background:#fff!important;
}
@media (max-width:767px){
  .expo-ally-slide{width:182px!important;}
  .expo-ally-card{width:172px!important;height:100px!important;padding:0!important;}
}

/* v50 final: destacados preparados desde archivo, CSS sólo centra */
.expo-featured-card{
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.expo-featured-card img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  background:#fff!important;
}

/* v50: Contacto */
.expo-contact-hero{
  padding-top:140px!important;
  padding-bottom:70px!important;
  background:#fff;
}
.expo-contact-vertical{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  letter-spacing:1px;
  font-size:14px;
  font-weight:700;
  color:#111;
  text-transform:uppercase;
}
.expo-contact-title{
  font-family:var(--alt-font)!important;
  font-size:58px!important;
  line-height:1.04!important;
  letter-spacing:-3px!important;
  font-weight:700!important;
  color:#111!important;
  max-width:560px;
}
.expo-contact-image{
  border-radius:6px;
  overflow:hidden;
  min-height:520px;
  background-size:cover;
  background-position:center;
}
.expo-contact-form-section{padding-top:70px!important;padding-bottom:90px!important;background:#fff;}
.expo-contact-eyebrow{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--expo-green);}
.expo-contact-eyebrow:before{content:"";display:inline-block;width:26px;height:1px;background:var(--expo-red);margin-right:10px;vertical-align:middle;}
.expo-contact-form-title{
  font-family:var(--alt-font)!important;
  font-size:52px!important;
  line-height:1.05!important;
  letter-spacing:-2px!important;
  font-weight:700!important;
  color:#111!important;
}
.expo-contact-form .form-control{
  border:0!important;
  border-bottom:1px solid rgba(0,0,0,.18)!important;
  border-radius:0!important;
  padding-left:0!important;
  padding-right:48px!important;
  min-height:58px;
  font-size:17px;
  background:transparent!important;
}
.expo-contact-form textarea.form-control{min-height:135px;padding-top:18px!important;}
.expo-contact-form .form-icon{position:absolute;right:8px;top:18px;color:#111;}
.expo-contact-form button{width:100%;background:#1f1f1f!important;color:#fff!important;border-radius:4px!important;padding:17px 24px!important;font-weight:700!important;}
.expo-contact-legal{font-size:14px;line-height:24px;color:#777;margin-top:20px;}
@media (max-width:991px){
  .expo-contact-hero{padding-top:110px!important;padding-bottom:50px!important;}
  .expo-contact-title{font-size:44px!important;letter-spacing:-2px!important;}
  .expo-contact-image{min-height:360px;margin-top:35px;}
}
@media (max-width:767px){
  .expo-contact-hero{padding-top:95px!important;padding-bottom:35px!important;}
  .expo-contact-vertical{writing-mode:horizontal-tb;transform:none;margin-bottom:14px;}
  .expo-contact-title{font-size:36px!important;line-height:1.08!important;}
  .expo-contact-image{min-height:280px;}
  .expo-contact-form-section{padding-top:45px!important;padding-bottom:65px!important;}
  .expo-contact-form-title{font-size:36px!important;line-height:1.08!important;}
}

/* v50: Mobile únicamente - reducir un poco el espacio entre descripción y resultados */
@media (max-width:767px){
  .expo-about-block{padding-bottom:0!important;margin-bottom:0!important;}
  .expo-stats{padding-top:8px!important;}
}


/* v52 contacto: ajustes respetando layout original del template */
.bg-expo-green{background:#0f5b36!important;}
.text-expo-green{color:#0f5b36!important;}
.expo-contact-anchor{scroll-margin-top:120px;}
.expo-privacy-check{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:20px;color:#777;}
.expo-privacy-check input{width:16px;height:16px;margin-top:2px;flex:0 0 auto;accent-color:#0f5b36;}
.expo-privacy-check label{margin:0;}
.expo-privacy-check a{color:#111;text-decoration:underline;text-underline-offset:3px;}
#expo-contact-form .form-control:invalid:not(:placeholder-shown){border-color:#b3261e!important;}
#expo-contact-form .form-control:valid:not(:placeholder-shown){border-color:rgba(0,0,0,.18)!important;}

/* v53 contacto: ajustes de separación y encabezados */
.expo-contact-form-module{padding-top:90px!important;padding-bottom:110px!important;}
.expo-contact-form-module .contact-form-style-03{padding-top:20px!important;padding-bottom:20px!important;}
.expo-contact-form-module .text-expo-green{letter-spacing:.5px!important;}
.expo-contact-form-module h2{margin-bottom:42px!important;}
.expo-contact-footer-space{margin-top:0!important;}
@media (max-width:991px){
  .expo-contact-form-module{padding-top:70px!important;padding-bottom:90px!important;}
}
@media (max-width:767px){
  .expo-contact-form-module{padding-top:55px!important;padding-bottom:75px!important;}
}


/* v54 visitantes + contacto */
#visitantes{scroll-margin-top:120px!important;}
.expo-visitantes .bg-base-color,.expo-faq .bg-base-color,.expo-contact-form-module .bg-base-color{background:var(--expo-green)!important;}
.expo-visitantes .text-gradient-base-color,.expo-faq .text-gradient-base-color,.expo-contact-form-module .text-gradient-base-color{background:none!important;background-image:none!important;color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;}
.expo-visitantes-cards .feature-box{min-height:255px;}
.expo-ticket-price{font-size:54px!important;line-height:.95!important;}
.expo-ticket-plus{font-size:54px!important;line-height:.95!important;color:var(--expo-green)!important;}
.expo-faq .accordion-style-02 .accordion-title i{right:0!important;left:auto!important;}
.expo-faq .accordion-style-02 .accordion-title{padding-right:36px!important;}
.expo-faq .accordion-style-02 .accordion-body{padding-right:36px!important;}
.expo-contact-form-module .contact-form-style-03{padding-top:0!important;padding-bottom:0!important;}
.expo-contact-form-module .text-gradient-base-color{text-transform:uppercase!important;letter-spacing:.5px!important;}
.expo-contact-form-module button{text-transform:uppercase!important;background:var(--expo-green)!important;color:#fff!important;}
.expo-contact-form-module button:hover{background:var(--expo-red)!important;color:#fff!important;}
.expo-contact-form-visual{min-height:100%!important;background-size:cover!important;background-position:center!important;}
@media (max-width: 991px){
  #visitantes{scroll-margin-top:95px!important;}
  .expo-ticket-price,.expo-ticket-plus{font-size:46px!important;}
  .expo-contact-form-visual{min-height:420px!important;}
}
@media (max-width: 575px){
  #visitantes{scroll-margin-top:90px!important;}
  .expo-ticket-price,.expo-ticket-plus{font-size:40px!important;}
  .expo-contact-form-visual{min-height:320px!important;}
}

/* Visitantes v60 */
.expo-visitantes .bg-base-color,
.expo-faq .bg-base-color,
.expo-horarios .bg-base-color,
.expo-location .bg-base-color,
.expo-contact-form-module .bg-base-color{background:var(--expo-green)!important;}
.expo-visitantes .text-gradient-base-color,
.expo-faq .text-gradient-base-color,
.expo-horarios .text-gradient-base-color,
.expo-location .text-gradient-base-color,
.expo-contact-form-module .text-gradient-base-color{background:none!important;background-image:none!important;color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;}
.expo-visitantes-cards{border-top:1px solid var(--extra-medium-gray);border-bottom:1px solid var(--extra-medium-gray);}
.expo-visitantes-cards .feature-box{min-height:300px!important;background:#fff;}
.expo-visitantes-cards .feature-box:first-child{border-left:0!important;}
.expo-visitantes-cards .feature-box:nth-child(2){border-left:1px solid var(--extra-medium-gray)!important;}
.expo-ticket-price{font-size:58px!important;line-height:1!important;}
.expo-ticket-btn{background:#c8192e!important;border-color:#c8192e!important;color:#fff!important;font-size:16px!important;line-height:1!important;padding:16px 28px!important;font-weight:600!important;letter-spacing:.2px!important;text-transform:none!important;}
.expo-ticket-btn:hover{background:#a91425!important;border-color:#a91425!important;color:#fff!important;}
.expo-ticket-btn .expo-inline-icon{width:19px!important;height:19px!important;margin-right:12px!important;}
.expo-ticket-btn .btn-double-text{font-size:16px!important;}
.expo-text-link{color:var(--expo-green)!important;font-weight:700!important;text-decoration:none!important;}
.expo-text-link:hover{text-decoration:underline!important;color:var(--expo-green)!important;}
.expo-faq .accordion-body ul{display:block!important;list-style:disc!important;padding-left:22px!important;margin:12px 0 18px!important;}
.expo-faq .accordion-body li{display:list-item!important;list-style:disc!important;margin-bottom:7px!important;line-height:1.65!important;}
.expo-schedule-steps{border-top:1px solid var(--extra-medium-gray);padding-top:0;}
.expo-schedule-steps .process-step-style-06{padding-right:30px;}
.expo-schedule-steps .process-step-icon-box .progress-step-separator{top:14px!important;}
.expo-map-wrap{width:100%;overflow:hidden;border-radius:14px;background:#f1f1f1;}
.expo-map-wrap iframe{display:block;width:100%;min-height:520px;}
@media (max-width:767px){
  .expo-visitantes-cards{border-top:0;border-bottom:0;}
  .expo-visitantes-cards .feature-box{border:1px solid var(--extra-medium-gray)!important;margin-bottom:24px;min-height:260px!important;}
  .expo-visitantes-cards .feature-box:nth-child(2){border-left:1px solid var(--extra-medium-gray)!important;}
  .expo-ticket-price{font-size:48px!important;}
  .expo-map-wrap iframe{min-height:420px;}
}

/* v61 - Visitantes ajustes solicitados */
.expo-visitantes-cards .feature-box-content{align-items:center!important;text-align:center!important;}
.expo-visitantes-cards .feature-box{padding-top:30px!important;padding-bottom:30px!important;}
.expo-visitantes-cards .feature-box:first-child{border-left:0!important;}
.expo-visitantes-cards .feature-box + .feature-box{border-left:1px solid var(--extra-medium-gray)!important;}
.expo-visitantes-cards .expo-ticket-price{margin-top:0!important;margin-bottom:0!important;font-size:54px!important;line-height:.95!important;}
.expo-ticket-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:auto!important;max-width:max-content!important;background:#c8192e!important;border-color:#c8192e!important;color:#fff!important;font-size:15px!important;line-height:1!important;padding:13px 24px!important;font-weight:600!important;letter-spacing:.1px!important;text-transform:none!important;border-radius:0!important;}
.expo-ticket-btn:hover{background:#a91425!important;border-color:#a91425!important;color:#fff!important;}
.expo-ticket-btn .expo-inline-icon{width:17px!important;height:17px!important;margin-right:10px!important;}
.expo-ticket-btn .btn-double-text,.expo-ticket-btn .btn-double-text:before{font-size:15px!important;color:#fff!important;}
.expo-ticket-btn>span{display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;}
.expo-horarios{padding-top:0!important;padding-bottom:60px!important;}
.expo-schedule-steps{margin-top:0!important;}
.expo-location .col-xl-5{width:100%!important;max-width:100%!important;}
.expo-location p{max-width:980px!important;}
.expo-location .btn .expo-inline-icon{width:17px!important;height:17px!important;margin-right:10px!important;}
.expo-text-link,.expo-text-link strong{color:var(--expo-green)!important;font-weight:700!important;}
.expo-faq .accordion-body ul{display:block!important;list-style:disc!important;padding-left:24px!important;margin:12px 0 18px!important;}
.expo-faq .accordion-body li{display:list-item!important;list-style:disc!important;margin-bottom:7px!important;line-height:1.65!important;}
@media (max-width:767px){
  .expo-visitantes-cards .feature-box + .feature-box{border-left:0!important;border-top:1px solid var(--extra-medium-gray)!important;}
  .expo-ticket-btn{font-size:14px!important;padding:12px 22px!important;}
}


/* v62 ajustes Visitantes */
.expo-visitantes-cards{border-top:0!important;border-bottom:0!important;}
.expo-visitantes-note{border-top:0!important;border-bottom:0!important;}
.expo-ticket-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:192px!important;max-width:192px!important;height:56px!important;padding:0 22px!important;background:#c8192e!important;border-color:#c8192e!important;color:#fff!important;font-size:15px!important;line-height:1!important;font-weight:600!important;text-transform:none!important;border-radius:0!important;}
.expo-ticket-btn:hover{background:#a91425!important;border-color:#a91425!important;color:#fff!important;}
.expo-ticket-btn>span{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;}
.expo-ticket-btn .expo-inline-icon{width:16px!important;height:16px!important;margin-right:12px!important;}
.expo-ticket-btn .btn-double-text,.expo-ticket-btn .btn-double-text:before{font-size:15px!important;color:#fff!important;}
.expo-visitantes-cards .feature-box{min-height:270px!important;}
.expo-horarios{padding-top:0!important;}
.expo-text-link{color:var(--expo-green)!important;font-weight:700!important;}
.expo-location p{max-width:920px;}
.btn .expo-inline-icon{width:16px;height:16px;margin-right:10px;}
@media (max-width: 767px){
  .expo-ticket-btn{min-width:190px!important;max-width:190px!important;height:54px!important;}
  .expo-visitantes-cards .feature-box + .feature-box{border-left:0!important;border-top:0!important;}
}

/* v64 - ajustes finales Visitantes */
.expo-visitantes-cards{border-top:0!important;border-bottom:0!important;}
.expo-visitantes-cards .feature-box{border-top:0!important;border-bottom:0!important;min-height:250px!important;}
.expo-visitantes-cards .feature-box:first-child{border-left:0!important;}
.expo-visitantes-cards .feature-box + .feature-box{border-left:1px solid var(--extra-medium-gray)!important;}
.expo-visitantes-note{border:0!important;padding-top:22px!important;padding-bottom:10px!important;}
.expo-ticket-info{white-space:nowrap!important;width:auto!important;max-width:none!important;}
.expo-ticket-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:235px!important;max-width:235px!important;height:50px!important;padding:0 26px!important;background:#c8192e!important;border-color:#c8192e!important;color:#fff!important;font-size:16px!important;line-height:1!important;font-weight:700!important;text-transform:none!important;border-radius:0!important;white-space:nowrap!important;}
.expo-ticket-btn:hover{background:var(--expo-green)!important;border-color:var(--expo-green)!important;color:#fff!important;}
.expo-ticket-btn>span{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;white-space:nowrap!important;}
.expo-ticket-btn .expo-inline-icon{width:17px!important;height:17px!important;margin-right:14px!important;flex:0 0 auto!important;}
.expo-ticket-btn .btn-double-text,.expo-ticket-btn .btn-double-text:before{font-size:16px!important;line-height:1!important;color:#fff!important;white-space:nowrap!important;}
.expo-text-link,.expo-text-link strong{color:var(--expo-green)!important;font-weight:700!important;text-decoration:none!important;}
.expo-text-link:hover,.expo-text-link:hover strong{text-decoration:underline!important;color:var(--expo-green)!important;}
.expo-faq .accordion-body ul{display:block!important;list-style:disc!important;padding-left:24px!important;margin:12px 0 18px!important;}
.expo-faq .accordion-body li{display:list-item!important;list-style:disc!important;margin-bottom:7px!important;line-height:1.65!important;}
.expo-location p{max-width:980px!important;}
.expo-location .btn:hover{background:var(--expo-green)!important;border-color:var(--expo-green)!important;color:#fff!important;}
@media (max-width:767px){
  .expo-visitantes-cards .feature-box + .feature-box{border-left:0!important;border-top:0!important;}
  .expo-ticket-info{white-space:normal!important;}
  .expo-ticket-btn{min-width:220px!important;max-width:220px!important;height:50px!important;font-size:15px!important;}
  .expo-ticket-btn .btn-double-text,.expo-ticket-btn .btn-double-text:before{font-size:15px!important;}
}


/* v65 - Inscripciones */
.expo-section-kicker{display:flex;align-items:center;}
.expo-section-kicker .bg-base-color{background:var(--expo-green)!important;}
.expo-section-kicker .text-gradient-base-color{background:none!important;background-image:none!important;color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;}
.expo-inscripciones .bg-base-color,.expo-vehiculos-elegibles .bg-base-color{background:var(--expo-green)!important;}
.expo-inscripciones .text-gradient-base-color,.expo-vehiculos-elegibles .text-gradient-base-color{background:none!important;background-image:none!important;color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;}
.expo-inscripcion-card{background:#f2f5ef;border:1px solid rgba(47,107,62,.12);padding:55px 45px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:270px;}
.expo-red-cta{background:#c8192e!important;border-color:#c8192e!important;color:#fff!important;font-size:15px!important;font-weight:700!important;line-height:1!important;padding:14px 25px!important;border-radius:0!important;text-transform:none!important;}
.expo-red-cta:hover{background:var(--expo-green)!important;border-color:var(--expo-green)!important;color:#fff!important;}
.expo-red-cta>span{display:flex!important;align-items:center!important;justify-content:center!important;}
.expo-red-cta .expo-inline-icon{width:17px!important;height:17px!important;margin-right:12px!important;}
.expo-red-cta .btn-double-text,.expo-red-cta .btn-double-text:before{color:#fff!important;font-size:15px!important;}
.expo-eligible-box{background:#f2f5ef;border:1px solid rgba(47,107,62,.12);padding:50px 60px;}
.expo-eligible-list{list-style:disc!important;margin:0 auto!important;padding-left:24px!important;max-width:760px;}
.expo-eligible-list li{display:list-item!important;list-style:disc!important;margin-bottom:18px!important;line-height:1.65!important;font-size:18px!important;}
.expo-eligible-list li:last-child{margin-bottom:0!important;}
.expo-inscripciones-note{max-width:980px;margin-left:auto;margin-right:auto;font-size:17px;line-height:1.7;color:#6f6f6f;}
@media (max-width:767px){
  .expo-inscripcion-card{padding:38px 28px;min-height:230px;}
  .expo-eligible-box{padding:36px 28px;}
  .expo-eligible-list li{font-size:16px!important;}
}

/* v66 - Correcciones finales visitantes */
.expo-visitantes .mb-10px > span.w-25px,
.expo-faq .mb-10px > span.w-25px,
.expo-location .mb-10px > span.w-25px,
.expo-horarios .mb-10px > span.w-25px,
.expo-contact-form-module .mb-10px > span.w-25px,
.expo-inscripciones .mb-10px > span.w-25px,
.expo-vehiculos-elegibles .mb-10px > span.w-25px{
  width:34px!important;
  height:1px!important;
  background:var(--expo-green)!important;
  margin-right:8px!important;
}
.expo-visitantes-cards,
.expo-visitantes-cards:before,
.expo-visitantes-cards:after{
  border-top:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
.expo-visitantes-cards .feature-box{
  border-top:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
  min-height:250px!important;
}
.expo-visitantes-cards .feature-box:first-child{
  border-left:0!important;
  border-right:0!important;
}
.expo-visitantes-cards .feature-box + .feature-box{
  border-left:1px solid var(--extra-medium-gray)!important;
  border-top:0!important;
  border-bottom:0!important;
}
.expo-visitantes-note,
.expo-visitantes-note:before,
.expo-visitantes-note:after{
  border:0!important;
  box-shadow:none!important;
}
.expo-ticket-info{
  display:inline-block!important;
  width:390px!important;
  max-width:100%!important;
  white-space:normal!important;
  text-align:center!important;
}
.expo-ticket-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:235px!important;
  max-width:235px!important;
  height:50px!important;
  padding:0 26px!important;
  background:#c8192e!important;
  border-color:#c8192e!important;
  color:#fff!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:700!important;
  text-transform:none!important;
  border-radius:0!important;
  white-space:nowrap!important;
}
.expo-ticket-btn:hover{
  background:var(--expo-green)!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
}
.expo-ticket-btn>span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  white-space:nowrap!important;
}
.expo-ticket-btn .expo-inline-icon{
  width:17px!important;
  height:17px!important;
  margin-right:14px!important;
  flex:0 0 auto!important;
}
.expo-ticket-btn .btn-double-text,
.expo-ticket-btn .btn-double-text:before{
  font-size:16px!important;
  line-height:1!important;
  color:#fff!important;
  white-space:nowrap!important;
}
.expo-location p{
  max-width:960px!important;
}
.expo-location .btn:hover{
  background:var(--expo-green)!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
}
@media (max-width:767px){
  .expo-visitantes-cards .feature-box + .feature-box{
    border-left:0!important;
  }
  .expo-ticket-info{
    width:100%!important;
  }
  .expo-ticket-btn{
    min-width:220px!important;
    max-width:220px!important;
    height:50px!important;
    font-size:15px!important;
  }
  .expo-ticket-btn .btn-double-text,
  .expo-ticket-btn .btn-double-text:before{
    font-size:15px!important;
  }
}


/* v67 - Ajustes finos solicitados en Visitantes */
.expo-visitantes .mb-10px > span.w-25px,
.expo-faq .mb-10px > span.w-25px{
  width:25px!important;
  height:1px!important;
  background:var(--expo-green)!important;
  margin-right:5px!important;
}
.expo-ticket-info{
  margin-top:20px!important;
}
.expo-ticket-btn .btn-double-text,
.expo-ticket-btn .btn-double-text:before{
  transition:opacity .5s, transform .8s!important;
  transition-timing-function:cubic-bezier(.15,.85,.31,1)!important;
  line-height:16px!important;
  height:16px!important;
  display:inline-block!important;
  overflow:visible!important;
}
.expo-ticket-btn:hover .btn-double-text,
.expo-ticket-btn:active .btn-double-text{
  transform:translateY(-210%)!important;
  opacity:1!important;
}
.expo-ticket-btn:hover .btn-double-text:before,
.expo-ticket-btn:active .btn-double-text:before{
  transform:translate(-50%, 155%)!important;
  opacity:1!important;
}
.expo-faq{
  padding-bottom:42px!important;
}
.expo-location{
  padding-top:0!important;
}
.expo-location .row.mb-5{
  margin-bottom:28px!important;
}

/* v68 - Ajustes finales visitantes e inscripciones */
.expo-visitantes .mb-10px > span.w-25px,
.expo-faq .mb-10px > span.w-25px,
.expo-location .mb-10px > span.w-25px,
.expo-inscripciones .mb-10px > span.w-45px,
.expo-vehiculos-elegibles .mb-10px > span.w-45px{
  width:25px!important;
  height:1px!important;
  background:var(--expo-green)!important;
  margin-right:8px!important;
}
.expo-ticket-info{margin-top:24px!important;}
.expo-ticket-btn>span,
.expo-red-cta>span{
  position:relative!important;
  overflow:hidden!important;
}
.expo-ticket-btn .btn-double-text,
.expo-ticket-btn .btn-double-text:before,
.expo-red-cta .btn-double-text,
.expo-red-cta .btn-double-text:before{
  transition:opacity .5s, transform .8s!important;
  transition-timing-function:cubic-bezier(.15,.85,.31,1)!important;
  color:#fff!important;
  white-space:nowrap!important;
}
.expo-ticket-btn:hover .btn-double-text,
.expo-ticket-btn:active .btn-double-text,
.expo-red-cta:hover .btn-double-text,
.expo-red-cta:active .btn-double-text{
  transform:translateY(-200%)!important;
}
.expo-ticket-btn:hover .btn-double-text:before,
.expo-ticket-btn:active .btn-double-text:before,
.expo-red-cta:hover .btn-double-text:before,
.expo-red-cta:active .btn-double-text:before{
  transform:translate(-50%,150%)!important;
  opacity:1!important;
}
.expo-inscripciones .expo-ticket-btn{min-width:235px!important;max-width:235px!important;height:50px!important;padding:0 26px!important;}
.expo-vehiculos-elegibles .separator-line-1px{opacity:1!important;}
.expo-inscripciones-note{max-width:980px;margin-left:auto;margin-right:auto;font-size:17px;line-height:1.7;color:#6f6f6f;}
@media (max-width:767px){
  .expo-inscripciones .expo-ticket-btn{min-width:220px!important;max-width:220px!important;height:50px!important;}
}


/* v70 - Consolidación final de cambios aprobados */
:root{--base-color:var(--expo-green)!important;}
.bg-base-color{background:var(--expo-green)!important;}
.text-gradient-base-color{
  background:none!important;
  background-image:none!important;
  color:var(--expo-green)!important;
  -webkit-text-fill-color:var(--expo-green)!important;
}
.expo-section-kicker .bg-base-color,
.expo-visitantes .bg-base-color,
.expo-faq .bg-base-color,
.expo-location .bg-base-color,
.expo-inscripciones .bg-base-color,
.expo-vehiculos-elegibles .bg-base-color,
.expo-contact-form-module .bg-base-color{background:var(--expo-green)!important;}
.expo-section-kicker .text-gradient-base-color,
.expo-visitantes .text-gradient-base-color,
.expo-faq .text-gradient-base-color,
.expo-location .text-gradient-base-color,
.expo-inscripciones .text-gradient-base-color,
.expo-vehiculos-elegibles .text-gradient-base-color,
.expo-contact-form-module .text-gradient-base-color{
  background:none!important;
  background-image:none!important;
  color:var(--expo-green)!important;
  -webkit-text-fill-color:var(--expo-green)!important;
}
.expo-visitantes .mb-10px > span.w-25px,
.expo-faq .mb-10px > span.w-25px,
.expo-location .mb-10px > span.w-25px,
.expo-inscripciones .mb-10px > span.w-45px,
.expo-vehiculos-elegibles .mb-10px > span.w-45px,
.expo-contact-form-module .mb-10px > span.w-25px{
  width:25px!important;
  height:1px!important;
  background:var(--expo-green)!important;
  margin-right:8px!important;
}
.expo-inscripcion-card{
  background:#fff!important;
  border:1px solid #e9e9e9!important;
  box-shadow:none!important;
}
.expo-inscripciones .expo-ticket-btn{
  min-width:278px!important;
  max-width:278px!important;
  width:278px!important;
  height:50px!important;
  padding:0 28px!important;
  overflow:hidden!important;
}
.expo-ticket-btn,
.expo-inscripciones .expo-ticket-btn{
  transition:background-color .25s ease,border-color .25s ease,color .25s ease!important;
}
.expo-ticket-btn:hover,
.expo-inscripciones .expo-ticket-btn:hover{
  background:var(--expo-green)!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
}
.expo-ticket-btn>span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.expo-ticket-btn .expo-inline-icon{
  flex:0 0 auto!important;
}
.expo-ticket-btn .btn-double-text,
.expo-ticket-btn .btn-double-text:before{
  color:#fff!important;
  white-space:nowrap!important;
  line-height:18px!important;
  height:18px!important;
}
.expo-ticket-btn:hover .btn-double-text,
.expo-ticket-btn:active .btn-double-text{
  transform:translateY(-210%)!important;
}
.expo-ticket-btn:hover .btn-double-text:before,
.expo-ticket-btn:active .btn-double-text:before{
  transform:translate(-50%, 160%)!important;
  opacity:1!important;
}
.expo-ticket-info{margin-top:26px!important;}
.expo-faq{padding-bottom:24px!important;}
.expo-location{padding-top:0!important;}
.expo-location .row.mb-5{margin-bottom:24px!important;}
.expo-vehiculos-elegibles .col-md-5 .fs-19{max-width:260px!important;}
.expo-inscripciones-note strong{color:#4b4b4b!important;}
@media (max-width:991px){
  header,
  header.sticky,
  header.sticky.sticky-active{
    position:sticky!important;
    top:0!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    z-index:9999!important;
  }
  header .navbar{transform:none!important;}
}
@media (max-width:767px){
  .expo-inscripciones .expo-ticket-btn{
    min-width:260px!important;
    max-width:260px!important;
    width:260px!important;
  }
  .expo-vehiculos-elegibles .col-md-5 .fs-19{max-width:100%!important;}
}

/* v71 - Ajustes finales solicitados */
/* Verde sólido: anula cualquier naranja/gradiente heredado */
.text-gradient-base-color,
.expo-section-kicker .text-gradient-base-color,
.expo-inscripciones .text-gradient-base-color,
.expo-vehiculos-elegibles .text-gradient-base-color,
.expo-visitantes .text-gradient-base-color,
.expo-faq .text-gradient-base-color,
.expo-location .text-gradient-base-color,
.expo-contact-form-module .text-gradient-base-color{
  background:none!important;
  background-image:none!important;
  color:var(--expo-green)!important;
  -webkit-text-fill-color:var(--expo-green)!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
}

/* Tarjetas de Inscripciones */
.expo-inscripcion-card{
  background:#fff!important;
  border:1px solid #e9e9e9!important;
}
.expo-card-icon{
  width:44px;
  height:44px;
  color:var(--expo-green)!important;
  margin:0 auto 20px;
}
.expo-card-icon svg{
  width:44px;
  height:44px;
  display:block;
}
.expo-inscripciones .expo-ticket-btn{
  min-width:278px!important;
  max-width:278px!important;
  width:278px!important;
  height:50px!important;
  overflow:hidden!important;
}

/* Mobile: separador horizontal entre tarjetas de boletos */
@media (max-width:767px){
  .expo-visitantes-cards .feature-box{position:relative!important;}
  .expo-visitantes-cards .feature-box + .feature-box{
    border-left:0!important;
    border-top:0!important;
    margin-top:12px!important;
  }
  .expo-visitantes-cards .feature-box + .feature-box:before{
    content:"";
    position:absolute;
    top:-18px;
    left:50%;
    transform:translateX(-50%);
    width:64%;
    height:1px;
    background:var(--extra-medium-gray);
    opacity:1;
  }
}

/* Mobile: header siempre visible al hacer scroll */
@media (max-width:991px){
  header,
  header.sticky,
  header.sticky-active,
  header.sticky.sticky-active,
  header.header-reverse,
  header.sticky-down,
  header.sticky-up{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    z-index:99999!important;
  }
  header .navbar,
  header.sticky .navbar,
  header.sticky-active .navbar{
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    background:#fff!important;
    box-shadow:0 8px 25px rgba(0,0,0,.08)!important;
  }
  .top-space-margin{
    margin-top:88px!important;
  }
}


/* v72 - Ajustes finales responsive y consistencia visual */
/* Eliminar naranjas/gradientes en títulos pequeños: verde sólido en todo el sitio */
.text-gradient-base-color,
[class*="text-gradient"],
.expo-section-kicker span,
.expo-inscripciones .expo-section-kicker span,
.expo-vehiculos-elegibles .expo-section-kicker span,
.expo-visitantes .mb-10px span,
.expo-faq .mb-10px span,
.expo-location .mb-10px span,
.expo-contact-form-module .mb-10px span{
  background:none!important;
  background-image:none!important;
  color:var(--expo-green)!important;
  -webkit-text-fill-color:var(--expo-green)!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
}
.expo-section-kicker span:first-child,
.expo-visitantes .mb-10px span:first-child,
.expo-faq .mb-10px span:first-child,
.expo-location .mb-10px span:first-child,
.expo-contact-form-module .mb-10px span:first-child{
  width:25px!important;
  height:1px!important;
  background:var(--expo-green)!important;
  margin-right:8px!important;
  -webkit-text-fill-color:initial!important;
}

/* Inscripciones: botón y tarjetas */
.expo-inscripcion-card{background:#fff!important;border:1px solid #e9e9e9!important;}
.expo-inscripciones .expo-ticket-btn{
  min-width:292px!important;
  max-width:292px!important;
  width:292px!important;
  height:50px!important;
  padding:0 30px!important;
  overflow:hidden!important;
}
.expo-ticket-btn>span{gap:13px!important;}
.expo-ticket-btn .btn-double-text,
.expo-ticket-btn .btn-double-text:before{
  white-space:nowrap!important;
  width:auto!important;
  overflow:visible!important;
}
.expo-ticket-btn:hover .btn-double-text,
.expo-ticket-btn:active .btn-double-text{transform:translateY(-200%)!important;}
.expo-ticket-btn:hover .btn-double-text:before,
.expo-ticket-btn:active .btn-double-text:before{transform:translate(-50%, 200%)!important;}

/* Vehículos elegibles: cortes controlados sin BR rígidos */
@media (min-width:768px){
  .expo-vehicle-title span{display:block;}
}
.expo-inscripciones-note{max-width:850px!important;margin-left:auto!important;margin-right:auto!important;}
.expo-inscripciones-note strong{font-weight:inherit!important;color:inherit!important;}

/* Visitantes mobile: solo separador horizontal, sin línea vertical */
@media (max-width:767px){
  .expo-visitantes-cards .feature-box{border-left:0!important;border-right:0!important;}
  .expo-visitantes-cards .feature-box + .feature-box{border-left:0!important;border-top:0!important;margin-top:14px!important;}
  .expo-visitantes-cards .feature-box + .feature-box:before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    top:-18px!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:64%!important;
    height:1px!important;
    background:#e5e5e5!important;
  }
}

/* Contacto mobile: simplificar módulo */
@media (max-width:767px){
  .expo-contact-anchor{display:none!important;}
  .expo-contact-form-module{padding-top:105px!important;padding-bottom:70px!important;}
  .expo-contact-form-visual{display:none!important;}
  .expo-contact-form-module .contact-form-style-03{padding-top:0!important;padding-bottom:0!important;}
  .expo-contact-form-module h2{font-size:38px!important;line-height:1.08!important;}
}

/* Home mobile: pequeño respiro antes de los datos del evento */
@media (max-width:767px){
  .expo-about-block{padding-bottom:8px!important;margin-bottom:0!important;}
  .expo-stats{padding-top:18px!important;}
}

/* Header fijo y visible en mobile */
@media (max-width:991px){
  header,
  header.sticky,
  header.sticky-active,
  header.sticky.sticky-active,
  header.header-reverse,
  header.sticky-down,
  header.sticky-up{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    z-index:99999!important;
  }
  header .navbar{transform:none!important;opacity:1!important;visibility:visible!important;background:#fff!important;box-shadow:0 8px 25px rgba(0,0,0,.08)!important;}
  .top-space-margin{margin-top:88px!important;}
}

/* v73 - Ajustes finales responsive, limpieza y consistencia */
/* Botones CTA: corregir alineación vertical y evitar desplazamiento en hover */
.expo-ticket-btn.btn-switch-text,
.expo-ticket-btn.btn-switch-text:hover,
.expo-ticket-btn.btn-switch-text:active{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:50px!important;
  line-height:1!important;
  padding-top:0!important;
  padding-bottom:0!important;
}
.expo-ticket-btn.btn-switch-text > span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:100%!important;
  line-height:1!important;
  overflow:visible!important;
  transform:none!important;
}
.expo-ticket-btn .expo-inline-icon{
  display:block!important;
  margin-top:0!important;
  margin-bottom:0!important;
  transform:none!important;
}
.expo-ticket-btn .btn-double-text,
.expo-ticket-btn .btn-double-text:before,
.expo-ticket-btn:hover .btn-double-text,
.expo-ticket-btn:active .btn-double-text,
.expo-ticket-btn:hover .btn-double-text:before,
.expo-ticket-btn:active .btn-double-text:before{
  position:relative!important;
  display:inline-block!important;
  top:auto!important;
  left:auto!important;
  height:auto!important;
  line-height:1!important;
  transform:none!important;
  opacity:1!important;
  overflow:visible!important;
  white-space:nowrap!important;
}
.expo-ticket-btn .btn-double-text:before{display:none!important;content:none!important;}

/* Títulos pequeños: verde sólido, sin naranjas ni gradientes */
.text-gradient-base-color,
[class*="text-gradient"],
.expo-section-kicker .text-gradient-base-color,
.expo-visitantes .text-gradient-base-color,
.expo-faq .text-gradient-base-color,
.expo-location .text-gradient-base-color,
.expo-inscripciones .text-gradient-base-color,
.expo-vehiculos-elegibles .text-gradient-base-color,
.expo-contact-form-module .text-gradient-base-color{
  background:none!important;
  background-image:none!important;
  color:var(--expo-green)!important;
  -webkit-text-fill-color:var(--expo-green)!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
}
.expo-section-kicker span:first-child,
.expo-visitantes .mb-10px span:first-child,
.expo-faq .mb-10px span:first-child,
.expo-location .mb-10px span:first-child,
.expo-contact-form-module .mb-10px span:first-child{
  width:25px!important;
  min-width:25px!important;
  max-width:25px!important;
  height:1px!important;
  background:var(--expo-green)!important;
  margin-right:8px!important;
}

/* Inscripciones */
.expo-inscripciones-note{
  max-width:820px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media (min-width:768px){
  .expo-vehicle-title span{display:block!important;}
}

/* Home: ajustar ancla de Experiencias solo desktop. No tocar Patrocinadores. */
@media (min-width:992px){
  #experiencias{scroll-margin-top:72px!important;}
}

/* Visitantes: reducir espacio FAQ > Ubicación solo desktop */
@media (min-width:992px){
  .expo-faq{padding-bottom:12px!important;}
  .expo-location{padding-top:0!important;}
  .expo-location .row.mb-5{margin-bottom:18px!important;}
}
/* Visitantes mobile: mostrar subtítulo y compactar Horarios > FAQ */
@media (max-width:767px){
  .expo-visitantes .mb-10px{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    visibility:visible!important;
    opacity:1!important;
  }
  .expo-visitantes .mb-10px span{visibility:visible!important;opacity:1!important;display:inline-block!important;}
  .expo-horarios{padding-bottom:24px!important;}
  .expo-faq{padding-top:0!important;}
  .expo-visitantes-cards .feature-box{border-left:0!important;border-right:0!important;}
}

/* Contacto mobile: simplificar sección */
@media (max-width:767px){
  .expo-contact-anchor{display:none!important;}
  .expo-contact-form-visual{display:none!important;}
  .expo-contact-form-module{padding-top:105px!important;}
}

/* Header fijo en mobile */
@media (max-width:991px){
  header,
  header.sticky,
  header.sticky-active,
  header.sticky.sticky-active,
  header.header-reverse,
  header.sticky-down,
  header.sticky-up{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    z-index:99999!important;
  }
  header .navbar{transform:none!important;opacity:1!important;visibility:visible!important;background:#fff!important;box-shadow:0 8px 25px rgba(0,0,0,.08)!important;}
  .top-space-margin{margin-top:88px!important;}
}


/* v74 - Correcciones obligatorias finales */
/* Verde sólido en cualquier título pequeño; sin naranja ni gradientes */
:root{--base-color:var(--expo-green)!important;}
.text-gradient-base-color,
[class*="text-gradient"],
.expo-section-kicker .text-gradient-base-color,
.expo-visitantes .text-gradient-base-color,
.expo-faq .text-gradient-base-color,
.expo-location .text-gradient-base-color,
.expo-inscripciones .text-gradient-base-color,
.expo-vehiculos-elegibles .text-gradient-base-color,
.expo-contact-form-module .text-gradient-base-color{
  background:none!important;
  background-image:none!important;
  color:var(--expo-green)!important;
  -webkit-text-fill-color:var(--expo-green)!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
}
.bg-base-color{background-color:var(--expo-green)!important;}

/* Líneas verdes de sección iguales a Sede del evento */
.expo-section-kicker span:first-child,
.expo-visitantes .mb-10px span:first-child,
.expo-faq .mb-10px span:first-child,
.expo-location .mb-10px span:first-child,
.expo-contact-form-module .mb-10px span:first-child{
  width:25px!important;
  min-width:25px!important;
  max-width:25px!important;
  height:1px!important;
  background:var(--expo-green)!important;
  margin-right:8px!important;
}

/* Botones Comprar boletos y Descargar reglamento: usar lógica original del botón Cómo llegar */
.expo-visitantes .btn.btn-dark-gray.btn-switch-text,
.expo-inscripciones .btn.btn-dark-gray.btn-switch-text{
  min-width:auto!important;
  max-width:none!important;
  width:auto!important;
  height:auto!important;
  padding:17px 34px!important;
  overflow:hidden!important;
  line-height:normal!important;
}
.expo-visitantes .btn.btn-dark-gray.btn-switch-text > span,
.expo-inscripciones .btn.btn-dark-gray.btn-switch-text > span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  height:auto!important;
  overflow:visible!important;
}
.expo-visitantes .btn.btn-dark-gray.btn-switch-text .btn-double-text,
.expo-inscripciones .btn.btn-dark-gray.btn-switch-text .btn-double-text{
  display:inline-block!important;
  position:relative!important;
  line-height:inherit!important;
  white-space:nowrap!important;
  overflow:visible!important;
  transform:translateY(0)!important;
}
.expo-visitantes .btn.btn-dark-gray.btn-switch-text .btn-double-text:before,
.expo-inscripciones .btn.btn-dark-gray.btn-switch-text .btn-double-text:before{
  display:block!important;
  content:attr(data-text)!important;
  position:absolute!important;
  top:100%!important;
  left:0!important;
  width:100%!important;
  height:100%!important;
  transform:translateY(0)!important;
  opacity:1!important;
  white-space:nowrap!important;
}
.expo-visitantes .btn.btn-dark-gray.btn-switch-text:hover .btn-double-text,
.expo-inscripciones .btn.btn-dark-gray.btn-switch-text:hover .btn-double-text{
  transform:translateY(-100%)!important;
}
.expo-visitantes .btn.btn-dark-gray.btn-switch-text:hover .btn-double-text:before,
.expo-inscripciones .btn.btn-dark-gray.btn-switch-text:hover .btn-double-text:before{
  transform:translateY(0)!important;
}
.expo-visitantes .btn .expo-inline-icon,
.expo-inscripciones .btn .expo-inline-icon{width:18px!important;height:18px!important;display:block!important;flex:0 0 auto!important;}

/* Visitantes mobile: mostrar subtítulo VISITANTES */
@media (max-width:767px){
  .expo-visitantes .row.mb-6{display:flex!important;visibility:visible!important;opacity:1!important;margin-bottom:36px!important;}
  .expo-visitantes .mb-10px{display:flex!important;align-items:center!important;visibility:visible!important;opacity:1!important;min-height:18px!important;}
  .expo-visitantes .mb-10px span{display:inline-block!important;visibility:visible!important;opacity:1!important;transform:none!important;color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;}
  .expo-visitantes .mb-10px span:first-child{display:inline-block!important;background:var(--expo-green)!important;}
  .expo-horarios{padding-bottom:18px!important;}
  .expo-faq{padding-top:0!important;}
}

/* Visitantes mobile: separador horizontal entre tarjetas, sin línea vertical */
@media (max-width:767px){
  .expo-visitantes-cards .feature-box{border-left:0!important;border-right:0!important;}
  .expo-visitantes-cards .feature-box + .feature-box{position:relative!important;border-left:0!important;margin-top:16px!important;}
  .expo-visitantes-cards .feature-box + .feature-box:before{
    content:""!important;
    position:absolute!important;
    top:-18px!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:64%!important;
    height:1px!important;
    background:#e5e5e5!important;
  }
}

/* Visitantes desktop: reducir espacio FAQ > Ubicación */
@media (min-width:992px){
  .expo-faq{padding-bottom:0!important;}
  .expo-location{padding-top:0!important;margin-top:-18px!important;}
  .expo-location .row.mb-5{margin-bottom:16px!important;}
}

/* Contacto mobile simplificado */
@media (max-width:767px){
  .expo-contact-anchor{display:none!important;}
  .expo-contact-form-visual{display:none!important;}
  .expo-contact-form-module{padding-top:105px!important;padding-bottom:70px!important;}
  .expo-contact-form-module .contact-form-style-03{padding-top:0!important;padding-bottom:0!important;}
}

/* Header fijo y visible en mobile */
@media (max-width:991px){
  header,header.sticky,header.sticky-active,header.sticky.sticky-active,header.header-reverse,header.sticky-down,header.sticky-up{
    position:fixed!important;
    top:0!important;left:0!important;right:0!important;width:100%!important;
    transform:none!important;opacity:1!important;visibility:visible!important;z-index:99999!important;
  }
  header .navbar{transform:none!important;opacity:1!important;visibility:visible!important;background:#fff!important;box-shadow:0 8px 25px rgba(0,0,0,.08)!important;}
  .top-space-margin{margin-top:88px!important;}
}

/* Home mobile: pequeño espacio antes de datos del evento */
@media (max-width:767px){
  .expo-stats{padding-top:18px!important;}
}

/* Home desktop: ancla experiencias más compacta; patrocinadores no se toca */
@media (min-width:992px){
  #experiencias{scroll-margin-top:72px!important;}
}

/* Inscripciones: tarjeta blanca y nota final más contenida */
.expo-inscripcion-card{background:#fff!important;border:1px solid #e9e9e9!important;}
.expo-inscripciones-note{max-width:820px!important;margin-left:auto!important;margin-right:auto!important;}
.expo-inscripciones-note strong{font-weight:inherit!important;color:inherit!important;}
@media (min-width:768px){.expo-vehicle-title span{display:block!important;}}


/* v75 - Correcciones obligatorias verificadas */
.expo-action-btn{background:#c8192e!important;border-color:#c8192e!important;color:#fff!important;text-transform:none!important;white-space:nowrap!important;}
.expo-action-btn:hover,.expo-action-btn:active{background:var(--expo-green)!important;border-color:var(--expo-green)!important;color:#fff!important;}
.expo-action-btn > span{display:inline-flex!important;align-items:center!important;position:relative!important;overflow:hidden!important;}
.expo-action-btn .expo-inline-icon{width:18px!important;height:18px!important;flex:0 0 auto!important;display:block!important;}
.expo-action-btn .btn-double-text,.expo-action-btn .btn-double-text:before{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:15px!important;line-height:inherit!important;white-space:nowrap!important;}
.expo-download-action > span{padding-left:32px!important;padding-right:32px!important;}
@media (max-width:767px){.expo-action-btn > span{padding-left:28px!important;padding-right:28px!important;}.expo-download-action > span{padding-left:30px!important;padding-right:30px!important;}}

@media (max-width:767px){
  .expo-visitantes .row.mb-6,.expo-visitantes .row.mb-6 > div,.expo-visitantes .mb-10px{display:block!important;visibility:visible!important;opacity:1!important;}
  .expo-visitantes .mb-10px{margin-bottom:10px!important;min-height:20px!important;}
  .expo-visitantes .mb-10px span.w-25px,.expo-visitantes .mb-10px span:first-child{display:inline-block!important;width:25px!important;min-width:25px!important;max-width:25px!important;height:1px!important;background:var(--expo-green)!important;margin-right:8px!important;vertical-align:middle!important;}
  .expo-visitantes .mb-10px .text-gradient-base-color,.expo-visitantes .mb-10px span:last-child{display:inline-block!important;visibility:visible!important;opacity:1!important;color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;background:none!important;background-image:none!important;vertical-align:middle!important;}
}
.text-gradient-base-color,[class*="text-gradient"],.expo-section-kicker .text-gradient-base-color,.expo-visitantes .text-gradient-base-color,.expo-faq .text-gradient-base-color,.expo-location .text-gradient-base-color,.expo-inscripciones .text-gradient-base-color,.expo-vehiculos-elegibles .text-gradient-base-color,.expo-contact-form-module .text-gradient-base-color{background:none!important;background-image:none!important;color:var(--expo-green)!important;-webkit-text-fill-color:var(--expo-green)!important;-webkit-background-clip:initial!important;background-clip:initial!important;}
.expo-inscripciones-note{max-width:820px!important;margin-left:auto!important;margin-right:auto!important;}
.expo-inscripciones-note strong{font-weight:inherit!important;color:inherit!important;}
@media (min-width:992px){.expo-faq{padding-bottom:0!important;}.expo-location{padding-top:0!important;margin-top:-22px!important;}}


/* Fix definitivo botones verdes: sin efecto doble ni texto duplicado */
.expo-green-action-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:auto!important;
  max-width:none!important;
  height:auto!important;
  padding:17px 34px!important;
  background:var(--expo-green)!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
  border-radius:0!important;
  text-transform:none!important;
  line-height:1!important;
  overflow:hidden!important;
}
.expo-green-action-btn:hover,
.expo-green-action-btn:focus,
.expo-green-action-btn:active{
  background:var(--expo-green)!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
}
.expo-green-action-btn > span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  width:auto!important;
  height:auto!important;
  overflow:hidden!important;
  transform:none!important;
}
.expo-green-action-btn .expo-inline-icon{
  width:18px!important;
  height:18px!important;
  display:block!important;
  flex:0 0 auto!important;
  margin:0!important;
  color:#fff!important;
}
.expo-green-action-btn .expo-btn-label{
  display:inline-block!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  transform:none!important;
}

/* v78 - Botones verdes con hover rojo */
.expo-green-action-btn:hover,
.expo-green-action-btn:focus,
.expo-green-action-btn:active{
  background:var(--expo-red)!important;
  border-color:var(--expo-red)!important;
  color:#fff!important;
}

/* Botón principal de home: verde y hover rojo */
.btn-gradient-fuel-yellow-blue{
  background:var(--expo-green)!important;
  background-image:none!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
  transform:none!important;
}
.btn-gradient-fuel-yellow-blue:hover,
.btn-gradient-fuel-yellow-blue:focus,
.btn-gradient-fuel-yellow-blue:active{
  background:var(--expo-red)!important;
  background-image:none!important;
  border-color:var(--expo-red)!important;
  color:#fff!important;
  transform:none!important;
}

/* Descargar reglamento: ligeramente más angosto */
.expo-inscripciones .expo-green-action-btn{
  padding-left:32px!important;
  padding-right:32px!important;
}


/* v80 - Botones unificados, texto nítido y sin salto en Home */
.expo-green-action-btn,
.expo-green-action-btn.btn,
.expo-green-action-btn.btn-extra-large,
.expo-green-action-btn.btn-large{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:220px!important;
  max-width:none!important;
  height:54px!important;
  padding:0 28px!important;
  background:var(--expo-green)!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
  text-transform:none!important;
  white-space:nowrap!important;
  border-radius:0!important;
  line-height:1!important;
  transform:none!important;
}
.expo-green-action-btn:hover,
.expo-green-action-btn:focus,
.expo-green-action-btn:active{
  background:var(--expo-red)!important;
  border-color:var(--expo-red)!important;
  color:#fff!important;
  transform:none!important;
}
.expo-green-action-btn > span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  white-space:nowrap!important;
  transform:none!important;
}
.expo-green-action-btn > span > span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  white-space:nowrap!important;
  transform:none!important;
}
.expo-green-action-btn .expo-inline-icon{
  width:17px!important;
  height:17px!important;
  flex:0 0 17px!important;
  display:block!important;
  margin:0!important;
  color:#fff!important;
}
.expo-green-action-btn .expo-btn-label{
  display:inline-block!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:15.5px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
  text-transform:none!important;
  transform:none!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
.expo-green-action-btn .expo-btn-label:before,
.expo-green-action-btn .btn-double-text:before{
  content:none!important;
  display:none!important;
}
.expo-buy-button{
  min-width:220px!important;
}
.expo-inscripciones .expo-green-action-btn{
  min-width:218px!important;
  height:54px!important;
  padding-left:26px!important;
  padding-right:26px!important;
}
@media (max-width:767px){
  .expo-green-action-btn,
  .expo-green-action-btn.btn,
  .expo-green-action-btn.btn-extra-large,
  .expo-green-action-btn.btn-large{
    min-width:210px!important;
    height:52px!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }
  .expo-green-action-btn .expo-btn-label{font-size:15px!important;}
}

/* V81: Mantener efecto de desplazamiento solo en el botón Contacto del menú.
   El botón ¿Cómo llegar? de Sede queda limpio, con hover rojo. */
.expo-sede .btn.btn-switch-text,
.expo-sede .btn.btn-switch-text:hover,
.expo-sede .btn.btn-switch-text:active{
  background:var(--expo-green)!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
  transform:none!important;
}
.expo-sede .btn.btn-switch-text:hover,
.expo-sede .btn.btn-switch-text:active{
  background:var(--expo-red)!important;
  border-color:var(--expo-red)!important;
}
.expo-sede .btn.btn-switch-text > span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  overflow:visible!important;
  transform:none!important;
}
.expo-sede .btn.btn-switch-text .expo-inline-icon{
  width:17px!important;
  height:17px!important;
  flex:0 0 17px!important;
  margin:0!important;
}
.expo-sede .btn.btn-switch-text .btn-double-text,
.expo-sede .btn.btn-switch-text:hover .btn-double-text,
.expo-sede .btn.btn-switch-text:active .btn-double-text{
  display:inline-block!important;
  position:static!important;
  transform:none!important;
  overflow:visible!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.expo-sede .btn.btn-switch-text .btn-double-text:before,
.expo-sede .btn.btn-switch-text:hover .btn-double-text:before,
.expo-sede .btn.btn-switch-text:active .btn-double-text:before{
  content:none!important;
  display:none!important;
  transform:none!important;
}

/* v85 - Estabilización CTA, rojo unificado, VISITANTES mobile y ancla experiencias */
:root{--expo-red:#A22323!important;}

/* CTA unificados: normal verde, hover rojo exacto de marca */
.expo-green-action-btn,
.expo-green-action-btn.btn,
.expo-green-action-btn.btn-extra-large,
.expo-green-action-btn.btn-large,
.btn-gradient-fuel-yellow-blue{
  background:var(--expo-green)!important;
  background-image:none!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
  transform:none!important;
  filter:none!important;
  text-shadow:none!important;
}
.expo-green-action-btn:hover,
.expo-green-action-btn:focus,
.expo-green-action-btn:active,
.expo-green-action-btn.btn:hover,
.expo-green-action-btn.btn:focus,
.expo-green-action-btn.btn:active,
.btn-gradient-fuel-yellow-blue:hover,
.btn-gradient-fuel-yellow-blue:focus,
.btn-gradient-fuel-yellow-blue:active{
  background:#A22323!important;
  background-image:none!important;
  border-color:#A22323!important;
  color:#fff!important;
  transform:none!important;
}

/* Sede / ¿Cómo llegar?: mismo rojo exacto que el resto, sin desplazamiento */
.expo-sede .btn.btn-dark-gray.btn-switch-text,
.expo-sede .btn.btn-dark-gray.btn-switch-text:focus,
.expo-sede .btn.btn-dark-gray.btn-switch-text:active{
  background:var(--expo-green)!important;
  background-image:none!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
  transform:none!important;
}
.expo-sede .btn.btn-dark-gray.btn-switch-text:hover,
.expo-sede .btn.btn-dark-gray.btn-switch-text:active{
  background:#A22323!important;
  background-image:none!important;
  border-color:#A22323!important;
  color:#fff!important;
  transform:none!important;
}
.expo-sede .btn.btn-dark-gray.btn-switch-text .btn-double-text,
.expo-sede .btn.btn-dark-gray.btn-switch-text:hover .btn-double-text,
.expo-sede .btn.btn-dark-gray.btn-switch-text:active .btn-double-text,
.expo-sede .btn.btn-dark-gray.btn-switch-text .btn-double-text:before,
.expo-sede .btn.btn-dark-gray.btn-switch-text:hover .btn-double-text:before,
.expo-sede .btn.btn-dark-gray.btn-switch-text:active .btn-double-text:before{
  transform:none!important;
}

/* Nitidez CTA: evitar antialiasing borroso por transformaciones heredadas */
.expo-green-action-btn,
.expo-green-action-btn *,
.expo-sede .btn.btn-switch-text,
.expo-sede .btn.btn-switch-text *{
  will-change:auto!important;
  backface-visibility:visible!important;
  -webkit-backface-visibility:visible!important;
  filter:none!important;
  text-shadow:none!important;
}
.expo-green-action-btn .expo-btn-label,
.expo-sede .btn.btn-switch-text .btn-double-text{
  font-family:var(--primary-font)!important;
  font-size:16px!important;
  font-weight:600!important;
  letter-spacing:0!important;
  line-height:1!important;
  -webkit-font-smoothing:antialiased!important;
  -moz-osx-font-smoothing:grayscale!important;
  text-rendering:optimizeLegibility!important;
}

/* Visitantes mobile: asegurar visibilidad del subtítulo VISITANTES */
@media (max-width:767px){
  .expo-visitantes .row.mb-6,
  .expo-visitantes .row.mb-6 > div,
  .expo-visitantes .mb-10px{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    overflow:visible!important;
  }
  .expo-visitantes .row.mb-6{
    margin-bottom:36px!important;
  }
  .expo-visitantes .row.mb-6 > div{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  .expo-visitantes .row.mb-6 *,
  .expo-visitantes .mb-10px,
  .expo-visitantes .mb-10px *{
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
  }
  .expo-visitantes .mb-10px{
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    min-height:22px!important;
    margin-bottom:10px!important;
  }
  .expo-visitantes .mb-10px span:first-child,
  .expo-visitantes .mb-10px span.w-25px{
    display:inline-block!important;
    width:25px!important;
    min-width:25px!important;
    max-width:25px!important;
    height:1px!important;
    background:var(--expo-green)!important;
    margin-right:8px!important;
    flex:0 0 25px!important;
  }
  .expo-visitantes .mb-10px .text-gradient-base-color,
  .expo-visitantes .mb-10px span:last-child{
    display:inline-block!important;
    color:var(--expo-green)!important;
    -webkit-text-fill-color:var(--expo-green)!important;
    background:none!important;
    background-image:none!important;
    font-size:15px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
}

/* Ancla Experiencias: menos aire en desktop. Patrocinadores no se toca. */
@media (min-width:992px){
  #experiencias{scroll-margin-top:64px!important;}
}


/* v86 - Ajustes mobile visitantes + rojo definitivo CTA */
:root{--expo-red:#A22323!important;}

/* Rojo de hover idéntico para todos los CTA aprobados */
.expo-green-action-btn:hover,
.expo-green-action-btn:focus,
.expo-green-action-btn:active,
.expo-green-action-btn.btn:hover,
.expo-green-action-btn.btn:focus,
.expo-green-action-btn.btn:active,
.btn-gradient-fuel-yellow-blue:hover,
.btn-gradient-fuel-yellow-blue:focus,
.btn-gradient-fuel-yellow-blue:active,
.expo-sede .btn.btn-dark-gray.btn-switch-text:hover,
.expo-sede .btn.btn-dark-gray.btn-switch-text:focus,
.expo-sede .btn.btn-dark-gray.btn-switch-text:active{
  background:#A22323!important;
  background-image:none!important;
  border-color:#A22323!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  transform:none!important;
  filter:none!important;
  text-shadow:none!important;
}
.expo-sede .btn.btn-dark-gray.btn-switch-text:hover .btn-double-text,
.expo-sede .btn.btn-dark-gray.btn-switch-text:focus .btn-double-text,
.expo-sede .btn.btn-dark-gray.btn-switch-text:active .btn-double-text,
.expo-sede .btn.btn-dark-gray.btn-switch-text:hover .expo-inline-icon,
.expo-sede .btn.btn-dark-gray.btn-switch-text:focus .expo-inline-icon,
.expo-sede .btn.btn-dark-gray.btn-switch-text:active .expo-inline-icon{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  transform:none!important;
}
.expo-sede .btn.btn-dark-gray.btn-switch-text .btn-double-text:before{
  content:none!important;
  display:none!important;
}

@media (max-width:767px){
  /* visitantes.html carga más abajo en mobile para que el rótulo VISITANTES no quede tapado por el header fijo */
  .expo-visitantes{
    padding-top:104px!important;
  }
  .expo-visitantes .container{
    overflow:visible!important;
  }
  .expo-visitantes .row.mb-6,
  .expo-visitantes .row.mb-6 > div,
  .expo-visitantes .mb-10px,
  .expo-visitantes .mb-10px *{
    visibility:visible!important;
    opacity:1!important;
    overflow:visible!important;
    transform:none!important;
  }
  .expo-visitantes .row.mb-6{
    margin-bottom:38px!important;
  }
  .expo-visitantes .row.mb-6 > div{
    display:block!important;
  }
  .expo-visitantes .mb-10px{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    min-height:22px!important;
    margin-bottom:12px!important;
  }
  .expo-visitantes .mb-10px span:first-child,
  .expo-visitantes .mb-10px span.w-25px{
    display:inline-block!important;
    width:25px!important;
    min-width:25px!important;
    max-width:25px!important;
    height:1px!important;
    background:var(--expo-green)!important;
    margin-right:8px!important;
    flex:0 0 25px!important;
  }
  .expo-visitantes .mb-10px .text-gradient-base-color,
  .expo-visitantes .mb-10px span:last-child{
    display:inline-block!important;
    color:var(--expo-green)!important;
    -webkit-text-fill-color:var(--expo-green)!important;
    background:none!important;
    background-image:none!important;
    font-size:15px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  /* Información práctica de visitantes: lectura alineada a la izquierda solo en mobile */
  .expo-visitantes-note{
    text-align:left!important;
    padding-top:24px!important;
    padding-bottom:6px!important;
  }
  .expo-visitantes-note p{
    text-align:left!important;
  }

  /* Horarios: centrados solo en mobile, incluyendo circulitos */
  .expo-horarios{
    padding-bottom:92px!important;
  }
  .expo-schedule-steps .process-step-style-06{
    text-align:center!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .expo-schedule-steps .process-step-icon-box{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    width:100%!important;
  }
  .expo-schedule-steps .process-step-icon-box .progress-step-separator{
    display:none!important;
  }
  .expo-schedule-steps .step-box{
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .expo-schedule-steps .process-step-style-06 p{
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  /* Más aire entre Horarios y Preguntas frecuentes solo en mobile */
  .expo-faq{
    padding-top:0!important;
    margin-top:18px!important;
  }
}


/* v87 - Ajustes finales solicitados */
:root{--expo-red:#A22323!important;}

/* Fecha del hero más visible */
.expo-intro-date{
  font-size:22px!important;
  line-height:1.35!important;
}

/* CTA: estado normal verde y hover rojo exacto, sin afectar Contacto del header */
.expo-green-action-btn,
.expo-green-action-btn.btn,
.btn-dark-gray.expo-green-action-btn,
.expo-sede .btn.btn-dark-gray,
.expo-sede .btn.btn-dark-gray.btn-switch-text{
  background:var(--expo-green)!important;
  background-image:none!important;
  border-color:var(--expo-green)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  filter:none!important;
  text-shadow:none!important;
}
.expo-green-action-btn:hover,
.expo-green-action-btn:focus,
.expo-green-action-btn:active,
.expo-green-action-btn.btn:hover,
.expo-green-action-btn.btn:focus,
.expo-green-action-btn.btn:active,
.btn-dark-gray.expo-green-action-btn:hover,
.btn-dark-gray.expo-green-action-btn:focus,
.btn-dark-gray.expo-green-action-btn:active,
.expo-sede .btn.btn-dark-gray:hover,
.expo-sede .btn.btn-dark-gray:focus,
.expo-sede .btn.btn-dark-gray:active,
.expo-sede .btn.btn-dark-gray.btn-switch-text:hover,
.expo-sede .btn.btn-dark-gray.btn-switch-text:focus,
.expo-sede .btn.btn-dark-gray.btn-switch-text:active{
  background:var(--expo-red)!important;
  background-image:none!important;
  border-color:var(--expo-red)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  transform:none!important;
  filter:none!important;
  text-shadow:none!important;
}
.expo-green-action-btn *,
.expo-green-action-btn:hover *,
.expo-sede .btn.btn-dark-gray *,
.expo-sede .btn.btn-dark-gray:hover *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  transform:none!important;
  text-shadow:none!important;
}
.expo-sede .btn.btn-dark-gray .btn-double-text:before{
  content:none!important;
  display:none!important;
}

@media (max-width:767px){
  /* Visitantes: conservar rótulo visible, pero sin sumar aire extra */
  .expo-visitantes{padding-top:104px!important;}

  /* Horarios mobile: timeline vertical, no línea horizontal superior */
  .expo-horarios{padding-bottom:42px!important;}
  .expo-schedule-steps{
    position:relative!important;
  }
  .expo-schedule-steps:before{
    content:"";
    position:absolute;
    top:12px;
    bottom:12px;
    left:50%;
    width:1px;
    background:#d9d9d9;
    transform:translateX(-50%);
    z-index:0;
  }
  .expo-schedule-steps .process-step-style-06{
    position:relative!important;
    z-index:1!important;
    text-align:center!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .expo-schedule-steps .process-step-icon-box{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    width:100%!important;
  }
  .expo-schedule-steps .process-step-icon-box .progress-step-separator{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
  }
  .expo-schedule-steps .step-box{
    margin-left:auto!important;
    margin-right:auto!important;
    background:#fff!important;
    z-index:2!important;
  }
  .expo-schedule-steps .process-step-style-06 p{
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
  .expo-faq{
    padding-top:0!important;
    margin-top:8px!important;
  }

  /* Información práctica de visitantes: izquierda solo mobile */
  .expo-visitantes-note,
  .expo-visitantes-note p{
    text-align:left!important;
  }
}


/* v88 - Experiencias con fotografías optimizadas */
.expo-features .feature-box.expo-experience-photo-card{
  height:auto!important;
  min-height:310px!important;
  aspect-ratio:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  padding:0!important;
  background:#fff!important;
  border:none!important;
  box-shadow:0 20px 60px rgba(0,0,0,.08)!important;
  overflow:hidden!important;
  transform:none;
  transition:background-color .35s ease!important;
}
.expo-features .feature-box.expo-experience-photo-card:hover{
  border:none!important;
  box-shadow:0 20px 60px rgba(0,0,0,.08)!important;
  background:var(--expo-green)!important;
}
.expo-features .expo-experience-image{
  width:100%!important;
  height:160px!important;
  min-height:160px!important;
  overflow:hidden!important;
  flex:0 0 160px!important;
  background:#ddd!important;
}
.expo-features .expo-experience-image img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:scale(1)!important;
  transition:transform .35s ease!important;
}
.expo-features .feature-box.expo-experience-photo-card:hover .expo-experience-image img{
  transform:scale(1.035)!important;
}
.expo-features .expo-experience-content{
  flex:1 1 auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  padding:18px 18px 20px!important;
  text-align:center!important;
}
.expo-features .expo-experience-photo-card .expo-card-title{
  font-size:16px!important;
  line-height:1.25!important;
  font-weight:700!important;
  white-space:normal!important;
  color:#111!important;
  margin-bottom:9px!important;
}
.expo-features .expo-experience-photo-card .expo-card-text{
  font-size:15px!important;
  line-height:24px!important;
  min-height:0!important;
  height:auto!important;
  margin-bottom:0!important;
  color:#717580!important;
  overflow:visible!important;
}
@media (max-width:991px){
  .expo-features .feature-box.expo-experience-photo-card{aspect-ratio:auto!important;min-height:300px!important;}
  .expo-features .expo-experience-image{height:150px!important;flex:0 0 150px!important;}
}
@media (max-width:575px){
  .expo-features .feature-box.expo-experience-photo-card{min-height:310px!important;}
  .expo-features .expo-experience-image{height:155px!important;flex-basis:155px!important;}
  .expo-features .expo-experience-content{padding:18px 20px 22px!important;}
}

/* v93 - Ajustes solicitados: Experiencias y Contacto */
.expo-features .feature-box.expo-experience-photo-card,
.expo-features .feature-box.expo-experience-photo-card:hover,
.expo-features .feature-box.expo-experience-photo-card:focus,
.expo-features .feature-box.expo-experience-photo-card:focus-visible{
  border-color:transparent!important;
  outline:0!important;
}
.expo-features .expo-experience-photo-card .expo-card-text br{
  display:block!important;
}

/* v95 - corrección IV: gris oscuro y recorte real del bloque */
.expo-experience-photo-card:hover,
.expo-experience-photo-card:focus,
.expo-experience-photo-card:focus-within{
  outline:none!important;
  border-color:transparent!important;
  box-shadow:none!important;
}

/* v108 - Corrección precisa IV: mantener posición original, oscurecer y evitar recorte superior derecho */
.expo-about-block .expo-roman{
  background-color:#555!important;
  color:#555!important;
  line-height:.78!important;
  overflow:visible!important;
  position:relative!important;
  top:0!important;
  transform:none!important;
  -webkit-text-fill-color:transparent!important;
}
@media (min-width:768px) and (max-width:991px){
  .expo-about-block .expo-roman{margin-top:15px!important;}
}
@media (max-width:767px){
  .expo-about-block .expo-roman{left:0!important;}
}
@media (min-width:360px) and (max-width:575px){
  .expo-about-row > .col-lg-2.col-md-2{margin-right:-15px!important;}
}
@media (min-width:576px) and (max-width:767px){
  .expo-about-row > .col-lg-2.col-md-2{margin-right:1px!important;}
}
@media (max-width:399px){
  .expo-about-block .expo-roman{font-size:58px!important;line-height:.78!important;}
}
.expo-about-block .expo-about-row,
.expo-about-block .expo-about-row>div{
  overflow:visible!important;
}
.expo-features .expo-experience-photo-card .expo-card-text br{
  display:block!important;
}

/* v117 - Espaciado superior uniforme en páginas internas
   Igualar el aire entre el menú y el inicio de contenido con el espacio inferior antes del footer. */
.expo-contact-form-module,
#visitantes.expo-visitantes,
#inscripciones.expo-inscripciones{
  padding-top:110px!important;
}
#inscripciones.expo-inscripciones.top-space-margin{
  margin-top:0!important;
}
@media (max-width:991px){
  .expo-contact-form-module,
  #visitantes.expo-visitantes,
  #inscripciones.expo-inscripciones{
    padding-top:90px!important;
  }
}
@media (max-width:767px){
  .expo-contact-form-module,
  #visitantes.expo-visitantes,
  #inscripciones.expo-inscripciones{
    padding-top:75px!important;
  }
}



/* Ajuste v119: evitar corte en pantallas 1366x599 manteniendo aire visual */
@media (min-width: 992px) and (max-height: 700px) {
  .expo-inner-page,
  .expo-contact-form-module,
  .expo-visitors-section,
  .expo-registration-section,
  .top-space-margin {
    padding-top: 45px !important;
  }

  .cover-background,
  .expo-contact-form-visual {
    min-height: auto !important;
  }

  .md-h-500px,
  .sm-h-400px {
    height: auto !important;
  }

  section {
    scroll-margin-top: 90px;
  }
}







/* Ajuste v123: responsive real del hero en notebooks / ventanas bajas */
@media (min-width: 992px) and (max-height: 700px) {
  #inicio,
  #inicio.full-screen {
    height: auto !important;
    min-height: calc(100vh - 92px) !important;
    padding-top: 140px !important;
    padding-bottom: 24px !important;
    overflow: visible !important;
  }

  #inicio .container-fluid,
  #inicio .row {
    height: auto !important;
    min-height: 0 !important;
  }

  #inicio .row {
    align-items: center !important;
  }

  #inicio .col-xl-5,
  #inicio .col-lg-6 {
    min-height: 0 !important;
  }

  #inicio .border-start {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  #inicio .expo-main-title {
    font-size: clamp(42px, 4vw, 56px) !important;
    line-height: 1.04 !important;
    letter-spacing: -2.1px !important;
    max-width: 500px !important;
    margin-bottom: 18px !important;
  }

  #inicio p {
    width: 88% !important;
    font-size: 15.5px !important;
    line-height: 1.48 !important;
    margin-bottom: 22px !important;
  }

  #inicio .expo-intro-date {
    margin-bottom: 10px !important;
    font-size: 19px !important;
    line-height: 1.25 !important;
  }

  #inicio .expo-buy-button {
    padding-top: 13px !important;
    padding-bottom: 13px !important;
    min-height: 0 !important;
  }

  #inicio .swiper-number-pagination-progress {
    height: 355px !important;
    min-height: 355px !important;
    max-height: 355px !important;
    margin-bottom: 0 !important;
  }

  #inicio .banner-slider,
  #inicio .swiper-wrapper,
  #inicio .swiper-slide {
    height: 100% !important;
    min-height: 100% !important;
  }

  #inicio .expo-hero-image {
    height: 100% !important;
    min-height: 100% !important;
    background-size: cover !important;
    background-position: center center !important;
  }
}

@media (min-width: 992px) and (max-height: 600px) {
  #inicio,
  #inicio.full-screen {
    min-height: calc(100vh - 82px) !important;
    padding-top: 130px !important;
    padding-bottom: 18px !important;
  }

  #inicio .expo-main-title {
    font-size: clamp(36px, 3.65vw, 48px) !important;
    line-height: 1.04 !important;
    letter-spacing: -1.7px !important;
    max-width: 455px !important;
    margin-bottom: 14px !important;
  }

  #inicio p {
    width: 92% !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
    margin-bottom: 18px !important;
  }

  #inicio .expo-intro-date {
    font-size: 17.5px !important;
    margin-bottom: 8px !important;
  }

  #inicio .expo-buy-button {
    padding-top: 11px !important;
    padding-bottom: 11px !important;
  }

  #inicio .swiper-number-pagination-progress {
    height: 315px !important;
    min-height: 315px !important;
    max-height: 315px !important;
  }
}

@media (min-width: 1200px) and (max-height: 620px) {
  #inicio .expo-main-title {
    font-size: 46px !important;
    line-height: 1.04 !important;
    max-width: 455px !important;
  }

  #inicio .swiper-number-pagination-progress {
    height: 320px !important;
    min-height: 320px !important;
    max-height: 320px !important;
  }
}






/* Ajuste v125: timeline centrado y footer sin romper layout */

/* Timeline visitantes: centrar los tres horarios y sus textos en desktop/tablet */
.expo-schedule-steps > .col {
  text-align: center !important;
}

.expo-schedule-steps > .col .process-step-icon-box {
  text-align: center !important;
}

.expo-schedule-steps > .col .process-step-icon-box .step-box {
  margin-left: auto !important;
  margin-right: auto !important;
}

.expo-schedule-steps > .col span,
.expo-schedule-steps > .col p {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Mobile: mantener línea vertical del componente, pero quitar la línea horizontal */
@media (max-width: 767px) {
  .expo-schedule-steps .progress-step-separator {
    display: none !important;
  }
}

/* Footer: solo evitar que el correo se parta, sin modificar columnas principales */
footer .expo-footer-email a,
footer a[href^="mailto:info@impulmax.com.mx"] {
  white-space: nowrap !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  font-size: 14px !important;
  letter-spacing: 0 !important;
}

@media (max-width: 575px) {
  footer .expo-footer-email a,
  footer a[href^="mailto:info@impulmax.com.mx"] {
    font-size: 13px !important;
  }
}

/* Ajustes Inscripciones: jerarquía títulos tarjetas */
.expo-inscripciones .expo-inscripcion-card h4{font-size:36px!important;line-height:42px!important;}
@media (max-width:767px){.expo-inscripciones .expo-inscripcion-card h4{font-size:32px!important;line-height:38px!important;}}


/* v133 - Ajustes aprobados: V edición, timeline mobile y aire superior mobile */
@media (max-width: 767px){
  /* Visitantes e Inscripciones: igualar aire superior con Contacto en mobile */
  #visitantes.expo-visitantes,
  #inscripciones.expo-inscripciones{
    padding-top: 120px !important;
  }

  /* Timeline mobile: eliminar cualquier línea horizontal superior */
  .expo-schedule-steps .progress-step-separator,
  .expo-schedule-steps .process-step-icon-box .progress-step-separator{
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
  }

  /* Timeline mobile: línea vertical centrada y cortada en el último marcador */
  .expo-schedule-steps:before{
    top: 12px !important;
    bottom: 128px !important;
    left: 50% !important;
    width: 1px !important;
    transform: translateX(-50%) !important;
  }

  .expo-schedule-steps .process-step-style-06:last-child span,
  .expo-schedule-steps .process-step-style-06:last-child p{
    position: relative !important;
    z-index: 2 !important;
  }
}


/* v135 - Corrección real: contacto mobile + timeline mobile */
@media (max-width: 767px){
  /* Contacto: igualar aire superior con Visitantes e Inscripciones */
  body .expo-contact-form-module.page-main-spacing,
  body section.expo-contact-form-module.page-main-spacing{
    padding-top: 120px !important;
  }

  /* Timeline mobile: quitar definitivamente la línea horizontal superior */
  body .expo-schedule-steps .progress-step-separator,
  body .expo-schedule-steps .process-step-icon-box .progress-step-separator,
  body .expo-schedule-steps .separator-line-1px{
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    background: transparent !important;
    border: 0 !important;
  }

  /* Mantener la línea vertical limpia y cortada antes del texto final */
  body .expo-schedule-steps:before{
    top: 24px !important;
    bottom: 140px !important;
  }
}


/* v136 - corrección definitiva: línea horizontal timeline mobile + aire contacto */
@media (max-width: 991px){
  body .expo-schedule-steps .progress-step-separator,
  body .expo-schedule-steps .process-step-icon-box .progress-step-separator,
  body .expo-schedule-steps .separator-line-1px{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    max-width:0!important;
    background:transparent!important;
    border:0!important;
  }
}
@media (max-width: 767px){
  body section.expo-contact-form-module.page-main-spacing{padding-top:120px!important;}
}

/* v137 - Timeline mobile: quitar borde horizontal superior y conectar línea vertical con los tres círculos */
@media (max-width: 767px){
  body .expo-schedule-steps{
    border-top:0!important;
    position:relative!important;
  }
  body .expo-schedule-steps:before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:50%!important;
    top:0!important;
    bottom:146px!important;
    width:1px!important;
    background:#d9d9d9!important;
    transform:translateX(-50%)!important;
    z-index:0!important;
  }
  body .expo-schedule-steps .process-step-style-06{
    position:relative!important;
    z-index:1!important;
  }
  body .expo-schedule-steps .process-step-icon-box{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    width:100%!important;
    background:transparent!important;
  }
  body .expo-schedule-steps .process-step-icon-box .progress-step-separator,
  body .expo-schedule-steps .progress-step-separator,
  body .expo-schedule-steps .separator-line-1px{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    width:0!important;
    min-width:0!important;
    max-width:0!important;
    height:0!important;
    background:transparent!important;
    border:0!important;
  }
  body .expo-schedule-steps .step-box{
    position:relative!important;
    z-index:2!important;
    margin-left:auto!important;
    margin-right:auto!important;
    background:#fff!important;
  }
}

/* v139 - Timeline mobile: extender línea vertical hasta el centro del tercer marcador */
@media (max-width: 767px){
  body .expo-schedule-steps::before,
  body .expo-schedule-steps:before{
    top: 0 !important;
    bottom: 90px !important;
    left: 50% !important;
    width: 1px !important;
    background: #d9d9d9 !important;
    transform: translateX(-50%) !important;
  }
}

/* v140 timeline mobile micro-adjust */
@media (max-width:991px){
  .expo-schedule-steps .process-step-style-05:last-child .progress-step-separator{
    height: calc(100% - 110px) !important;
  }
}

/* v141 reduce 4px */
@media (max-width:991px){
  .expo-schedule-steps .process-step-style-05:last-child .progress-step-separator{height: calc(100% - 114px) !important;}
}

/* v143 - Sede: imagen única panorámica */
.expo-sede-single-image{
  width:100%!important;
  height:610px!important;
  overflow:hidden!important;
  border-radius:24px!important;
  box-shadow:0 20px 45px rgba(0,0,0,.12)!important;
}
.expo-sede-single-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
  border-radius:24px!important;
}
.expo-sede .col-lg-6.position-relative:has(.expo-sede-single-image),
.expo-sede .col-lg-6.position-relative .expo-sede-single-image{
  min-height:0!important;
}
.expo-sede .row.align-items-center.position-relative:has(.expo-sede-single-image){
  min-height:0!important;
  height:auto!important;
}
@media (max-width:991px){
  .expo-sede-single-image{height:430px!important;margin-bottom:35px!important;}
  .expo-sede{padding-bottom:75px!important;}
}
@media (max-width:575px){
  .expo-sede-single-image{height:300px!important;border-radius:18px!important;}
  .expo-sede-single-image img{border-radius:18px!important;}
}

/* v143 - Visitantes: evitar que la línea del timeline atraviese el último círculo */
.expo-schedule-steps .process-step-style-06:last-child .progress-step-separator{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}
@media (max-width:991px){
  .expo-schedule-steps::before,
  .expo-schedule-steps:before{
    z-index:0!important;
  }
  .expo-schedule-steps .process-step-style-06,
  .expo-schedule-steps .process-step-icon-box{
    position:relative!important;
    z-index:1!important;
  }
  .expo-schedule-steps .process-step-style-06:last-child .process-step-icon-box:before{
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:-10px!important;
    width:34px!important;
    height:46px!important;
    background:#fff!important;
    transform:translateX(-50%)!important;
    z-index:1!important;
    display:block!important;
  }
  .expo-schedule-steps .process-step-style-06:last-child .step-box{
    position:relative!important;
    z-index:2!important;
    background:#fff!important;
  }
}
.expo-sede-single-col{min-height:0!important;height:auto!important;}

/* v144 - Sede: imagen más rectangular y con menor protagonismo */
.expo-sede-single-image{
  height:390px!important;
  max-width:88%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  border-radius:22px!important;
  box-shadow:0 16px 34px rgba(0,0,0,.10)!important;
}
.expo-sede-single-image img{
  border-radius:22px!important;
  object-fit:cover!important;
  object-position:center!important;
}
@media (max-width:991px){
  .expo-sede-single-image{
    max-width:100%!important;
    height:340px!important;
    margin-bottom:35px!important;
  }
}
@media (max-width:575px){
  .expo-sede-single-image{
    height:245px!important;
    border-radius:18px!important;
  }
  .expo-sede-single-image img{border-radius:18px!important;}
}

/* v144 - Visitantes: línea del timeline llega al círculo sin atravesarlo */
@media (max-width:767px){
  body .expo-schedule-steps::before,
  body .expo-schedule-steps:before{
    top:0!important;
    bottom:110px!important;
    z-index:0!important;
  }
  body .expo-schedule-steps .process-step-style-06:last-child .process-step-icon-box:before{
    display:none!important;
    content:none!important;
  }
  body .expo-schedule-steps .step-box{
    position:relative!important;
    z-index:2!important;
    background:#fff!important;
  }
}

/* v145 - Patrocinadores: ocultar "y aliados" en laptops angostas (992-1250px) donde el texto se rompe en dos líneas */
@media (min-width:992px) and (max-width:1250px){
  .expo-stat-title-extra{display:none!important;}
}

/* v146 - Inscripciones: reducir tamaño de "Reglamento" y "Registro" para que no compitan con el título principal */
.expo-inscripciones-cards h4.text-dark-gray.alt-font.fw-600.ls-minus-1px,
section h4.text-dark-gray.alt-font.fw-600.ls-minus-1px{
  font-size:24px!important;
  line-height:30px!important;
}

/* v147 - Días de evento: forzar "de 2026." a segunda línea en laptops angostas y bajas (~1191x546), para igualar las demás columnas de stats */
@media (min-width:992px) and (max-width:1250px) and (max-height:620px){
  .expo-date-line2{display:block!important;}
}

/* Campo honeypot antispam: debe existir en el DOM, pero no ser visible para usuarios reales. */
.expo-honeypot-field{
  position:absolute!important;
  left:-10000px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* v148 - Texto "Cómo llegar": forzar una sola línea en desktop/tablet, permitir wrap en móvil */
.expo-location-text{
  white-space:nowrap!important;
}
@media (max-width:767px){
  .expo-location-text{
    white-space:normal!important;
  }
}

/* v149 - Stat "Industria automotriz": texto en una sola línea en desktop/tablet */
.expo-stat-text-nowrap{
  white-space:nowrap!important;
  max-width:none!important;
}
@media (max-width:480px){
  .expo-stat-text-nowrap{
    white-space:normal!important;
  }
}
