/* JobPortal USA + México — scoped styles. No global body/h1/p/img rules. */
:root{--jpi-navy:#0d2b45;--jpi-blue:#1457d9;--jpi-cyan:#e9f5ff;--jpi-text:#1d2939;--jpi-muted:#667085;--jpi-border:#e5e7eb;--jpi-bg:#f6f8fb;--jpi-card:#fff;--jpi-radius:18px;--jpi-shadow:0 12px 34px rgba(13,43,69,.08)}
.jpi-home,.jpi-entry,.jpi-legal,.jpi-site-footer{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--jpi-text)}
.jpi-home *,.jpi-entry *,.jpi-legal *,.jpi-site-footer *{box-sizing:border-box}
.jpi-home a,.jpi-entry a,.jpi-legal a,.jpi-site-footer a{text-decoration:none}
.jpi-home{max-width:1240px;margin:0 auto;padding:18px 22px 60px}
.jpi-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.75fr);gap:28px;align-items:stretch;background:linear-gradient(135deg,#0d2b45 0%,#123f64 62%,#1457d9 100%);border-radius:28px;padding:48px;color:#fff;overflow:hidden;position:relative;box-shadow:var(--jpi-shadow)}
.jpi-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-80px;top:-70px;background:rgba(255,255,255,.08)}
.jpi-hero-copy,.jpi-hero-panel{position:relative;z-index:1}
.jpi-kicker{display:inline-flex;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#4875d7;margin-bottom:10px}
.jpi-hero .jpi-kicker{color:#a9c9ff}
.jpi-hero h1{font-size:clamp(34px,5vw,58px);line-height:1.03;margin:0 0 18px;color:#fff;max-width:850px}
.jpi-hero p{font-size:18px;line-height:1.65;color:#dbe9f5;margin:0 0 24px;max-width:760px}
.jpi-search{display:flex;gap:10px;background:#fff;padding:7px;border-radius:14px;max-width:720px;box-shadow:0 8px 25px rgba(0,0,0,.14)}
.jpi-search input{flex:1;border:0!important;background:transparent!important;min-height:48px;padding:0 14px!important;font-size:16px;box-shadow:none!important;outline:none}
.jpi-search button{border:0;background:#1457d9;color:#fff;padding:0 22px;border-radius:10px;font-weight:800;cursor:pointer}
.jpi-country-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.jpi-country-actions a{color:#fff;border:1px solid rgba(255,255,255,.35);padding:9px 13px;border-radius:999px;font-weight:700;background:rgba(255,255,255,.08)}
.jpi-hero-panel{background:rgba(255,255,255,.1);backdrop-filter:blur(7px);border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:24px;align-self:center}
.jpi-hero-panel strong{display:block;font-size:20px;margin-bottom:12px}.jpi-hero-panel ul{margin:0;padding-left:20px;color:#eef6ff}.jpi-hero-panel li{margin:9px 0}
.jpi-home-section{margin:48px 0}.jpi-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:20px}.jpi-section-head h2{font-size:clamp(26px,3vw,38px);line-height:1.14;margin:0;color:var(--jpi-navy)}.jpi-section-head>a{font-weight:800;color:var(--jpi-blue)}
.jpi-company-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.jpi-company-card{background:#fff;border:1px solid var(--jpi-border);border-radius:18px;overflow:hidden;box-shadow:0 8px 26px rgba(16,24,40,.05);display:flex;flex-direction:column;min-width:0;transition:.2s transform,.2s box-shadow}.jpi-company-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(16,24,40,.1)}
.jpi-card-image{display:block;aspect-ratio:7/4;background:#edf1f5;overflow:hidden}.jpi-card-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important}.jpi-card-body{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:17px;flex:1;border-top:4px solid var(--company-primary,#1457d9)}.jpi-card-meta{font-size:12px;font-weight:800;text-transform:uppercase;color:var(--company-primary,#1457d9);letter-spacing:.04em}.jpi-company-card h3{margin:0;font-size:20px;line-height:1.2}.jpi-company-card h3 a{color:var(--jpi-navy)}.jpi-company-card p{font-size:14px;line-height:1.55;color:var(--jpi-muted);margin:0}.jpi-card-cta{margin-top:auto;padding-top:5px;color:var(--company-primary,#1457d9);font-weight:800;font-size:14px}
.jpi-sector-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.jpi-sector-grid>a{background:#fff;border:1px solid var(--jpi-border);border-radius:16px;padding:18px;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon title" "icon cta";gap:2px 12px;align-items:center;box-shadow:0 8px 20px rgba(16,24,40,.04)}.jpi-sector-grid>a>span{grid-area:icon;font-size:28px}.jpi-sector-grid strong{grid-area:title;color:var(--jpi-navy)}.jpi-sector-grid em{grid-area:cta;font-size:13px;color:var(--jpi-blue);font-style:normal;font-weight:700}
.jpi-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.jpi-guide-grid>a{padding:22px;background:linear-gradient(145deg,#fff,#f5f9ff);border:1px solid #dce7f7;border-radius:18px;display:flex;flex-direction:column;gap:9px}.jpi-guide-grid span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--jpi-blue)}.jpi-guide-grid strong{font-size:18px;line-height:1.35;color:var(--jpi-navy)}.jpi-guide-grid em{font-style:normal;color:var(--jpi-blue);font-size:14px;font-weight:800}
.jpi-home-info{display:grid;grid-template-columns:1.4fr .8fr;gap:20px;background:#eff5fb;border-radius:24px;padding:30px;margin:48px 0}.jpi-home-info h2{margin:0 0 10px;color:var(--jpi-navy)}.jpi-home-info p{margin:0;color:#475467;line-height:1.65}.jpi-home-warning{background:#fff;border-radius:18px;padding:20px;border-left:5px solid #f59e0b}.jpi-home-warning strong{display:block;margin-bottom:8px;color:var(--jpi-navy)}
.jpi-ad-slot{width:100%;min-height:118px;border:1.5px dashed #c9d3e0;border-radius:16px;margin:30px auto;padding:26px 18px 18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#fbfcfe,#f7f9fc);color:#98a2b3;position:relative;clear:both;overflow:hidden}.jpi-ad-label{font-size:9px;letter-spacing:.14em;font-weight:900;background:#fff;color:#98a2b3;padding:3px 7px;border-radius:999px;position:absolute;top:9px;left:12px;border:1px solid #eaecf0}.jpi-ad-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-align:center}.jpi-ad-placeholder strong{font-size:13px;color:#7d8999;font-weight:800}.jpi-ad-placeholder small{font-size:11px;color:#a0a9b5}.jpi-ad-home-below-menu{min-height:104px;margin-top:8px;margin-bottom:28px}.jpi-ad-home-after-featured,.jpi-ad-home-middle{min-height:140px}.jpi-ad-home-before-footer,.jpi-ad-before-footer{min-height:130px;margin-top:38px}.jpi-ad-entry-top{min-height:110px;margin:16px auto 26px}.jpi-ad-entry-after-intro,.jpi-ad-entry-after-company-info,.jpi-ad-middle-content{min-height:132px}
.jpi-entry{--company-primary:#1457d9;--company-secondary:#ffd54f;--company-accent:#0d2b45;--company-soft:#eff6ff;max-width:940px;margin:0 auto;padding:12px 20px 54px;overflow-wrap:anywhere}.jpi-entry .jpi-breadcrumb{display:flex;gap:8px;flex-wrap:wrap;font-size:13px;color:#667085;margin:6px 0 16px}.jpi-entry .jpi-breadcrumb a{color:var(--company-primary)}.jpi-entry-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.jpi-entry-badges span{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:800;color:var(--company-accent);background:var(--company-soft);border:1px solid color-mix(in srgb,var(--company-primary) 24%,#fff)}.jpi-entry .jpi-lead{font-size:19px!important;line-height:1.7!important;color:#344054!important;margin:0 0 20px!important}.jpi-entry h2{font-size:clamp(24px,3vw,32px)!important;line-height:1.25!important;color:var(--jpi-navy)!important;margin:34px 0 12px!important}.jpi-entry p{font-size:16px!important;line-height:1.75!important;color:#344054!important;margin:0 0 16px!important}.jpi-entry ul,.jpi-entry ol{font-size:16px;line-height:1.7;color:#344054}.jpi-entry li{margin:7px 0}.jpi-summary{background:linear-gradient(135deg,var(--company-soft),#fff);border:1px solid color-mix(in srgb,var(--company-primary) 22%,#fff);border-top:5px solid var(--company-primary);border-radius:18px;padding:20px;margin:24px 0;box-shadow:0 10px 28px rgba(16,24,40,.05)}.jpi-summary-title{font-size:20px;font-weight:900;color:var(--company-accent);margin-bottom:14px}.jpi-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.jpi-summary-grid>div{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:12px}.jpi-summary-grid span{display:block;color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.jpi-summary-grid strong{display:block;color:#101828;margin-top:3px;font-size:14px;line-height:1.35}.jpi-update{background:#fff8e6!important;border-left:4px solid #f59e0b;padding:12px 14px!important;border-radius:8px}.jpi-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none!important;padding:0!important;margin:16px 0 20px!important}.jpi-list li{background:var(--company-soft);border:1px solid color-mix(in srgb,var(--company-primary) 18%,#fff);border-radius:10px;padding:11px 13px;margin:0!important}.jpi-note,.jpi-independence,.jpi-midlink{padding:16px 18px;border-radius:12px;margin:22px 0;line-height:1.65}.jpi-note{background:#fff5f5;border-left:4px solid #e5484d}.jpi-midlink{background:var(--company-soft);border-left:4px solid var(--company-primary)}.jpi-midlink a{color:var(--company-primary);font-weight:800}.jpi-independence{background:#f2f4f7;border:1px solid #e4e7ec}.jpi-steps{counter-reset:jpi-step;list-style:none!important;padding:0!important}.jpi-steps li{position:relative;padding:13px 14px 13px 52px!important;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin:10px 0!important}.jpi-steps li:before{counter-increment:jpi-step;content:counter(jpi-step);position:absolute;left:13px;top:12px;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:var(--company-primary);color:#fff;font-weight:900;font-size:13px}.jpi-faq{display:grid;gap:10px}.jpi-faq details{border:1px solid #e4e7ec;border-radius:12px;background:#fff;overflow:hidden}.jpi-faq summary{cursor:pointer;font-weight:800;padding:15px 17px;color:#101828}.jpi-faq details p{padding:0 17px 16px!important;margin:0!important}.jpi-official{margin:34px 0;padding:24px;border-radius:18px;background:linear-gradient(135deg,var(--company-soft),#fff);border:2px solid color-mix(in srgb,var(--company-primary) 28%,#fff);display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}.jpi-official span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--company-primary)}.jpi-official h2{margin:4px 0 6px!important;font-size:24px!important}.jpi-official p{margin:0!important}.jpi-official-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:12px;background:var(--company-primary);color:#fff!important;font-weight:900;white-space:nowrap;box-shadow:0 8px 20px color-mix(in srgb,var(--company-primary) 24%,transparent)}.jpi-related{margin:34px 0}.jpi-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.jpi-related-card{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid #e5e7eb;border-radius:13px;background:#fff}.jpi-related-card span{font-size:11px;font-weight:800;color:#667085;text-transform:uppercase}.jpi-related-card strong{color:#101828}.jpi-related-card em{font-size:13px;color:var(--company-primary);font-style:normal;font-weight:800}.jpi-next{border-top:1px solid #e4e7ec;padding-top:20px;margin-top:24px}.jpi-next span{display:block;font-size:12px;color:#667085;text-transform:uppercase;font-weight:800}.jpi-next a{display:block;color:var(--company-primary);font-size:18px;font-weight:900;margin-top:5px}
.jpi-guide-entry{--company-primary:#1457d9;--company-soft:#eef5ff}.jpi-legal{max-width:900px;margin:0 auto;padding:24px 22px 60px}.jpi-legal h1{font-size:clamp(34px,5vw,50px);line-height:1.1;color:var(--jpi-navy);margin-bottom:20px}.jpi-legal h2{font-size:26px;color:var(--jpi-navy);margin:30px 0 10px}.jpi-legal p,.jpi-legal li{font-size:16px;line-height:1.75;color:#344054}.jpi-contact{display:grid;gap:15px;margin-top:24px}.jpi-contact label{display:grid;gap:7px;font-weight:700;color:#344054}.jpi-contact input[type=text],.jpi-contact input[type=email],.jpi-contact textarea{width:100%;border:1px solid #d0d5dd!important;border-radius:10px!important;padding:12px 13px!important;background:#fff!important}.jpi-contact button{border:0;background:var(--jpi-blue);color:#fff;padding:13px 18px;border-radius:10px;font-weight:900;cursor:pointer;justify-self:start}.jpi-check{display:flex!important;grid-template-columns:auto 1fr;align-items:flex-start}.jpi-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.jpi-form-success,.jpi-form-error{padding:12px 14px;border-radius:9px;margin:12px 0}.jpi-form-success{background:#ecfdf3;color:#027a48}.jpi-form-error{background:#fff1f3;color:#c01048}
.jpi-site-footer{background:#0d2b45;color:#d6e2ec;margin-top:45px}.jpi-footer-inner{max-width:1240px;margin:0 auto;padding:34px 22px;display:grid;grid-template-columns:1fr auto;gap:30px}.jpi-footer-inner strong{color:#fff;font-size:20px}.jpi-footer-inner p{max-width:600px;color:#b8cad9;line-height:1.6;margin:8px 0 0}.jpi-footer-links{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.jpi-footer-links a{color:#fff;font-weight:700;font-size:13px}.jpi-footer-note{border-top:1px solid rgba(255,255,255,.12);max-width:1240px;margin:0 auto;padding:16px 22px 24px;color:#9eb5c7;font-size:12px;line-height:1.55}
.jpi-home a:focus-visible,.jpi-entry a:focus-visible,.jpi-home button:focus-visible,.jpi-contact button:focus-visible,.jpi-contact input:focus-visible,.jpi-contact textarea:focus-visible{outline:3px solid #ffbf47!important;outline-offset:3px}
@media(max-width:1024px){.jpi-company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jpi-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jpi-hero{grid-template-columns:1fr}.jpi-hero-panel{max-width:none}.jpi-related-grid{grid-template-columns:1fr 1fr}.jpi-guide-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.jpi-home{padding:10px 14px 38px}.jpi-hero{padding:27px 20px;border-radius:20px}.jpi-hero h1{font-size:36px}.jpi-hero p{font-size:16px}.jpi-search{display:grid}.jpi-search button{min-height:46px}.jpi-section-head{align-items:flex-start}.jpi-section-head>a{font-size:13px}.jpi-company-grid,.jpi-sector-grid,.jpi-guide-grid,.jpi-related-grid,.jpi-home-info{grid-template-columns:1fr}.jpi-home-section{margin:36px 0}.jpi-card-image{aspect-ratio:7/4}.jpi-entry{padding:8px 14px 40px}.jpi-summary-grid,.jpi-list{grid-template-columns:1fr}.jpi-official{grid-template-columns:1fr;padding:18px}.jpi-official-btn{width:100%;white-space:normal;text-align:center}.jpi-footer-inner{grid-template-columns:1fr}.jpi-footer-links{gap:10px}.jpi-steps li{padding-left:50px!important}}


/* Version 1.0.1 — force JobPortal visual identity to predominate */
body.jpi-portal-active .ast-builder-footer,
body.jpi-portal-active footer#colophon,
body.jpi-portal-active footer.site-footer,
body.jpi-portal-active .site-below-footer-wrap,
body.jpi-portal-active .footer-adv,
body.jpi-portal-active .footer-widget-area,
body.jpi-portal-active .ast-footer-overlay{
  display:none !important;
}
body.jpi-portal-active .site-content{padding-bottom:0 !important;}

/* Header / menu styling for Astra */
body.jpi-portal-active .ast-primary-header-bar,
body.jpi-portal-active .main-header-bar,
body.jpi-portal-active .ast-sticky-active .main-header-bar{
  background:#ffffff !important;
  box-shadow:0 10px 28px rgba(13,43,69,.08) !important;
  border-bottom:1px solid #e5e7eb !important;
}
body.jpi-portal-active .ast-builder-grid-row,
body.jpi-portal-active .ast-builder-grid-row-container,
body.jpi-portal-active .main-header-bar .ast-container{
  min-height:78px !important;
}
body.jpi-portal-active .site-header-primary-section-left,
body.jpi-portal-active .site-header-primary-section-right{
  align-items:center !important;
}
body.jpi-portal-active .custom-logo-link img{
  max-height:54px !important;
  width:auto !important;
}
body.jpi-portal-active .ast-builder-menu-1 .menu-item > .menu-link,
body.jpi-portal-active .main-header-menu > .menu-item > .menu-link{
  color:#0d2b45 !important;
  font-weight:800 !important;
  font-size:15px !important;
  line-height:1.2 !important;
  padding:14px 16px !important;
  border-radius:12px !important;
  transition:all .18s ease !important;
}
body.jpi-portal-active .ast-builder-menu-1 .menu-item:hover > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .current-menu-item > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .current-menu-ancestor > .menu-link,
body.jpi-portal-active .main-header-menu > .menu-item:hover > .menu-link,
body.jpi-portal-active .main-header-menu > .current-menu-item > .menu-link,
body.jpi-portal-active .main-header-menu > .current-menu-ancestor > .menu-link{
  color:#1457d9 !important;
  background:#eef5ff !important;
}
body.jpi-portal-active .ast-builder-menu-1 .sub-menu,
body.jpi-portal-active .main-header-menu .sub-menu{
  background:#ffffff !important;
  border:1px solid #e5e7eb !important;
  border-radius:16px !important;
  box-shadow:0 20px 35px rgba(16,24,40,.12) !important;
  padding:8px !important;
  min-width:260px !important;
}
body.jpi-portal-active .ast-builder-menu-1 .sub-menu .menu-link,
body.jpi-portal-active .main-header-menu .sub-menu .menu-link{
  color:#344054 !important;
  font-weight:700 !important;
  border-radius:10px !important;
  padding:12px 14px !important;
}
body.jpi-portal-active .ast-builder-menu-1 .sub-menu .menu-item:hover > .menu-link,
body.jpi-portal-active .main-header-menu .sub-menu .menu-item:hover > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .sub-menu .current-menu-item > .menu-link,
body.jpi-portal-active .main-header-menu .sub-menu .current-menu-item > .menu-link{
  background:#f5f9ff !important;
  color:#1457d9 !important;
}
body.jpi-portal-active .ast-mobile-header-wrap .menu-toggle.main-header-menu-toggle,
body.jpi-portal-active .ast-mobile-header-wrap .menu-toggle,
body.jpi-portal-active .ast-button-wrap .menu-toggle{
  border:1px solid #d0d5dd !important;
  background:#ffffff !important;
  border-radius:12px !important;
  padding:10px !important;
  box-shadow:0 8px 18px rgba(16,24,40,.08) !important;
}
body.jpi-portal-active .ast-mobile-popup-drawer .ast-builder-menu-mobile .main-header-menu,
body.jpi-portal-active .ast-header-break-point .main-header-menu{
  background:#ffffff !important;
}
body.jpi-portal-active .ast-header-break-point .main-navigation ul .menu-item .menu-link,
body.jpi-portal-active .ast-mobile-popup-drawer .menu-item .menu-link{
  color:#0d2b45 !important;
  font-weight:800 !important;
  padding:14px 18px !important;
  border-bottom:1px solid #eef2f6 !important;
}
body.jpi-portal-active .ast-header-break-point .main-navigation ul .sub-menu .menu-link,
body.jpi-portal-active .ast-mobile-popup-drawer .sub-menu .menu-link{
  padding-left:32px !important;
  font-weight:700 !important;
}
body.jpi-portal-active .ast-header-break-point .main-navigation ul .current-menu-item > .menu-link,
body.jpi-portal-active .ast-mobile-popup-drawer .current-menu-item > .menu-link{
  color:#1457d9 !important;
  background:#eef5ff !important;
}
@media (max-width: 921px){
  body.jpi-portal-active .main-header-bar .ast-container,
  body.jpi-portal-active .ast-builder-grid-row,
  body.jpi-portal-active .ast-builder-grid-row-container{
    min-height:70px !important;
  }
}


/* Version 1.0.2 — cleaner premium menu + prevent wrapping */
body.jpi-portal-active .site-header-primary-section-left .ast-site-identity,
body.jpi-portal-active .site-branding{
  display:flex !important;
  align-items:center !important;
}
body.jpi-portal-active .site-branding{max-width:240px;}
body.jpi-portal-active .ast-builder-menu-1,
body.jpi-portal-active .main-navigation,
body.jpi-portal-active .main-header-bar-navigation{
  width:auto !important;
}
body.jpi-portal-active .ast-builder-menu-1 .main-header-menu,
body.jpi-portal-active .main-header-menu.ast-nav-menu,
body.jpi-portal-active .ast-desktop .main-header-menu{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:6px !important;
}
body.jpi-portal-active .ast-builder-menu-1 .menu-item,
body.jpi-portal-active .main-header-menu > .menu-item{
  flex:0 0 auto !important;
}
body.jpi-portal-active .ast-builder-menu-1 .menu-item > .menu-link,
body.jpi-portal-active .main-header-menu > .menu-item > .menu-link{
  font-size:14px !important;
  padding:12px 14px !important;
  border-radius:14px !important;
}
body.jpi-portal-active .ast-builder-menu-1 .current-menu-item > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .current-menu-ancestor > .menu-link,
body.jpi-portal-active .main-header-menu > .current-menu-item > .menu-link,
body.jpi-portal-active .main-header-menu > .current-menu-ancestor > .menu-link{
  box-shadow:inset 0 0 0 1px rgba(20,87,217,.08) !important;
}
body.jpi-portal-active .ast-menu-toggle,
body.jpi-portal-active .main-header-menu .menu-link .icon-arrow svg,
body.jpi-portal-active .ast-builder-menu-1 .icon-arrow svg{
  fill:currentColor !important;
}
body.jpi-portal-active .ast-builder-menu-1 .menu-item-has-children > .menu-link,
body.jpi-portal-active .main-header-menu > .menu-item-has-children > .menu-link{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
}
body.jpi-portal-active .ast-builder-menu-1 .sub-menu,
body.jpi-portal-active .main-header-menu .sub-menu{
  margin-top:10px !important;
}
body.jpi-portal-active .ast-builder-menu-1 .sub-menu .menu-item,
body.jpi-portal-active .main-header-menu .sub-menu .menu-item{
  margin:0 !important;
}
@media (max-width: 1180px){
  body.jpi-portal-active .site-branding{max-width:190px;}
  body.jpi-portal-active .ast-builder-menu-1 .menu-item > .menu-link,
  body.jpi-portal-active .main-header-menu > .menu-item > .menu-link{
    font-size:13px !important;
    padding:11px 10px !important;
  }
}
@media (max-width: 921px){
  body.jpi-portal-active .site-branding{max-width:none;}
}


/* =========================================================
   RutaLaboral 1.1.0 — header/menu premium controlled by plugin
   ========================================================= */
body.jpi-portal-active .site-header{
  position:relative !important;
  z-index:1000 !important;
  background:#fff !important;
  border-top:4px solid #0d6efd !important;
}
body.jpi-portal-active .site-header:before{
  content:"" !important;
  position:absolute !important;
  top:-4px !important;
  left:0 !important;
  right:0 !important;
  height:4px !important;
  background:linear-gradient(90deg,#0d6efd 0%,#0d6efd 72%,#ffc928 72%,#ffc928 100%) !important;
  pointer-events:none !important;
}
body.jpi-portal-active .ast-primary-header-bar,
body.jpi-portal-active .main-header-bar{
  background:rgba(255,255,255,.98) !important;
  border-bottom:1px solid #e8edf3 !important;
  box-shadow:0 8px 28px rgba(9,40,80,.08) !important;
}
body.jpi-portal-active .ast-primary-header-bar .site-primary-header-wrap,
body.jpi-portal-active .main-header-bar .ast-container,
body.jpi-portal-active .ast-builder-grid-row-container-inner{
  max-width:1540px !important;
  width:100% !important;
  margin:0 auto !important;
  padding-left:26px !important;
  padding-right:26px !important;
}
body.jpi-portal-active .ast-builder-grid-row.ast-grid-center-col-layout,
body.jpi-portal-active .ast-builder-grid-row.ast-grid-no-center-col-layout,
body.jpi-portal-active .site-primary-header-wrap .ast-builder-grid-row{
  grid-template-columns:minmax(220px,280px) minmax(0,1fr) !important;
  column-gap:28px !important;
  min-height:88px !important;
  align-items:center !important;
}
body.jpi-portal-active .site-header-primary-section-left{justify-content:flex-start !important;min-width:0 !important;}
body.jpi-portal-active .site-header-primary-section-right{justify-content:flex-end !important;min-width:0 !important;}
body.jpi-portal-active .site-branding,
body.jpi-portal-active .ast-site-identity{padding:0 !important;margin:0 !important;max-width:270px !important;}
body.jpi-portal-active .custom-logo-link{display:flex !important;align-items:center !important;line-height:0 !important;}
body.jpi-portal-active .custom-logo-link img,
body.jpi-portal-active img.custom-logo{
  width:250px !important;
  max-width:100% !important;
  height:auto !important;
  max-height:64px !important;
  object-fit:contain !important;
}
body.jpi-portal-active .ast-builder-menu-1,
body.jpi-portal-active .main-header-bar-navigation,
body.jpi-portal-active .main-navigation{width:100% !important;}
body.jpi-portal-active .ast-builder-menu-1 .main-header-menu,
body.jpi-portal-active .main-header-menu.ast-nav-menu,
body.jpi-portal-active .ast-desktop .main-header-menu{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:5px !important;
  width:100% !important;
  margin:0 !important;
}
body.jpi-portal-active .main-header-menu > .menu-item,
body.jpi-portal-active .ast-builder-menu-1 .main-header-menu > .menu-item{
  margin:0 !important;
  flex:0 0 auto !important;
  position:relative !important;
}
body.jpi-portal-active .main-header-menu > .menu-item > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:0 13px !important;
  border-radius:12px !important;
  color:#102a43 !important;
  background:transparent !important;
  font-size:14px !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
  transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease !important;
}
body.jpi-portal-active .main-header-menu > .menu-item:hover > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .main-header-menu > .menu-item:hover > .menu-link{
  background:#f0f6ff !important;
  color:#0d6efd !important;
  transform:translateY(-1px) !important;
}
body.jpi-portal-active .main-header-menu > .current-menu-item > .menu-link,
body.jpi-portal-active .main-header-menu > .current-menu-ancestor > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .main-header-menu > .current-menu-item > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .main-header-menu > .current-menu-ancestor > .menu-link{
  background:#eaf3ff !important;
  color:#0b5ed7 !important;
  box-shadow:inset 0 0 0 1px rgba(13,110,253,.08) !important;
}
/* Contacto as a clear CTA */
body.jpi-portal-active .main-header-menu > .menu-item:last-child > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .main-header-menu > .menu-item:last-child > .menu-link{
  background:#0d6efd !important;
  color:#fff !important;
  padding-left:17px !important;
  padding-right:17px !important;
  box-shadow:0 8px 18px rgba(13,110,253,.18) !important;
}
body.jpi-portal-active .main-header-menu > .menu-item:last-child:hover > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .main-header-menu > .menu-item:last-child:hover > .menu-link{
  background:#0b5ed7 !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
}
/* Desktop dropdowns */
body.jpi-portal-active .main-header-menu .sub-menu,
body.jpi-portal-active .ast-builder-menu-1 .sub-menu{
  top:calc(100% + 10px) !important;
  min-width:260px !important;
  padding:9px !important;
  background:#fff !important;
  border:1px solid #e3e9f0 !important;
  border-radius:16px !important;
  box-shadow:0 20px 42px rgba(16,42,67,.14) !important;
  overflow:visible !important;
}
body.jpi-portal-active .main-header-menu .sub-menu:before,
body.jpi-portal-active .ast-builder-menu-1 .sub-menu:before{
  content:"" !important;
  position:absolute !important;
  width:12px !important;
  height:12px !important;
  top:-7px !important;
  left:26px !important;
  transform:rotate(45deg) !important;
  background:#fff !important;
  border-left:1px solid #e3e9f0 !important;
  border-top:1px solid #e3e9f0 !important;
}
body.jpi-portal-active .main-header-menu .sub-menu .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .sub-menu .menu-link{
  min-height:42px !important;
  padding:10px 13px !important;
  border-radius:10px !important;
  color:#344054 !important;
  background:#fff !important;
  font-size:13px !important;
  font-weight:750 !important;
  line-height:1.35 !important;
}
body.jpi-portal-active .main-header-menu .sub-menu .menu-item:hover > .menu-link,
body.jpi-portal-active .ast-builder-menu-1 .sub-menu .menu-item:hover > .menu-link{
  background:#f1f6ff !important;
  color:#0d6efd !important;
}
body.jpi-portal-active .main-header-menu .menu-item-has-children > .menu-link .ast-icon,
body.jpi-portal-active .ast-builder-menu-1 .menu-item-has-children > .menu-link .ast-icon{
  margin-left:7px !important;
  font-size:10px !important;
}
/* Home should start with the installer design instead of Astra page title */
body.jpi-portal-active.home .entry-header,
body.jpi-portal-active.home .entry-title,
body.jpi-portal-active.home .ast-single-post-order{
  display:none !important;
}
body.jpi-portal-active.home #primary,
body.jpi-portal-active.home .site-main,
body.jpi-portal-active.home .entry-content{
  margin-top:0 !important;
  padding-top:0 !important;
}
/* Responsive desktop compression before Astra mobile breakpoint */
@media (max-width:1250px) and (min-width:922px){
  body.jpi-portal-active .ast-primary-header-bar .site-primary-header-wrap,
  body.jpi-portal-active .main-header-bar .ast-container{padding-left:16px !important;padding-right:16px !important;}
  body.jpi-portal-active .site-primary-header-wrap .ast-builder-grid-row{grid-template-columns:210px minmax(0,1fr) !important;column-gap:14px !important;}
  body.jpi-portal-active .custom-logo-link img,body.jpi-portal-active img.custom-logo{width:205px !important;max-height:56px !important;}
  body.jpi-portal-active .main-header-menu > .menu-item > .menu-link,
  body.jpi-portal-active .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link{font-size:12.5px !important;padding:0 8px !important;}
  body.jpi-portal-active .main-header-menu > .menu-item:last-child > .menu-link,
  body.jpi-portal-active .ast-builder-menu-1 .main-header-menu > .menu-item:last-child > .menu-link{padding-left:12px !important;padding-right:12px !important;}
}
/* Mobile menu: clean card-like navigation */
@media (max-width:921px){
  body.jpi-portal-active .site-primary-header-wrap .ast-builder-grid-row,
  body.jpi-portal-active .ast-builder-grid-row.ast-grid-center-col-layout,
  body.jpi-portal-active .ast-builder-grid-row.ast-grid-no-center-col-layout{
    grid-template-columns:minmax(0,1fr) auto !important;
    min-height:72px !important;
  }
  body.jpi-portal-active .custom-logo-link img,body.jpi-portal-active img.custom-logo{width:205px !important;max-height:54px !important;}
  body.jpi-portal-active .ast-button-wrap .menu-toggle,
  body.jpi-portal-active .menu-toggle.main-header-menu-toggle{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:46px !important;
    height:46px !important;
    padding:0 !important;
    border:1px solid #dbe4ee !important;
    border-radius:13px !important;
    background:#f8fbff !important;
    color:#0d47a1 !important;
    box-shadow:0 6px 16px rgba(16,42,67,.07) !important;
  }
  body.jpi-portal-active .ast-mobile-header-wrap .ast-mobile-header-content,
  body.jpi-portal-active .ast-header-break-point .main-header-menu{
    background:#fff !important;
    border-top:1px solid #edf1f5 !important;
    padding:10px 12px 16px !important;
  }
  body.jpi-portal-active .ast-header-break-point .main-navigation ul .menu-item > .menu-link,
  body.jpi-portal-active .ast-mobile-popup-drawer .menu-item > .menu-link{
    min-height:48px !important;
    margin:3px 0 !important;
    padding:12px 14px !important;
    border:0 !important;
    border-radius:11px !important;
    color:#102a43 !important;
    background:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
  }
  body.jpi-portal-active .ast-header-break-point .main-navigation ul .menu-item:hover > .menu-link,
  body.jpi-portal-active .ast-header-break-point .main-navigation ul .current-menu-item > .menu-link,
  body.jpi-portal-active .ast-mobile-popup-drawer .current-menu-item > .menu-link{
    background:#eef5ff !important;
    color:#0d6efd !important;
  }
  body.jpi-portal-active .ast-header-break-point .main-navigation ul .sub-menu{
    margin:2px 0 7px !important;
    padding:4px 0 4px 13px !important;
    border-left:2px solid #d8e8ff !important;
    background:#fff !important;
  }
  body.jpi-portal-active .ast-header-break-point .main-navigation ul .sub-menu .menu-link{
    min-height:42px !important;
    font-size:13px !important;
    font-weight:700 !important;
  }
  body.jpi-portal-active .ast-header-break-point .main-header-menu > .menu-item:last-child > .menu-link{
    background:#0d6efd !important;
    color:#fff !important;
    justify-content:center !important;
    margin-top:8px !important;
  }
}
@media (max-width:520px){
  body.jpi-portal-active .ast-primary-header-bar .site-primary-header-wrap,
  body.jpi-portal-active .main-header-bar .ast-container{padding-left:12px !important;padding-right:12px !important;}
  body.jpi-portal-active .custom-logo-link img,body.jpi-portal-active img.custom-logo{width:178px !important;max-height:48px !important;}
}


/* Version 1.1.1 — RutaLaboral unique homepage hero */
.jpi-home{max-width:1320px;padding-top:14px}
.jpi-hero-home{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-radius:30px;
  padding:0;
  background:linear-gradient(120deg,#072756 0%,#0a2f6a 40%,#0e4bc1 100%);
  box-shadow:0 24px 60px rgba(4,24,58,.18);
}
.jpi-hero-home::before{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(90deg,rgba(5,27,60,.93) 0%,rgba(6,41,92,.92) 42%,rgba(13,75,193,.55) 100%);
  z-index:0;
}
.jpi-hero-home::after{
  content:"";
  position:absolute; inset:0;
  background-image:url('../images/rutalaboral-home-hero-selected.png');
  background-size:cover;
  background-position:center;
  opacity:.14;
  mix-blend-mode:screen;
  z-index:0;
}
.jpi-hero-grid{
  position:relative; z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
  gap:18px;
  align-items:stretch;
  min-height:720px;
}
.jpi-hero-copy{padding:64px 28px 46px 54px;display:flex;flex-direction:column;justify-content:center}
.jpi-hero-home .jpi-kicker{color:#dbe7ff;font-size:12px;letter-spacing:.18em;margin-bottom:18px;position:relative;padding-left:84px}
.jpi-hero-home .jpi-kicker:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:62px;height:4px;border-radius:999px;background:#f5c83b}
.jpi-hero-home h1{font-size:clamp(42px,5vw,78px);line-height:1.03;font-weight:900;margin:0 0 20px;color:#fff;max-width:760px}
.jpi-hero-home h1 span{color:#ffd34d}
.jpi-hero-home p{font-size:19px;line-height:1.6;color:#e5eefb;max-width:760px;margin:0 0 28px}
.jpi-hero-home .jpi-search{max-width:860px;background:#fff;padding:10px;border-radius:22px;box-shadow:0 18px 38px rgba(5,14,35,.18)}
.jpi-hero-home .jpi-search input{min-height:58px;padding:0 18px!important;font-size:17px}
.jpi-hero-home .jpi-search button{min-width:174px;min-height:58px;border-radius:16px;background:linear-gradient(135deg,#1a6cff 0%,#1659da 100%);font-size:18px}
.jpi-hero-sectors{display:flex;flex-wrap:wrap;gap:14px;margin:18px 0 28px}
.jpi-hero-sectors a{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(2,18,49,.28);color:#fff;font-weight:700;backdrop-filter:blur(8px)}
.jpi-hero-sectors a span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.08);font-size:15px}
.jpi-country-actions-hero{gap:18px}
.jpi-country-actions-hero a{display:flex;align-items:center;gap:12px;min-width:255px;justify-content:center;padding:22px 24px;border-radius:22px;background:linear-gradient(135deg,#1967ff 0%,#0b53d1 100%);box-shadow:0 12px 28px rgba(10,58,170,.32);border:none;color:#fff;font-size:19px;font-weight:900}
.jpi-country-actions-hero a:last-child{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.35);box-shadow:none}
.jpi-country-actions-hero a strong{font-size:28px;line-height:1}
.jpi-hero-visual{position:relative;display:flex;align-items:flex-end;justify-content:center;padding:36px 34px 28px 0}
.jpi-hero-figure{position:absolute;inset:52px 160px 34px 0;display:flex;align-items:flex-end;justify-content:center;pointer-events:none}
.jpi-hero-figure img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:28px;filter:saturate(1.03) drop-shadow(0 18px 42px rgba(0,0,0,.18));mask-image:linear-gradient(to left,rgba(0,0,0,1) 82%,rgba(0,0,0,.85) 90%,transparent 100%)}
.jpi-hero-float{position:absolute;right:18px;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.6);border-radius:28px;box-shadow:0 18px 40px rgba(13,28,56,.18);padding:24px 24px 22px;max-width:336px;color:#102447}
.jpi-hero-float-top{top:96px}
.jpi-hero-float-mid{top:384px;background:#edf4ff;display:flex;align-items:flex-start;gap:16px}
.jpi-hero-float-bottom{top:550px;background:#fff8df}
.jpi-float-title{font-size:19px;font-weight:900;margin-bottom:14px;display:flex;align-items:center;gap:12px}
.jpi-float-title:before{content:"💡";display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff4bd;font-size:22px}
.jpi-hero-float ul{margin:0;padding:0;list-style:none}
.jpi-hero-float li{position:relative;padding:0 0 0 26px;margin:11px 0;color:#243b66;font-size:16px;line-height:1.45}
.jpi-hero-float li:before{content:"";position:absolute;left:0;top:8px;width:12px;height:12px;border-radius:50%;background:#2164f3;box-shadow:0 0 0 5px rgba(33,100,243,.12)}
.jpi-float-num{font-size:54px;line-height:.9;font-weight:900;color:#2164f3;flex:0 0 auto}
.jpi-float-copy strong{display:block;font-size:18px;line-height:1.22;margin-bottom:8px;color:#102447}
.jpi-float-copy p{margin:0!important;font-size:15px!important;line-height:1.5!important;color:#48627f!important}
@media(max-width:1200px){
  .jpi-home{padding-left:16px;padding-right:16px}
  .jpi-hero-grid{grid-template-columns:minmax(0,1fr);min-height:auto}
  .jpi-hero-copy{padding:52px 28px 20px 34px}
  .jpi-hero-visual{min-height:760px;padding:0 20px 30px}
  .jpi-hero-figure{inset:10px 180px 26px 24px}
  .jpi-hero-float{right:24px}
}
@media(max-width:920px){
  .jpi-hero-home{border-radius:24px}
  .jpi-hero-home h1{font-size:clamp(34px,8vw,56px)}
  .jpi-hero-home p{font-size:17px}
  .jpi-hero-home .jpi-kicker{padding-left:64px}
  .jpi-hero-home .jpi-kicker:before{width:48px}
  .jpi-hero-home .jpi-search{display:grid;gap:10px;padding:12px}
  .jpi-hero-home .jpi-search button{width:100%}
  .jpi-country-actions-hero a{min-width:0;flex:1 1 240px}
  .jpi-hero-visual{min-height:800px}
  .jpi-hero-figure{inset:0 0 260px 0;position:relative;height:520px}
  .jpi-hero-figure img{mask-image:none;border-radius:24px}
  .jpi-hero-float{position:relative;right:auto;top:auto!important;max-width:none;margin:14px 0 0}
}
@media(max-width:680px){
  .jpi-home{padding:8px 12px 38px}
  .jpi-hero-copy{padding:32px 18px 16px}
  .jpi-hero-home .jpi-kicker{letter-spacing:.12em;padding-left:52px;font-size:11px}
  .jpi-hero-home h1{font-size:clamp(30px,10vw,42px)}
  .jpi-hero-home p{font-size:16px}
  .jpi-hero-sectors{gap:10px;margin:14px 0 18px}
  .jpi-hero-sectors a{padding:10px 14px;font-size:14px}
  .jpi-country-actions-hero{gap:12px}
  .jpi-country-actions-hero a{padding:16px 14px;border-radius:18px;font-size:17px}
  .jpi-hero-visual{min-height:auto;padding:0 14px 18px}
  .jpi-hero-figure{height:420px;margin-top:6px}
  .jpi-float-num{font-size:42px}
}


/* Version 1.1.2 — full-width front page + hero layout fix */
body.jpi-portal-active.home .site-content > .ast-container,
body.jpi-portal-active.home .site-content .ast-container,
body.jpi-portal-active.home .ast-container.ast-single-post,
body.jpi-portal-active.home .ast-separate-container #primary,
body.jpi-portal-active.home .content-area.primary,
body.jpi-portal-active.home #primary{
  max-width:100% !important;
  width:100% !important;
}
body.jpi-portal-active.home .site-content .ast-container{
  display:block !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
body.jpi-portal-active.home #secondary,
body.jpi-portal-active.home .widget-area,
body.jpi-portal-active.home .sidebar-main,
body.jpi-portal-active.home .ast-right-sidebar #secondary,
body.jpi-portal-active.home .ast-left-sidebar #secondary{
  display:none !important;
}
body.jpi-portal-active.home .entry-content > .jpi-home:first-child,
body.jpi-portal-active.home .site-main .jpi-home:first-child{
  margin-top:0 !important;
}
.jpi-hero-grid{
  grid-template-columns:minmax(560px,1.06fr) minmax(420px,.94fr);
}
.jpi-hero-copy{min-width:0;}
.jpi-hero-copy h1,
.jpi-hero-home h1{
  word-break:normal !important;
  overflow-wrap:normal !important;
  hyphens:none !important;
}
.jpi-hero-visual{min-width:0;}
.jpi-hero-float{z-index:2;}
@media(max-width:1280px){
  .jpi-hero-grid{grid-template-columns:minmax(0,1fr);}
  .jpi-hero-copy{padding-right:34px;}
}


/* Version 1.1.3 — compact hero, no default image */
.jpi-hero-home,
.jpi-hero-grid,
.jpi-hero-visual,
.jpi-hero-figure,
.jpi-hero-float{display:none!important}

.jpi-hero-compact{
  display:block!important;
  position:relative;
  overflow:hidden;
  border-radius:26px;
  padding:0!important;
  min-height:0!important;
  background:
    radial-gradient(circle at 92% 15%,rgba(72,142,255,.22) 0 110px,transparent 112px),
    linear-gradient(135deg,#092a55 0%,#0d3976 52%,#1457d9 100%)!important;
  box-shadow:0 18px 46px rgba(13,43,69,.14);
}
.jpi-hero-compact:before,
.jpi-hero-compact:after{display:none!important}
.jpi-hero-compact-grid{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
  gap:32px;
  align-items:center;
  padding:44px 46px;
  min-height:500px;
}
.jpi-hero-compact-copy{min-width:0}
.jpi-hero-compact .jpi-kicker{
  color:#c9ddff!important;
  font-size:12px!important;
  letter-spacing:.14em!important;
  margin-bottom:14px!important;
}
.jpi-hero-compact h1{
  color:#fff!important;
  font-size:clamp(38px,4.2vw,60px)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
  margin:0 0 16px!important;
  max-width:760px!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
.jpi-hero-compact h1 span{color:#ffd34d!important}
.jpi-hero-compact p{
  color:#deebff!important;
  font-size:17px!important;
  line-height:1.55!important;
  max-width:680px!important;
  margin:0 0 22px!important;
}
.jpi-search-compact{
  max-width:720px!important;
  padding:7px!important;
  border-radius:16px!important;
  box-shadow:0 10px 28px rgba(0,0,0,.15)!important;
}
.jpi-search-compact input{min-height:50px!important;font-size:16px!important}
.jpi-search-compact button{min-height:50px!important;padding:0 24px!important;border-radius:11px!important;font-size:16px!important}
.jpi-country-actions-compact{margin-top:16px!important;gap:12px!important}
.jpi-country-actions-compact a{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:180px!important;
  padding:12px 16px!important;
  border-radius:13px!important;
  color:#fff!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  font-size:14px!important;
}
.jpi-country-actions-compact a:first-child{background:#1764ed!important;border-color:#1764ed!important}
.jpi-country-actions-compact strong{font-size:15px!important}
.jpi-country-actions-compact span{opacity:.9}

.jpi-hero-compact-side{display:grid;gap:14px;align-content:center;min-width:0}
.jpi-hero-manual-media{
  width:100%;
  height:190px;
  border-radius:20px;
  background-size:cover;
  background-position:center;
  border:1px solid rgba(255,255,255,.35);
  box-shadow:0 14px 32px rgba(0,0,0,.16);
}
.jpi-hero-apply-card{
  background:rgba(255,255,255,.97);
  color:#143158;
  border-radius:20px;
  padding:20px 22px;
  box-shadow:0 16px 36px rgba(3,26,67,.16);
}
.jpi-hero-card-heading{display:flex;align-items:center;gap:10px;margin-bottom:13px}
.jpi-hero-card-heading>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e8f1ff;color:#1764ed;font-weight:900}
.jpi-hero-card-heading strong{font-size:20px;color:#0d2b45}
.jpi-hero-checks{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}
.jpi-hero-checks span{position:relative;padding-left:20px;font-size:14px;line-height:1.45;color:#405a79}
.jpi-hero-checks span:before{content:"";position:absolute;left:0;top:6px;width:9px;height:9px;border-radius:50%;background:#2164f3;box-shadow:0 0 0 4px rgba(33,100,243,.12)}
.jpi-hero-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.jpi-hero-mini-card{display:flex;flex-direction:column;gap:3px;background:#edf4ff;border-radius:16px;padding:15px 17px;color:#102447}
.jpi-hero-mini-card strong{font-size:24px;line-height:1;color:#2164f3}
.jpi-hero-mini-card span{font-size:13px;line-height:1.4;color:#506984}
.jpi-hero-mini-warm{background:#fff7df}
.jpi-hero-mini-warm strong{font-size:15px;color:#102447;line-height:1.2}

.jpi-hero-has-image .jpi-hero-compact-grid{min-height:540px}

@media(max-width:1024px){
  .jpi-hero-compact-grid{grid-template-columns:1fr;padding:38px 30px;min-height:0}
  .jpi-hero-compact-side{grid-template-columns:1fr 1fr;align-items:stretch}
  .jpi-hero-manual-media{grid-column:1/-1;height:240px}
  .jpi-hero-apply-card{grid-column:1/-1}
}
@media(max-width:680px){
  .jpi-hero-compact{border-radius:20px}
  .jpi-hero-compact-grid{padding:28px 18px;gap:24px}
  .jpi-hero-compact h1{font-size:36px!important}
  .jpi-hero-compact p{font-size:16px!important}
  .jpi-search-compact{display:grid!important}
  .jpi-search-compact button{width:100%!important}
  .jpi-country-actions-compact{display:grid!important;grid-template-columns:1fr 1fr!important}
  .jpi-country-actions-compact a{min-width:0!important;justify-content:center!important;text-align:center!important;padding:12px 10px!important}
  .jpi-country-actions-compact a span{display:none}
  .jpi-hero-compact-side{grid-template-columns:1fr}
  .jpi-hero-manual-media{grid-column:auto;height:210px}
  .jpi-hero-apply-card{grid-column:auto;padding:18px}
  .jpi-hero-checks{grid-template-columns:1fr}
  .jpi-hero-mini-grid{grid-template-columns:1fr 1fr}
}


/* Version 1.1.4 — hero background image integrated */
.jpi-hero-compact.jpi-hero-bg{
  position:relative;
  isolation:isolate;
  min-height:0!important;
  background-color:#0b2f69!important;
  background-image:
    linear-gradient(90deg,rgba(4,24,58,.96) 0%,rgba(5,37,83,.90) 42%,rgba(7,47,106,.58) 68%,rgba(9,71,160,.26) 100%),
    var(--jpi-hero-bg)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  overflow:hidden!important;
}
.jpi-hero-compact.jpi-hero-bg:before,
.jpi-hero-compact.jpi-hero-bg:after{display:none!important}
.jpi-hero-compact.jpi-hero-bg .jpi-hero-compact-grid{
  min-height:0!important;
  padding:44px 46px!important;
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr)!important;
  gap:34px!important;
  align-items:center!important;
}
.jpi-hero-compact.jpi-hero-bg .jpi-hero-compact-copy{
  position:relative;z-index:2;
  max-width:760px;
}
.jpi-hero-compact.jpi-hero-bg h1{
  font-size:clamp(42px,4.2vw,66px)!important;
  line-height:1.02!important;
  max-width:720px!important;
  text-shadow:0 2px 20px rgba(0,0,0,.18);
}
.jpi-hero-compact.jpi-hero-bg p{
  color:#f1f6ff!important;
  max-width:700px!important;
  text-shadow:0 1px 10px rgba(0,0,0,.16);
}
.jpi-hero-compact.jpi-hero-bg .jpi-kicker{color:#e6efff!important}
.jpi-hero-compact.jpi-hero-bg .jpi-hero-compact-side{
  position:relative;z-index:2;
  gap:14px!important;
}
.jpi-hero-compact.jpi-hero-bg .jpi-hero-apply-card,
.jpi-hero-compact.jpi-hero-bg .jpi-hero-mini-card{
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 16px 34px rgba(3,22,56,.16);
}
.jpi-hero-compact.jpi-hero-bg .jpi-hero-apply-card{background:rgba(255,255,255,.94)!important}
.jpi-hero-compact.jpi-hero-bg .jpi-hero-mini-card{background:rgba(237,244,255,.94)!important}
.jpi-hero-compact.jpi-hero-bg .jpi-hero-mini-warm{background:rgba(255,247,223,.95)!important}
.jpi-hero-manual-media{display:none!important}
.jpi-hero-has-image .jpi-hero-compact-grid{min-height:0!important}
@media(max-width:1050px){
  .jpi-hero-compact.jpi-hero-bg .jpi-hero-compact-grid{
    grid-template-columns:1fr!important;
    padding:38px 30px!important;
  }
  .jpi-hero-compact.jpi-hero-bg{
    background-position:62% center!important;
  }
  .jpi-hero-compact.jpi-hero-bg .jpi-hero-compact-side{
    grid-template-columns:1fr 1fr!important;
  }
  .jpi-hero-compact.jpi-hero-bg .jpi-hero-apply-card{grid-column:1/-1!important}
}
@media(max-width:680px){
  .jpi-hero-compact.jpi-hero-bg{
    background-position:68% center!important;
    border-radius:20px!important;
  }
  .jpi-hero-compact.jpi-hero-bg .jpi-hero-compact-grid{
    padding:28px 18px!important;
    gap:22px!important;
  }
  .jpi-hero-compact.jpi-hero-bg h1{font-size:36px!important}
  .jpi-hero-compact.jpi-hero-bg .jpi-hero-compact-side{grid-template-columns:1fr!important}
  .jpi-hero-compact.jpi-hero-bg .jpi-hero-apply-card{grid-column:auto!important}
}


/* Version 1.1.5 — breathing room below the main menu */
body.jpi-portal-active.home .jpi-home{
  padding-top:36px !important;
}
body.jpi-portal-active.home .jpi-hero-home,
body.jpi-portal-active.home .jpi-hero{
  margin-top:0 !important;
}
@media(max-width:921px){
  body.jpi-portal-active.home .jpi-home{padding-top:26px !important;}
}
@media(max-width:680px){
  body.jpi-portal-active.home .jpi-home{padding-top:18px !important;}
}

@media(max-width:680px){.jpi-ad-slot{min-height:96px;margin:22px auto;padding:24px 12px 14px;border-radius:12px}.jpi-ad-home-after-featured,.jpi-ad-home-middle,.jpi-ad-home-before-footer,.jpi-ad-before-footer,.jpi-ad-entry-after-intro,.jpi-ad-entry-after-company-info,.jpi-ad-middle-content{min-height:104px}}


/* Version 1.1.8 SAFE — anuncio global inmediatamente después del menú */
body.jpi-portal-active .jpi-after-menu-ad-wrap{
  width:100%;
  max-width:1420px;
  margin:0 auto;
  padding:32px 24px 0;
  box-sizing:border-box;
}
body.jpi-portal-active .jpi-after-menu-ad-wrap .jpi-ad-slot{
  width:100%;
  max-width:none;
  min-height:108px;
  margin:0 auto 28px;
}
/* La Home antigua ya traía un slot dentro del contenido: se oculta para no duplicar. */
body.jpi-portal-active.home .jpi-ad-home-below-menu{
  display:none !important;
}
/* Como el anuncio ahora vive fuera de .jpi-home, evitamos duplicar el espacio superior. */
body.jpi-portal-active.home .jpi-home{
  padding-top:28px !important;
}
@media(max-width:921px){
  body.jpi-portal-active .jpi-after-menu-ad-wrap{padding:24px 16px 0;}
  body.jpi-portal-active .jpi-after-menu-ad-wrap .jpi-ad-slot{min-height:100px;margin-bottom:22px;}
  body.jpi-portal-active.home .jpi-home{padding-top:22px !important;}
}
@media(max-width:680px){
  body.jpi-portal-active .jpi-after-menu-ad-wrap{padding:18px 12px 0;}
  body.jpi-portal-active .jpi-after-menu-ad-wrap .jpi-ad-slot{min-height:92px;margin-bottom:18px;}
  body.jpi-portal-active.home .jpi-home{padding-top:18px !important;}
}


/* Version 1.1.9 — enhanced legal/policy pages */
.jpi-legal{max-width:980px;margin:0 auto;padding:34px 22px 72px;color:#344054}
.jpi-legal .jpi-legal-eyebrow{display:inline-flex;margin:0 0 12px!important;padding:7px 11px;border-radius:999px;background:#eaf3ff;color:#1457d9!important;font-size:11px!important;font-weight:900!important;letter-spacing:.12em;text-transform:uppercase}
.jpi-legal .jpi-legal-date{margin:-8px 0 22px!important;color:#667085!important;font-size:13px!important;font-weight:700}
.jpi-legal .jpi-legal-note{margin:0 0 24px;padding:17px 19px;border:1px solid #cfe0ff;border-left:5px solid #1457d9;border-radius:14px;background:#f5f9ff;color:#344054;line-height:1.65}
.jpi-legal .jpi-legal-note strong{color:#0d2b45}
.jpi-legal .jpi-legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 24px}
.jpi-legal .jpi-legal-grid>div{padding:17px;border:1px solid #e3e8ef;border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(16,24,40,.04)}
.jpi-legal .jpi-legal-grid strong{display:block;color:#0d2b45;font-size:16px;margin-bottom:5px}
.jpi-legal .jpi-legal-grid p{margin:0!important;font-size:14px!important;line-height:1.6!important}
.jpi-legal a{color:#1457d9!important;text-decoration:underline!important;text-underline-offset:3px}
.jpi-legal code{padding:2px 6px;border-radius:5px;background:#f2f4f7;color:#344054}
.jpi-legal ul{padding-left:22px}
.jpi-legal li{margin:8px 0}
@media(max-width:680px){.jpi-legal{padding:24px 15px 52px}.jpi-legal .jpi-legal-grid{grid-template-columns:1fr}.jpi-legal h1{font-size:36px}.jpi-legal h2{font-size:23px}}


/* v1.2.1 — complete legal/policy pages */
.jpi-policy-page{max-width:980px}
.jpi-policy-page .jpi-legal-note{background:linear-gradient(135deg,#eef5ff,#fff);border:1px solid #d8e6fb;border-left:5px solid #1769e0;border-radius:14px;padding:18px 20px;margin:18px 0 24px;color:#334155;line-height:1.65}
.jpi-policy-page .jpi-legal-toc{display:flex;flex-wrap:wrap;gap:9px;background:#f7f9fc;border:1px solid #e3e8ef;border-radius:14px;padding:15px;margin:22px 0 28px}
.jpi-policy-page .jpi-legal-toc strong{flex:0 0 100%;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#667085;margin-bottom:2px}
.jpi-policy-page .jpi-legal-toc a{display:inline-flex;padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #dfe5ec;color:#1457d9;font-size:13px;font-weight:800}
.jpi-policy-page h2{scroll-margin-top:110px}
.jpi-policy-page h3{font-size:19px;color:#183b63;margin:22px 0 8px}
.jpi-policy-page ul{padding-left:22px}
.jpi-policy-page li{margin:8px 0}
.jpi-policy-page .jpi-legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 26px}
.jpi-policy-page .jpi-legal-grid>div{background:#fff;border:1px solid #e3e8ef;border-radius:14px;padding:17px;box-shadow:0 6px 20px rgba(16,24,40,.04)}
.jpi-policy-page .jpi-legal-grid strong{display:block;color:#0d2b45;font-size:16px;margin-bottom:6px}
.jpi-policy-page .jpi-legal-grid p{font-size:14px;line-height:1.6;margin:0}
.jpi-policy-page .jpi-legal-related{margin-top:34px;background:#0d2b45;color:#dbe9f5;border-radius:14px;padding:16px 18px;line-height:1.7}
.jpi-policy-page .jpi-legal-related strong{color:#fff}
.jpi-policy-page .jpi-legal-related a{color:#9ec7ff;text-decoration:underline}
@media(max-width:680px){.jpi-policy-page .jpi-legal-grid{grid-template-columns:1fr}.jpi-policy-page .jpi-legal-toc{display:grid;grid-template-columns:1fr 1fr}.jpi-policy-page .jpi-legal-toc strong{grid-column:1/-1}.jpi-policy-page .jpi-legal-toc a{justify-content:center;text-align:center}}


/* Version 1.2.2 — copyright with heartbeat effect */
.jpi-footer-note{display:flex;flex-direction:column;gap:8px}
.jpi-copyright-line{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;color:#ffffff;font-size:14px;font-weight:700;text-align:center}
.jpi-maker{color:#7cc4ff;font-weight:900;letter-spacing:.02em}
.jpi-heart-wrap{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:rgba(255,255,255,.08);box-shadow:0 0 0 1px rgba(255,255,255,.08) inset}
.jpi-heart{display:inline-block;color:#ff4d6d;font-size:17px;line-height:1;transform-origin:center;animation:jpi-heartbeat 1.2s ease-in-out infinite;filter:drop-shadow(0 0 10px rgba(255,77,109,.45))}
.jpi-disclaimer-line{text-align:center;color:#9eb5c7;font-size:12px;line-height:1.55}
@keyframes jpi-heartbeat{0%,100%{transform:scale(1)}15%{transform:scale(1.18)}30%{transform:scale(.98)}45%{transform:scale(1.22)}60%{transform:scale(1)}}
@media(max-width:680px){.jpi-copyright-line{font-size:13px;gap:6px}.jpi-heart-wrap{width:26px;height:26px}}

/* Version 1.2.3 — site URL in copyright */
.jpi-site-url{color:#ffffff!important;font-weight:800;text-decoration:none!important;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:1px;transition:color .18s ease,border-color .18s ease}
.jpi-site-url:hover,.jpi-site-url:focus{color:#7cc4ff!important;border-color:#7cc4ff}


/* Version 1.2.4 — visual refresh for all category archives only
   CSS-only: does not replace featured images, posts, menus or stored content. */
body.jpi-portal-active.category{
  background:#f4f7fb !important;
}
body.jpi-portal-active.category .site-content{
  background:
    radial-gradient(circle at 8% 7%,rgba(35,116,255,.07),transparent 24%),
    radial-gradient(circle at 92% 12%,rgba(255,197,61,.08),transparent 22%),
    #f4f7fb !important;
}
body.jpi-portal-active.category .site-content > .ast-container{
  width:min(100%,1380px) !important;
  max-width:1380px !important;
  padding:34px 28px 72px !important;
}
body.jpi-portal-active.category #primary{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}
body.jpi-portal-active.category #secondary{
  display:none !important;
}

/* Category heading */
body.jpi-portal-active.category .ast-archive-description{
  position:relative !important;
  isolation:isolate;
  overflow:hidden;
  margin:0 0 34px !important;
  padding:36px 40px 38px !important;
  border:1px solid rgba(255,255,255,.55) !important;
  border-radius:24px !important;
  background:
    linear-gradient(112deg,rgba(5,31,73,.98) 0%,rgba(9,73,160,.96) 62%,rgba(24,110,231,.92) 100%) !important;
  box-shadow:0 18px 44px rgba(10,48,94,.14) !important;
}
body.jpi-portal-active.category .ast-archive-description:before{
  content:"Explora oportunidades";
  display:inline-flex;
  align-items:center;
  min-height:28px;
  margin:0 0 13px;
  padding:5px 11px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(255,255,255,.11);
  color:#dcecff;
  font-size:11px;
  font-weight:900;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
}
body.jpi-portal-active.category .ast-archive-description:after{
  content:"";
  position:absolute;
  z-index:-1;
  width:330px;
  height:330px;
  right:-105px;
  top:-190px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,213,79,.25),rgba(255,213,79,0) 68%);
  pointer-events:none;
}
body.jpi-portal-active.category .ast-archive-description .ast-archive-title,
body.jpi-portal-active.category .ast-archive-description .page-title{
  margin:0 !important;
  color:#fff !important;
  font-size:clamp(34px,4vw,52px) !important;
  font-weight:900 !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
}
body.jpi-portal-active.category .ast-archive-description p{
  max-width:760px;
  margin:12px 0 0 !important;
  color:#dbeafe !important;
  font-size:15px !important;
  line-height:1.65 !important;
}

/* Three-column archive grid */
body.jpi-portal-active.category .ast-row{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:28px !important;
  margin:0 !important;
  align-items:stretch !important;
}
body.jpi-portal-active.category .ast-row:before,
body.jpi-portal-active.category .ast-row:after{
  display:none !important;
}
body.jpi-portal-active.category .ast-row > article,
body.jpi-portal-active.category article.ast-article-post{
  float:none !important;
  width:100% !important;
  min-width:0 !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid #e3eaf3 !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 10px 30px rgba(19,45,80,.07) !important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease !important;
}
body.jpi-portal-active.category .ast-row > article:hover,
body.jpi-portal-active.category article.ast-article-post:hover{
  transform:translateY(-5px);
  border-color:#c8daf2 !important;
  box-shadow:0 20px 44px rgba(19,45,80,.13) !important;
}
body.jpi-portal-active.category article .ast-post-format-,
body.jpi-portal-active.category article .post-content{
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:#fff !important;
}
body.jpi-portal-active.category article .post-content{
  display:flex !important;
  flex-direction:column !important;
}

/* Keep the user's featured images intact; only frame them cleanly */
body.jpi-portal-active.category article .ast-blog-featured-section,
body.jpi-portal-active.category article .post-thumb{
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:#eef3f8;
}
body.jpi-portal-active.category article .post-thumb a{
  display:block !important;
}
body.jpi-portal-active.category article .post-thumb img,
body.jpi-portal-active.category article .ast-blog-featured-section img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
}

/* Card content */
body.jpi-portal-active.category article .entry-header{
  margin:0 !important;
  padding:22px 24px 0 !important;
}
body.jpi-portal-active.category article .entry-content,
body.jpi-portal-active.category article .entry-summary{
  flex:1 1 auto;
  margin:0 !important;
  padding:13px 24px 25px !important;
  color:#5b6b7e !important;
  font-size:15px !important;
  line-height:1.72 !important;
}
body.jpi-portal-active.category article .entry-title{
  margin:11px 0 10px !important;
  font-size:22px !important;
  font-weight:850 !important;
  line-height:1.28 !important;
  letter-spacing:-.018em !important;
}
body.jpi-portal-active.category article .entry-title a{
  color:#102a43 !important;
  text-decoration:none !important;
  transition:color .18s ease !important;
}
body.jpi-portal-active.category article .entry-title a:hover,
body.jpi-portal-active.category article .entry-title a:focus{
  color:#1167df !important;
}
body.jpi-portal-active.category article .entry-meta{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:7px 9px !important;
  margin:0 !important;
  color:#7a899b !important;
  font-size:12.5px !important;
  line-height:1.45 !important;
}
body.jpi-portal-active.category article .entry-meta a{
  color:#4f6f94 !important;
  font-weight:700 !important;
  text-decoration:none !important;
}
body.jpi-portal-active.category article a[rel="category tag"],
body.jpi-portal-active.category article .cat-links a{
  display:inline-flex !important;
  align-items:center !important;
  min-height:28px;
  padding:5px 9px !important;
  border:1px solid #d5e5fb !important;
  border-radius:999px !important;
  background:#eef6ff !important;
  color:#1769d7 !important;
  font-size:11px !important;
  font-weight:850 !important;
  line-height:1.2 !important;
}
body.jpi-portal-active.category article .entry-content p,
body.jpi-portal-active.category article .entry-summary p{
  margin:0 !important;
  color:#5b6b7e !important;
  font-size:15px !important;
  line-height:1.72 !important;
}
body.jpi-portal-active.category article .read-more,
body.jpi-portal-active.category article .ast-excerpt-container + p{
  margin-top:16px !important;
}
body.jpi-portal-active.category article .read-more a,
body.jpi-portal-active.category article .ast-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:39px !important;
  padding:9px 13px !important;
  border-radius:10px !important;
  background:#edf5ff !important;
  color:#1769d7 !important;
  font-size:12px !important;
  font-weight:850 !important;
  text-decoration:none !important;
}

/* Pagination */
body.jpi-portal-active.category .ast-pagination,
body.jpi-portal-active.category .nav-links{
  margin-top:38px !important;
}
body.jpi-portal-active.category .ast-pagination .page-numbers,
body.jpi-portal-active.category .nav-links .page-numbers{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:40px !important;
  min-height:40px !important;
  margin:3px !important;
  padding:7px 11px !important;
  border:1px solid #dce5ef !important;
  border-radius:10px !important;
  background:#fff !important;
  color:#244b73 !important;
  font-weight:800 !important;
  box-shadow:0 4px 12px rgba(19,45,80,.04) !important;
}
body.jpi-portal-active.category .ast-pagination .page-numbers.current,
body.jpi-portal-active.category .nav-links .page-numbers.current{
  border-color:#1769df !important;
  background:#1769df !important;
  color:#fff !important;
}

@media(max-width:1080px){
  body.jpi-portal-active.category .ast-row{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:680px){
  body.jpi-portal-active.category .site-content > .ast-container{
    padding:20px 14px 50px !important;
  }
  body.jpi-portal-active.category .ast-archive-description{
    margin-bottom:22px !important;
    padding:28px 22px 30px !important;
    border-radius:18px !important;
  }
  body.jpi-portal-active.category .ast-archive-description .ast-archive-title,
  body.jpi-portal-active.category .ast-archive-description .page-title{
    font-size:34px !important;
  }
  body.jpi-portal-active.category .ast-row{
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
  body.jpi-portal-active.category .ast-row > article,
  body.jpi-portal-active.category article.ast-article-post{
    border-radius:17px !important;
  }
  body.jpi-portal-active.category article .entry-header{
    padding:18px 18px 0 !important;
  }
  body.jpi-portal-active.category article .entry-content,
  body.jpi-portal-active.category article .entry-summary{
    padding:11px 18px 21px !important;
  }
  body.jpi-portal-active.category article .entry-title{
    font-size:20px !important;
  }
}


/* ==========================================================
   Version 1.2.5 — diseño exclusivo para la página Empresas
   No modifica imágenes, entradas, categorías ni otras páginas.
========================================================== */
body.jpi-portal-active.jpi-empresas-page{
  background:#f5f8fc!important;
}
body.jpi-portal-active.jpi-empresas-page .site-content{
  background:
    radial-gradient(circle at 8% 10%,rgba(23,105,223,.07),transparent 26%),
    radial-gradient(circle at 92% 18%,rgba(255,193,7,.07),transparent 22%),
    #f5f8fc!important;
}
body.jpi-portal-active.jpi-empresas-page .site-content>.ast-container{
  max-width:1420px!important;
  padding:34px 28px 70px!important;
}
/* Oculta solo el título nativo de Astra de esta página. */
body.jpi-portal-active.jpi-empresas-page .entry-header,
body.jpi-portal-active.jpi-empresas-page .entry-title{
  display:none!important;
}
body.jpi-portal-active.jpi-empresas-page #primary,
body.jpi-portal-active.jpi-empresas-page .site-main,
body.jpi-portal-active.jpi-empresas-page article.page,
body.jpi-portal-active.jpi-empresas-page .entry-content{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home{
  max-width:1300px!important;
  margin:0 auto!important;
  padding:0!important;
}
/* Hero/directorio */
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section{
  margin:0!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head{
  position:relative!important;
  overflow:hidden!important;
  min-height:260px!important;
  margin:0 0 30px!important;
  padding:46px 50px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:28px!important;
  background:
    linear-gradient(120deg,rgba(6,30,68,.98) 0%,rgba(10,66,150,.97) 60%,rgba(18,112,236,.94) 100%)!important;
  box-shadow:0 22px 55px rgba(14,59,121,.16)!important;
  align-items:center!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head:before{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  right:-90px;
  top:-150px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  box-shadow:-150px 210px 0 12px rgba(255,193,7,.08);
  pointer-events:none;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head:after{
  content:"USA + MÉXICO";
  position:absolute;
  right:48px;
  bottom:42px;
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:10px 16px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:13px;
  font-weight:900;
  letter-spacing:.12em;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head>div{
  position:relative;
  z-index:2;
  max-width:820px;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head .jpi-kicker{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 15px!important;
  padding:7px 12px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.10)!important;
  color:#ffd65a!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.14em!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head h1{
  display:block!important;
  margin:0!important;
  max-width:760px!important;
  color:#fff!important;
  font-size:clamp(38px,4vw,62px)!important;
  line-height:1.04!important;
  font-weight:900!important;
  letter-spacing:-.035em!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head h1:after{
  content:"Explora empresas de Estados Unidos y México y accede a sus guías laborales.";
  display:block;
  max-width:690px;
  margin-top:18px;
  color:#dceaff;
  font-size:16px;
  font-weight:500;
  line-height:1.6;
  letter-spacing:0;
}
/* Bloque de listado */
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-home-section{
  margin:0!important;
  padding:30px!important;
  border:1px solid #e0e7f0!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 16px 40px rgba(19,45,80,.07)!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-home-section>.jpi-section-head{
  margin:0 0 24px!important;
  padding:0 2px 18px!important;
  border-bottom:1px solid #e6edf5!important;
  align-items:flex-end!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-home-section .jpi-kicker{
  color:#1769df!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.14em!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-home-section h2{
  margin:5px 0 0!important;
  color:#0d2b45!important;
  font-size:clamp(30px,3vw,42px)!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-home-section .jpi-section-head>a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:9px 15px!important;
  border:1px solid #cfe0f7!important;
  border-radius:11px!important;
  background:#f3f8ff!important;
  color:#1769df!important;
  font-size:13px!important;
  font-weight:850!important;
  text-decoration:none!important;
}
/* Tarjetas únicamente dentro de Empresas */
body.jpi-portal-active.jpi-empresas-page .jpi-company-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-company-card{
  border:1px solid #dde6f0!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(20,55,95,.065)!important;
  transform:translateY(0)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-company-card:hover{
  transform:translateY(-6px)!important;
  border-color:#c7d9ef!important;
  box-shadow:0 18px 38px rgba(20,55,95,.13)!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-card-image{
  aspect-ratio:7/4!important;
  background:#eef3f8!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-card-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  transition:transform .28s ease!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-company-card:hover .jpi-card-image img{
  transform:scale(1.025)!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-card-body{
  gap:10px!important;
  min-height:205px!important;
  padding:18px 18px 20px!important;
  border-top-width:4px!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-card-meta{
  display:inline-flex!important;
  width:auto!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:#f2f7fd!important;
  color:var(--company-primary,#1457d9)!important;
  font-size:10.5px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-company-card h3{
  font-size:20px!important;
  line-height:1.2!important;
  letter-spacing:-.015em!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-company-card h3 a{
  color:#102a43!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-company-card p{
  color:#617184!important;
  font-size:13.5px!important;
  line-height:1.58!important;
}
body.jpi-portal-active.jpi-empresas-page .jpi-card-cta{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin-top:auto!important;
  padding-top:4px!important;
  color:var(--company-primary,#1457d9)!important;
  font-size:13px!important;
  font-weight:900!important;
}
@media(max-width:1080px){
  body.jpi-portal-active.jpi-empresas-page .jpi-company-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head:after{right:30px;bottom:30px}
}
@media(max-width:680px){
  body.jpi-portal-active.jpi-empresas-page .site-content>.ast-container{padding:18px 14px 46px!important}
  body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head{
    min-height:0!important;
    padding:32px 22px 82px!important;
    border-radius:20px!important;
  }
  body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head h1{font-size:38px!important}
  body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head h1:after{font-size:14px!important;line-height:1.55!important}
  body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-section-head:after{left:22px;right:auto;bottom:24px;min-height:38px;padding:8px 12px;font-size:11px}
  body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-home-section{padding:20px 16px!important;border-radius:18px!important}
  body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-home-section>.jpi-section-head{align-items:flex-start!important;gap:14px!important}
  body.jpi-portal-active.jpi-empresas-page .jpi-home>.jpi-home-section>.jpi-home-section h2{font-size:31px!important}
  body.jpi-portal-active.jpi-empresas-page .jpi-company-grid{grid-template-columns:1fr!important;gap:18px!important}
  body.jpi-portal-active.jpi-empresas-page .jpi-card-body{min-height:0!important}
}


/* Version 1.2.6 — enhanced single entry design only */
body.jpi-portal-active.single-post .site-content .ast-container,
body.jpi-portal-active.single-post #primary{
  max-width:100% !important;
  width:100% !important;
}
body.jpi-portal-active.single-post .site-main > article,
body.jpi-portal-active.single-post article.type-post{
  background:transparent !important;
  box-shadow:none !important;
}
body.jpi-portal-active.single-post .entry-content > .jpi-entry,
body.jpi-portal-active.single-post .site-main .jpi-entry{
  max-width:1040px !important;
  margin:26px auto 54px !important;
  padding:22px 30px 46px !important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%) !important;
  border:1px solid #e7edf5 !important;
  border-radius:28px !important;
  box-shadow:0 18px 44px rgba(16,24,40,.07) !important;
}
body.jpi-portal-active.single-post .entry-content > .jpi-entry:before{
  content:"";
  display:block;
  width:100%;
  height:6px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--company-primary,#1457d9),var(--company-secondary,#ffd54f));
  margin:0 0 22px;
}
body.jpi-portal-active.single-post .jpi-entry .jpi-breadcrumb{
  margin-bottom:18px !important;
  padding-bottom:14px !important;
  border-bottom:1px solid #edf2f7 !important;
}
body.jpi-portal-active.single-post .jpi-entry-badges{margin-bottom:16px !important}
body.jpi-portal-active.single-post .jpi-entry-badges span{
  padding:8px 12px !important;
  border-radius:999px !important;
  box-shadow:0 4px 14px rgba(20,87,217,.08) !important;
}
body.jpi-portal-active.single-post .jpi-entry .jpi-lead{
  font-size:20px !important;
  line-height:1.8 !important;
  color:#243b53 !important;
}
body.jpi-portal-active.single-post .jpi-entry h2{
  position:relative;
  padding-left:16px;
  margin-top:40px !important;
}
body.jpi-portal-active.single-post .jpi-entry h2:before{
  content:"";
  position:absolute;
  left:0;
  top:.22em;
  width:6px;
  height:1.15em;
  border-radius:999px;
  background:linear-gradient(180deg,var(--company-primary,#1457d9),var(--company-secondary,#ffd54f));
}
body.jpi-portal-active.single-post .jpi-summary,
body.jpi-portal-active.single-post .jpi-official,
body.jpi-portal-active.single-post .jpi-related,
body.jpi-portal-active.single-post .jpi-next,
body.jpi-portal-active.single-post .jpi-independence,
body.jpi-portal-active.single-post .jpi-note,
body.jpi-portal-active.single-post .jpi-midlink{
  scroll-margin-top:120px;
}
body.jpi-portal-active.single-post .jpi-summary{
  border-radius:22px !important;
  padding:22px !important;
}
body.jpi-portal-active.single-post .jpi-summary-grid > div{
  border-radius:16px !important;
  padding:14px !important;
  box-shadow:0 6px 18px rgba(16,24,40,.04);
}
body.jpi-portal-active.single-post .jpi-list li,
body.jpi-portal-active.single-post .jpi-steps li,
body.jpi-portal-active.single-post .jpi-faq details,
body.jpi-portal-active.single-post .jpi-related-card{
  border-radius:16px !important;
}
body.jpi-portal-active.single-post .jpi-official{
  padding:28px !important;
  border-radius:24px !important;
  box-shadow:0 12px 34px rgba(20,87,217,.08) !important;
}
body.jpi-portal-active.single-post .jpi-official-btn{
  min-height:52px !important;
  border-radius:14px !important;
  transition:transform .18s ease, box-shadow .18s ease;
}
body.jpi-portal-active.single-post .jpi-official-btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px color-mix(in srgb,var(--company-primary) 28%,transparent)}
body.jpi-portal-active.single-post .jpi-related{
  padding:24px !important;
  background:#f8fbff !important;
  border:1px solid #e6eef8 !important;
  border-radius:24px !important;
}
body.jpi-portal-active.single-post .jpi-related-grid{gap:14px !important}
body.jpi-portal-active.single-post .jpi-related-card{
  padding:18px !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
body.jpi-portal-active.single-post .jpi-related-card:hover{
  transform:translateY(-3px);
  border-color:#c8daf8 !important;
  box-shadow:0 12px 24px rgba(16,24,40,.07);
}
body.jpi-portal-active.single-post .jpi-next{
  margin-top:28px !important;
  padding:22px !important;
  border-top:none !important;
  border-radius:22px !important;
  background:linear-gradient(135deg,#0d2b45 0%,#124d8f 100%) !important;
  color:#dce8f5 !important;
  box-shadow:0 16px 38px rgba(13,43,69,.18) !important;
}
body.jpi-portal-active.single-post .jpi-next span{color:#bdd3e8 !important;letter-spacing:.08em}
body.jpi-portal-active.single-post .jpi-next a{color:#fff !important;font-size:20px !important;line-height:1.4 !important}
body.jpi-portal-active.single-post .jpi-independence{
  border-radius:20px !important;
  background:#f5f8fc !important;
}

/* Theme previous / next navigation on all single posts */
body.jpi-portal-active.single-post nav.post-navigation,
body.jpi-portal-active.single-post .post-navigation{
  max-width:1040px !important;
  margin:10px auto 34px !important;
  padding:0 8px !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-links{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px !important;
  align-items:stretch !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-previous,
body.jpi-portal-active.single-post .post-navigation .nav-next{
  margin:0 !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-previous a,
body.jpi-portal-active.single-post .post-navigation .nav-next a{
  min-height:136px;
  height:100%;
  display:flex !important;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  padding:24px 26px !important;
  background:#ffffff !important;
  border:1px solid #e6edf5 !important;
  border-radius:22px !important;
  box-shadow:0 12px 34px rgba(16,24,40,.06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
body.jpi-portal-active.single-post .post-navigation .nav-previous a:hover,
body.jpi-portal-active.single-post .post-navigation .nav-next a:hover{
  transform:translateY(-3px);
  border-color:#cdddff !important;
  box-shadow:0 16px 36px rgba(16,24,40,.09);
}
body.jpi-portal-active.single-post .post-navigation .nav-subtitle{
  display:flex !important;
  align-items:center;
  gap:8px;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#1457d9 !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-title{
  font-size:19px !important;
  line-height:1.45 !important;
  font-weight:800 !important;
  color:#102447 !important;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body.jpi-portal-active.single-post .post-navigation .nav-next{text-align:right !important}
body.jpi-portal-active.single-post .post-navigation .nav-next .nav-subtitle{justify-content:flex-end}
body.jpi-portal-active.single-post .post-navigation .nav-previous .nav-subtitle:before{content:"←";font-size:16px;line-height:1}
body.jpi-portal-active.single-post .post-navigation .nav-next .nav-subtitle:after{content:"→";font-size:16px;line-height:1}

@media(max-width:921px){
  body.jpi-portal-active.single-post .entry-content > .jpi-entry,
  body.jpi-portal-active.single-post .site-main .jpi-entry{padding:20px 22px 40px !important;border-radius:24px !important}
  body.jpi-portal-active.single-post .post-navigation .nav-links{grid-template-columns:1fr !important}
  body.jpi-portal-active.single-post .post-navigation .nav-next{text-align:left !important}
  body.jpi-portal-active.single-post .post-navigation .nav-next .nav-subtitle{justify-content:flex-start}
  body.jpi-portal-active.single-post .post-navigation .nav-next .nav-subtitle:after{display:none}
  body.jpi-portal-active.single-post .post-navigation .nav-next .nav-subtitle:before{content:"→";font-size:16px;line-height:1}
}
@media(max-width:680px){
  body.jpi-portal-active.single-post .entry-content > .jpi-entry,
  body.jpi-portal-active.single-post .site-main .jpi-entry{margin:18px auto 36px !important;padding:18px 16px 34px !important;border-radius:20px !important}
  body.jpi-portal-active.single-post .jpi-entry:before{margin-bottom:18px !important}
  body.jpi-portal-active.single-post .jpi-entry .jpi-lead{font-size:18px !important}
  body.jpi-portal-active.single-post .jpi-entry h2{padding-left:14px !important}
  body.jpi-portal-active.single-post .post-navigation{margin:8px auto 26px !important;padding:0 !important}
  body.jpi-portal-active.single-post .post-navigation .nav-previous a,
  body.jpi-portal-active.single-post .post-navigation .nav-next a{min-height:auto;padding:18px 18px !important;border-radius:18px !important}
  body.jpi-portal-active.single-post .post-navigation .nav-title{font-size:17px !important}
}


/* Version 1.2.7 — compact animated previous / next navigation */
body.jpi-portal-active.single-post .post-navigation{
  max-width:1040px !important;
  margin:18px auto 34px !important;
  padding:0 !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-links{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-previous,
body.jpi-portal-active.single-post .post-navigation .nav-next{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  float:none !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-previous a,
body.jpi-portal-active.single-post .post-navigation .nav-next a{
  position:relative !important;
  overflow:hidden !important;
  width:100% !important;
  min-height:86px !important;
  height:auto !important;
  padding:15px 62px 15px 20px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:4px !important;
  background:linear-gradient(135deg,#ffffff 0%,#f7faff 100%) !important;
  border:1px solid #dfe8f4 !important;
  border-radius:16px !important;
  box-shadow:0 8px 22px rgba(16,24,40,.06) !important;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-next a{
  padding:15px 20px 15px 62px !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-previous a:before,
body.jpi-portal-active.single-post .post-navigation .nav-next a:before{
  content:"←" !important;
  position:absolute !important;
  right:18px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:34px !important;
  height:34px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  background:#1457d9 !important;
  color:#fff !important;
  font-size:18px !important;
  font-weight:900 !important;
  line-height:1 !important;
  box-shadow:0 7px 16px rgba(20,87,217,.22) !important;
  transition:transform .22s ease, background .22s ease, box-shadow .22s ease !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-previous a:before{content:"←" !important}
body.jpi-portal-active.single-post .post-navigation .nav-next a:before{
  content:"→" !important;
  right:auto !important;
  left:18px !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-previous a:after,
body.jpi-portal-active.single-post .post-navigation .nav-next a:after{
  content:"" !important;
  position:absolute !important;
  left:-35% !important;
  top:0 !important;
  width:28% !important;
  height:100% !important;
  background:linear-gradient(110deg,transparent,rgba(255,255,255,.75),transparent) !important;
  transform:skewX(-18deg) !important;
  transition:left .55s ease !important;
  pointer-events:none !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-previous a:hover,
body.jpi-portal-active.single-post .post-navigation .nav-next a:hover{
  transform:translateY(-4px) !important;
  border-color:#b9d0f8 !important;
  background:linear-gradient(135deg,#ffffff 0%,#eef5ff 100%) !important;
  box-shadow:0 14px 30px rgba(20,87,217,.12) !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-previous a:hover:after,
body.jpi-portal-active.single-post .post-navigation .nav-next a:hover:after{left:120% !important}
body.jpi-portal-active.single-post .post-navigation .nav-previous a:hover:before{transform:translate(-4px,-50%) !important;background:#0d47c2 !important;box-shadow:0 9px 20px rgba(20,87,217,.3) !important}
body.jpi-portal-active.single-post .post-navigation .nav-next a:hover:before{transform:translate(4px,-50%) !important;background:#0d47c2 !important;box-shadow:0 9px 20px rgba(20,87,217,.3) !important}
body.jpi-portal-active.single-post .post-navigation .nav-subtitle{
  font-size:10px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  letter-spacing:.11em !important;
  color:#5b78a5 !important;
  margin:0 !important;
}
body.jpi-portal-active.single-post .post-navigation .nav-title{
  font-size:16px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
  color:#102447 !important;
  margin:0 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}
/* Remove duplicate theme arrows because the compact circular arrow handles them */
body.jpi-portal-active.single-post .post-navigation .nav-previous .nav-subtitle:before,
body.jpi-portal-active.single-post .post-navigation .nav-next .nav-subtitle:before,
body.jpi-portal-active.single-post .post-navigation .nav-next .nav-subtitle:after{display:none !important;content:none !important}
@media(max-width:680px){
  body.jpi-portal-active.single-post .post-navigation .nav-links{grid-template-columns:1fr !important;gap:10px !important}
  body.jpi-portal-active.single-post .post-navigation .nav-previous a,
  body.jpi-portal-active.single-post .post-navigation .nav-next a{min-height:76px !important;padding-top:12px !important;padding-bottom:12px !important;border-radius:14px !important}
  body.jpi-portal-active.single-post .post-navigation .nav-title{font-size:15px !important}
}
@media(prefers-reduced-motion:reduce){
  body.jpi-portal-active.single-post .post-navigation a,
  body.jpi-portal-active.single-post .post-navigation a:before,
  body.jpi-portal-active.single-post .post-navigation a:after{transition:none !important}
}


/* Version 1.2.8 — polished header and featured area for ALL single posts.
   CSS-only: does not replace images or edit post content. */
body.jpi-portal-active.single-post .site-main > article > .entry-header,
body.jpi-portal-active.single-post article.type-post > .entry-header{
  position:relative !important;
  max-width:1180px !important;
  margin:34px auto 18px !important;
  padding:42px 54px 34px !important;
  overflow:hidden !important;
  text-align:center !important;
  background:
    radial-gradient(circle at 8% 8%,rgba(31,111,235,.11) 0,rgba(31,111,235,0) 24%),
    radial-gradient(circle at 92% 12%,rgba(255,197,38,.14) 0,rgba(255,197,38,0) 22%),
    linear-gradient(145deg,#ffffff 0%,#f7fbff 100%) !important;
  border:1px solid #e3ebf6 !important;
  border-radius:28px !important;
  box-shadow:0 18px 48px rgba(16,39,75,.08) !important;
}
body.jpi-portal-active.single-post .site-main > article > .entry-header:before,
body.jpi-portal-active.single-post article.type-post > .entry-header:before{
  content:"RUTALABORAL • GUÍA DE EMPLEO" !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:30px !important;
  padding:6px 12px !important;
  margin:0 auto 17px !important;
  border-radius:999px !important;
  background:#eaf3ff !important;
  border:1px solid #cfe1fb !important;
  color:#1457d9 !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.12em !important;
}
body.jpi-portal-active.single-post .entry-header .entry-title,
body.jpi-portal-active.single-post .entry-header h1.entry-title{
  max-width:1020px !important;
  margin:0 auto 18px !important;
  color:#0d2b45 !important;
  font-size:clamp(34px,3.25vw,52px) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
  font-weight:850 !important;
  text-wrap:balance;
}
body.jpi-portal-active.single-post .entry-header .entry-meta{
  width:max-content !important;
  max-width:100% !important;
  margin:0 auto !important;
  padding:8px 13px !important;
  border-radius:999px !important;
  background:#ffffff !important;
  border:1px solid #e2eaf4 !important;
  box-shadow:0 6px 18px rgba(16,39,75,.05) !important;
  color:#667085 !important;
  font-size:13px !important;
  line-height:1.35 !important;
}
body.jpi-portal-active.single-post .entry-header .entry-meta a{
  color:#1457d9 !important;
  font-weight:800 !important;
}
body.jpi-portal-active.single-post .entry-header .entry-meta a:hover{
  color:#0b46b2 !important;
}

/* Astra / theme breadcrumb directly below the article header */
body.jpi-portal-active.single-post .ast-breadcrumbs-wrapper,
body.jpi-portal-active.single-post .ast-breadcrumbs,
body.jpi-portal-active.single-post nav.rank-math-breadcrumb,
body.jpi-portal-active.single-post .yoast-breadcrumbs{
  max-width:1040px !important;
  margin:0 auto 22px !important;
}
body.jpi-portal-active.single-post .ast-breadcrumbs-wrapper,
body.jpi-portal-active.single-post .ast-breadcrumbs{
  padding:12px 18px !important;
  background:rgba(255,255,255,.82) !important;
  border:1px solid #e5edf6 !important;
  border-radius:14px !important;
  box-shadow:0 8px 22px rgba(16,39,75,.04) !important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
body.jpi-portal-active.single-post .ast-breadcrumbs a,
body.jpi-portal-active.single-post .ast-breadcrumbs-wrapper a{
  color:#1457d9 !important;
  font-weight:700 !important;
  transition:color .18s ease !important;
}
body.jpi-portal-active.single-post .ast-breadcrumbs a:hover,
body.jpi-portal-active.single-post .ast-breadcrumbs-wrapper a:hover{
  color:#0d47c2 !important;
}

/* Keep every existing featured image intact; only improve its frame */
body.jpi-portal-active.single-post article.type-post > .post-thumb,
body.jpi-portal-active.single-post article.type-post > .ast-blog-featured-section,
body.jpi-portal-active.single-post article.type-post > .post-thumbnail,
body.jpi-portal-active.single-post .entry-content > .post-thumb{
  max-width:1040px !important;
  margin:0 auto 26px !important;
  overflow:hidden !important;
  border-radius:24px !important;
  box-shadow:0 16px 40px rgba(16,39,75,.10) !important;
  border:1px solid rgba(216,226,239,.9) !important;
  background:#fff !important;
}
body.jpi-portal-active.single-post article.type-post > .post-thumb img,
body.jpi-portal-active.single-post article.type-post > .ast-blog-featured-section img,
body.jpi-portal-active.single-post article.type-post > .post-thumbnail img,
body.jpi-portal-active.single-post .entry-content > .post-thumb img{
  width:100% !important;
  height:auto !important;
  display:block !important;
  object-fit:cover !important;
  transition:transform .45s ease !important;
}
body.jpi-portal-active.single-post article.type-post > .post-thumb:hover img,
body.jpi-portal-active.single-post article.type-post > .ast-blog-featured-section:hover img,
body.jpi-portal-active.single-post article.type-post > .post-thumbnail:hover img{
  transform:scale(1.012) !important;
}

/* Reduce empty space around the theme's single post layout */
body.jpi-portal-active.single-post #primary{
  margin-top:0 !important;
  padding-top:0 !important;
}
body.jpi-portal-active.single-post .site-content{
  padding-top:0 !important;
}

@media(max-width:921px){
  body.jpi-portal-active.single-post .site-main > article > .entry-header,
  body.jpi-portal-active.single-post article.type-post > .entry-header{
    margin:24px 18px 16px !important;
    padding:34px 28px 28px !important;
    border-radius:24px !important;
  }
  body.jpi-portal-active.single-post .entry-header .entry-title,
  body.jpi-portal-active.single-post .entry-header h1.entry-title{
    font-size:clamp(31px,5vw,43px) !important;
  }
  body.jpi-portal-active.single-post .ast-breadcrumbs-wrapper,
  body.jpi-portal-active.single-post .ast-breadcrumbs,
  body.jpi-portal-active.single-post article.type-post > .post-thumb,
  body.jpi-portal-active.single-post article.type-post > .ast-blog-featured-section,
  body.jpi-portal-active.single-post article.type-post > .post-thumbnail{
    margin-left:18px !important;
    margin-right:18px !important;
  }
}
@media(max-width:680px){
  body.jpi-portal-active.single-post .site-main > article > .entry-header,
  body.jpi-portal-active.single-post article.type-post > .entry-header{
    margin:16px 12px 13px !important;
    padding:26px 17px 22px !important;
    border-radius:20px !important;
  }
  body.jpi-portal-active.single-post .site-main > article > .entry-header:before,
  body.jpi-portal-active.single-post article.type-post > .entry-header:before{
    min-height:27px !important;
    padding:5px 9px !important;
    margin-bottom:13px !important;
    font-size:9px !important;
  }
  body.jpi-portal-active.single-post .entry-header .entry-title,
  body.jpi-portal-active.single-post .entry-header h1.entry-title{
    font-size:30px !important;
    line-height:1.13 !important;
    letter-spacing:-.025em !important;
    margin-bottom:14px !important;
  }
  body.jpi-portal-active.single-post .entry-header .entry-meta{
    width:auto !important;
    display:inline-block !important;
    padding:7px 10px !important;
    font-size:12px !important;
  }
  body.jpi-portal-active.single-post .ast-breadcrumbs-wrapper,
  body.jpi-portal-active.single-post .ast-breadcrumbs{
    margin-left:12px !important;
    margin-right:12px !important;
    margin-bottom:16px !important;
    padding:10px 12px !important;
    border-radius:12px !important;
    font-size:12px !important;
    overflow-x:auto !important;
    white-space:nowrap !important;
  }
  body.jpi-portal-active.single-post article.type-post > .post-thumb,
  body.jpi-portal-active.single-post article.type-post > .ast-blog-featured-section,
  body.jpi-portal-active.single-post article.type-post > .post-thumbnail{
    margin-left:12px !important;
    margin-right:12px !important;
    margin-bottom:20px !important;
    border-radius:18px !important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.jpi-portal-active.single-post .post-thumb img,
  body.jpi-portal-active.single-post .ast-blog-featured-section img,
  body.jpi-portal-active.single-post .post-thumbnail img{transition:none !important;transform:none !important}
}


/* =========================================================
   RutaLaboral 1.2.9 — responsive mobile header + uncropped hero art
   Only affects <= 921px. Desktop and existing content remain unchanged.
   ========================================================= */
.jpi-mobile-header{display:none}

@media (max-width:921px){
  /* Astra's mobile header is replaced only on small screens so the menu
     remains visible even when the theme's mobile header is disabled. */
  body.jpi-portal-active #masthead,
  body.jpi-portal-active .site-header,
  body.jpi-portal-active .ast-mobile-header-wrap{
    display:none !important;
  }

  body.jpi-portal-active .jpi-mobile-header{
    display:block !important;
    position:relative;
    z-index:9998;
    width:100%;
    background:#fff;
    border-top:4px solid #0d6efd;
    border-bottom:1px solid #e7edf5;
    box-shadow:0 8px 24px rgba(9,40,80,.10);
  }
  body.jpi-portal-active .jpi-mobile-header:before{
    content:"";
    position:absolute;
    top:-4px;
    left:72%;
    right:0;
    height:4px;
    background:#ffc928;
  }
  body.jpi-portal-active .jpi-mobile-header-inner{
    min-height:72px;
    padding:9px 16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }
  body.jpi-portal-active .jpi-mobile-brand{
    display:flex;
    align-items:center;
    min-width:0;
    line-height:0;
  }
  body.jpi-portal-active .jpi-mobile-brand img{
    display:block;
    width:auto;
    height:auto;
    max-width:210px;
    max-height:52px;
    object-fit:contain;
  }
  body.jpi-portal-active .jpi-mobile-nav{position:relative;flex:0 0 auto}
  body.jpi-portal-active .jpi-mobile-nav > summary{
    list-style:none;
    cursor:pointer;
    min-height:44px;
    padding:8px 12px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    color:#0d2b45;
    background:#f5f9ff;
    border:1px solid #d9e6f6;
    border-radius:13px;
    font-size:13px;
    font-weight:900;
    user-select:none;
    transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
  }
  body.jpi-portal-active .jpi-mobile-nav > summary::-webkit-details-marker{display:none}
  body.jpi-portal-active .jpi-mobile-nav > summary:hover{
    background:#edf5ff;
    transform:translateY(-1px);
    box-shadow:0 7px 18px rgba(13,110,253,.12);
  }
  body.jpi-portal-active .jpi-mobile-nav-icon{
    width:22px;
    height:18px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
  }
  body.jpi-portal-active .jpi-mobile-nav-icon i{
    display:block;
    width:100%;
    height:2px;
    border-radius:999px;
    background:#0d6efd;
    transform-origin:center;
    transition:transform .2s ease,opacity .2s ease;
  }
  body.jpi-portal-active .jpi-mobile-nav[open] .jpi-mobile-nav-icon i:nth-child(1){transform:translateY(8px) rotate(45deg)}
  body.jpi-portal-active .jpi-mobile-nav[open] .jpi-mobile-nav-icon i:nth-child(2){opacity:0}
  body.jpi-portal-active .jpi-mobile-nav[open] .jpi-mobile-nav-icon i:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  body.jpi-portal-active .jpi-mobile-nav-panel{
    position:absolute;
    top:calc(100% + 10px);
    right:0;
    width:min(88vw,360px);
    max-height:min(70vh,620px);
    overflow:auto;
    padding:10px;
    background:#fff;
    border:1px solid #e1e9f2;
    border-radius:18px;
    box-shadow:0 22px 50px rgba(9,40,80,.20);
  }
  body.jpi-portal-active .jpi-mobile-menu-list,
  body.jpi-portal-active .jpi-mobile-menu-list ul{
    list-style:none !important;
    margin:0 !important;
    padding:0 !important;
  }
  body.jpi-portal-active .jpi-mobile-menu-list > li + li{margin-top:3px !important}
  body.jpi-portal-active .jpi-mobile-menu-list a{
    display:block;
    padding:11px 13px;
    border-radius:11px;
    color:#102a43 !important;
    font-size:14px;
    font-weight:800;
    line-height:1.35;
    text-decoration:none !important;
  }
  body.jpi-portal-active .jpi-mobile-menu-list > li > a:hover,
  body.jpi-portal-active .jpi-mobile-menu-list > li.current-menu-item > a,
  body.jpi-portal-active .jpi-mobile-menu-list > li.current-menu-ancestor > a{
    color:#0d6efd !important;
    background:#eef5ff;
  }
  body.jpi-portal-active .jpi-mobile-menu-list .sub-menu{
    margin:2px 0 7px 12px !important;
    padding-left:10px !important;
    border-left:2px solid #dce9fb;
  }
  body.jpi-portal-active .jpi-mobile-menu-list .sub-menu a{
    padding:8px 10px;
    color:#4b627d !important;
    font-size:12.5px;
    font-weight:700;
  }
  body.jpi-portal-active .jpi-mobile-menu-list > li:last-child > a{
    margin-top:6px;
    color:#fff !important;
    background:#0d6efd;
    text-align:center;
  }
}

@media (max-width:680px){
  body.jpi-portal-active .jpi-mobile-header-inner{min-height:66px;padding:8px 12px}
  body.jpi-portal-active .jpi-mobile-brand img{max-width:178px;max-height:46px}
  body.jpi-portal-active .jpi-mobile-nav-label{display:none}
  body.jpi-portal-active .jpi-mobile-nav > summary{width:44px;height:44px;padding:10px}

  /* Show the complete hero artwork on phones instead of using cover,
     which was cropping the people and scenery. */
  body.jpi-portal-active.home .jpi-hero-compact.jpi-hero-bg{
    background-color:#082a55 !important;
    background-size:100% 100%,100% auto !important;
    background-position:center center,center top !important;
    background-repeat:no-repeat,no-repeat !important;
  }
  body.jpi-portal-active.home .jpi-hero-compact.jpi-hero-bg .jpi-hero-compact-grid{
    padding:26px 18px 30px !important;
  }
  body.jpi-portal-active.home .jpi-hero-compact.jpi-hero-bg h1{
    font-size:clamp(34px,10.2vw,43px) !important;
    line-height:1.05 !important;
  }
}

@media (max-width:390px){
  body.jpi-portal-active .jpi-mobile-brand img{max-width:156px;max-height:42px}
  body.jpi-portal-active .jpi-mobile-nav-panel{width:calc(100vw - 24px);right:-2px}
}

/* v1.2.11 — remove legacy visual ad placeholders only */
html body .jpi-ad-slot,
html body .jpi-after-menu-ad-wrap{
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}
