:root{
  --bg-soft:#dfeaf2;
  --teal:#35d1a2;
  --orange:#f59629;
  --dark:#0d141a;
  --footer:#183A4A;
  --body:#1d1e20;
  --max:1224px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'DM Sans',sans-serif;
  color:var(--body);
  background:#fff;
  line-height:1.5;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}

.container{
  width:min(calc(100% - 48px), var(--max));
  margin:0 auto;
}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:#fff;
}
.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:191px;
  padding:24px 0;
}
.logo img{
  width:347px;
  max-width:45vw;
}
.desktop-nav{
  display:flex;
  gap:32px;
}
.desktop-nav a,
.mobile-nav a{
  font-size:16px;
  color:var(--dark);
}
.menu-toggle{
  display:none;
  background:none;
  border:0;
  padding:0;
  width:32px;
  height:28px;
  cursor:pointer;
}
.menu-toggle span{
  display:block;
  height:2px;
  background:var(--dark);
  margin:6px 0;
}
.mobile-nav{
  display:none;
  padding:0 16px 20px;
  background:#fff;
  border-top:1px solid #eee;
}
.mobile-nav.open{display:grid;gap:16px}

.hero{
  position:relative;
  min-height:965px;
  display:flex;
  align-items:center;
  overflow:hidden;
}
.hero-video,
.hero-overlay{
  position:absolute;
  inset:0;
}
.hero-video{
  width:100%;
  height:100%;
  object-fit:cover;
}
.hero-overlay{
  background:rgba(0,0,0,.5);
}
.hero-content{
  position:relative;
  z-index:2;
  text-align:center;
  padding:80px 0 56px;
}
.hero h1,
.hero-subtitle,
.question-card h3,
.hero-cta,
.text-block h2,
.text-block h3,
.contact-band h2,
.site-footer h4,
.section-title h3{
  font-family:'Outfit',sans-serif;
}
.hero h1{
  margin:0 auto;
  max-width:709px;
  color:var(--orange);
  font-size:64px;
  line-height:1.44;
  font-weight:600;
}
.hero-subtitle{
  margin:18px auto 78px;
  color:var(--teal);
  font-size:32px;
  line-height:1.3;
  font-weight:600;
}

.question-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
  margin-top:28px;
}
.question-card{
  min-height:260px;
  padding:30px 26px;
  text-align:left;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.16);
  border-radius:18px;
  box-shadow:0 18px 40px rgba(0,0,0,0.14);
  backdrop-filter:blur(6px);
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  position:relative;
  overflow:hidden;
}
.question-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:4px;
  background:#f59629;
}
.question-card:hover{
  transform:translateY(-6px);
  box-shadow:0 28px 60px rgba(0,0,0,0.2);
  border-color:rgba(255,255,255,0.28);
}
.question-card h3{
  margin:0 0 18px;
  color:#ffffff;
  font-family:'Outfit', sans-serif;
  font-size:22px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:-0.01em;
}
.question-card p{
  margin:0 0 12px;
  color:rgb(121,240,225);
  font-size:16px;
  line-height:1.55;
}
.question-card p:last-child{
  margin-bottom:0;
}
.hero-cta{
  display:inline-flex;
  margin-top:72px;
  padding:16px 40px;
  border:1px solid #fff;
  border-radius:28px;
  color:#fff;
  font-size:24px;
  font-weight:500;
  background:transparent;
}
.hero-cta:hover{
    background-color: orange;
    color: white;
}
.section{
  padding:42px 0 34px;
}
.soft-bg{ background:var(--bg-soft); }

.section-title{
  text-align:center;
  margin-bottom:28px;
}
.section-title h3{
  margin:0 auto;
  max-width:760px;
  font-family:'Outfit', sans-serif;
  font-size:48px;
  line-height:1.15;
  font-weight:700;
  color:#56585e;
  letter-spacing:-0.02em;
  text-align:center;
}

.value-top-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:30px;
  align-items:stretch; /* esto es clave */
  margin-top: 30px
}
.proposal-block,
.different-block{
  border-top:5px solid #f59629;
  background:white;
  padding:35px;
  border-radius:14px;
  box-shadow:0 15px 35px rgba(0,0,0,0.08);
  height:100%; /* importante */
  display:flex;
  flex-direction:column;
}
.proposal-block .accent,
.different-block .accent{
  margin-bottom:10px;
  font-size:40px;
  color:var(--orange);
}
.proposal-block p,
.proposal-block li,
.different-block p,
.different-block li{
  font-size:16px;
  line-height:1.25;
}
.proposal-block p,
.different-block p{
  margin:0 0 8px;
}
.proposal-block ul,
.different-block ul{
 margin-top:15px;
 padding-left:18px;
}
.proposal-block li,
.different-block li{
  margin-bottom:8px;
  line-height:1.5;
  color:#333;
}

