/* Global Connect Education · landing
   Medidas tomadas del frame de Figma "Global Connect Education" (1440px). */
/* Figtree (SIL OFL) autoalojada para poder ajustar sus métricas: con ascent-override la línea base
   cae en el mismo píxel que en Figma (sin él, los textos de 16/24, 14/20 y 36/46 quedan 1px más arriba). */
@font-face{font-family:'Figtree';font-style:normal;font-weight:300 900;font-display:swap;ascent-override:97%;
  src:url(/fonts/figtree-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Figtree';font-style:normal;font-weight:300 900;font-display:swap;ascent-override:97%;
  src:url(/fonts/figtree-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

:root{
  --ink:#141518;
  --ink-2:#48494d;
  --line:#c1c1c1;
  --yellow:#ffd02a;
  --blue:#2673f9;
  --soft:#f7f7f7;
  --stroke:1.333px;
  /* Animación de entrada de globalconnect.ai (preset "slide in" de Webflow): 100px, 1s, outQuart. */
  --reveal-distance:100px;
  --reveal-duration:1s;
  --ease-out-quart:cubic-bezier(.165,.84,.44,1);
}
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;background:#fff;color:var(--ink);
  font-family:'Figtree',sans-serif;font-size:16px;line-height:24px;font-weight:400;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
}
h1,h2,h3,p,ul,ol{margin:0;padding:0;}
ul,ol{list-style:none;}
img{display:block;max-width:none;}
a{color:inherit;text-decoration:none;}
strong{font-weight:700;}
.thin{font-weight:400;}

/* ===== Botones ===== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  background:var(--ink);color:#fff;border:0;border-radius:40px;white-space:nowrap;
  font:inherit;text-align:center;cursor:pointer;transition:transform .3s var(--ease-out-quart),opacity .3s ease;
}
.btn:hover{opacity:.86;transform:translateY(-2px);}
.btn:active{transform:none;}
.btn:focus-visible,.faq-q:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:3px;}
.btn-sm{height:54px;padding:18px 24px;border-radius:30px;font-size:14px;line-height:20px;}
.btn-md{height:66px;padding:24px 36px;font-size:16px;line-height:24px;}
.btn-lg{height:76px;padding:28px 56px;font-size:18px;line-height:28px;}
/* El trazo de 1.333px del diseño va por dentro y no ocupa layout: sombra interior (un border se redondearía a 1px). */
.btn-outline{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 var(--stroke) var(--ink);}
.btn-block{display:flex;width:100%;}
.btn-row{display:flex;flex-wrap:wrap;gap:24px;}

/* ===== Logo (isotipo + núcleo degradado + logotipo) ===== */
.gc-logo{position:relative;display:block;flex:none;width:111.003px;height:56.001px;}
.gc-logo-lg{width:138.754px;height:70px;}
.gc-logo>*{position:absolute;}
.gc-logo-mark{left:21.271%;top:0;width:57.309%;height:61.315%;}
.gc-logo-word{left:0;top:72.05%;width:100%;height:27.95%;}
.gc-logo-core{
  left:58.715%;top:20.909%;width:9.845%;height:19.513%;
  background:url(/images/landing/gradiente-global.png) center/cover no-repeat;
  -webkit-mask:url(/images/landing/nucleo-mask.svg) center/87.48% 87.48% no-repeat;
          mask:url(/images/landing/nucleo-mask.svg) center/87.48% 87.48% no-repeat;
}

/* ===== Cabecera ===== */
.site-header{height:110px;background:#fff;display:flex;align-items:center;justify-content:center;}
.bar{width:1192px;max-width:calc(100% - 48px);display:flex;align-items:center;justify-content:space-between;}
/* Una sola navegación: en escritorio .nav-panel no pinta caja (sus hijos se reparten en la barra, como en Figma);
   por debajo de 992px pasa a ser el panel lateral de globalconnect.ai. */
.nav-panel{display:contents;}
.nav-burger,.nav-dim{display:none;}
.nav{flex:none;display:flex;align-items:center;gap:34px;}
/* En Figma (español) la caja mide 400px y los enlaces (491px) desbordan 91px a la izquierda; así coincide al píxel. */
.nav:lang(es){width:491px;margin-left:-91px;gap:0;justify-content:space-between;}
.nav>a,.nav-toggle{display:flex;align-items:center;gap:10px;flex:none;white-space:nowrap;}
.nav-toggle{padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;}
.nav .chev{width:13.0667px;height:7.2333px;margin:-.7px;transition:transform .3s ease;}
.nav-dd{position:relative;display:flex;flex:none;}
.nav-dd.is-open .chev{transform:rotate(180deg);}
.bar-actions{display:flex;align-items:center;gap:10px;flex:none;}
.lang{position:relative;flex:none;min-width:87px;height:56px;display:flex;align-items:center;justify-content:center;}
.lang-toggle{display:flex;align-items:center;gap:10px;height:54px;padding:0 16px;border:1px solid #e6e3e3;border-radius:50px;background:#fff;color:var(--ink);font:inherit;cursor:pointer;}
.lang-toggle img{width:22px;height:22px;}
/* Desplegables de escritorio (los de globalconnect.ai): tarjeta blanca que aparece con 200/300 ms. */
.nav-list,.lang-menu{position:absolute;top:100%;left:0;z-index:20;min-width:100%;margin-top:8px;padding:8px 16px;border-radius:10px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.2);
  opacity:0;visibility:hidden;transform:translateY(3rem);transition:opacity .2s ease,transform .3s ease,visibility 0s .3s;}
.nav-list{left:-16px;margin-top:18px;}
.lang-menu{left:1px;min-width:calc(100% - 2px);}
.nav-list::before,.lang-menu::before{content:"";position:absolute;left:0;right:0;top:-20px;height:20px;}
.nav-list a,.lang-menu a{display:block;line-height:40px;white-space:nowrap;}
.nav-dd.is-open .nav-list,.lang.is-open .lang-menu,.nav-dd:focus-within .nav-list,.lang:focus-within .lang-menu{opacity:1;visibility:visible;transform:none;transition:opacity .2s ease,transform .3s ease,visibility 0s;}
@media (hover:hover) and (min-width:992px){
  .nav-dd:hover .nav-list,.lang:hover .lang-menu{opacity:1;visibility:visible;transform:none;transition:opacity .2s ease,transform .3s ease,visibility 0s;}
  .nav-dd:hover .chev{transform:rotate(180deg);}
}

/* ===== Hero ===== */
.hero{position:relative;height:660px;overflow:hidden;background:#fff;display:flex;align-items:flex-end;justify-content:center;padding:0 24px 82px 25px;isolation:isolate;}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.4) 75%);}
.hero-content{width:931px;max-width:100%;display:flex;flex-direction:column;align-items:center;gap:24px;color:#fff;text-align:center;}
/* El titular puede ser más ancho que el bloque de 931px (en otro idioma ocupa más) y, si parte en dos líneas, las equilibra. */
.hero h1{font-size:48px;line-height:60px;font-weight:400;align-self:center;width:max-content;max-width:min(1192px,100vw - 48px);text-wrap:balance;}
.hero p{width:848px;max-width:100%;font-size:18px;line-height:28px;}
.hero .btn-row{justify-content:center;}

/* ===== Secciones ===== */
.section{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:50px;padding:100px 24px;overflow:hidden;background:#fff;}
.soft{background:var(--soft);}
.section-head{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;max-width:100%;}
.section-head p{width:700px;max-width:100%;}
.section-head.muted p{color:var(--ink-2);}
.section-head.wide h2{width:1216px;max-width:100%;}
h2{font-size:40px;line-height:46px;font-weight:700;max-width:100%;}
/* Líneas equilibradas al partir un titular; en español a 1440px mandan los cortes de línea de Figma. */
h2:not(:lang(es)){text-wrap:balance;}
.section-head h2.w-726{width:726px;}
.section-head p.w-538{width:538px;}

/* Una experiencia global */
.goals,.cta{background:var(--yellow);isolation:isolate;}
.goals::before,.cta::before{content:"";position:absolute;inset:0;z-index:-1;background:center/cover no-repeat;pointer-events:none;}
.goals::before{background-image:url(/images/landing/texture-yellow.jpg);mix-blend-mode:multiply;opacity:.3;}
.cta::before{background-image:url(/images/landing/texture-cta.jpg);mix-blend-mode:soft-light;}
.goal-cards{width:948px;max-width:100%;display:flex;justify-content:space-between;align-items:stretch;gap:24px;}
.goal-card{width:300px;min-height:250px;flex:none;background:#fff;border-radius:16px;padding:20px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;text-align:center;}
.goal-card img{width:48px;height:48px;}
.goal-card h3{font-size:20px;line-height:24px;font-weight:700;align-self:stretch;}
.goal-card p{width:214px;max-width:100%;font-size:14px;line-height:20px;color:var(--ink-2);}

/* Programas con cupo abierto */
.program-cards{display:flex;justify-content:center;align-items:stretch;gap:40px;max-width:100%;}
.program-card{width:360px;flex:none;background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:16px;}
.badge{display:block;padding:5px 10px;border-radius:100px;background:var(--blue);color:#fff;font-size:12px;line-height:16px;font-weight:300;white-space:nowrap;}
.badge-yellow{background:var(--yellow);color:var(--ink);}
.program-photo{position:relative;width:100%;height:200px;border-radius:10px;overflow:hidden;flex:none;}
.program-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out-quart);}
.program-photo::after{content:"";position:absolute;inset:0;border:1px solid #e5e4f0;border-radius:10px;}
.program-place{width:100%;display:flex;align-items:center;gap:10px;}
.program-place h3{flex:1 0 0;min-width:1px;font-size:16px;line-height:24px;font-weight:700;}
.program-info{width:100%;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:20px;color:var(--ink-2);}
.program-date{width:100%;font-size:12px;line-height:16px;color:var(--ink-2);}
.program-card .btn{margin-top:auto;}
.program-card{transition:transform .3s var(--ease-out-quart),box-shadow .3s ease;}
.program-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(20,21,24,.10);}
.program-card:hover .program-photo img{transform:scale(1.04);}

.flag{position:relative;display:block;flex:none;width:30px;height:23px;border-radius:4px;overflow:hidden;filter:drop-shadow(2px 4px 2px rgba(0,0,0,.1));}
.flag img{position:absolute;left:0;top:0;width:100%;height:100%;}
.flag-kr img{top:-.81%;width:100.02%;height:102.8%;}
.flag-lg{width:60px;height:45px;border-radius:8px;}

/* Así convertimos objetivos */
.step-cards{width:1140px;max-width:100%;display:flex;justify-content:space-between;gap:14px;}
.step-card{width:274px;min-height:180px;flex:none;background:#fff;border-radius:16px;padding:20px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;}
.step-card.is-active{background:var(--yellow);}
.step-num{display:block;width:100%;font-size:12px;line-height:16px;font-weight:700;}
.step-card h3{width:100%;font-size:20px;line-height:24px;font-weight:700;}
.step-card p{width:100%;}

/* Aprendizaje global */
.audience-cards{width:948px;max-width:100%;display:flex;justify-content:space-between;gap:24px;}
.audience-card{width:440px;min-height:280px;flex:none;background:#fff;border:1px solid var(--yellow);border-radius:16px;padding:30px;display:flex;flex-direction:column;gap:24px;}
.audience-card h3{font-size:20px;line-height:24px;font-weight:700;}
/* Viñeta con el glifo "•" de Figtree, como la pinta Figma (el disc del navegador es más grande). */
.audience-card ul{color:var(--ink-2);}
.audience-card li{position:relative;margin-left:24px;}
.audience-card li::before{content:"•";position:absolute;left:-24px;width:24px;text-align:center;}
.audience-card li+li{margin-top:6px;}

/* Alianzas */
.partner-list{width:754px;max-width:100%;display:flex;justify-content:space-between;align-items:flex-start;gap:24px;}
.partner-list li{display:flex;flex-direction:column;align-items:center;gap:24px;flex:none;}
.partner-list p{font-size:24px;line-height:26px;color:var(--ink-2);text-align:center;white-space:nowrap;}

/* Preguntas frecuentes */
.faq{padding-block:80px;}
.faq-list{width:948px;max-width:100%;display:flex;flex-direction:column;gap:40px;}
.faq-item{border-bottom:1px solid var(--line);padding-bottom:29px;}
.faq-q{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:0;border:0;background:none;color:inherit;font:inherit;font-size:20px;line-height:24px;font-weight:700;text-align:left;cursor:default;}
.faq-q.has-answer{cursor:pointer;}
.faq-chev{position:relative;display:block;flex:none;width:26px;height:26px;overflow:hidden;transition:transform .4s ease;}
.faq-chev img{position:absolute;left:4.416px;top:8.212px;width:17.1667px;height:9.5833px;}
.faq-q[aria-expanded="true"] .faq-chev{transform:rotate(180deg);}
/* Respuesta con el estilo de las preguntas frecuentes de globalconnect.ai: Figtree Light 16/24, gris auxiliar,
   a todo el ancho y a 24px de la pregunta; va entre la pregunta y la línea divisoria. */
.faq-a{display:grid;grid-template-rows:0fr;visibility:hidden;color:var(--ink-2);font-weight:300;transition:grid-template-rows .4s ease,visibility 0s .4s;}
.faq-a>div{min-height:0;overflow:hidden;}
.faq-a p{padding-top:22px;}
.faq-a p+p{padding-top:10px;}
.faq-a.is-open{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .4s ease,visibility 0s;}

/* Cierre */
.closing{display:flex;align-items:center;justify-content:center;gap:53px;padding:100px 24px;}
.closing-copy{width:531.382px;flex:none;display:flex;flex-direction:column;align-items:flex-start;gap:30px;}
.closing-copy h2{font-size:36px;line-height:46px;align-self:stretch;}
.closing-copy p{width:466px;max-width:100%;color:var(--ink-2);}
.closing-copy .btn-row{gap:30px;}
.closing-photo{width:555px;height:400px;flex:none;border-radius:20px;object-fit:cover;}

/* Pie */
.rainbow{height:12px;background:linear-gradient(90deg,rgb(98,222,26) 0%,rgb(255,221,50) 24.5%,rgb(50,232,223) 77.395%,rgb(38,115,249) 100%);}
.site-footer{background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:106px;padding:100px 24px 30px;}
.footer-top{display:flex;align-items:flex-start;justify-content:center;gap:86px;max-width:100%;}
.footer-brand{width:140px;flex:none;display:flex;flex-direction:column;align-items:flex-start;gap:40px;}
.socials{display:flex;gap:16px;}
.social{position:relative;display:block;width:36px;height:36px;flex:none;}
.social img{width:100%;height:100%;}
.social-glyph{background:#fff;border-radius:8px;}
.social-glyph img{position:absolute;left:22.5%;top:21.55%;width:50%;height:56.91%;}
.footer-cols{display:flex;align-items:flex-start;gap:20px;}
.footer-col{flex:none;display:flex;flex-direction:column;gap:20px;}
.footer-col h3{font-size:20px;line-height:24px;font-weight:700;}
.footer-col ul{display:flex;flex-direction:column;gap:18px;}
.footer-col a:hover,.footer-bottom a:hover,.nav a:hover,.lang-menu a:hover{text-decoration:underline;text-underline-offset:4px;}
.w-152{width:152px;}.w-160{width:160px;}.w-219{width:219px;}
.claims-icon{display:block;width:48px;height:48px;}
.footer-bottom{width:1140px;max-width:100%;border-top:1px solid #fff;padding-top:31px;text-align:center;}

/* ===== Animaciones de entrada (las de globalconnect.ai) =====
   El estado oculto solo existe si hay JS (clase .js puesta en <head>) y el visitante admite movimiento;
   landing.js quita data-reveal al terminar, así el elemento vuelve a su CSS normal, sin transform. */
@media (prefers-reduced-motion:no-preference){
  .js [data-reveal]{opacity:0;transform:translate3d(0,var(--reveal-distance),0);}
  .js [data-reveal="left"]{transform:translate3d(calc(var(--reveal-distance) * -1),0,0);}
  .js [data-reveal="grow"]{transform:scale(.75);}
  .js [data-reveal].is-revealing{
    opacity:1;transform:none;will-change:opacity,transform;
    transition:opacity var(--reveal-duration) var(--ease-out-quart) var(--reveal-delay,0ms),transform var(--reveal-duration) var(--ease-out-quart) var(--reveal-delay,0ms);
  }
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .btn,.program-card,.program-photo img,.faq-chev,.faq-a,.faq-a.is-open,.lang-menu,.nav-list,.nav .chev,.nav-panel,.nav-dim,.nav-burger span,.lang.is-open .lang-menu,.nav-dd.is-open .nav-list{transition:none !important;}
  .btn:hover,.program-card:hover,.program-card:hover .program-photo img{transform:none;}
}
@media print{.js [data-reveal]{opacity:1;transform:none;}}

/* ===== Adaptación a pantallas menores (el diseño de Figma solo define 1440px) ===== */
@media (max-width:1240px){
  h2{text-wrap:balance;}
  .program-cards{flex-wrap:wrap;}
  .step-cards{display:grid;grid-template-columns:repeat(2,274px);justify-content:center;gap:16px;}
  .footer-top{flex-direction:column;gap:56px;}
  .footer-cols{flex-wrap:wrap;gap:40px 20px;}
}
@media (max-width:1180px){
  .closing{flex-direction:column;gap:48px;}
  .closing-copy{width:555px;max-width:100%;}
  .closing-photo{max-width:100%;height:auto;aspect-ratio:555/400;}
}
@media (max-width:1000px){
  .goal-cards,.audience-cards{flex-direction:column;align-items:center;width:auto;}
  .audience-card{width:440px;max-width:100%;min-height:0;}
  .partner-list{flex-direction:column;align-items:center;width:auto;gap:40px;}
}
/* ===== Menú móvil de globalconnect.ai (por debajo de 992px, el punto de corte de su Webflow) =====
   Cabecera fija de 110px con el logotipo a 100px y la hamburguesa; al abrir, un panel blanco de 280px entra por la
   derecha en 300 ms sobre un velo negro al 50 %, y las tres rayas forman una X (400 ms, inOutQuint). */
@media (max-width:991px){
  html.nav-open{overflow:hidden;}
  .site-header{position:sticky;top:0;z-index:50;}
  .bar{width:100%;max-width:none;padding:0 20px;}
  .gc-logo:not(.gc-logo-lg){width:100px;height:50.45px;}
  .nav-burger{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;flex:none;width:48px;height:48px;margin-right:-8px;padding:0;border:0;background:none;cursor:pointer;}
  .nav-burger span{display:block;width:24px;height:2px;background:var(--ink);transition:transform .4s cubic-bezier(.86,0,.07,1),opacity .4s cubic-bezier(.86,0,.07,1);}
  .nav-open .nav-burger span:nth-child(1){transform:translateY(8px) rotate(45deg);}
  .nav-open .nav-burger span:nth-child(2){opacity:0;}
  .nav-open .nav-burger span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
  .nav-dim{display:block;position:fixed;inset:0;z-index:1;background:rgba(0,0,0,.5);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility 0s .3s;}
  .nav-open .nav-dim{opacity:1;visibility:visible;transition:opacity .3s ease,visibility 0s;}
  .nav-panel{display:flex;flex-direction:column;position:fixed;top:0;right:0;bottom:0;z-index:2;width:280px;max-width:100%;padding:112px 19.6px 40px;background:#fff;overflow-y:auto;overscroll-behavior:contain;
    transform:translateX(100%);visibility:hidden;transition:transform .3s ease,visibility 0s .3s;}
  .nav-open .nav-panel{transform:none;visibility:visible;transition:transform .3s ease,visibility 0s;}
  .nav,.nav:lang(es){flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;width:auto;margin:0;padding-bottom:20px;}
  .nav>a,.nav-toggle{width:100%;padding:16px 0;justify-content:space-between;white-space:normal;text-align:left;}
  .nav-dd{flex-direction:column;}
  .nav .chev{content:url(/images/landing/chevron-menu.svg);width:16px;height:16px;margin:0;}   /* el chevrón del menú móvil de globalconnect.ai */
  /* Dentro del panel los desplegables son acordeones: se abren en su sitio, sin tarjeta ni sombra. */
  .nav-list,.lang-menu{position:static;display:grid;grid-template-rows:0fr;min-width:0;margin:0;padding:0;border-radius:0;box-shadow:none;opacity:1;transform:none;visibility:hidden;transition:grid-template-rows .3s ease,visibility 0s .3s;}
  .nav-list::before,.lang-menu::before{content:none;}
  .nav-list>div,.lang-menu>div{min-height:0;overflow:hidden;}
  .nav-dd.is-open .nav-list,.lang.is-open .lang-menu{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .3s ease,visibility 0s;}
  .nav-dd:not(.is-open):focus-within .nav-list,.lang:not(.is-open):focus-within .lang-menu{visibility:hidden;}
  .nav-list a{padding:12px 0 12px 24px;font-size:14px;line-height:20px;font-weight:300;white-space:normal;}
  .lang-menu a{padding:0 16px 0 24px;font-size:14px;line-height:40px;font-weight:300;}
  .bar-actions{flex-direction:column;align-items:stretch;gap:10px;}
  .lang{display:block;width:100%;height:auto;min-width:0;padding:16px 0;}
  .lang-toggle{width:100%;height:58px;justify-content:center;}
  .bar-actions .btn-sm{width:100%;height:64px;padding:22px 20px;font-size:16px;line-height:20px;}
}
@media (max-width:640px){
  .hero{height:auto;min-height:560px;padding-top:120px;padding-bottom:56px;}
  .hero h1{font-size:34px;line-height:42px;}
  .hero p{font-size:16px;line-height:24px;}
  .section{padding:64px 20px;gap:36px;}
  h2,.closing-copy h2{font-size:30px;line-height:36px;}
  .section-head h2 br{display:none;}
  .btn-row{gap:16px;}
  .btn-md{height:58px;padding-block:17px;}
  .btn-lg{height:66px;padding:19px 36px;}
  .goal-card,.program-card{width:100%;max-width:360px;}
  .step-cards{grid-template-columns:minmax(0,360px);}
  .step-card{width:100%;min-height:150px;}
  .partner-list p{font-size:20px;line-height:24px;}
  .faq-q{font-size:18px;}
  .closing{padding:64px 20px;}
  .footer-col{width:calc(50% - 10px);}
  .site-footer{gap:56px;padding-top:64px;}
  .footer-bottom{font-size:14px;line-height:22px;}
}
@media (max-width:420px){
  .hero .btn,.closing .btn{width:100%;}
  .footer-col{width:100%;}
}
