.elementor-kit-5{--e-global-color-primary:#131313;--e-global-color-secondary:#F8B42C;--e-global-color-text:#2E2E2E;--e-global-color-accent:#6E6E6E;--e-global-color-blanco:#FFFFFF;--e-global-color-superficie:#F4F4F4;--e-global-color-borde:#E4E4E4;--e-global-color-negrosuave:#1F1F1F;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:800;--e-global-typography-primary-line-height:1.15em;--e-global-typography-primary-letter-spacing:-0.5px;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-letter-spacing:1.2px;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;background-color:#FFFFFF;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1220px;}.e-con{--container-max-width:1220px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ================= La Publica — design system =================
   Hooks are structural (.elementor-location-*, widget type classes)
   because Elementor is not emitting custom _css_classes on this install.
   !important is used only where Elementor's generated per-widget CSS
   loads after this kit stylesheet. */
:root{
  --lp-black:#131313;
  --lp-black-soft:#1F1F1F;
  --lp-yellow:#F8B42C;
  --lp-ink:#2E2E2E;
  --lp-muted:#6E6E6E;
  --lp-surface:#F4F4F4;
  --lp-border:#E4E4E4;
}

a:focus-visible,button:focus-visible,input:focus-visible,
.elementor-item:focus-visible{outline:3px solid var(--lp-yellow);outline-offset:2px;}

/* La portada no necesita el H1 "Inicio" del tema: el H1 real vive en el hero */
.home .page-header{display:none;}

/* ===================== Brand wordmark ===================== */
.lp-brand{
  display:flex;align-items:center;gap:16px;
  text-decoration:none;line-height:1;text-align:left;
}
/* Elementor trae `.elementor img{height:auto}` (0,1,1): gana por especificidad
   sobre una sola clase, asi que la altura va con !important. */
.lp-brand__mark{
  width:auto !important;height:clamp(62px,8.4vw,116px) !important;
  display:block;flex:0 0 auto;
}
.lp-brand__text{display:block;}
.lp-brand__la,.lp-brand__name,.lp-brand__tag{
  display:block;font-family:"Montserrat",system-ui,sans-serif;color:#fff;
}
.lp-brand__la{font-weight:800;font-size:clamp(17px,2.2vw,25px);letter-spacing:.17em;margin-left:.2em;}
.lp-brand__name{font-weight:800;font-size:clamp(32px,6vw,56px);letter-spacing:-.015em;margin-top:.05em;}
.lp-brand__tag{
  margin-top:.6em;padding-top:.55em;border-top:2px solid var(--lp-yellow);
  font-weight:600;font-size:clamp(8px,1.05vw,11px);letter-spacing:.33em;text-transform:uppercase;
}
.lp-brand__tag b{color:var(--lp-yellow);font-weight:700;}

/* ===================== Header nav ===================== */
.elementor-location-header .elementor-nav-menu .elementor-item{
  color:#fff !important;
  font-family:"Montserrat",system-ui,sans-serif;
  font-weight:600;font-size:14px;letter-spacing:.02em;padding:17px 15px !important;
  fill:#fff;
}
.elementor-location-header .elementor-nav-menu .elementor-item:hover,
.elementor-location-header .elementor-nav-menu .elementor-item.elementor-item-active,
.elementor-location-header .elementor-nav-menu .elementor-item.highlighted{
  color:var(--lp-yellow) !important;
}
.elementor-location-header .e--pointer-underline .elementor-item:before,
.elementor-location-header .e--pointer-underline .elementor-item:after{
  background-color:var(--lp-yellow) !important;height:3px !important;
}
.elementor-location-header .elementor-menu-toggle{color:#fff !important;background:transparent !important;}
.elementor-location-header .elementor-nav-menu--dropdown{background-color:var(--lp-black-soft) !important;}
.elementor-location-header .elementor-nav-menu--dropdown a{color:#fff !important;}
.elementor-location-header .elementor-nav-menu--dropdown a:hover,
.elementor-location-header .elementor-nav-menu--dropdown a.elementor-item-active{
  background-color:var(--lp-yellow) !important;color:var(--lp-black) !important;
}

/* ===================== Header search ===================== */
.elementor-location-header .elementor-widget-search-form{max-width:200px;}
.elementor-location-header .elementor-search-form,
.elementor-location-header .elementor-search-form__container,
.elementor-location-header .elementor-search-form__input,
.elementor-location-header .elementor-search-form__icon,
.elementor-location-header .elementor-search-form button{
  background-color:transparent !important;
  background-image:none !important;
  color:#fff !important;fill:#fff !important;
}
.elementor-location-header .elementor-search-form__container{
  border-bottom:1px solid rgba(255,255,255,.28);
  min-height:36px;
}
.elementor-location-header .elementor-search-form__input::placeholder{color:rgba(255,255,255,.55);}

/* ===================== Footer pillars ===================== */
.elementor-location-footer .elementor-widget-icon-box{flex:1 1 0;text-align:center;padding:4px 18px;}
.elementor-location-footer .elementor-widget-icon-box + .elementor-widget-icon-box{
  border-left:2px solid var(--lp-yellow);
}
.elementor-location-footer .elementor-widget-icon-box .elementor-icon{
  color:var(--lp-black) !important;font-size:30px;
}
.elementor-location-footer .elementor-icon-box-title{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:800;
  text-transform:uppercase;letter-spacing:.09em;
  font-size:14px !important;color:var(--lp-black) !important;margin:14px 0 6px;
}
.elementor-location-footer .elementor-icon-box-description{
  font-size:13px;line-height:1.55;color:var(--lp-muted) !important;
  max-width:23ch;margin-inline:auto;
}

/* ===================== Footer bar ===================== */
.lp-foot__brand{font-family:"Montserrat",system-ui,sans-serif;color:#fff;margin:0;line-height:1.3;}
.lp-foot__brand strong{display:block;font-weight:800;letter-spacing:.06em;font-size:18px;}
.lp-foot__brand span{
  display:block;font-size:10px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--lp-yellow);font-weight:600;margin-top:5px;
}
.lp-foot__legal{margin:12px 0 0;font-size:12px;color:rgba(255,255,255,.55);}
.elementor-location-footer .elementor-nav-menu .elementor-item{
  color:rgba(255,255,255,.72) !important;font-size:13px;font-weight:500;padding:6px 12px !important;
}
.elementor-location-footer .elementor-nav-menu .elementor-item:hover{color:var(--lp-yellow) !important;}

/* ===================== Home hero ===================== */
.lp-hero__h1{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:800;
  font-size:clamp(22px,3vw,32px);line-height:1.2;color:var(--lp-black);
  margin:0 0 22px;letter-spacing:-.01em;
}
.lp-hero__grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
}
.lp-card{
  display:flex;flex-direction:column;align-items:center;
  min-height:252px;padding:32px 22px 28px;border-radius:10px;text-align:center;
}
.lp-card__title{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:800;
  text-transform:uppercase;letter-spacing:.015em;line-height:1.24;
  font-size:clamp(15px,1.45vw,19px);margin:0;
}
.lp-card__rule{
  display:block;width:62px;height:2px;margin:16px 0 0;
  background:currentColor;opacity:.5;
}
.lp-card__icon{width:54px;height:54px;flex:none;margin-top:auto;display:block;}
.lp-card--black{background:var(--lp-black);color:#fff;}
.lp-card--yellow{background:var(--lp-yellow);color:var(--lp-black);}
/* La cuarta tarjeta va sin fondo, como en el mockup */
.lp-card--plain{background:transparent;color:var(--lp-black);}
.lp-card--black .lp-card__rule,
.lp-card--plain .lp-card__rule{background:var(--lp-yellow);opacity:1;}

/* ===================== Latest news grid ===================== */
.elementor-widget-posts .elementor-post__title,
.elementor-widget-posts .elementor-post__title a{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:800 !important;
  font-size:18px !important;line-height:1.28 !important;
  color:var(--lp-black) !important;text-decoration:none;
}
.elementor-widget-posts .elementor-post__title{margin:10px 0 6px;}
.elementor-widget-posts .elementor-post__title a:hover{color:var(--lp-yellow) !important;}
.elementor-widget-posts .elementor-post__thumbnail{aspect-ratio:16/10;}
.elementor-widget-posts .elementor-post__thumbnail img{
  width:100%;height:100%;object-fit:cover;
}
.elementor-widget-posts .elementor-post__badge{
  background:var(--lp-yellow);color:var(--lp-black);
  font-family:"Montserrat",system-ui,sans-serif;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;font-size:10px;
}
.elementor-widget-posts .elementor-post__meta-data{
  font-size:12px;color:var(--lp-muted);text-transform:uppercase;letter-spacing:.06em;
}
.elementor-widget-posts .elementor-post__excerpt p{font-size:14px;color:var(--lp-muted);line-height:1.6;}

/* ===================== Responsive ===================== */
@media (max-width:1024px){
  .lp-hero__grid{grid-template-columns:repeat(2,1fr);}
  .elementor-location-footer .elementor-widget-icon-box{flex-basis:50%;}
  .elementor-location-footer .elementor-widget-icon-box + .elementor-widget-icon-box{border-left:0;}
}
@media (max-width:767px){
  .lp-hero__grid{grid-template-columns:1fr;}
  .lp-card{min-height:0;padding:26px 20px 24px;}
  .lp-card__icon{margin-top:18px;}
  .lp-brand{gap:11px;}
}

/* ===================== Article (single post) ===================== */
.elementor-location-single .e-con-inner{max-width:780px;}
.elementor-location-single h1.elementor-heading-title{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:800;
  font-size:clamp(28px,4vw,42px);line-height:1.14;letter-spacing:-.02em;
  color:var(--lp-black);
}
.elementor-widget-post-info .elementor-icon-list-item,
.elementor-widget-post-info .elementor-icon-list-item a{
  font-size:12px !important;color:var(--lp-muted) !important;
  text-transform:uppercase;letter-spacing:.07em;font-weight:600;
}
.elementor-widget-post-info .elementor-icon-list-icon i,
.elementor-widget-post-info .elementor-icon-list-icon svg{color:var(--lp-yellow) !important;fill:var(--lp-yellow) !important;}
.elementor-widget-theme-post-featured-image img{width:100%;height:auto;border-radius:2px;}
.elementor-widget-theme-post-content{
  font-family:"Inter",system-ui,sans-serif;font-size:17px;line-height:1.75;color:var(--lp-ink);
}
.elementor-widget-theme-post-content p{margin:0 0 1.15em;}
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:800;
  color:var(--lp-black);margin:1.7em 0 .5em;line-height:1.25;
}
.elementor-widget-theme-post-content h2{font-size:26px;}
.elementor-widget-theme-post-content h3{font-size:20px;}
.elementor-widget-theme-post-content a{
  color:var(--lp-black);text-decoration:underline;
  text-decoration-color:var(--lp-yellow);text-decoration-thickness:2px;text-underline-offset:3px;
}
.elementor-widget-theme-post-content blockquote{
  margin:1.6em 0;padding:2px 0 2px 20px;border-left:4px solid var(--lp-yellow);
  font-size:19px;font-style:normal;color:var(--lp-black);
}
.elementor-widget-theme-post-content figcaption,
.elementor-widget-theme-post-content .wp-caption-text{font-size:13px;color:var(--lp-muted);}

/* ===================== Archive ===================== */
.elementor-location-archive h1.elementor-heading-title{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:800;
  font-size:clamp(26px,3.4vw,38px);color:var(--lp-black);letter-spacing:-.02em;
}
.elementor-location-archive .elementor-widget-text-editor{
  font-size:16px;color:var(--lp-muted);max-width:70ch;line-height:1.65;
}
.elementor-widget-archive-posts .elementor-post__title,
.elementor-widget-archive-posts .elementor-post__title a{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:800 !important;
  font-size:18px !important;line-height:1.28 !important;
  color:var(--lp-black) !important;text-decoration:none;
}
.elementor-widget-archive-posts .elementor-post__title a:hover{color:var(--lp-yellow) !important;}
.elementor-widget-archive-posts .elementor-post__thumbnail{aspect-ratio:16/10;}
.elementor-widget-archive-posts .elementor-post__thumbnail img{width:100%;height:100%;object-fit:cover;}
.elementor-widget-archive-posts .elementor-post__badge{
  background:var(--lp-yellow);color:var(--lp-black);
  font-family:"Montserrat",system-ui,sans-serif;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;font-size:10px;
}
.elementor-widget-archive-posts .elementor-post__meta-data{
  font-size:12px;color:var(--lp-muted);text-transform:uppercase;letter-spacing:.06em;
}
.elementor-widget-archive-posts .elementor-post__excerpt p{font-size:14px;color:var(--lp-muted);line-height:1.6;}
.elementor-pagination .page-numbers.current{background:var(--lp-yellow);color:var(--lp-black);}

/* ===================== Archive header (per category) ===================== */
.lp-arch__h1{
  font-family:"Montserrat",system-ui,sans-serif;font-weight:800;
  font-size:clamp(28px,3.6vw,40px);line-height:1.12;letter-spacing:-.02em;
  color:var(--lp-black);margin:0 0 10px;
}
.lp-arch__h1::after{
  content:"";display:block;width:56px;height:4px;background:var(--lp-yellow);margin-top:14px;
}
.lp-arch__lead{
  font-size:16px;line-height:1.65;color:var(--lp-muted);max-width:70ch;margin:14px 0 0;
}

/* ============ Mobile header: burger + search on one row ============ */
@media (max-width:767px){
  /* Elementor stacks the nav row on mobile, leaving a tall empty gap */
  .elementor-location-header .e-con-inner:has(.elementor-widget-nav-menu){
    flex-direction:row !important;
    justify-content:center !important;
    align-items:center !important;
    gap:14px !important;
    padding-block:6px !important;
  }
  .elementor-location-header .elementor-widget-nav-menu,
  .elementor-location-header .elementor-widget-search-form{
    width:auto !important;flex:0 0 auto !important;margin:0 !important;
  }
  .elementor-location-header .elementor-widget-search-form{max-width:170px;}
  .elementor-location-header .elementor-menu-toggle{padding:6px;}
  .lp-brand{text-align:center;}
}
/* Search field: kill every default surface, keep only the underline */
.elementor-location-header input.elementor-search-form__input{
  border:0 !important;box-shadow:none !important;padding-inline:6px;
}
.elementor-location-header .elementor-search-form__container{
  border-radius:0 !important;box-shadow:none !important;
}

/* nav 128px + search 263px = 391px > 375px viewport -> wrapped into two rows */
@media (max-width:767px){
  .elementor-location-header .e-con-inner:has(.elementor-widget-nav-menu){
    flex-wrap:nowrap !important;
  }
  /* No acotar el ancho del widget de menu: el dropdown mobile vive adentro
     y un max-width lo colapsa a 0. Se acota solo el buscador. */
  .elementor-location-header .elementor-widget-search-form{
    max-width:140px !important;min-width:0 !important;
  }
  .elementor-location-header .elementor-nav-menu--dropdown a{padding:13px 20px;}
}/* End custom CSS */