.value-image-wrap{
  margin-top:40px;
  margin-bottom:-80px;
  position:relative;
  z-index:2;
}
.image-block-wide img{
  width:100%;
  height:480px;
  object-fit:cover;
  object-position:center 40%;
  border-radius:16px;
  display:block;
}
.image-block-wide{
  width:100%;
  max-width:1224px;
  margin:auto;
}

.why-wrap-single{
  padding-top:120px;
}
.why-block{
  width:100%;
  max-width:100%;
  background: #ffffff;
  padding: 48px 54px;
  border-radius: 20px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.08);
  border-top: 5px solid #f59629;
}
.why-block h2{
  margin: 0 0 22px;
  font-family: 'Outfit', sans-serif;
  font-size: 50px;
  line-height: 1.08;
  font-weight: 700;
  color: #56585e;
  text-align: center;
  letter-spacing: -0.02em;
}
.why-block p,
.why-block li{
  font-size:18px;
  line-height:1.25;
  color:#111;
}
.why-block p{
  margin: 0 0 14px;
  font-size: 17px;
  line-height: 1.7;
  color: #2f3941;
}
.why-block p:nth-of-type(2){
  margin-top: 18px;
  margin-bottom: 12px;
  font-weight: 700;
  color: #1f2c34;
}
.why-block ul{
  list-style: none;
  margin: 0 0 22px;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 26px;
}
.why-block li{
  position: relative;
  padding-left: 22px;
  font-size: 16px;
  line-height: 1.55;
  color: #2f3941;
}

.why-block li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #f59629;
  box-shadow: 0 0 0 4px rgba(245,150,41,0.14);
}
.why-block p:last-child{
  margin-bottom: 0;
}

.why-block:hover{
  box-shadow: 0 28px 60px rgba(0,0,0,0.12);
  transition: box-shadow .3s ease;
}
.final-line-wrap{
  margin-top:35px;
  text-align:center;
}
.centered-line{
  margin:0;
}
.small-accent{
  color:var(--orange);
  font-size:32px;
  line-height:1.2;
}

.contact-band{
  background:#fff;
  padding:40px 0;
}
.contact-band-inner{
  text-align:center;
}
.contact-band h2{
  color:var(--body);
  font-size:30px;
  margin:0 0 18px;
}
.email-form-wrap{
  max-width:640px;
  margin:0 auto;
}
.email-form,
.growexecute-form{
  display:flex;
  justify-content:center;
  align-items:stretch;
  gap:14px;
  max-width:640px;
  margin:0 auto;
}
.growexecute-form-field{
  flex:1 1 360px;
  min-width:260px;
}
.email-form input,
.growexecute-form input{
  width:100%;
  min-width:0;
  height:56px;
  border:1.5px solid #c8d0da;
  border-radius:18px;
  background:#fff;
  padding:0 20px;
  font:16px 'ABeeZee','Comic Sans MS',sans-serif;
  color:var(--body);
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
  box-shadow:0 8px 20px rgba(0,0,0,0.05);
}
.email-form input::placeholder,
.growexecute-form input::placeholder{
  color:#7b8794;
}
.email-form input:focus,
.growexecute-form input:focus{
  outline:none;
  border-color:#39d1b1;
  box-shadow:0 0 0 4px rgba(57,209,177,0.18);
}
.email-form button,
.growexecute-form button,
.workshop-cta-form button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--teal);
  min-width:160px;
  height:56px;
  padding:0 34px;
  border-radius:999px;
  background:var(--teal);
  color:#0d141a;
  font:600 18px 'Outfit','ABeeZee','Comic Sans MS',sans-serif;
  cursor:pointer;
  transition:background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
  box-shadow:0 12px 24px rgba(57,209,177,0.26);
}
.email-form button:hover,
.growexecute-form button:hover,
.workshop-cta-form button:hover{
  background:var(--orange);
  border-color:var(--orange);
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(245,150,41,.28);
}
.growexecute-form-message{
  margin-top:14px;
  padding:12px 14px;
  border-radius:14px;
  font-size:14px;
  line-height:1.5;
  background:#f4f7f9;
  color:var(--body);
}

.site-footer-pro{
  background:var(--footer);
  color:#fff;
  padding:8px 0 6px;
}
.footer-grid-pro{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  align-items:start;
  min-height:auto;
}
.footer-brand h4{
  margin:0 0 6px;
  font-size:17px;
  font-weight:600;
}
.footer-brand p,
.footer-contact p,
.footer-bottom-pro p{
  margin:0;
  font-size:12px;
  line-height:1.35;
}
.socials{
  display:flex;
  gap:10px;
  margin-bottom:10px;
}
.socials a{
  width:26px;
  height:26px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-weight:700;
  text-transform:lowercase;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  font-size:19px;
  transition:transform .2s ease, background-color .2s ease, border-color .2s ease;
}
.socials a:hover,
.socials a:focus-visible{
  transform:translateY(-1px);
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.28);
}
.footer-contact{
  display:grid;
  gap:10px;
  justify-content:start;
}
.footer-item .label{
  display:block;
  font-size:10px;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:3px;
  opacity:.82;
}
.footer-bottom-pro{
  padding-top:8px;
  border-top:1px solid rgba(255,255,255,.1);
  margin-top:8px;
}

