/*
Theme Name: Generando Realidades
Theme URI: https://generandorealidades.com/
Description: Tema hijo de Neve para la reconstrucción de Generando Realidades.
Author: Generando Realidades
Template: neve
Version: 0.1.0
Text Domain: generando-realidades
*/

@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/poppins-latin-400.woff2') format('woff2')}
@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/poppins-latin-500.woff2') format('woff2')}
@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/poppins-latin-600.woff2') format('woff2')}
@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/poppins-latin-700.woff2') format('woff2')}

:root{--gr-text:#272626;--gr-title:#121212;--gr-mint:#dbf2f1;--gr-yellow:#fceb96;--gr-testimonials:#edeae8;--gr-footer:#18191d;--gr-purple:#77317c}
body,button,input,textarea,select,h1,h2,h3,h4,h5,h6{font-family:Poppins,Arial,Helvetica,sans-serif}
body{color:var(--gr-text);font-size:17px;line-height:1.7}

/* El logotipo y los menús siguen gestionados por WordPress y Neve. */
.header .header-main-inner{min-height:121px;background:#fff}
.header .header-main-inner .container{max-width:1170px}
.header .site-logo img{width:132px;max-width:132px;height:auto}
.header .primary-menu-ul>li>.wrap>a{color:#111;font-size:13.6px;font-weight:600}
.header .primary-menu-ul>li>.wrap>a:hover,.header .primary-menu-ul>li>.wrap>a:focus-visible{color:var(--gr-purple)}
#site-footer,#site-footer .footer--row-inner{background:var(--gr-footer);color:#fff}
#site-footer .footer--row-inner .container{max-width:1170px}
#site-footer .footer--row-inner{min-height:105px;padding-top:15px;padding-bottom:15px}
#site-footer .hfg-slot.left{display:block}
#site-footer .footer-menu{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:0 28px}
#site-footer .footer-menu li{margin:0}
#site-footer a,#site-footer p,#site-footer .component-wrap{color:#fff;font-size:16px;line-height:1.7}
#site-footer a:hover,#site-footer a:focus-visible{color:var(--gr-mint)}
#site-footer .builder-item.cr{margin-top:10px}
#site-footer .builder-item.cr p{margin:0}

/* La portada usa bloques nativos dentro de la plantilla de ancho completo. */
body.home .single-page-container,body.home .single-page-container>.row,body.home .nv-single-page-wrap,body.home .nv-content-wrap{width:100%;max-width:none;padding:0;margin:0}
body.home .nv-single-page-wrap{flex-basis:100%}
body.home .nv-content-wrap>*{margin-top:0;margin-bottom:0}
body.home .nv-content-wrap>.alignfull{width:100%;max-width:none;margin-left:0;margin-right:0}
body.home .nv-content-wrap>.wp-block-group .gr-inner{width:min(100% - 40px,1170px);margin-left:auto;margin-right:auto}
body.home .nv-content-wrap>.wp-block-group h2,body.home .nv-content-wrap>.wp-block-group h3,body.home .nv-content-wrap>.wp-block-group p,body.home .nv-content-wrap>.wp-block-group figure,body.home .nv-content-wrap>.wp-block-group .wp-block-buttons{margin-top:0}
body.home .nv-content-wrap>.wp-block-group p{font-size:17px;line-height:1.7}
body.home .nv-content-wrap>.wp-block-group h2{color:var(--gr-title);font-size:50px;font-weight:600;line-height:1.22}
body.home .nv-content-wrap>.wp-block-group .wp-block-columns{gap:40px;margin-bottom:0}
body.home .nv-content-wrap>.wp-block-group .wp-block-column{min-width:0}

.gr-hero.wp-block-cover{min-height:650px;padding:40px 20px;background:#e8e8e8}
.gr-hero .wp-block-cover__background{opacity:0}
.gr-hero .wp-block-cover__image-background{object-position:52% 27%}
.gr-hero .wp-block-cover__inner-container{width:min(100%,1050px);text-align:center}
.gr-hero .gr-hero-title{margin:0;color:#111;font-size:70px;font-weight:600;line-height:1.18}

.gr-intro{display:flex;align-items:center;justify-content:center;min-height:500px;background:var(--gr-mint);text-align:center}
.gr-intro h2{margin-bottom:28px}
.gr-intro p{max-width:1160px;margin-left:auto;margin-right:auto}

.gr-mission{display:flex;align-items:center;justify-content:center;min-height:545px;background:#fff}
.gr-mission .gr-inner{max-width:1050px}
.gr-mission .gr-mission-columns{align-items:center}
.gr-mission .gr-mission-copy{flex-basis:60%}
.gr-mission h2{margin-bottom:30px;color:var(--gr-purple)!important}
.gr-mission .gr-mission-image{flex-basis:40%;text-align:center}
.gr-mission-photo img{max-height:390px;width:auto;object-fit:contain}

.gr-how{display:flex;align-items:center;justify-content:center;min-height:620px;padding:60px 20px;background:var(--gr-yellow)}
.gr-how .gr-inner{max-width:1010px}
.gr-how h2{margin-bottom:26px}
.gr-how p+p{margin-top:28px!important}

.gr-charlie{display:flex;align-items:center;justify-content:center;min-height:680px;background:#fff}
.gr-charlie .gr-inner{max-width:1050px}
.gr-charlie .gr-charlie-columns{align-items:center}
.gr-charlie-copy{flex-basis:52%}
.gr-charlie h2{margin-bottom:28px}
.gr-charlie-copy p{max-width:500px;margin-bottom:28px}
.gr-charlie-image{flex-basis:48%;text-align:center}
.gr-charlie-photo img{width:min(100%,480px);height:auto}
.gr-buttons .wp-block-button__link{display:inline-block;border-radius:0;padding:13px 24px;background:var(--gr-mint);color:#111;font-size:16px;font-weight:700;line-height:1.5;text-decoration:none}
.gr-buttons .wp-block-button__link:hover,.gr-buttons .wp-block-button__link:focus-visible{background:#b9e5e2;color:#111}

.gr-testimonials{min-height:1008px;padding:80px 20px;background:var(--gr-testimonials)}
.gr-testimonials .gr-inner{max-width:1130px}
.gr-testimonials h2{text-align:center;margin-bottom:25px}
.gr-testimonials .wp-block-separator{width:100%;max-width:none;margin:0 0 30px;border:0;border-top:2px solid #111}
.gr-video{width:100%;margin-bottom:0}
.gr-video .wp-block-embed__wrapper{aspect-ratio:16/9;background:#000}
.gr-video iframe{display:block;width:100%;height:100%;aspect-ratio:16/9;border:0}

.gr-values{padding:70px 20px 140px;background:#fff}
.gr-values .gr-inner{max-width:1090px}
body.home .gr-values h2{margin-bottom:70px;font-size:42px;text-align:center}
.gr-values .gr-values-columns{gap:70px!important}
.gr-values h3{margin-bottom:8px;font-size:20px;font-weight:700;line-height:1.35}
.gr-values p{margin-bottom:30px}
.gr-cta{padding:20px 20px 75px;text-align:center}
.gr-cta .wp-block-buttons{justify-content:center}
.gr-funders{padding:0 20px 23px;background:#fff}
.gr-funders h2{margin-bottom:65px;text-align:center}
.gr-funders .gr-funders-columns{align-items:center;gap:35px}
.gr-funders .wp-block-column{display:flex;align-items:center;justify-content:center}
.gr-funders figure,.gr-funders img{margin:0}
.gr-logo-madrid img{width:106px;height:auto}
.gr-logo-fundacion img{width:min(100%,390px);height:auto}
.gr-logo-obra img{width:min(100%,300px);height:auto}

@media(min-width:601px){
  #site-footer .footer--row-inner{padding-top:8px;padding-bottom:8px}
  #site-footer .hfg-grid-bottom{grid-template-columns:1fr!important}
  #site-footer .footer-menu{max-width:750px}
}

@media(max-width:959px){
  .gr-mission .gr-mission-copy,.gr-charlie-copy{flex-basis:55%}
  .gr-mission .gr-mission-image,.gr-charlie-image{flex-basis:45%}
}
@media(max-width:600px){
  body{font-size:15px;line-height:1.6}
  .header .header-main-inner{min-height:106px}
  .header .site-logo img{width:76px;max-width:76px}
  .header .navbar-toggle{width:47px;height:34px}
  #site-footer .footer--row-inner{min-height:156px}
  #site-footer .footer-menu{gap:0 14px}
  #site-footer a,#site-footer p,#site-footer .component-wrap{font-size:13px}
  body.home .nv-content-wrap>.wp-block-group .gr-inner{width:min(100% - 40px,350px)}
  body.home .nv-content-wrap>.wp-block-group h2{font-size:30px;line-height:1.3}
  body.home .nv-content-wrap>.wp-block-group p{font-size:15px;line-height:1.6}
  body.home .nv-content-wrap>.wp-block-group .wp-block-columns{flex-direction:column;gap:0}
  .gr-hero.wp-block-cover{min-height:400px;padding:20px}
  .gr-hero .wp-block-cover__image-background{object-position:52% 27%}
  .gr-hero .gr-hero-title{font-size:35px;line-height:1.2}
  .gr-intro{min-height:500px;padding:50px 20px}
  .gr-intro h2{margin-bottom:28px}
  .gr-mission{min-height:933px;padding:60px 20px;align-items:flex-start}
  .gr-mission .gr-inner{width:min(100%,350px)}
  .gr-mission h2{margin-bottom:26px}
  .gr-mission .gr-mission-image{margin-top:30px}
  .gr-mission-photo img{max-height:350px}
  .gr-how{min-height:1394px;padding:75px 32px;align-items:flex-start}
  .gr-how .gr-inner{width:100%!important}
  .gr-how h2{margin-bottom:27px}
  .gr-how p+p{margin-top:32px!important}
  .gr-charlie{min-height:1034px;padding:70px 46px;align-items:flex-start}
  .gr-charlie .gr-inner{width:100%!important}
  .gr-charlie h2{margin-bottom:27px}
  .gr-charlie-copy p{margin-bottom:28px}
  .gr-charlie-image{margin-top:30px}
  .gr-charlie-photo img{max-width:270px}
  .gr-buttons .wp-block-button__link{padding:11px 20px;font-size:14px}
  .gr-testimonials{min-height:411px;padding:40px 30px}
  .gr-testimonials h2{margin-bottom:28px}
  .gr-testimonials .wp-block-separator{margin-bottom:25px}
  .gr-values{padding:45px 20px 0}
  body.home .gr-values h2{font-size:42px;line-height:1.15;margin-bottom:125px}
  .gr-values .gr-values-columns{width:calc(100% - 40px);margin:0 auto}
  .gr-values h3{font-size:20px;line-height:1.35}
  body.home .nv-content-wrap>.gr-values p{font-size:20px;line-height:1.6}
  .gr-values p{margin-bottom:35px}
  .gr-cta{padding:70px 20px 60px}
  .gr-cta .wp-block-button__link{width:170px}
  .gr-funders{padding:0 20px 45px}
  .gr-funders h2{margin-bottom:40px}
  .gr-funders .gr-funders-columns{gap:34px!important}
  .gr-logo-fundacion img{width:300px}
  .gr-logo-obra img{width:250px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Páginas interiores: contenido en bloques, maquetación en el tema hijo. */
body.gr-rebuilt-page .single-page-container,body.gr-rebuilt-page .single-page-container>.row,body.gr-rebuilt-page .nv-single-page-wrap,body.gr-rebuilt-page .nv-content-wrap{width:100%;max-width:none;padding:0;margin:0}
body.gr-rebuilt-page .nv-single-page-wrap{flex-basis:100%}
body.gr-rebuilt-page .nv-content-wrap>*{margin-top:0;margin-bottom:0}
body.gr-rebuilt-page .nv-content-wrap>.alignfull{width:100%;max-width:none;margin-left:0;margin-right:0}
.gr-page{background:#fff}
.gr-transparency{padding:0!important}
.gr-page .gr-page-inner{width:min(100% - 40px,1140px);margin-left:auto;margin-right:auto}
.gr-page h1,.gr-page h2,.gr-page h3,.gr-page p,.gr-page ul{margin-top:0}
.gr-page h1,.gr-page h2{color:#272626;font-weight:600}
.gr-page a{color:#4d85b9;text-decoration:underline}
.gr-page a:hover,.gr-page a:focus-visible{color:var(--gr-purple)}

.gr-legal{padding:67px 20px 82px}
.gr-legal .gr-page-inner{max-width:1140px}
.gr-legal h1{font-size:70px;line-height:1.2;margin-bottom:30px}
.gr-legal h2{font-size:50px;line-height:1.2;margin:0 0 30px}
.gr-legal h3{font-size:26px;line-height:1.3;margin:28px 0 14px}
.gr-legal p,.gr-legal li{font-size:17px;line-height:1.7}
.gr-legal p{margin-bottom:30px}
.gr-legal ul{padding-left:23px;margin:30px 0}
.gr-legal li{margin:10px 0 0}

.gr-transparency-intro{min-height:415px;padding:45px 20px 22px;text-align:center}
.gr-transparency-intro .gr-page-inner{max-width:900px}
.gr-transparency-intro h1{font-size:35px;line-height:1.25;margin-bottom:42px}
.gr-transparency-intro .wp-block-separator{border:0;border-top:5px solid var(--gr-mint);width:50%;margin:0 auto 24px}
.gr-transparency-intro p{font-size:17px;line-height:1.65;margin-bottom:28px}
.gr-transparency-institutional{min-height:766px;padding:25px 20px 25px;background:var(--gr-yellow)}
.gr-transparency-institutional .gr-page-inner,.gr-transparency-economic .gr-page-inner{max-width:920px}
.gr-transparency h2{font-size:22px;line-height:1.4;font-weight:700;margin-bottom:24px}
.gr-transparency-institutional .gr-document-list{padding-left:42px}
.gr-transparency-institutional li{font-size:17px;line-height:1.65;margin-bottom:10px}
.gr-pending-document{color:#4d85b9;text-decoration:underline;text-underline-offset:2px}
.gr-transparency-economic{min-height:780px;padding:24px 20px 55px}
.gr-transparency-economic p{font-size:17px;line-height:1.7;margin-bottom:28px}
.gr-transparency-economic h2:not(:first-child){margin-top:70px}

.gr-rsc{min-height:646px;padding:54px 20px 45px}
.gr-rsc h1,.gr-contact h1{font-size:70px;line-height:1.2;font-weight:600}
.gr-rsc h1{margin-bottom:34px}
.gr-rsc .wpforms-container{max-width:1140px;margin:0}
.gr-rsc .wpforms-field-name,.gr-rsc .wpforms-field-email{max-width:685px}
@media(min-width:601px){
  .gr-rsc .wpforms-container .wpforms-field-email{margin-bottom:2px!important}
  .gr-rsc .wpforms-container .wpforms-field-textarea{margin-bottom:0!important}
  .gr-rsc .wpforms-submit-container{margin-top:5px!important}
}
.gr-contact{min-height:910px;padding:100px 20px 105px}
.gr-contact .gr-page-inner{width:min(100% - 40px,1170px)}
.gr-contact h1{margin:0 0 78px 20px}
.gr-contact .wpforms-container{max-width:820px;margin-left:0!important;margin-right:0!important}

.gr-page .wpforms-container .wpforms-field{padding:0;margin-bottom:20px}
.gr-page .wpforms-container .wpforms-field-label,.gr-page .wpforms-container legend{color:#272626;font-family:Poppins,Arial,sans-serif;font-size:17px;font-weight:700;line-height:1.4}
.gr-page .wpforms-container input[type=text],.gr-page .wpforms-container input[type=email],.gr-page .wpforms-container textarea{max-width:none;height:39px;border:1px solid #ccc;border-radius:0;background:#fff;color:#272626;font-family:Poppins,Arial,sans-serif;font-size:16px;padding:7px 10px}
.gr-page .wpforms-container textarea{height:120px;min-height:120px;resize:vertical}
.gr-page .wpforms-container .wpforms-field-textarea textarea{height:120px!important;min-height:120px!important}
.gr-page .wpforms-container .wpforms-field-name .wpforms-field-row{max-width:none}
.gr-page .wpforms-container .wpforms-field-name .wpforms-field-row-block{width:49%}
.gr-page .wpforms-container .wpforms-field-name .wpforms-field-row-block+.wpforms-field-row-block{margin-left:2%}
.gr-page .wpforms-container .wpforms-field-sublabel{font-family:Poppins,Arial,sans-serif;font-size:13px}
.gr-page .wpforms-container .wpforms-submit{height:auto;padding:11px 16px;border:1px solid #ddd!important;border-radius:0!important;background:#eee!important;color:#333!important;font-family:Poppins,Arial,sans-serif;font-size:17px;font-weight:700}
.gr-page .wpforms-container .wpforms-submit:hover,.gr-page .wpforms-container .wpforms-submit:focus-visible{background:#d9f1f0!important;color:#111!important}
.gr-page .wpforms-container .wpforms-required-label{color:#e22}
.gr-contact .wpforms-field-radio{margin-top:4px}
.gr-contact .wpforms-field-radio legend{margin-bottom:6px}
.gr-contact .wpforms-field-radio li{margin-bottom:8px}
.gr-contact .wpforms-field-radio label{font-size:17px;line-height:1.5}
.gr-contact .wpforms-field-radio input{accent-color:#333}
.gr-contact .wpforms-field-textarea{margin-top:16px}

@media(max-width:600px){
  .gr-page .gr-page-inner{width:min(100% - 40px,350px)}
  .gr-legal{padding:65px 15px 60px}
  .gr-legal .gr-page-inner{width:100%;max-width:none}
  .gr-legal h1{font-size:35px;line-height:1.1;margin-bottom:35px}
  .gr-legal h2{font-size:30px;line-height:1.22;margin:27px 0 18px}
  .gr-legal h3{font-size:22px}
  .gr-legal p,.gr-legal li{font-size:15px;line-height:1.65}
  .gr-legal p{margin-bottom:25px}
  .gr-legal ul{margin-top:0;margin-bottom:24px}
  .gr-legal li{margin-top:0;margin-bottom:8px}
  .gr-transparency-intro{min-height:697px;padding:42px 20px 18px}
  .gr-transparency-intro h1{font-size:30px;margin-bottom:36px}
  .gr-transparency-intro p{font-size:15px;line-height:1.65}
  .gr-transparency-institutional{min-height:891px;padding:25px 20px 0}
  .gr-transparency-institutional h2{margin-bottom:18px}
  .gr-transparency h2{font-size:20px}
  .gr-transparency-institutional .gr-document-list{padding-left:24px}
  .gr-transparency-institutional li{font-size:15px;line-height:1.65;margin-bottom:5px}
  .gr-transparency-economic{min-height:1341px;padding:22px 20px 45px}
  .gr-transparency-economic p{font-size:15px;line-height:1.65;margin-bottom:25px}
  .gr-rsc{min-height:582px;padding:54px 0 26px}
  .gr-rsc .gr-page-inner{width:calc(100% - 16px);margin-left:16px;margin-right:0}
  .gr-rsc h1{font-size:38px;margin-bottom:40px}
  .gr-contact h1{font-size:44px}
  .gr-rsc .wpforms-container .wpforms-field{margin-bottom:14px}
  .gr-rsc .wpforms-container .wpforms-field-email{margin-bottom:1px}
  .gr-rsc .wpforms-container .wpforms-field-textarea{margin-bottom:0}
  .gr-rsc .wpforms-container .wpforms-submit-container{margin-top:6px!important}
  .gr-contact{min-height:973px;padding:86px 20px 65px}
  .gr-contact h1{margin:0 0 199px 0}
  .gr-contact .wpforms-container{width:calc(100% + 50px);max-width:none;margin-left:-20px!important}
  .gr-contact .wpforms-field-radio li{margin-bottom:3px}
  .gr-page .wpforms-container .wpforms-field-label,.gr-page .wpforms-container legend{font-size:15px}
  .gr-page .wpforms-container input[type=text],.gr-page .wpforms-container input[type=email],.gr-page .wpforms-container textarea{font-size:15px}
  .gr-page .wpforms-container .wpforms-submit{font-size:15px}
  .gr-contact .wpforms-field-radio label{font-size:15px}
}
