:root{
  --hope-font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --hope-weight-regular:400;
  --hope-weight-medium:580;
  --hope-weight-heading:620;
  --hope-blue:#046EB3;
  --hope-blue-2:#0B79B7;
  --hope-dark:#0B2F43;
  --hope-soft:#F3F8FC;
  --hope-gold:#EFB61E;
  --hope-border:#DDE6EC;
  --hope-text:#102D3D;
  --hope-muted:#5D6E78;
  --hope-white:#FFFFFF;
  --hope-shell:1180px;
}
*{box-sizing:border-box}
html{overflow-x:hidden}
body{margin:0;font-family:var(--hope-font);color:var(--hope-text);line-height:1.65;background:#fff;font-weight:400;overflow-x:hidden}
a{color:var(--hope-blue);text-decoration:none}
img{max-width:100%;height:auto}
.hope-shell{width:min(var(--hope-shell),calc(100% - 40px));margin-inline:auto}

.hope-topbar{background:var(--hope-blue);color:#fff;font-size:13px}
.hope-topbar__inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:7px 0}

.hope-navwrap{background:#fff;border-bottom:1px solid var(--hope-border);position:sticky;top:0;z-index:100}
.admin-bar .hope-navwrap{top:32px}
.hope-nav{min-height:76px;display:flex;align-items:center;gap:34px;position:relative}
.hope-brand{display:flex;align-items:center;gap:12px;color:var(--hope-dark);flex:0 0 auto;min-width:250px}
.hope-brand__logo{display:block;width:auto;max-width:58px;height:54px;object-fit:contain;border-radius:10px}
.hope-brand__text strong{display:block;font-size:17px;line-height:1.1;font-weight:600;white-space:nowrap}
.hope-brand__text small{display:block;font-size:11px;color:var(--hope-muted);line-height:1.25;white-space:nowrap}
.hope-main-menu{margin-left:auto;min-width:0}
.hope-menu{display:flex;align-items:center;justify-content:flex-end;gap:4px;list-style:none;margin:0;padding:0}
.hope-menu>li{position:relative;margin:0}
.hope-menu a{display:block;font-size:13px;color:var(--hope-dark);font-weight:500;padding:10px 9px;border-radius:5px;white-space:nowrap}
.hope-menu>.current-menu-item>a,.hope-menu>.current-menu-ancestor>a,.hope-menu>li>a:hover,.hope-menu>li>a:focus{background:#EAF5FC;color:var(--hope-blue)}
.hope-menu .menu-item-has-children>a::after{content:"▾";font-size:10px;margin-left:6px;color:var(--hope-blue)}
.hope-menu .sub-menu{display:none;position:absolute;z-index:120;left:0;top:calc(100% + 4px);min-width:235px;list-style:none;margin:0;padding:10px;background:#fff;border:1px solid var(--hope-border);border-radius:8px;box-shadow:0 16px 36px rgba(11,47,67,.14)}
.hope-menu li:hover>.sub-menu,.hope-menu li:focus-within>.sub-menu{display:block}
.hope-menu .sub-menu li{margin:0}
.hope-menu .sub-menu a{padding:9px 10px;white-space:normal}
.hope-menu .sub-menu a:hover,.hope-menu .sub-menu a:focus{background:var(--hope-soft)}
.hope-menu-toggle{display:none;width:46px;height:42px;border:0;border-radius:8px;background:var(--hope-blue);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;margin-left:auto}
.hope-menu-toggle span{width:22px;height:2px;background:#fff;display:block}

.hope-hero{background-color:var(--hope-dark);background-size:cover;background-position:center;min-height:320px;display:flex;align-items:center;color:#fff}
.hope-hero--large{min-height:560px}
.hope-hero--medium{min-height:320px}
.hope-hero--small{min-height:240px}
.hope-hero--top{background-position:center top}
.hope-hero--bottom{background-position:center bottom}
.hope-hero__inner{max-width:760px}
.hope-hero__layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.72fr);gap:64px;align-items:center}
.hope-hero__content{max-width:720px}
.hope-kicker{display:inline-flex;align-items:center;gap:10px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:#fff}
.hope-kicker:before{content:"";width:42px;height:2px;background:var(--hope-gold);display:inline-block}
.hope-kicker.dark{color:var(--hope-blue)}
.hope-kicker.light{color:#fff}
.hope-hero h1{font-size:clamp(38px,5vw,58px);line-height:1.06;margin:18px 0 16px;font-weight:600;color:#fff}
.hope-hero p{font-size:17px;max-width:720px;margin:0;color:#fff}
.hope-hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.hope-hero__actions .hope-button{margin:0}
.hope-institution-card{background:#fff;color:var(--hope-dark);border-radius:10px;padding:28px;box-shadow:0 24px 55px rgba(0,0,0,.20)}
.hope-institution-card__logo{display:block;width:auto;max-width:92px;height:84px;object-fit:contain;border-radius:10px;margin-bottom:13px}
.hope-institution-card__tagline{font-size:12px!important;color:var(--hope-muted)!important;margin:0 0 18px!important}
.hope-institution-card dl{margin:0;border-top:1px solid var(--hope-border)}
.hope-institution-card dl div{display:grid;grid-template-columns:86px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--hope-border)}
.hope-institution-card dt{font-size:12px;font-weight:600;color:var(--hope-dark)}
.hope-institution-card dd{margin:0;text-align:right;font-size:12px;color:var(--hope-muted)}

.hope-main h1,.hope-main h2,.hope-main h3{line-height:1.15;color:var(--hope-dark);font-weight:600}
.hope-main h2{font-size:clamp(30px,4vw,42px);margin:0 0 18px}
.hope-main p{font-size:17px;color:#244252}
.hope-page-main{padding:70px 0}
.hope-content{max-width:900px}
.hope-content .alignwide{max-width:1180px}
.hope-content .alignfull{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.hope-section{padding:90px 0}
.hope-section--soft{background:var(--hope-soft)}
.hope-band{padding:70px 0}
.hope-band--blue{background:var(--hope-blue);color:#fff}
.hope-band--blue h2,.hope-band--blue p{color:#fff}
.hope-center{text-align:center}
.hope-two{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.hope-metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-top:38px;border-top:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}
.hope-metrics div{padding:26px;border-right:1px solid rgba(255,255,255,.25);text-align:left}
.hope-metrics div:last-child{border-right:0}
.hope-metrics strong{display:block;font-size:30px;color:var(--hope-gold);font-weight:700}
.hope-metrics span{font-size:13px;color:#fff}
.hope-card-grid{display:grid;gap:24px;margin-top:30px}
.hope-card-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.hope-card-grid article{background:#fff;border:1px solid var(--hope-border);border-top:5px solid var(--hope-blue);border-radius:9px;padding:26px;box-shadow:0 12px 28px rgba(11,47,67,.06)}
.hope-card-grid small{color:var(--hope-blue);font-weight:600}
.hope-card-grid h3{font-size:20px;margin:16px 0}
.hope-card-grid p{font-size:15px}
.hope-ally-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.hope-ally-grid span{background:#F8FBFD;border:1px solid var(--hope-border);border-left:4px solid var(--hope-gold);border-radius:6px;padding:18px 22px;font-weight:600}
.hope-button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;background:var(--hope-blue);color:#fff!important;border:1px solid var(--hope-blue);border-radius:6px;padding:13px 22px;font-weight:600;margin:5px}
.hope-button--gold{background:var(--hope-gold);border-color:var(--hope-gold);color:#08293A!important}
.hope-button--outline-light{background:transparent;border-color:#fff;color:#fff!important}
.hope-link{font-weight:600}
.hope-gold-text{color:var(--hope-gold);display:block;margin-top:15px}
.hope-post-card{border:1px solid var(--hope-border);padding:28px;border-radius:8px;margin:0 0 24px;background:#fff}

.hope-footer{background:#0A3346;color:#fff}
.hope-footer__grid{display:grid;grid-template-columns:1.2fr 1fr 1.3fr;gap:80px;padding:82px 0}
.hope-footer h3,.hope-footer h4{color:#fff;font-weight:600}
.hope-footer p,.hope-footer a{color:#d7e9ef;font-size:14px}
.hope-footer__logo{display:block;width:auto;max-width:72px;height:72px;object-fit:contain;border-radius:10px}
.hope-footer-menu{list-style:none;padding:0;margin:0}
.hope-footer-menu li{margin:0 0 10px}
.hope-footer-menu .sub-menu{display:none!important}
.hope-socials{display:flex;gap:10px;flex-wrap:wrap}
.hope-socials a{border:1px solid rgba(255,255,255,.25);padding:8px 12px;border-radius:4px;color:#fff;font-weight:600;font-size:12px}
.hope-footer__email{overflow-wrap:anywhere;word-break:break-word}
.hope-footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px 0;font-size:12px}
.hope-footer__bottom .hope-shell{display:flex;justify-content:space-between;gap:20px;color:#d7e9ef}

@media(max-width:1120px){
  .hope-nav{gap:18px}
  .hope-brand{min-width:210px}
  .hope-menu a{font-size:12px;padding-inline:7px}
  .hope-hero__layout{gap:36px}
}

@media(max-width:980px){
  .hope-shell{width:min(100% - 28px,var(--hope-shell))}
  .hope-topbar__inner{display:block;text-align:center}
  .hope-nav{min-height:66px}
  .hope-brand{min-width:0}
  .hope-brand__logo{max-width:48px;height:48px}
  .hope-brand__text strong{font-size:15px}
  .hope-brand__text small{display:none}
  .hope-menu-toggle{display:flex}
  .hope-main-menu{display:none;position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - 110px);overflow:auto;background:#fff;border-top:1px solid var(--hope-border);border-bottom:1px solid var(--hope-border);padding:12px 16px;margin-left:0;box-shadow:0 18px 30px rgba(11,47,67,.12)}
  .hope-main-menu.is-open{display:block}
  .hope-menu{display:block}
  .hope-menu>li{border-bottom:1px solid #edf2f5}
  .hope-menu>li:last-child{border-bottom:0}
  .hope-menu a{font-size:14px;padding:11px 10px;white-space:normal}
  .hope-menu .sub-menu{position:static;display:block;min-width:0;padding:0 0 8px 14px;border:0;border-radius:0;box-shadow:none;background:#f8fbfd}
  .hope-menu .sub-menu a{font-size:13px;padding:8px 10px}
  .hope-hero{min-height:260px;padding:45px 0}
  .hope-hero--large{min-height:440px}
  .hope-hero__layout{grid-template-columns:1fr;gap:28px}
  .hope-hero h1{font-size:34px}
  .hope-hero p{font-size:16px}
  .hope-institution-card{display:block;width:100%;max-width:560px;margin:0 auto;padding:22px}
  .hope-two{grid-template-columns:1fr;gap:28px}
  .hope-card-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hope-metrics{grid-template-columns:repeat(2,1fr)}
  .hope-metrics div:nth-child(2){border-right:0}
  .hope-ally-grid{grid-template-columns:1fr 1fr}
  .hope-footer__grid{grid-template-columns:1fr 1fr;gap:45px;padding:60px 0}
  .hope-footer__brand{grid-column:1/-1}
  .hope-section,.hope-band,.hope-page-main{padding:54px 0}
}

@media(max-width:600px){
  .admin-bar .hope-navwrap{top:46px}
  .hope-topbar{font-size:10px}
  .hope-topbar__inner{padding:5px 0}
  .hope-brand__text strong{font-size:14px}
  .hope-hero--large{min-height:390px}
  .hope-hero h1{font-size:30px}
  .hope-hero__actions{display:grid;grid-template-columns:1fr;gap:8px}
  .hope-hero__actions .hope-button{width:100%;margin:0}
  .hope-card-grid.four,.hope-metrics,.hope-ally-grid,.hope-footer__grid{grid-template-columns:1fr}
  .hope-metrics div{border-right:0;border-bottom:1px solid rgba(255,255,255,.25)}
  .hope-metrics div:last-child{border-bottom:0}
  .hope-footer__brand{grid-column:auto}
  .hope-footer__grid{gap:30px;padding:50px 0}
  .hope-footer__bottom .hope-shell{display:block}
}


/* Portable Home sections 03.8.7 */
.hope-section-actions{display:flex;justify-content:center;margin-top:32px}
.hope-presence-card{background:#fff;border:1px solid var(--hope-border);border-radius:8px;padding:28px}
.hope-presence-card p{margin:0;padding:14px 0;border-bottom:1px solid var(--hope-border);font-size:15px}
.hope-presence-card p:last-child{border-bottom:0}
.hope-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:28px}
.hope-section-heading h2{margin-bottom:0}
.hope-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.hope-post-card h3{font-size:22px;margin:12px 0}
.hope-post-card small{color:var(--hope-muted)}
.hope-post-card--empty{grid-column:1/-1;max-width:520px}

@media(max-width:980px){
  .hope-institution-card__logo{max-width:72px;height:66px}
  .hope-institution-card dl div{grid-template-columns:92px 1fr}
  .hope-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .hope-hero--home{padding:36px 0}
  .hope-hero--home .hope-hero__layout{gap:22px}
  .hope-institution-card{padding:18px;border-radius:8px}
  .hope-institution-card__tagline{margin-bottom:12px!important}
  .hope-institution-card dl div{grid-template-columns:78px 1fr;gap:10px;padding:9px 0}
  .hope-institution-card dt,.hope-institution-card dd{font-size:11px}
  .hope-section-heading{display:block}
  .hope-section-heading .hope-link{display:inline-block;margin-top:8px}
  .hope-news-grid{grid-template-columns:1fr}
  .hope-post-card--empty{grid-column:auto}
  .hope-section-actions{display:block}
  .hope-section-actions .hope-button{width:100%;margin:0}
}

/* Portable rescue 03.8.8 — Home hero faithful to approved live site */
.hope-hero--home{
  min-height:auto;
  padding:76px 0;
  background-color:var(--hope-soft);
  color:var(--hope-dark);
}
.hope-hero--home:not(.hope-hero--has-image){background-image:none!important}
.hope-hero--home:not(.hope-hero--has-image) .hope-kicker{color:var(--hope-blue)}
.hope-hero--home:not(.hope-hero--has-image) h1{color:var(--hope-dark)}
.hope-hero--home:not(.hope-hero--has-image) p{color:#244252}
.hope-hero--home .hope-hero__layout{
  grid-template-columns:minmax(0,1.35fr) minmax(330px,.7fr);
  gap:70px;
}
.hope-hero--home .hope-hero__content{max-width:720px}
.hope-hero--home h1{
  font-size:clamp(44px,5.2vw,62px);
  line-height:1.04;
  letter-spacing:-.025em;
  margin:18px 0 18px;
  font-weight:600;
}
.hope-hero--home p{font-size:17px;line-height:1.65;max-width:680px}
.hope-hero--home .hope-hero__actions{margin-top:26px}
.hope-button--primary{
  background:var(--hope-blue);
  border-color:var(--hope-blue);
  color:#fff!important;
}
.hope-button--secondary{
  background:#fff;
  border-color:#B8D5E6;
  color:var(--hope-blue)!important;
}
.hope-hero--has-image .hope-button--secondary{
  background:transparent;
  border-color:#fff;
  color:#fff!important;
}
.hope-hero--has-image .hope-kicker,
.hope-hero--has-image h1,
.hope-hero--has-image p{color:#fff}
.hope-institution-card{
  display:block!important;
  border-left:5px solid var(--hope-blue);
  border-radius:8px;
  padding:28px 28px 24px;
  box-shadow:0 14px 36px rgba(11,47,67,.10);
}
.hope-hero--has-image .hope-institution-card{box-shadow:0 22px 50px rgba(0,0,0,.20)}
.hope-institution-card__logo{max-width:116px;height:108px;margin-bottom:14px}
.hope-institution-card__tagline{font-size:12px!important;margin-bottom:18px!important}

/* Third-level menu for Draft under H.O.P.E. Global Draft */
.hope-menu .sub-menu .sub-menu{left:calc(100% + 6px);top:-10px}
.hope-menu .sub-menu .menu-item-has-children>a::after{content:"›";float:right;margin-left:12px;color:var(--hope-blue)}

@media(max-width:980px){
  .hope-hero--home{padding:56px 0}
  .hope-hero--home .hope-hero__layout{grid-template-columns:1fr;gap:32px}
  .hope-hero--home .hope-hero__content{max-width:720px;margin-inline:auto}
  .hope-institution-card{width:100%;max-width:620px;margin:0 auto!important}
  .hope-menu .sub-menu .sub-menu{left:auto;top:auto}
  .hope-menu .sub-menu .menu-item-has-children>a::after{content:"▾"}
}
@media(max-width:600px){
  .hope-hero--home{padding:42px 0!important;min-height:0!important}
  .hope-hero--home h1{font-size:36px;line-height:1.06}
  .hope-hero--home p{font-size:15px;line-height:1.58}
  .hope-hero--home .hope-hero__layout{gap:24px}
  .hope-institution-card{display:block!important;visibility:visible!important;opacity:1!important;padding:18px;border-left-width:4px}
  .hope-institution-card__logo{max-width:82px;height:76px}
}


/* Portable navigation + institutional card fixes 03.8.9 */
.hope-institution-card__tagline{
  font-size:14px!important;
  line-height:1.45;
  color:#4E6470!important;
}
.hope-institution-card dl div{
  grid-template-columns:104px minmax(0,1fr);
  gap:18px;
  padding:14px 0;
}
.hope-institution-card dt{
  font-size:14px;
  line-height:1.4;
  font-weight:600;
}
.hope-institution-card dd{
  font-size:14px;
  line-height:1.4;
  color:#435E6C;
}

/* One arrow button per submenu. No hover gaps between levels. */
.hope-menu .menu-item-has-children>a::after{content:none!important}
.hope-menu li.menu-item-has-children{position:relative}
.hope-menu li.menu-item-has-children>a{padding-right:36px}
.hope-submenu-toggle{
  position:absolute;
  z-index:3;
  top:50%;
  right:3px;
  width:30px;
  height:30px;
  transform:translateY(-50%);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:5px;
  background:transparent;
  color:var(--hope-blue);
  cursor:pointer;
  font:inherit;
  line-height:1;
}
.hope-submenu-toggle:hover,.hope-submenu-toggle:focus-visible{background:#EAF5FC;outline:2px solid transparent}
.hope-submenu-toggle span{display:block;transition:transform .18s ease;font-size:14px}
.hope-menu li.submenu-open>.hope-submenu-toggle span{transform:rotate(180deg)}
.hope-menu .sub-menu{
  top:100%;
  margin-top:0;
}
.hope-menu .sub-menu .sub-menu{
  left:100%;
  top:0;
  margin-left:0;
}
.hope-menu li:hover>.sub-menu,
.hope-menu li:focus-within>.sub-menu,
.hope-menu li.submenu-open>.sub-menu{display:block}
.hope-menu .sub-menu li.menu-item-has-children>a{padding-right:42px}
.hope-menu .sub-menu .hope-submenu-toggle{right:7px}

@media(max-width:980px){
  .hope-main-menu{
    z-index:300;
    overscroll-behavior:contain;
  }
  .hope-menu li:hover>.sub-menu,
  .hope-menu li:focus-within>.sub-menu{display:none}
  .hope-menu li.submenu-open>.sub-menu{display:block}
  .hope-menu .sub-menu{
    display:none;
    padding:4px 0 8px 14px;
  }
  .hope-menu .sub-menu .sub-menu{
    display:none;
    margin-left:10px;
    border-left:2px solid #D9EBF5;
    background:#fff;
  }
  .hope-menu li.menu-item-has-children>a{padding-right:52px}
  .hope-submenu-toggle{
    width:42px;
    height:38px;
    right:4px;
  }
  .hope-institution-card__tagline{font-size:13px!important}
  .hope-institution-card dl div{grid-template-columns:98px minmax(0,1fr);gap:14px;padding:12px 0}
  .hope-institution-card dt,.hope-institution-card dd{font-size:13px}
}

@media(max-width:600px){
  .hope-institution-card{padding:20px!important}
  .hope-institution-card__tagline{font-size:13px!important;line-height:1.45}
  .hope-institution-card dl div{grid-template-columns:92px minmax(0,1fr)!important;gap:12px!important;padding:11px 0!important}
  .hope-institution-card dt,.hope-institution-card dd{font-size:13px!important;line-height:1.4}
}

/* Theme Only 03.8.10 -------------------------------------------------------
   Base limpia: sin contenido demo ni plugins obligatorios. */
.rgpro-hope-theme-only .hope-hero--home{
  min-height:610px;
  padding:94px 0;
}
.rgpro-hope-theme-only .hope-hero--home .hope-hero__layout{
  grid-template-columns:minmax(0,1.35fr) minmax(340px,.72fr);
  gap:72px;
}
.rgpro-hope-theme-only .hope-hero--home h1{
  font-size:clamp(48px,5.4vw,66px);
  line-height:1.03;
  font-weight:600;
}
.rgpro-hope-theme-only .hope-hero--home p{
  font-size:18px;
  line-height:1.65;
}
.rgpro-hope-theme-only .hope-front-content:empty{display:none}

/* Gutenberg debe conservar las decisiones visuales del editor. */
.rgpro-hope-theme-only .hope-main :where(h1,h2,h3):not(.has-text-color){color:var(--hope-dark)}
.rgpro-hope-theme-only .hope-main p:not(.has-text-color){color:#244252}
.rgpro-hope-theme-only .wp-block-button__link{
  font-weight:600;
  color:inherit;
}
.rgpro-hope-theme-only .wp-block-button__link:not(.has-text-color){color:#fff}
/* 03.8.12: Gutenberg controla color y fondo cuando el bloque tiene ajustes propios. */
.rgpro-hope-theme-only .hope-content > .alignwide{
  width:min(1180px,calc(100vw - 40px));
  max-width:none;
  margin-left:50%;
  transform:translateX(-50%);
}
.rgpro-hope-theme-only .hope-content > .alignfull{
  width:100vw;
  max-width:none;
  margin-left:50%;
  transform:translateX(-50%);
}

@media(max-width:980px){
  .rgpro-hope-theme-only .hope-hero--home{
    min-height:auto;
    padding:68px 0;
  }
  .rgpro-hope-theme-only .hope-hero--home .hope-hero__layout{
    grid-template-columns:1fr;
    gap:34px;
  }
}
@media(max-width:600px){
  .rgpro-hope-theme-only .hope-hero--home{
    padding:44px 0!important;
  }
  .rgpro-hope-theme-only .hope-hero--home h1{
    font-size:38px;
    line-height:1.05;
  }
  .rgpro-hope-theme-only .hope-hero--home p{font-size:15px}
  .rgpro-hope-theme-only .hope-content > .alignwide{
    width:calc(100vw - 28px);
  }
}

/* Theme Only 03.8.12 — Tipografía institucional real
   Referencia validada con WhatFont: system-ui, pesos 400 / 580 / 620.
   No Google Fonts, no Inter forzado, no 700/800/900 generalizado. */
:root{
  --hope-font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --hope-weight-regular:400;
  --hope-weight-medium:580;
  --hope-weight-heading:620;
  --hope-text-dark:#102A3D;
  --hope-text-body:#2F4354;
  --hope-text-muted:#697987;
  --hope-blue:#046EB3;
  --hope-gold:#EFB61E;
  --hope-soft:#F3F8FC;
  --hope-border:#DDE6EC;
}

body{
  font-family:var(--hope-font);
  color:var(--hope-text-body);
  font-weight:var(--hope-weight-regular);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.hope-topbar{
  font-family:var(--hope-font);
  font-size:13px;
  font-weight:var(--hope-weight-regular);
  line-height:22px;
}

.hope-brand__text strong{
  font-weight:var(--hope-weight-medium);
  color:var(--hope-text-dark);
}
.hope-brand__text small{
  font-weight:var(--hope-weight-regular);
  color:var(--hope-text-muted);
}

.hope-menu a,
.hope-link,
.hope-card-grid small,
.hope-kicker,
.hope-socials a{
  font-family:var(--hope-font);
  font-size:13px;
  line-height:22px;
  font-weight:var(--hope-weight-medium);
}

.hope-hero h1,
.rgpro-hope-theme-only .hope-hero--home h1{
  font-family:var(--hope-font);
  font-size:clamp(38px,5vw,56px);
  line-height:1.04;
  font-weight:var(--hope-weight-heading);
  letter-spacing:-0.018em;
}

.hope-hero--home:not(.hope-hero--has-image) h1,
.rgpro-hope-theme-only .hope-hero--home:not(.hope-hero--has-image) h1{
  color:var(--hope-text-dark);
}

.hope-hero p,
.rgpro-hope-theme-only .hope-hero--home p,
.hope-hero__description{
  font-family:var(--hope-font);
  font-size:18px;
  line-height:32px;
  font-weight:var(--hope-weight-regular);
}

.hope-hero--home:not(.hope-hero--has-image) p,
.rgpro-hope-theme-only .hope-hero--home:not(.hope-hero--has-image) p{
  color:var(--hope-text-body);
}

.hope-main h1,
.hope-main h2{
  font-family:var(--hope-font);
  color:var(--hope-text-dark);
  font-weight:var(--hope-weight-heading);
  letter-spacing:-0.012em;
}
.hope-main h2{
  font-size:clamp(30px,4vw,36px);
  line-height:1.2;
}
.hope-main h3,
.hope-card-grid h3,
.hope-footer h3,
.hope-footer h4{
  font-family:var(--hope-font);
  font-weight:var(--hope-weight-medium);
  color:var(--hope-text-dark);
}
.hope-main p,
.hope-main li,
.hope-card-grid p,
.hope-post-card p{
  font-family:var(--hope-font);
  font-size:16px;
  line-height:27px;
  font-weight:var(--hope-weight-regular);
  color:var(--hope-text-body);
}

.hope-institution-card__tagline,
.hope-institution-card dd{
  font-family:var(--hope-font);
  font-size:16px!important;
  line-height:27px!important;
  font-weight:var(--hope-weight-regular);
  color:var(--hope-text-muted)!important;
}
.hope-institution-card dt{
  font-family:var(--hope-font);
  font-size:16px!important;
  line-height:27px!important;
  font-weight:var(--hope-weight-medium);
  color:var(--hope-text-dark)!important;
}

.hope-button,
.wp-block-button__link,
button{
  font-family:var(--hope-font);
  font-weight:var(--hope-weight-medium)!important;
}

.rgpro-hope-theme-only .wp-block-button__link:not(.has-background){
  background-color:var(--hope-blue);
}
.rgpro-hope-theme-only .wp-block-button__link:not(.has-text-color){
  color:#fff!important;
}

.hope-footer h3,
.hope-footer h4{color:#fff}
.hope-footer p,
.hope-footer a{
  font-family:var(--hope-font);
  font-size:14px;
  line-height:24px;
  font-weight:var(--hope-weight-regular);
}

@media(max-width:600px){
  .hope-topbar__inner span{display:block;line-height:1.35}
  .hope-hero h1,
  .rgpro-hope-theme-only .hope-hero--home h1{
    font-size:clamp(38px,10vw,42px)!important;
    line-height:1.06!important;
    letter-spacing:-0.014em;
  }
  .hope-hero p,
  .rgpro-hope-theme-only .hope-hero--home p,
  .hope-hero__description{
    font-size:17px!important;
    line-height:29px!important;
  }
  .hope-menu a{font-size:15px;line-height:24px;font-weight:var(--hope-weight-medium)}
  .hope-button,
  .wp-block-button__link{font-size:16px;line-height:24px}
  .hope-institution-card__tagline,
  .hope-institution-card dt,
  .hope-institution-card dd{
    font-size:14px!important;
    line-height:22px!important;
  }
  .hope-footer__bottom .hope-shell > * + *{display:block;margin-top:8px}
}


/* Theme Only 03.8.12 — selector de idioma retirado y topbar móvil limpia. */
@media(max-width:600px){
  .hope-topbar__inner{
    display:grid;
    grid-template-columns:1fr;
    gap:1px;
    text-align:center;
    line-height:1.35;
  }
  .hope-topbar__inner > span{
    display:block;
    width:100%;
  }
}

/* Gutenberg: respetar colores elegidos por el usuario. */
.has-hope-blue-color{color:#046EB3 !important}
.has-hope-dark-color{color:#0B2F43 !important}
.has-hope-gold-color{color:#EFB61E !important}
.has-hope-soft-color{color:#F3F8FC !important}
.has-white-color{color:#FFFFFF !important}
.has-hope-blue-background-color{background-color:#046EB3 !important}
.has-hope-dark-background-color{background-color:#0B2F43 !important}
.has-hope-gold-background-color{background-color:#EFB61E !important}
.has-hope-soft-background-color{background-color:#F3F8FC !important}
.has-white-background-color{background-color:#FFFFFF !important}

/* Theme Only 03.8.14 -------------------------------------------------------
   Page Hero Settings + institucional card alignment. */
.rgpro-hope-theme-only .hope-hero--style-light{
  background:#F3F8FC;
  color:var(--hope-dark);
}
.rgpro-hope-theme-only .hope-hero--style-light .hope-kicker,
.rgpro-hope-theme-only .hope-hero--style-light h1,
.rgpro-hope-theme-only .hope-hero--style-light p{
  color:var(--hope-dark);
}
.rgpro-hope-theme-only .hope-hero--style-light .hope-kicker{color:var(--hope-blue)}
.rgpro-hope-theme-only .hope-hero--style-blue{
  background:var(--hope-blue);
  color:#fff;
}
.rgpro-hope-theme-only .hope-hero--style-blue .hope-kicker,
.rgpro-hope-theme-only .hope-hero--style-blue h1,
.rgpro-hope-theme-only .hope-hero--style-blue p,
.rgpro-hope-theme-only .hope-hero--has-image .hope-kicker,
.rgpro-hope-theme-only .hope-hero--has-image h1,
.rgpro-hope-theme-only .hope-hero--has-image p{
  color:#fff;
}
.rgpro-hope-theme-only .hope-hero--style-blue .hope-kicker:before,
.rgpro-hope-theme-only .hope-hero--has-image .hope-kicker:before{background:var(--hope-gold)}
.rgpro-hope-theme-only .hope-hero--style-image{
  background-size:cover;
  background-repeat:no-repeat;
}
.rgpro-hope-theme-only .hope-hero--position-top{background-position:center top}
.rgpro-hope-theme-only .hope-hero--position-bottom{background-position:center bottom}
.rgpro-hope-theme-only .hope-hero--position-left{background-position:left center}
.rgpro-hope-theme-only .hope-hero--position-right{background-position:right center}
.rgpro-hope-theme-only .hope-hero--position-center{background-position:center center}
.rgpro-hope-theme-only .hope-hero__inner{
  padding:70px 0;
}
.rgpro-hope-theme-only .hope-hero--medium{min-height:340px}
.rgpro-hope-theme-only .hope-hero--small{min-height:250px}

/* Tarjeta institucional: separación sólida para dl y patrón Gutenberg. */
.rgpro-hope-theme-only .hope-institution-card dl div,
.rgpro-hope-theme-only .hope-home-builder-card__rows p,
.rgpro-hope-theme-only .hope-home-builder-card__rows .wp-block-paragraph{
  display:grid!important;
  grid-template-columns:116px minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
  width:100%!important;
  margin:0!important;
  padding:13px 0!important;
  border-bottom:1px solid var(--hope-border)!important;
}
.rgpro-hope-theme-only .hope-institution-card dt,
.rgpro-hope-theme-only .hope-home-builder-card__rows strong{
  display:block!important;
  min-width:0!important;
  color:var(--hope-dark)!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:580!important;
  white-space:normal!important;
}
.rgpro-hope-theme-only .hope-institution-card dd,
.rgpro-hope-theme-only .hope-home-builder-card__rows span{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  color:#697987!important;
  font-size:14px!important;
  line-height:1.45!important;
  text-align:right!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.rgpro-hope-theme-only .hope-institution-card__tagline{
  font-size:14px!important;
  line-height:1.45!important;
}

@media(max-width:600px){
  .rgpro-hope-theme-only .hope-hero__inner{padding:48px 0}
  .rgpro-hope-theme-only .hope-hero--medium{min-height:260px}
  .rgpro-hope-theme-only .hope-hero h1{font-size:clamp(34px,10vw,42px)!important;line-height:1.06!important}
  .rgpro-hope-theme-only .hope-hero p{font-size:16px!important;line-height:1.58!important}
  .rgpro-hope-theme-only .hope-institution-card dl div,
  .rgpro-hope-theme-only .hope-home-builder-card__rows p,
  .rgpro-hope-theme-only .hope-home-builder-card__rows .wp-block-paragraph{
    grid-template-columns:92px minmax(0,1fr)!important;
    gap:12px!important;
  }
  .rgpro-hope-theme-only .hope-institution-card dt,
  .rgpro-hope-theme-only .hope-institution-card dd,
  .rgpro-hope-theme-only .hope-home-builder-card__rows strong,
  .rgpro-hope-theme-only .hope-home-builder-card__rows span{
    font-size:13px!important;
  }
}

/* Blog & News Templates — 03.8.16 */
.hope-blog-main,
.hope-single-main{background:#fff}
.hope-blog-section{padding:78px 0 90px;background:#fff}
.hope-blog-heading{max-width:860px;margin:0 0 36px}
.hope-blog-heading h2{font-size:clamp(32px,3.6vw,46px);margin:14px 0 10px;letter-spacing:-.015em}
.hope-blog-heading p{margin:0;color:var(--hope-muted);font-size:17px;max-width:780px}
.hope-news-grid-pro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.hope-news-card{background:#fff;border:1px solid var(--hope-border);border-radius:12px;box-shadow:0 12px 32px rgba(11,47,67,.06);overflow:hidden;display:flex;flex-direction:column;min-height:100%;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.hope-news-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(11,47,67,.10);border-color:#c7dce8}
.hope-news-card__media{display:block;position:relative;aspect-ratio:16/10;background:var(--hope-soft);overflow:hidden}
.hope-news-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.hope-news-card:hover .hope-news-card__media img{transform:scale(1.035)}
.hope-news-card__placeholder{height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#F3F8FC,#fff)}
.hope-news-card__logo{width:74px;height:74px;border-radius:12px;object-fit:contain}
.hope-news-card__body{padding:26px;display:flex;flex-direction:column;gap:12px;flex:1}
.hope-news-card__meta{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--hope-muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.hope-news-card__meta span:first-child{color:var(--hope-blue)}
.hope-news-card__title{font-size:24px!important;line-height:1.18!important;margin:0!important;font-weight:620!important;letter-spacing:-.01em}
.hope-news-card__title a{color:var(--hope-dark)}
.hope-news-card__excerpt p,.hope-news-card__excerpt{font-size:15px;color:#314d5d;line-height:1.65;margin:0}
.hope-news-card__link{margin-top:auto;font-weight:580;color:var(--hope-blue)}
.hope-pagination{margin-top:46px}
.hope-pagination .nav-links{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.hope-pagination .page-numbers{display:inline-flex;min-width:38px;height:38px;align-items:center;justify-content:center;border:1px solid var(--hope-border);border-radius:6px;padding:0 12px;color:var(--hope-blue);background:#fff;font-weight:580}
.hope-pagination .page-numbers.current{background:var(--hope-blue);border-color:var(--hope-blue);color:#fff}
.hope-empty-news{background:var(--hope-soft);border:1px solid var(--hope-border);border-radius:12px;padding:42px;max-width:760px;text-align:left}
.hope-empty-news__logo{width:76px;height:76px;border-radius:12px;object-fit:contain;margin-bottom:18px}
.hope-empty-news h2{font-size:30px;margin:0 0 10px}.hope-empty-news p{margin:0;color:var(--hope-muted)}

.hope-single-hero{background:var(--hope-soft);padding:92px 0 76px;color:var(--hope-dark)}
.hope-single-hero--image{background-size:cover;background-position:center;color:#fff}
.hope-single-hero__inner{max-width:940px}
.hope-single-hero h1{font-size:clamp(40px,5vw,64px);line-height:1.05;margin:18px 0 14px;font-weight:620;letter-spacing:-.025em;color:inherit}
.hope-single-meta{display:flex;gap:10px;align-items:center;color:inherit;opacity:.86;font-size:14px;font-weight:580;margin-bottom:18px}
.hope-single-excerpt{font-size:19px!important;line-height:1.7!important;max-width:820px;color:inherit!important;opacity:.95}
.hope-single-layout{display:grid;grid-template-columns:minmax(0,820px) 300px;gap:70px;align-items:start;padding:74px 0 88px}
.hope-single-content{min-width:0}.hope-single-content p,.hope-single-content li{font-size:18px;line-height:1.82;color:#243f4f}.hope-single-content h2{font-size:36px;margin-top:42px}.hope-single-content h3{font-size:26px;margin-top:34px}.hope-single-content a{font-weight:580}.hope-single-content img{border-radius:10px}.hope-single-content blockquote{border-left:5px solid var(--hope-gold);margin:32px 0;padding:18px 24px;background:var(--hope-soft);border-radius:0 8px 8px 0}.hope-single-content blockquote p{font-size:21px;line-height:1.55;color:var(--hope-dark)}
.hope-single-sidebar{position:sticky;top:110px}.hope-single-sidecard{border:1px solid var(--hope-border);border-radius:12px;padding:26px;background:#fff;box-shadow:0 12px 30px rgba(11,47,67,.06)}.hope-single-sidecard__logo{width:72px;height:72px;border-radius:12px;object-fit:contain;margin-bottom:14px}.hope-single-sidecard h2{font-size:22px;margin:0 0 8px}.hope-single-sidecard p{font-size:15px;line-height:1.65;color:var(--hope-muted);margin:0 0 18px}.hope-single-sidecard .hope-button{width:100%;margin:0}

@media(max-width:980px){
  .hope-news-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hope-single-layout{grid-template-columns:1fr;gap:36px}.hope-single-sidebar{position:static}.hope-single-hero{padding:70px 0 58px}
}
@media(max-width:640px){
  .hope-blog-section{padding:46px 0 58px}.hope-news-grid-pro{grid-template-columns:1fr;gap:18px}.hope-news-card__body{padding:22px}.hope-news-card__title{font-size:22px!important}.hope-empty-news{padding:28px}.hope-single-hero{padding:52px 0 46px}.hope-single-hero h1{font-size:34px}.hope-single-layout{padding:48px 0 62px}.hope-single-content p,.hope-single-content li{font-size:16px;line-height:1.78}.hope-single-content h2{font-size:28px}.hope-single-content h3{font-size:23px}
}


/* Blog author guard — 03.8.17
   La web institucional no debe mostrar usuarios técnicos como elementor/admin/test. */
.rgpro-hope-theme-only .byline,
.rgpro-hope-theme-only .entry-meta .author,
.rgpro-hope-theme-only .entry-meta .byline,
.rgpro-hope-theme-only .wp-block-post-author,
.rgpro-hope-theme-only .wp-block-post-author-name,
.rgpro-hope-theme-only .wp-block-post-author-biography,
.rgpro-hope-theme-only .post-author,
.rgpro-hope-theme-only .post-author__name,
.rgpro-hope-theme-only .hope-news-card__author,
.rgpro-hope-theme-only .hope-single-author{
  display:none!important;
}


/* Blog Hero Guard — 03.8.18
   Corrige hero de entradas: texto blanco, metadatos legibles y control desde Hero H.O.P.E. */
.rgpro-hope-theme-only .hope-single-hero--image,
.rgpro-hope-theme-only .hope-single-hero--style-blue{
  color:#fff!important;
}
.rgpro-hope-theme-only .hope-single-hero--style-blue{
  background:var(--hope-blue)!important;
}
.rgpro-hope-theme-only .hope-single-hero--style-light{
  background:var(--hope-soft)!important;
  color:var(--hope-text-dark)!important;
}
.rgpro-hope-theme-only .hope-single-hero--position-top{background-position:center top!important}
.rgpro-hope-theme-only .hope-single-hero--position-bottom{background-position:center bottom!important}
.rgpro-hope-theme-only .hope-single-hero--position-left{background-position:left center!important}
.rgpro-hope-theme-only .hope-single-hero--position-right{background-position:right center!important}
.rgpro-hope-theme-only .hope-single-hero--position-center{background-position:center center!important}
.rgpro-hope-theme-only .hope-single-hero--image .hope-kicker,
.rgpro-hope-theme-only .hope-single-hero--image h1,
.rgpro-hope-theme-only .hope-single-hero--image .hope-single-meta,
.rgpro-hope-theme-only .hope-single-hero--image .hope-single-excerpt,
.rgpro-hope-theme-only .hope-single-hero--style-blue .hope-kicker,
.rgpro-hope-theme-only .hope-single-hero--style-blue h1,
.rgpro-hope-theme-only .hope-single-hero--style-blue .hope-single-meta,
.rgpro-hope-theme-only .hope-single-hero--style-blue .hope-single-excerpt{
  color:#fff!important;
}
.rgpro-hope-theme-only .hope-single-hero--style-light h1,
.rgpro-hope-theme-only .hope-single-hero--style-light .hope-single-meta,
.rgpro-hope-theme-only .hope-single-hero--style-light .hope-single-excerpt{
  color:var(--hope-text-dark)!important;
}
.rgpro-hope-theme-only .hope-single-hero--style-light .hope-kicker{color:var(--hope-blue)!important}
.rgpro-hope-theme-only .hope-single-meta{opacity:.92!important}
.rgpro-hope-theme-only .hope-blog-heading .hope-kicker:empty{display:none!important}


/* Theme Only 03.8.19 — HOTFIX PRODUCCIÓN
   Header institucional fijo como una sola unidad + menú móvil legible y controlado.
   Corrección integrada en theme: no depender de CSS adicional. */

/* Header completo fijo: topbar azul + barra blanca viajan juntos, sin montarse. */
.rgpro-hope-theme-only .hope-site-header{
  position:sticky!important;
  top:0!important;
  z-index:10000!important;
  background:#fff!important;
}
.rgpro-hope-theme-only.admin-bar .hope-site-header{top:32px!important}
.rgpro-hope-theme-only .hope-navwrap{
  position:relative!important;
  top:auto!important;
  z-index:auto!important;
  background:#fff!important;
  box-shadow:0 2px 14px rgba(4,17,33,.08)!important;
}
.rgpro-hope-theme-only .hope-topbar{
  position:relative!important;
  top:auto!important;
  z-index:auto!important;
  background:var(--hope-blue)!important;
}
.rgpro-hope-theme-only .hope-main-menu{z-index:10020!important}

@media(max-width:782px){
  .rgpro-hope-theme-only.admin-bar .hope-site-header{top:46px!important}
}

@media(max-width:980px){
  html.rgpro-hope-menu-lock,
  body.hope-menu-open{overflow:hidden!important}

  .rgpro-hope-theme-only .hope-topbar{
    font-size:13px!important;
    line-height:1.35!important;
  }
  .rgpro-hope-theme-only .hope-topbar__inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:2px!important;
    text-align:center!important;
    padding:7px 14px!important;
  }

  .rgpro-hope-theme-only .hope-nav{
    min-height:74px!important;
    gap:14px!important;
    position:relative!important;
  }
  .rgpro-hope-theme-only .hope-brand{
    min-width:0!important;
    gap:12px!important;
    max-width:calc(100% - 74px)!important;
  }
  .rgpro-hope-theme-only .hope-brand__logo{
    max-width:62px!important;
    width:62px!important;
    height:62px!important;
    object-fit:contain!important;
    flex:0 0 auto!important;
  }
  .rgpro-hope-theme-only .hope-brand__text strong{
    display:block!important;
    font-size:20px!important;
    line-height:1.15!important;
    font-weight:650!important;
    white-space:normal!important;
    color:var(--hope-dark)!important;
  }
  .rgpro-hope-theme-only .hope-brand__text small{display:none!important}

  .rgpro-hope-theme-only .hope-menu-toggle{
    display:flex!important;
    width:58px!important;
    height:58px!important;
    border-radius:12px!important;
    flex:0 0 58px!important;
    margin-left:auto!important;
    background:var(--hope-blue)!important;
  }
  .rgpro-hope-theme-only .hope-menu-toggle span{
    width:28px!important;
    height:3px!important;
    border-radius:3px!important;
  }

  /* Menú cerrado: nada visible. */
  .rgpro-hope-theme-only .hope-main-menu{
    display:none!important;
  }

  /* Menú abierto: full width, debajo del header blanco, sin bordes azules laterales. */
  .rgpro-hope-theme-only .hope-main-menu.is-open{
    display:block!important;
    position:absolute!important;
    left:50%!important;
    right:auto!important;
    top:100%!important;
    transform:translateX(-50%)!important;
    width:100vw!important;
    max-height:calc(100dvh - 138px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    margin:0!important;
    padding:18px 22px 26px!important;
    background:#fff!important;
    border-top:1px solid var(--hope-border)!important;
    border-bottom:1px solid var(--hope-border)!important;
    box-shadow:0 18px 38px rgba(11,47,67,.16)!important;
  }

  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
    background:#fff!important;
  }

  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu > li{
    position:relative!important;
    display:block!important;
    margin:0!important;
    border-bottom:1px solid #E7EEF3!important;
  }
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu > li:last-child{border-bottom:0!important}

  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu > li > a{
    display:block!important;
    padding:18px 64px 18px 18px!important;
    font-size:22px!important;
    line-height:1.25!important;
    font-weight:650!important;
    color:var(--hope-dark)!important;
    border-radius:8px!important;
    white-space:normal!important;
  }

  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu > li > a:hover,
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu > li > a:focus,
  .rgpro-hope-theme-only .hope-main-menu.is-open .current-menu-item > a,
  .rgpro-hope-theme-only .hope-main-menu.is-open a[aria-current="page"]{
    background:#EAF5FC!important;
    color:var(--hope-blue)!important;
  }

  /* Botón flecha grande y claro para Programas y subniveles. */
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-submenu-toggle{
    position:absolute!important;
    top:10px!important;
    right:8px!important;
    width:52px!important;
    height:52px!important;
    transform:none!important;
    border:0!important;
    border-radius:10px!important;
    background:#EEF7FC!important;
    color:var(--hope-blue)!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:5!important;
  }
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-submenu-toggle span{
    font-size:16px!important;
    line-height:1!important;
  }

  /* Submenús cerrados por defecto en móvil. */
  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu{
    display:none!important;
    position:static!important;
    width:100%!important;
    min-width:0!important;
    margin:0 0 12px 0!important;
    padding:8px 0 8px 18px!important;
    background:#F3F8FC!important;
    border:0!important;
    border-left:4px solid var(--hope-blue)!important;
    border-radius:0!important;
    box-shadow:none!important;
    list-style:none!important;
  }
  .rgpro-hope-theme-only .hope-main-menu.is-open li.submenu-open > .sub-menu{
    display:block!important;
  }
  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu li{
    position:relative!important;
    border-bottom:0!important;
  }
  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu a{
    display:block!important;
    padding:14px 60px 14px 14px!important;
    font-size:19px!important;
    line-height:1.3!important;
    font-weight:620!important;
    color:var(--hope-dark)!important;
    white-space:normal!important;
    border-radius:7px!important;
  }
  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu .sub-menu{
    margin:4px 0 8px 0!important;
    padding-left:16px!important;
    background:#fff!important;
    border-left:3px solid var(--hope-gold)!important;
  }
  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu .hope-submenu-toggle{
    top:4px!important;
    right:4px!important;
    width:46px!important;
    height:46px!important;
  }
}

@media(max-width:430px){
  .rgpro-hope-theme-only .hope-shell{width:min(100% - 28px,var(--hope-shell))!important}
  .rgpro-hope-theme-only .hope-topbar{font-size:12px!important}
  .rgpro-hope-theme-only .hope-brand__logo{width:56px!important;height:56px!important;max-width:56px!important}
  .rgpro-hope-theme-only .hope-brand__text strong{font-size:18px!important}
  .rgpro-hope-theme-only .hope-menu-toggle{width:54px!important;height:54px!important;flex-basis:54px!important}
  .rgpro-hope-theme-only .hope-main-menu.is-open{max-height:calc(100dvh - 130px)!important;padding:16px 18px 24px!important}
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu > li > a{font-size:21px!important;padding:17px 58px 17px 16px!important}
  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu a{font-size:18px!important}
}


/* =========================================================
   Theme Only 03.8.20 — Sticky Header + Mobile Submenu Guard
   Corrección integrada: header fijo real, pesos sobrios y submenús visibles al abrir.
   ========================================================= */

/* Header fijo real como una sola unidad. Evita que la topbar azul se monte sobre el menú. */
.rgpro-hope-theme-only .hope-site-header{
  position:fixed!important;
  left:0!important;
  right:0!important;
  top:0!important;
  width:100%!important;
  z-index:99990!important;
  background:#fff!important;
  transform:none!important;
}
.rgpro-hope-theme-only.admin-bar .hope-site-header{top:32px!important}
.rgpro-hope-theme-only{padding-top:112px!important}
.rgpro-hope-theme-only .hope-navwrap{position:relative!important;top:auto!important;z-index:auto!important;background:#fff!important}
.rgpro-hope-theme-only .hope-topbar{position:relative!important;top:auto!important;z-index:auto!important;background:var(--hope-blue)!important}

/* Asegura que los anchors internos no queden ocultos detrás del header fijo. */
.rgpro-hope-theme-only :target{scroll-margin-top:128px!important}

@media(max-width:782px){
  .rgpro-hope-theme-only.admin-bar .hope-site-header{top:46px!important}
}

@media(max-width:980px){
  .rgpro-hope-theme-only{padding-top:122px!important}
  .rgpro-hope-theme-only :target{scroll-margin-top:138px!important}

  .rgpro-hope-theme-only .hope-topbar__inner{
    padding:6px 14px!important;
    gap:1px!important;
  }

  .rgpro-hope-theme-only .hope-nav{
    min-height:74px!important;
  }

  .rgpro-hope-theme-only .hope-brand__text strong{
    font-weight:600!important;
    letter-spacing:.005em!important;
  }

  /* Menú abierto: se queda bajo el header fijo y ocupa ancho completo. */
  .rgpro-hope-theme-only .hope-main-menu.is-open{
    position:absolute!important;
    top:100%!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
    width:100vw!important;
    max-height:calc(100dvh - 122px)!important;
    overflow-y:auto!important;
    padding:16px 22px 22px!important;
    background:#fff!important;
    border-top:1px solid var(--hope-border)!important;
    border-bottom:1px solid var(--hope-border)!important;
    box-shadow:0 16px 34px rgba(11,47,67,.14)!important;
    z-index:99980!important;
  }

  /* Menú menos Black: mantiene jerarquía pero baja peso visual. */
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu > li > a{
    font-size:20px!important;
    line-height:1.28!important;
    font-weight:580!important;
    letter-spacing:0!important;
    padding:16px 58px 16px 16px!important;
    color:var(--hope-dark)!important;
  }

  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu a{
    font-size:17px!important;
    line-height:1.32!important;
    font-weight:560!important;
    padding:12px 56px 12px 14px!important;
    color:var(--hope-dark)!important;
  }

  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-submenu-toggle{
    top:8px!important;
    right:8px!important;
    width:48px!important;
    height:48px!important;
    border-radius:10px!important;
    background:#EEF7FC!important;
  }

  /* Submenús cerrados por defecto y abiertos cuando el JS agrega submenu-open. */
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu li.menu-item-has-children > .sub-menu{
    display:none!important;
  }
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu li.menu-item-has-children.submenu-open > .sub-menu,
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu li.current-menu-ancestor > .sub-menu,
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu li.current-menu-parent > .sub-menu{
    display:block!important;
  }

  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu{
    margin:0 0 10px 0!important;
    padding:7px 0 7px 16px!important;
    background:#F5FAFD!important;
    border:0!important;
    border-left:3px solid var(--hope-blue)!important;
    box-shadow:none!important;
  }

  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu .sub-menu{
    margin:4px 0 7px 0!important;
    padding-left:14px!important;
    background:#fff!important;
    border-left:3px solid var(--hope-gold)!important;
  }

  /* Al abrir un segundo nivel, que Preinscripción Draft sí aparezca debajo de Global Draft. */
  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu li.submenu-open > .sub-menu{
    display:block!important;
  }

  body.hope-menu-open{overflow:hidden!important}
}

@media(max-width:430px){
  .rgpro-hope-theme-only{padding-top:116px!important}
  .rgpro-hope-theme-only .hope-main-menu.is-open{max-height:calc(100dvh - 116px)!important;padding:15px 16px 22px!important}
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-menu > li > a{font-size:19px!important;font-weight:580!important;padding:15px 54px 15px 14px!important}
  .rgpro-hope-theme-only .hope-main-menu.is-open .sub-menu a{font-size:16px!important;font-weight:560!important}
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-submenu-toggle{width:44px!important;height:44px!important;top:7px!important;right:6px!important}
}


/* =========================================================
   Theme Only 03.8.21 — Mobile Parent Link Guard
   El texto del item padre navega; la flecha despliega submenú.
   ========================================================= */
@media(max-width:980px){
  .rgpro-hope-theme-only .hope-main-menu.is-open .menu-item-has-children > a{
    position:relative!important;
    z-index:2!important;
    cursor:pointer!important;
  }
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-submenu-toggle{
    z-index:8!important;
    pointer-events:auto!important;
  }
}

/* =========================================================
   Theme Only 03.8.22 — Cache Guard + Footer Gap Fix
   Mantiene header fijo 03.8.20/21, elimina espacio antes del footer
   y evita depender del CSS adicional del personalizador.
   ========================================================= */
.rgpro-hope-theme-only .hope-page-main{
  padding-bottom:0!important;
}
.rgpro-hope-theme-only .hope-page-main .hope-content > *:last-child,
.rgpro-hope-theme-only .hope-front-content > *:last-child{
  margin-bottom:0!important;
}
.rgpro-hope-theme-only .hope-page-main .alignfull:last-child,
.rgpro-hope-theme-only .hope-front-content .alignfull:last-child{
  margin-bottom:0!important;
}
.rgpro-hope-theme-only .hope-page-main .hope-final-cta,
.rgpro-hope-theme-only .hope-page-main .hope-cta-final,
.rgpro-hope-theme-only .hope-front-content .hope-final-cta,
.rgpro-hope-theme-only .hope-front-content .hope-cta-final{
  margin-bottom:0!important;
}

/* Pequeña protección para que el botón flecha no cubra el enlace padre en móvil. */
@media(max-width:980px){
  .rgpro-hope-theme-only .hope-main-menu.is-open .menu-item-has-children > a{
    padding-right:68px!important;
  }
  .rgpro-hope-theme-only .hope-main-menu.is-open .hope-submenu-toggle{
    right:8px!important;
  }
}

/* =========================================================
   Theme Only 03.8.25 — Actual Home Gutenberg Hero Mobile Fix
   The live Home is rendered by the editable Gutenberg pattern
   (.hope-home-builder-hero), not template-parts/hero.php.
   This replaces the long stored kicker ONLY on small screens,
   removes the conflicting prior pseudo-label, and calms the H1 scale.
   ========================================================= */
@media(max-width:600px){
  .hope-front-content .hope-home-builder-hero .hope-kicker{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    max-width:100%!important;
    min-height:16px!important;
    font-size:0!important;
    line-height:1!important;
    letter-spacing:0!important;
    white-space:nowrap!important;
    color:#fff!important;
  }
  .hope-front-content .hope-home-builder-hero .hope-kicker::before{
    content:""!important;
    display:block!important;
    width:28px!important;
    min-width:28px!important;
    height:2px!important;
    flex:0 0 28px!important;
    background:#EFB61E!important;
  }
  .hope-front-content .hope-home-builder-hero .hope-kicker::after{
    content:"H.O.P.E. FOUNDATION"!important;
    display:block!important;
    margin:0!important;
    padding:0!important;
    background:none!important;
    color:#fff!important;
    font-size:10px!important;
    line-height:1.2!important;
    font-weight:580!important;
    letter-spacing:.09em!important;
    white-space:nowrap!important;
  }
  .hope-front-content .hope-home-builder-hero .hope-home-builder-hero__title{
    font-size:clamp(32px,8.6vw,36px)!important;
    line-height:1.07!important;
    letter-spacing:-.014em!important;
  }
}


/* =========================================================
   Theme Only 03.8.26 — Mobile hamburger, visually three lines only.
   Keep the touch target; remove the blue tile that competes with the logo.
   ========================================================= */
@media (max-width:980px){
  .rgpro-hope-theme-only .hope-menu-toggle{
    width:48px!important;
    height:48px!important;
    flex-basis:48px!important;
    padding:0!important;
    gap:6px!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .rgpro-hope-theme-only .hope-menu-toggle span{
    width:30px!important;
    height:2px!important;
    background:var(--hope-blue)!important;
    border-radius:0!important;
  }
}
@media (max-width:430px){
  .rgpro-hope-theme-only .hope-menu-toggle{
    width:48px!important;
    height:48px!important;
    flex-basis:48px!important;
  }
}