.reveal{
  opacity:0;
  transform:translateY(34px);
  transition:opacity .8s ease, transform .8s ease;
}
.reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}


/* Final theme additions */
.site-header{position:sticky;top:0;z-index:999;background:#fff;box-shadow:0 4px 18px rgba(0,0,0,.05)}
.desktop-nav{display:flex;align-items:center;gap:0}
.desktop-nav a{position:relative;padding:0 18px;white-space:nowrap}
.desktop-nav a:not(:last-child)::after{content:"•";position:absolute;right:-3px;color:#8a8f98}
.page-hero-simple{padding:70px 0 30px}
.page-hero-simple .section-title h3{margin-bottom:14px}
.page-intro{max-width:930px;margin:0 auto 40px auto;text-align:center}
.two-col-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.card-panel{background:#fff;padding:34px;border-radius:16px;box-shadow:0 15px 35px rgba(0,0,0,.08);border-top:4px solid #f59629}
.card-panel h3{margin-top:0}
.badge-wrap{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.value-badge{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:999px;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.08);font-weight:700;color:#56585e}
.about-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:42px;align-items:start}
.about-image img{width:100%;border-radius:20px;box-shadow:0 25px 60px rgba(0,0,0,.15)}
.stack-panels{display:grid;gap:26px}
.mini-title{font-size:28px;font-weight:700;color:#56585e;margin:0 0 8px}
@media (max-width:919px){
  .two-col-grid,.about-grid{grid-template-columns:1fr}
  .desktop-nav{display:none}
  .page-hero-simple{padding:40px 0 18px}
}


/* Elementor compatibility */
.page-builder-content{
  width:min(calc(100% - 48px), 1224px);
  margin:0 auto;
}
.elementor-compatible-content:empty{
  display:none;
}


/* Módulos page exact-image layout */
.modules-layout-top{
  display:grid;
  grid-template-columns:minmax(320px, 520px) minmax(0, 1fr);
  gap:34px;
  align-items:start;
  margin:24px 0 36px;
}
.modules-image-card img,
.modules-center-image img{
  width:100%;
  display:block;
  border-radius:20px;
  box-shadow:0 18px 40px rgba(0,0,0,.12);
}
.modules-stack{
  display:grid;
  gap:24px;
}
.modules-center-image{
  max-width:520px;
  margin:0 auto;
}
.modules-layout-bottom{
  margin-top:20px;
}
@media (max-width: 919px){
  .modules-layout-top{
    grid-template-columns:1fr;
  }
  .modules-center-image{
    max-width:100%;
  }
}


/* v17 módulos ordered like published page */
.modules-cards-grid{
  margin: 34px 0;
  align-items: stretch;
}
.modules-images-row{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: start;
  max-width: 980px;
  margin: 18px auto 34px;
}
.modules-image-card{
  max-width: 480px;
  width: 100%;
  margin: 0 auto;
}
.modules-image-card img{
  width:100%;
  display:block;
  border-radius:20px;
  box-shadow:0 16px 36px rgba(0,0,0,.12);
  object-fit:cover;
}
.modules-images-row .modules-image-card:first-child img{
  aspect-ratio: 503 / 360;
}
.modules-images-row .modules-image-card:last-child img{
  aspect-ratio: 495 / 298;
}
@media (max-width: 919px){
  .modules-images-row{
    grid-template-columns:1fr;
    max-width:100%;
  }
  .modules-image-card{
    max-width:100%;
  }
  .modules-images-row .modules-image-card img{
    aspect-ratio:auto;
  }
}

/* v18 fix image alignment like module cards */
.modules-images-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:34px;
  max-width:980px;
  margin:34px auto;
}

.modules-image-card{
  width:100%;
  max-width:100%;
}

.modules-image-card img{
  width:100%;
  height:auto;
  border-radius:18px;
  box-shadow:0 12px 28px rgba(0,0,0,.12);
}

/* make images same visual width as module cards */
.modules-images-row,
.modules-cards-grid{
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
}

@media (max-width:900px){
  .modules-images-row{
    grid-template-columns:1fr;
  }
}


/* v23 workshops styled like home/modules */
.workshops-page .card-panel h3.accent{
  color:#f59629 !important;
}
.workshops-top-grid{
  align-items:stretch;
}
.workshop-mini-item + .workshop-mini-item{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(0,0,0,.08);
}
.workshop-mini-item h4{
  margin:0 0 8px;
  font-size:20px;
  line-height:1.3;
  color:#56585e;
}
.workshop-mini-item p,
.workshops-page .card-panel p,
.workshops-page .card-panel li{
  color:#56585e;
  line-height:1.65;
}
.workshop-strong-title{
  font-weight:700;
  margin-bottom:14px;
  color:#56585e;
}
.workshop-list{
  margin:0;
  padding-left:20px;
}
.workshop-list li{
  margin-bottom:10px;
}
.workshop-benefits-card{
  max-width:560px;
  margin:0 auto;
  text-align:center;
}
.workshops-image-card img{
  width:100%;
  height:340px;
  object-fit:cover;
  display:block;
  border-radius:22px;
  box-shadow:0 18px 40px rgba(0,0,0,.12);
}
@media (max-width:919px){
  .workshops-image-card img{
    height:240px;
  }
}


/* v24 workshops layout */
.workshops-grid-top{
align-items:stretch;
}

.workshop-benefits-card-full{
text-align:center;
padding-left:80px;
padding-right:80px;
}

@media (max-width:900px){

.workshop-benefits-card-full{
padding-left:20px;
padding-right:20px;
}

}



/* v26 workshops three boxes */
.three-box-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
  align-items:stretch;
}
.workshop-box{
  min-height:120px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.workshops-page .workshop-box h3.accent{
  color:#f59629 !important;
  margin:0;
}
@media (max-width: 919px){
  .three-box-grid{
    grid-template-columns:1fr;
  }
}


/* v27 workshops layout */
.workshop-grid{
max-width:980px;
margin:0 auto 40px auto;
display:grid;
grid-template-columns:1fr 1fr;
gap:28px;
}

.workshop-box{
text-align:center;
min-height:120px;
display:flex;
align-items:center;
justify-content:center;
}

.workshop-beneficios{
grid-column:1 / -1;
}

.workshop-image{
max-width:980px;
margin:0 auto;
}

.workshop-image img{
width:100%;
height:360px;
object-fit:cover;
border-radius:22px;
box-shadow:0 18px 40px rgba(0,0,0,.12);
}

@media(max-width:900px){
.workshop-grid{
grid-template-columns:1fr;
}
.workshop-beneficios{
grid-column:auto;
}
}



/* v28 workshops stacked full-width cards */
.workshop-stacked-cards{
  max-width:980px;
  margin:0 auto 42px auto;
  display:grid;
  gap:28px;
}
.workshop-detail-card{
  padding:36px 40px;
}
.workshops-page .workshop-detail-card h3.accent{
  color:#f59629 !important;
  margin-bottom:18px;
}
.workshops-page .workshop-detail-card h4{
  font-size:20px;
  margin:22px 0 10px;
  color:#56585e;
}
.workshops-page .workshop-detail-card p,
.workshops-page .workshop-detail-card li{
  color:#56585e;
  line-height:1.7;
}
.workshop-image{
  max-width:980px;
  margin:0 auto 28px auto;
}
.workshop-image img{
  width:100%;
  height:360px;
  object-fit:cover;
  border-radius:22px;
  box-shadow:0 18px 40px rgba(0,0,0,.12);
  display:block;
}
.workshops-benefits-text{
  max-width:980px;
  margin:0 auto;
  text-align:center;
  color:#56585e;
  line-height:1.75;
}
@media (max-width:900px){
  .workshop-detail-card{
    padding:26px 22px;
  }
  .workshop-image img{
    height:240px;
  }
}


.workshop-flex{
display:flex;
gap:40px;
align-items:flex-start;
}

.workshop-text{
flex:1.4;
}

.workshop-image-side{
flex:1;
}

.workshop-image-side img{
width:100%;
border-radius:16px;
box-shadow:0 14px 30px rgba(0,0,0,0.15);
}

@media(max-width:900px){
.workshop-flex{
flex-direction:column;
}
}



/* v31 workshops restore bottom image + center side images */
.workshop-flex{
  display:flex;
  gap:40px;
  align-items:stretch;
}

.workshop-text{
  flex:1.4;
}

.workshop-image-side{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px 0;
}

.workshop-image-side img{
  width:100%;
  max-width:100%;
  border-radius:16px;
  box-shadow:0 14px 30px rgba(0,0,0,0.15);
  display:block;
}

.workshop-bottom-image{
  max-width:980px;
  margin:34px auto 0;
}

.workshop-bottom-image img{
  width:100%;
  height:360px;
  object-fit:cover;
  border-radius:22px;
  box-shadow:0 18px 40px rgba(0,0,0,.12);
  display:block;
}

@media(max-width:900px){
  .workshop-flex{
    flex-direction:column;
  }

  .workshop-image-side{
    padding:0;
  }

  .workshop-bottom-image img{
    height:240px;
  }
}


/* v32 CTA form */
.workshop-cta{
max-width:700px;
margin:60px auto;
text-align:center;
}

.workshop-cta h2{
font-size:42px;
margin-bottom:28px;
color:#56585e;
}

.workshop-cta label{
display:block;
text-align:left;
margin-bottom:6px;
font-weight:500;
}

.workshop-cta input{
width:100%;
padding:16px;
border-radius:14px;
border:1px solid #ccc;
font-size:16px;
margin-bottom:22px;
}

.workshop-cta button{
background:#000;
color:#fff;
padding:14px 34px;
border:none;
border-radius:28px;
font-size:16px;
cursor:pointer;
}

.workshop-cta button:hover{
opacity:.9;
}


/* v33 white CTA section + functional form */
.workshop-cta-section{
  background:#fff;
  padding:72px 0 84px;
}

.workshop-cta{
  max-width:700px;
  margin:0 auto;
  text-align:center;
}

.workshop-cta h2{
  font-size:42px;
  line-height:1.15;
  margin:0 0 28px;
  color:#56585e;
}

.workshop-cta-form label{
  display:block;
  text-align:left;
  margin-bottom:6px;
  color:#000;
  font-weight:500;
}

.workshop-cta-form input{
  width:100%;
  padding:16px 18px;
  border-radius:16px;
  border:1.5px solid #111;
  font-size:16px;
  margin-bottom:18px;
  outline:none;
  background:#fff;
}

.workshop-cta-form input::placeholder{
  color:#8a8a8a;
}



.workshop-form-message{
  margin:0 0 16px;
  padding:12px 14px;
  border-radius:12px;
  font-size:14px;
}

.workshop-form-message.success{
  background:#ecfdf3;
  color:#166534;
  border:1px solid #bbf7d0;
}

.workshop-form-message.error{
  background:#fef2f2;
  color:#991b1b;
  border:1px solid #fecaca;
}

@media (max-width:900px){
  .workshop-cta-section{
    padding:56px 0 64px;
  }
  .workshop-cta h2{
    font-size:34px;
  }
}


/* v34 floating WhatsApp button */
.growexecute-whatsapp-float{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:9999;
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:#25D366;
  color:#fff !important;
  text-decoration:none;
  padding:12px 16px;
  border-radius:999px;
  box-shadow:0 12px 28px rgba(0,0,0,.18);
  font-weight:600;
  font-size:15px;
  transition:transform .2s ease, opacity .2s ease;
}

.growexecute-whatsapp-float:hover{
  transform:translateY(-2px);
  opacity:.96;
}

.growexecute-whatsapp-icon{
  font-size:18px;
  line-height:1;
}

@media (max-width: 680px){
  .growexecute-whatsapp-text{
    display:none;
  }
  .growexecute-whatsapp-float{
    padding:14px;
    right:16px;
    bottom:16px;
  }
}


/* v35 quienes somos professional */
.about-page .page-hero-simple{
  width:min(calc(100% - 48px), 1224px);
  margin:0 auto;
}

.about-hero{
  max-width:980px;
  margin:0 auto 36px;
  text-align:left;
}

.about-hero h1{
  font-size:62px;
  line-height:1.06;
  margin:0 0 22px;
  color:#111;
  letter-spacing:-0.02em;
}

.about-hero .grow{
  color:#238c6c;
}

.about-hero .execute{
  color:#f55e2a;
}

.about-hero p{
  max-width:900px;
  font-size:20px;
  line-height:1.65;
  color:#56585e;
  margin:0;
}

.about-card{
  background:#fff;
  border-radius:22px;
  padding:34px 38px;
  box-shadow:0 20px 50px rgba(0,0,0,.08);
  border-top:5px solid #f59629;
}

.about-purpose-card{
  max-width:980px;
  margin:0 auto 34px;
  text-align:left;
}

.about-purpose-card h2{
  text-align:center;
  font-size:54px;
  line-height:1.12;
  margin:0 0 18px;
  color:#56585e;
}

.about-card h3{
  font-size:28px;
  line-height:1.2;
  margin:0 0 18px;
  color:#56585e;
}

.about-purpose-card h3{
  font-size:44px;
  margin-bottom:16px;
}

.about-card p{
  color:#56585e;
  line-height:1.72;
  font-size:18px;
  margin:0 0 16px;
}

.about-grid-two{
  max-width:980px;
  margin:0 auto 34px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:30px;
  align-items:stretch;
}

.about-values-card{
  max-width:980px;
  margin:0 auto 34px;
  text-align:center;
}

.about-values-card h3{
  font-size:42px;
  margin-bottom:24px;
}

.values-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px 22px;
  justify-items:center;
  align-items:center;
  max-width:760px;
  margin:0 auto;
}

.value-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:150px;
  padding:14px 18px;
  border-radius:999px;
  background:#f7f8fa;
  color:#56585e;
  font-weight:700;
  font-size:18px;
  box-shadow:0 8px 22px rgba(0,0,0,.05);
}

.about-image-wrap{
  max-width:980px;
  margin:0 auto;
}

.about-final-image{
  width:100%;
  max-width:760px;
  margin:0 auto;
  display:block;
  border-radius:26px;
  box-shadow:0 22px 54px rgba(0,0,0,.14);
}

@media (max-width: 919px){
  .about-hero h1{
    font-size:42px;
  }

  .about-hero p{
    font-size:18px;
  }

  .about-purpose-card h2{
    font-size:40px;
  }

  .about-purpose-card h3{
    font-size:34px;
  }

  .about-grid-two{
    grid-template-columns:1fr;
  }

  .about-values-card h3{
    font-size:34px;
  }

  .values-grid{
    grid-template-columns:1fr 1fr;
  }

  .about-card{
    padding:26px 22px;
  }
}

@media (max-width: 640px){
  .values-grid{
    grid-template-columns:1fr;
  }
}


/* v36 filosofia + image side layout */

.about-philosophy-grid{
  max-width:980px;
  margin:0 auto 34px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px;
  align-items:stretch;
}

.about-image-card{
  display:flex;
  align-items:center;
  justify-content:center;
}

.about-side-image{
  width:100%;
  height:auto;
  border-radius:20px;
  box-shadow:0 18px 40px rgba(0,0,0,.15);
}

@media (max-width:920px){
  .about-philosophy-grid{
    grid-template-columns:1fr;
  }
}


/* v37 restore all quienes sections */
.about-philosophy-grid{
  max-width:980px;
  margin:0 auto 34px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px;
  align-items:stretch;
}

.about-image-card{
  display:flex;
  align-items:center;
  justify-content:center;
}

.about-side-image{
  width:100%;
  height:auto;
  display:block;
  border-radius:20px;
  box-shadow:0 18px 40px rgba(0,0,0,.15);
}

@media (max-width:920px){
  .about-philosophy-grid{
    grid-template-columns:1fr;
  }
}


/* v38 filosofia in same full-width box */
.about-purpose-card-full{
  max-width:980px;
  margin:0 auto 34px;
}

.about-purpose-content{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  gap:34px;
  align-items:center;
}

.about-purpose-text h2{
  text-align:left;
  font-size:54px;
  line-height:1.12;
  margin:0 0 18px;
  color:#56585e;
}

.about-purpose-text h3{
  font-size:42px;
  margin:0 0 16px;
  color:#56585e;
}

.about-purpose-image-wrap{
  display:flex;
  align-items:center;
  justify-content:center;
}

.about-purpose-image{
  width:100%;
  max-width:420px;
  display:block;
  border-radius:22px;
  box-shadow:0 18px 40px rgba(0,0,0,.15);
}

@media (max-width: 919px){
  .about-purpose-content{
    grid-template-columns:1fr;
  }

  .about-purpose-text h2{
    font-size:40px;
    text-align:center;
  }

  .about-purpose-text h3{
    font-size:34px;
    text-align:center;
  }

  .about-purpose-image{
    max-width:100%;
  }
}


/* v39 quienes: orange titles + justified premium text */
.about-purpose-text h3,
.about-grid-two h3,
.about-values-card h3{
  color:#f59629 !important;
}

.about-purpose-text h2,
.about-purpose-text h3{
  text-align:center;
}

.about-purpose-text p,
.about-grid-two p{
  text-align:justify;
}

.about-purpose-text p{
  line-height:1.8;
  font-size:18px;
}

.about-card{
  padding:40px;
}

@media (max-width:919px){
  .about-card{
    padding:28px 22px;
  }
}


/* v40 remove menu dots */
nav ul li::before,
.menu li::before,
.main-menu li::before{
    display:none !important;
    content:none !important;
}

nav ul{
    list-style:none;
}

/* modules titles orange */
.module-title,
.modulo-title,
.modules h3,
.module-box h3{
    color:#f59629 !important;
}



/* v41 definitive menu cleanup */
.clean-menu ul,
.clean-menu li,
.desktop-nav ul,
.desktop-nav li,
.mobile-nav ul,
.mobile-nav li{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

.clean-menu li::before,
.clean-menu li::after,
.desktop-nav li::before,
.desktop-nav li::after,
.mobile-nav li::before,
.mobile-nav li::after{
  content:none !important;
  display:none !important;
}

.desktop-nav{
  display:flex;
  align-items:center;
  gap:22px;
}

.desktop-nav a,
.mobile-nav a,
.desktop-nav li a,
.mobile-nav li a{
  text-decoration:none !important;
}

/* v41 definitive orange module titles */
.modules-page .card-panel h3,
.modules-page .card-panel h3.accent,
.modules-page .modules-cards-grid .card-panel h3,
.modules-page .modules-cards-grid .card-panel h3.accent{
  color:#f59629 !important;
}


/* v42 animated orange underline menu */
.desktop-nav a,
.mobile-nav a,
.desktop-nav li a,
.mobile-nav li a{
  position:relative;
  display:inline-block;
  padding-bottom:4px;
}

.desktop-nav a::after,
.mobile-nav a::after,
.desktop-nav li a::after,
.mobile-nav li a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:2px;
  background:#f59629;
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .28s ease;
}

.desktop-nav a:hover::after,
.mobile-nav a:hover::after,
.desktop-nav li a:hover::after,
.mobile-nav li a:hover::after,
.desktop-nav .current-menu-item > a::after,
.mobile-nav .current-menu-item > a::after{
  transform:scaleX(1);
}

/* orange tagline in modules page */
.modules-page em,
.modules-page p em{
  color:#f59629 !important;
  font-style:italic;
}
.accent.small-accent.centered-line{
    color:#f59629 !important;
}



/* Consejo Directivo Estructural */
.board-hero{
  background:linear-gradient(135deg, #183A4A 0%, #0d141a 100%);
  color:#fff;
  padding:70px 0 60px;
}
.board-hero-grid,
.board-two-col,
.board-ops-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:30px;
  align-items:stretch;
}
.board-hero-copy,
.board-hero-card,
.board-copy-card,
.board-state-card,
.board-feature-panel,
.board-ops-card,
.board-side-card,
.board-final-card{
  border-radius:18px;
  box-shadow:0 15px 35px rgba(0,0,0,.08);
}
.board-kicker,
.board-chip,
.board-mini-label{
  display:inline-block;
  font-family:'Outfit',sans-serif;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--orange);
}
.board-kicker{margin-bottom:12px;font-size:14px;}
.board-hero-copy h1,
.board-feature-panel h2,
.board-final-card h2{
  margin:0 0 14px;
  font-family:'Outfit',sans-serif;
  line-height:1.1;
  color:inherit;
}
.board-hero-copy h1{font-size:58px;max-width:720px;}
.board-lead{font-size:28px;line-height:1.25;color:var(--teal);font-weight:600;margin:0 0 18px;max-width:700px;}
.board-hero-copy p{font-size:18px;line-height:1.7;max-width:760px;}
.board-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px;}
.board-btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 34px;border-radius:999px;font-family:'Outfit',sans-serif;font-size:20px;font-weight:600;transition:.2s ease;}
.board-btn-primary{background:var(--teal);color:#0d141a;border:1px solid var(--teal);}
.board-btn-primary:hover{background:var(--orange);border-color:var(--orange);color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(245,150,41,.28);}
.home-hero-cta{margin-top:72px;}
.modules-cta{margin-top:0;}
.board-note{font-size:15px;color:rgba(255,255,255,.82);}
.board-hero-card{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);padding:30px;color:#fff;backdrop-filter:blur(6px);}
.board-hero-card ul{margin:18px 0 0;padding-left:18px;}
.board-hero-card li{margin-bottom:12px;line-height:1.6;color:#dfeaf2;}
.board-copy-card,
.board-state-card,
.board-feature-panel,
.board-ops-card,
.board-side-card,
.board-final-card{background:#fff;padding:34px;}
.board-intro-grid{align-items:stretch;}
.board-state-stack,.board-side-stack{display:grid;gap:20px;}
.board-state-stack{height:100%;}
.board-copy-card{height:100%;display:flex;flex-direction:column;justify-content:space-between;}
.board-state-card h4,.board-side-card h4,.board-step-list h4,.board-number-grid h4{margin:0 0 10px;font-family:'Outfit',sans-serif;color:#56585e;}
.board-state-card p,.board-copy-card p,.board-feature-panel p,.board-side-card p,.board-step-list p{font-size:16px;line-height:1.65;color:var(--body);}
.board-state-card-accent{border-top:5px solid var(--orange);}
.board-check-list{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:14px;}
.board-check-list li{position:relative;padding-left:28px;font-size:16px;line-height:1.55;}
.board-check-list li::before{content:'✓';position:absolute;left:0;top:0;color:var(--orange);font-weight:700;}
.board-check-list.compact li{font-size:15px;}
.board-chip{margin-bottom:12px;font-size:13px;}
.board-quote{margin-top:22px;padding:18px 20px;border-left:5px solid var(--orange);background:var(--bg-soft);border-radius:12px;}
.board-number-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:8px;}
.board-number-grid article{padding:22px;border-radius:16px;background:var(--bg-soft);height:100%;}
.board-number-grid strong{display:block;margin-bottom:10px;font-family:'Outfit',sans-serif;font-size:34px;color:var(--orange);line-height:1;}
.board-metrics{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px;}
.board-metrics div{padding:22px;border-radius:16px;background:var(--bg-soft);text-align:center;}
.board-metrics strong{display:block;font-family:'Outfit',sans-serif;font-size:40px;color:var(--orange);line-height:1;}
.board-metrics span{display:block;margin-top:8px;color:#56585e;font-size:14px;}
.board-step-list{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:18px;}
.board-step-list li{display:grid;grid-template-columns:48px 1fr;gap:16px;align-items:start;}
.board-step-list span{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#183A4A;color:#fff;font-family:'Outfit',sans-serif;font-weight:700;}
.board-final-cta{padding-top:20px;padding-bottom:60px;}
.board-final-card{text-align:center;border-top:5px solid var(--orange);}
.board-final-card p{font-size:18px;color:#56585e;margin-bottom:24px;}


/* v34 workshops CTA button matches site CTA and opens WhatsApp in a new tab */
.workshop-cta-form button.board-btn.board-btn-primary{
  width:auto;
  min-width:190px;
  border-radius:999px;
  padding:16px 34px;
  font-family:'Outfit',sans-serif;
  font-size:20px;
  font-weight:600;
  line-height:1.2;
  border:1px solid var(--teal);
  background:var(--teal);
  color:#0d141a;
  cursor:pointer;
  transition:.2s ease;
}

.workshop-cta-form button.board-btn.board-btn-primary:hover{
  background:var(--orange);
  border-color:var(--orange);
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(245,150,41,.28);
  opacity:1;
}

.workshop-cta-form{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.workshop-cta-form button.board-btn.board-btn-primary{
  align-self:center;
}


/* v43 valores hover refined */
.values-grid-hover{
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}

.value-card{
  position:relative;
  isolation:isolate;
  width:100%;
  min-width:0;
  min-height:150px;
  padding:26px 24px 24px;
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(247,250,252,0.98) 100%);
  border:1px solid rgba(24,58,74,0.08);
  box-shadow:0 18px 40px rgba(24,58,74,.08);
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:14px;
  overflow:hidden;
  cursor:default;
  transition:transform .32s ease, box-shadow .32s ease, border-color .32s ease, background .32s ease;
}

.value-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(53,209,162,.14), transparent 40%);
  opacity:.9;
  z-index:-1;
  transition:opacity .32s ease, transform .32s ease;
}

.value-card::after{
  content:"";
  width:56px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg, var(--orange), var(--teal));
  display:block;
}

.value-title{
  margin:0;
  padding-top:4px;
  font-family:'Outfit',sans-serif;
  font-size:23px;
  line-height:1.15;
  font-weight:700;
  color:#183A4A;
  letter-spacing:-0.01em;
}

.value-description{
  margin:0;
  max-height:0;
  overflow:hidden;
  opacity:0;
  transform:translateY(10px);
  color:#4f5d67;
  font-size:15px;
  line-height:1.72;
  text-align:left;
  transition:max-height .38s ease, opacity .3s ease, transform .3s ease;
}

.value-card:hover,
.value-card:focus-visible{
  transform:translateY(-8px);
  box-shadow:0 24px 54px rgba(24,58,74,.14);
  border-color:rgba(245,150,41,0.28);
  background:linear-gradient(180deg, #ffffff 0%, #f8fbfc 100%);
}

.value-card:hover::before,
.value-card:focus-visible::before{
  opacity:1;
  transform:scale(1.04);
}

.value-card:hover .value-description,
.value-card:focus-visible .value-description{
  max-height:240px;
  opacity:1;
  transform:translateY(0);
}

.value-card:nth-child(2),
.value-card:nth-child(5){
  transform:translateY(10px);
}

.value-card:nth-child(2):hover,
.value-card:nth-child(2):focus-visible,
.value-card:nth-child(5):hover,
.value-card:nth-child(5):focus-visible{
  transform:translateY(2px);
}

@media (hover:none){
  .value-description{
    max-height:none;
    opacity:1;
    transform:none;
  }

  .value-card,
  .value-card:nth-child(2),
  .value-card:nth-child(5){
    transform:none;
  }
}

@media (max-width:919px){
  .values-grid-hover{
    grid-template-columns:1fr 1fr;
  }

  .value-card:nth-child(2),
  .value-card:nth-child(5){
    transform:none;
  }
}

@media (max-width:640px){
  .values-grid-hover{
    grid-template-columns:1fr;
    gap:18px;
  }

  .value-card{
    min-height:auto;
    padding:22px 20px;
  }

  .value-title{
    font-size:20px;
  }
}
