/* Lucio Banner + Menú: estilos limitados a este widget */
.lucio-banner{box-sizing:border-box;position:relative;isolation:isolate;min-height:760px;background:#101417;display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden;color:#fff;padding:0;font-family:Inter,Arial,sans-serif}
.lucio-banner *{box-sizing:border-box}
.lucio-banner:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(2,4,5,var(--lc-overlay-left,.93)) 0%,rgba(2,4,5,.75) 28%,rgba(2,4,5,.35) 60%,rgba(2,4,5,var(--lc-overlay-right,.08)) 100%),linear-gradient(180deg,rgba(0,0,0,.35),transparent 30%,rgba(0,0,0,.43)),var(--lc-photo);background-size:cover;background-position:center,center,var(--lc-photo-x,60%) var(--lc-photo-y,50%);z-index:-1;pointer-events:none}
.lucio-banner .lucio-header{position:relative;z-index:5;min-height:110px;flex-shrink:0;width:100%;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:16px clamp(22px,6vw,105px);background:transparent!important;border-bottom:1px solid #ffffff2b;color:#fff}
.lucio-banner .lucio-logo{display:block;flex-shrink:0;color:#fff;text-decoration:none}.lucio-banner .lucio-logo img{display:block;width:190px;max-width:100%;height:auto;max-height:72px;object-fit:contain;object-position:left center}
.lucio-banner .lucio-nav{display:flex;align-items:center;gap:clamp(13px,2.3vw,38px)}.lucio-banner .lucio-nav a{font-size:12px;font-weight:700;letter-spacing:.07em;color:#fff;text-decoration:none;white-space:nowrap;text-transform:uppercase}.lucio-banner .lucio-nav a:hover{color:var(--lc-accent)}
.lucio-banner .lucio-nav .lucio-contact{background:var(--lc-button)!important;color:#101010!important;padding:14px 20px;border-radius:2px}.lucio-banner .lucio-nav .lucio-contact:hover{filter:brightness(.93)}
.lucio-banner .lucio-menu-toggle{display:none;border:1px solid #ffffff66;background:transparent;color:#fff;font-size:23px;padding:7px 13px;cursor:pointer}
.lucio-banner .lucio-banner-content{position:relative;z-index:1;flex:0 0 auto;align-self:flex-start!important;display:flex;flex-direction:column;align-items:flex-start!important;justify-content:flex-start!important;text-align:left!important;width:min(790px,calc(100% - 48px));max-width:790px;margin:0 0 0 clamp(24px,6.4vw,110px)!important;padding:clamp(90px,15vh,160px) 20px 105px 0;transform:none!important;left:auto!important;right:auto!important}
.lucio-banner .lucio-eyebrow{font-size:11px;letter-spacing:.23em;font-weight:800;display:flex;gap:13px;align-items:center}.lucio-banner .lucio-eyebrow:before{content:"";display:block;background:var(--lc-accent);width:30px;height:3px;flex-shrink:0}
.lucio-banner h1{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-weight:900;font-size:clamp(58px,7.4vw,118px);line-height:.84;letter-spacing:-.02em;color:#fff;text-transform:uppercase;margin:22px 0 20px}.lucio-banner h1 span{color:var(--lc-accent)}
.lucio-banner .lucio-description{color:#e6e6e6;font-size:clamp(14px,1.2vw,17px);line-height:1.75;margin:0 0 16px;max-width:450px}.lucio-banner .lucio-location{font-size:11px;letter-spacing:.17em;font-weight:800;color:#f5f5f5;display:flex;gap:10px;align-items:center;margin:0 0 28px}.lucio-banner .lucio-location i{width:6px;height:6px;display:block;background:var(--lc-accent);border-radius:50%}
.lucio-banner .lucio-cta{display:inline-flex;align-items:center;gap:32px;background:var(--lc-banner-button)!important;color:#111!important;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.05em;padding:19px 24px;border-radius:1px}.lucio-banner .lucio-cta:hover{filter:brightness(.93)}.lucio-banner .lucio-cta span{font-size:20px}
@media(max-width:900px){.lucio-banner .lucio-header{min-height:84px}.lucio-banner .lucio-menu-toggle{display:block}.lucio-banner .lucio-nav{display:none;position:absolute;left:0;right:0;top:100%;padding:24px;background:#111;flex-direction:column;align-items:flex-start;gap:22px;z-index:30}.lucio-banner .lucio-nav.lucio-open{display:flex}.lucio-banner .lucio-banner-content{padding-top:140px}.lucio-banner h1{font-size:clamp(54px,10vw,86px)}}
@media(max-width:600px){.lucio-banner{min-height:700px}.lucio-banner .lucio-header{padding:14px 22px}.lucio-banner .lucio-logo img{max-height:55px}.lucio-banner .lucio-banner-content{margin-left:24px!important;margin-right:0!important;width:calc(100% - 48px);padding:100px 0 75px}.lucio-banner:before{background-image:linear-gradient(90deg,rgba(0,0,0,var(--lc-overlay-left,.93)),rgba(0,0,0,.52)),var(--lc-photo);background-position:center,var(--lc-photo-x,57%) var(--lc-photo-y,50%)}.lucio-banner h1{font-size:clamp(48px,12vw,72px)}.lucio-banner .lucio-eyebrow{font-size:10px;letter-spacing:.12em}.lucio-banner .lucio-description{font-size:14px}.lucio-banner .lucio-location{font-size:10px;letter-spacing:.10em}.lucio-banner .lucio-cta{font-size:11px;gap:14px;padding:17px 19px}}

/* Evita que reglas globales de Elementor centren el bloque de contenido. */
.elementor-widget-lucio_banner_menu, .elementor-widget-lucio_banner_menu > .elementor-widget-container{width:100%;max-width:none!important;}
.lucio-banner .lucio-banner-content > *{text-align:left;}

/* 1.4 — Composición original aprobada: ancho de ventana, sin caja centrada de Elementor */
.elementor-widget-lucio_banner_menu {width:100% !important;max-width:none !important;min-width:0 !important;}
.elementor-widget-lucio_banner_menu > .elementor-widget-container {width:100% !important;max-width:none !important;margin:0 !important;padding:0 !important;}
.elementor-widget-lucio_banner_menu .lucio-banner {
  width:100vw !important;max-width:none !important;
  position:relative !important;
  left:50% !important;right:auto !important;
  margin-left:-50vw !important;margin-right:0 !important;
  transform:none !important;
  min-height:850px;
}
.elementor-widget-lucio_banner_menu .lucio-header {
  min-height:110px;
  padding:0 clamp(24px,6.4vw,110px);
}
.elementor-widget-lucio_banner_menu .lucio-banner-content {
  width:min(790px,calc(100% - 48px)) !important;
  max-width:790px !important;
  margin-left:calc(clamp(24px,6.4vw,110px) + var(--lc-custom-offset,0px)) !important;
  margin-right:0 !important;
  padding:clamp(100px,17vh,170px) 20px 110px 0;
  flex:none !important;
  align-self:flex-start !important;
  text-align:left !important;
  place-self:auto !important;
}
.elementor-widget-lucio_banner_menu .lucio-banner h1 {
  font-size:clamp(58px,7.4vw,118px);
  line-height:.84;
  margin:22px 0 20px;
}
.elementor-widget-lucio_banner_menu .lucio-logo img {width:260px;max-height:80px;object-fit:contain;object-position:left center;}
.elementor-widget-lucio_banner_menu .lucio-description {margin-bottom:14px;}
@media(max-width:900px) {
 .elementor-widget-lucio_banner_menu .lucio-header{min-height:90px;}
 .elementor-widget-lucio_banner_menu .lucio-banner-content{padding-top:145px;}
 .elementor-widget-lucio_banner_menu .lucio-banner h1{font-size:clamp(54px,10vw,92px);}
}
@media(max-width:600px) {
 .elementor-widget-lucio_banner_menu .lucio-header{padding:0 22px;min-height:84px;}
 .elementor-widget-lucio_banner_menu .lucio-logo img{width:180px;max-height:58px;}
 .elementor-widget-lucio_banner_menu .lucio-banner-content{
  margin-left:calc(24px + var(--lc-custom-offset,0px)) !important;
  width:calc(100% - 48px) !important;
  padding:110px 0 85px !important;
 }
 .elementor-widget-lucio_banner_menu .lucio-banner h1{font-size:clamp(48px,12vw,72px);}
}
