
:root {
  color-scheme: light;
  --paper: #fffefa;
  --ink: #273039;
  --muted: #68747c;
  --cyan: #00b8e0;
  --lime: #cad407;
  --yellow: #ffcd00;
  --deep-cyan: #06758c;
  --line: rgba(39, 48, 57, 0.11);
  font-family: "Avenir Next", Avenir, "Segoe UI", sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); }
a { color: inherit; text-decoration: none; }

.page-shell { max-width: 1600px; margin: 0 auto; overflow: hidden; }
.site-header { height: 104px; padding: 0 7.1%; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; }
.brand-logo { display: block; width: 206px; height: auto; }
.desktop-nav { display: flex; gap: 37px; font-size: 14.5px; font-weight: 500; color: #657171; }
.desktop-nav a { transition: color 160ms ease; }
.desktop-nav a:hover, .desktop-nav .nav-active { color: var(--ink); }
.header-cta { padding: 12px 18px; border-radius: 999px; background: var(--yellow); color: var(--ink); font-size: 13.5px; font-weight: 700; }
.header-cta span { margin-left: 5px; }

.hero { min-height: 710px; display: grid; grid-template-columns: 1.025fr .975fr; align-items: center; padding: 25px 7.1% 68px; gap: 5.5%; }
.hero-copy { padding-top: 6px; }
.eyebrow { display: inline-block; margin: 0 0 25px; padding: 9px 13px; border-radius: 999px; background: rgba(202, 212, 7, .15); color: #626900; font-size: 12.5px; text-transform: uppercase; letter-spacing: 1.15px; font-weight: 700; }
.eyebrow > span { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--lime); margin-right: 8px; }
h1 { max-width: 610px; margin: 0; font-size: clamp(49px, 5.35vw, 76px); line-height: 1.055; letter-spacing: -4.3px; font-weight: 560; }
h1 > span { position: relative; color: var(--deep-cyan); white-space: nowrap; }
h1 > span::after { position: absolute; right: -2px; bottom: -3px; left: 0; height: 8px; background: var(--yellow); border-radius: 90% 30% 70% 45%; content: ""; transform: rotate(-1.8deg); }
.hero-manifesto { margin: 20px 0 0; font-size: 15px; font-weight: 700; color: var(--ink); }
.hero-description { max-width: 466px; margin: 10px 0 0; color: var(--muted); font-size: 14.5px; line-height: 1.8; }
.hero-actions { display: flex; align-items: center; gap: 23px; margin-top: 32px; }
.button-primary { padding: 16px 20px; background: var(--cyan); color: #102f38; border-radius: 999px; font-size: 13.5px; font-weight: 700; box-shadow: 0 9px 21px rgba(0,184,224,.18); }
.button-primary span { margin-left: 8px; }
.button-secondary { font-size: 13.5px; font-weight: 650; color: #49565b; }
.demo-note { color: #949999; margin: 13px 0 0; font-size: 12.5px; }
.hero-divider { width: 100%; max-width: 485px; height: 1px; background: var(--line); margin: 34px 0 18px; }
.areas-label { display: block; color: #818888; font-size: 12.5px; text-transform: uppercase; letter-spacing: 1.1px; margin-bottom: 13px; }
.areas-list { display: flex; gap: 8px; flex-wrap: wrap; }
.area-item { display: inline-flex; align-items: center; gap: 7px; padding: 8px 10px; border-radius: 999px; background: #f7f7f0; color: #46515a; font-size: 12.5px; }
.area-dot { width: 7px; height: 7px; border-radius: 50%; }

.hero-visual { height: 600px; position: relative; display: flex; align-items: center; justify-content: center; }
.photo-stage { position: relative; width: 91%; height: 560px; background: #e3e3de; border-radius: 43% 39% 30px 95px / 36% 32% 28px 100px; overflow: hidden; box-shadow: 0 25px 60px rgba(46,68,73,.12); }
.hero-photo { width: 100%; height: 100%; object-fit: cover; object-position: 50% 37%; }
.photo-gradient { position: absolute; inset: 52% 0 0; background: linear-gradient(transparent,rgba(23,37,40,.36)); }
.floating-pill { position: absolute; top: 33px; right: 28px; display: flex; align-items: center; gap: 8px; padding: 11px 13px; background: var(--yellow); border-radius: 999px; font-size: 12.5px; font-weight: 700; transform: rotate(2deg); }
.pill-spark { color: #263038; font-size: 15px; }
.floating-card { position: absolute; left: 24px; bottom: 40px; display: flex; align-items: center; gap: 11px; padding: 14px 15px; border-radius: 14px; background: rgba(253,252,249,.96); box-shadow: 0 10px 25px rgba(25,31,30,.13); }
.card-icon { color: var(--deep-cyan); font-size: 25px; }
.card-label { display: block; margin-bottom: 5px; color: #818a87; font-size: 12.5px; }
.floating-card strong { display: block; font-size: 13px; font-weight: 620; }
.photo-caption { position: absolute; right: 15px; bottom: 13px; color: rgba(255,255,255,.83); font-size: 12.5px; }
.shape { position: absolute; z-index: -1; }
.shape-peach { top: 12%; right: 0; width: 112px; height: 112px; background: rgba(255, 205, 0, .4); border-radius: 39% 61% 62% 38%; transform: rotate(19deg); }
.shape-blue { bottom: 4%; left: 0; width: 108px; height: 108px; background: rgba(0, 184, 224, .2); border-radius: 43% 57% 48% 52%; }
.shape-dots { top: 11%; left: 0; z-index: 1; color: var(--lime); font-size: 42px; }
.shape-loop { right: -5px; bottom: 110px; z-index: 1; width: 42px; height: 42px; border: 5px solid var(--cyan); border-radius: 50%; }
.shape-confetti { z-index: 1; width: 9px; height: 26px; border-radius: 8px; }
.confetti-one { top: 37px; right: 40px; background: var(--lime); transform: rotate(32deg); }
.confetti-two { bottom: 45px; left: 20px; background: var(--yellow); transform: rotate(-39deg); }

.solutions-strip { padding: 29px 7.1% 32px; border-top: 1px solid var(--line); background: linear-gradient(100deg, rgba(202,212,7,.08), rgba(255,205,0,.05) 50%, rgba(0,184,224,.07)); display: flex; justify-content: space-between; align-items: center; }
.strip-kicker { color: #748080; font-size: 13.5px; }
.strip-kicker > span { margin-right: 7px; color: var(--deep-cyan); }
.strip-options { display: flex; align-items: center; gap: 17px; font-size: 13px; color: #415054; }
.strip-separator { color: #abb206; }

.discovery-section { position: relative; padding: 103px 7.1% 88px; background: #fffefa; }
.discovery-heading { max-width: 750px; margin: 0 auto 68px; text-align: center; }
.section-kicker { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 18px; color: #717875; font-size: 12.5px; font-weight: 700; letter-spacing: 1.25px; text-transform: uppercase; }
.section-kicker > span { color: var(--lime); font-size: 18px; }
.discovery-heading h2 { margin: 0; color: var(--ink); font-size: clamp(38px, 4.05vw, 60px); font-weight: 600; line-height: 1.11; letter-spacing: -2.7px; }
.discovery-heading h2 > span { position: relative; color: var(--deep-cyan); white-space: nowrap; }
.discovery-heading h2 > span::after { position: absolute; right: -3px; bottom: -5px; left: 1px; height: 6px; background: var(--yellow); border-radius: 70% 35% 65% 40%; content: ""; transform: rotate(-1deg); }
.section-intro { max-width: 630px; margin: 21px auto 0; color: var(--muted); font-size: 14px; line-height: 1.85; }

.discovery-content { display: grid; grid-template-columns: 1.07fr .93fr; align-items: center; gap: 9%; max-width: 1200px; margin: 0 auto; }
.experience-collage { position: relative; min-height: 552px; }
.experience-photo { position: relative; overflow: hidden; background: #f4f3ed; box-shadow: 0 19px 42px rgba(52,67,69,.11); }
.experience-photo img { width: 100%; height: 100%; object-fit: cover; }
.experience-photo-main { z-index: 1; width: 91%; height: 390px; margin-left: 2%; border-radius: 25px 96px 25px 25px; }
.experience-photo-main img { object-position: 47% 48%; }
.experience-photo-secondary { position: absolute; right: 0; bottom: 4px; z-index: 2; width: 59%; height: 220px; border: 7px solid #fffefa; border-radius: 68px 22px 22px 22px; }
.experience-photo-secondary img { object-position: 46% 44%; }
.photo-tag { position: absolute; padding: 10px 14px; border-radius: 999px; font-size: 12.5px; font-weight: 700; }
.photo-tag-main { right: 15px; bottom: 15px; background: var(--yellow); color: var(--ink); }
.photo-tag-main > span { margin-left: 4px; }
.photo-tag-secondary { right: 11px; bottom: 11px; padding: 9px 11px; background: rgba(255,254,250,.94); color: #323d40; font-size: 12.5px; }
.collage-doodle { position: absolute; z-index: 3; line-height: 1; }
.collage-doodle-top { top: -19px; right: 0; color: var(--cyan); font-size: 40px; }
.collage-doodle-bottom { bottom: 82px; left: 7%; color: var(--lime); font-size: 55px; }
.collage-confetti { position: absolute; bottom: 11px; left: 21%; width: 9px; height: 29px; border-radius: 9px; background: var(--yellow); transform: rotate(-33deg); }

.discovery-explanation { padding: 7px 0 12px; }
.explanation-kicker { margin: 0 0 19px; color: #5f6b6e; font-size: 13.5px; font-weight: 700; }
.experience-step { display: grid; grid-template-columns: 49px 1fr; gap: 14px; padding: 18px 0 19px; border-top: 1px solid var(--line); }
.step-number { display: inline-flex; width: 39px; height: 39px; align-items: center; justify-content: center; border-radius: 13px; color: var(--ink); font-size: 13.5px; font-weight: 700; }
.step-cyan .step-number { background: rgba(0,184,224,.16); }
.step-lime .step-number { background: rgba(202,212,7,.18); }
.step-yellow .step-number { background: rgba(255,205,0,.2); }
.experience-step h3 { margin: 2px 0 7px; color: var(--ink); font-size: 14px; font-weight: 700; }
.experience-step p { max-width: 365px; margin: 0; color: var(--muted); font-size: 13.5px; line-height: 1.75; }
.discovery-link { display: inline-flex; align-items: center; gap: 9px; margin-top: 19px; padding: 12px 1px 8px; border-bottom: 2px solid var(--yellow); color: #066f83; font-size: 13.5px; font-weight: 700; }
.discovery-link > span { font-size: 15px; }

.section-bottom-note { max-width: 1000px; margin: 52px auto 0; padding: 20px 24px; border-radius: 16px; background: linear-gradient(100deg, rgba(0,184,224,.08), rgba(202,212,7,.075) 58%, rgba(255,205,0,.10)); color: #536164; font-size: 13.5px; text-align: center; }
.section-bottom-note > span { margin-right: 7px; color: var(--deep-cyan); }

.work-areas-section { position: relative; padding: 105px 6.25% 96px; background: linear-gradient(180deg, #f5f8f5 0%, #f7f8f3 68%, #fffefa 100%); }
.work-areas-heading { max-width: 770px; margin: 0 auto 58px; text-align: center; }
.work-areas-heading h2 { margin: 0; color: var(--ink); font-size: clamp(38px, 4.15vw, 60px); font-weight: 610; line-height: 1.12; letter-spacing: -2.9px; }
.work-areas-heading h2 > span { position: relative; color: var(--deep-cyan); white-space: nowrap; }
.work-areas-heading h2 > span::after { position: absolute; right: 0; bottom: -5px; left: 1px; height: 6px; background: var(--yellow); border-radius: 68% 32% 72% 37%; content: ""; transform: rotate(-1.1deg); }
.work-areas-heading > p:last-child { max-width: 610px; margin: 20px auto 0; color: var(--muted); font-size: 14.5px; line-height: 1.8; }

.work-areas-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; max-width: 1260px; margin: 0 auto; align-items: start; }
.work-area-card { overflow: hidden; min-height: 431px; padding: 11px; border: 1px solid rgba(39,48,57,.045); border-radius: 25px; background: rgba(255,254,250,.9); box-shadow: 0 15px 34px rgba(54,68,64,.07); }
.work-area-card:nth-child(even) { margin-top: 24px; }
.work-area-photo { position: relative; height: 200px; overflow: hidden; border-radius: 18px 18px 12px 12px; background: #eeece5; }
.work-area-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 44%; }
.work-area-icon { position: absolute; top: 12px; right: 11px; display: inline-flex; width: 35px; height: 35px; align-items: center; justify-content: center; border-radius: 12px; color: var(--ink); font-size: 17px; font-weight: 700; }
.work-area-cyan .work-area-icon { background: var(--cyan); }
.work-area-lime .work-area-icon { background: var(--lime); }
.work-area-lime .work-area-icon { top: auto; right: 12px; bottom: 12px; }
.work-area-yellow .work-area-icon { background: var(--yellow); }
.work-area-cyan-soft .work-area-icon { background: #9fe3e9; }
.work-area-copy { padding: 17px 8px 12px; }
.work-area-label { color: #798286; font-size: 12.5px; font-weight: 700; letter-spacing: .8px; text-transform: uppercase; }
.work-area-copy h3 { min-height: 49px; margin: 9px 0 8px; color: var(--ink); font-size: 17px; font-weight: 700; line-height: 1.32; letter-spacing: -.45px; }
.work-area-copy > p { min-height: 77px; margin: 0; color: #69757b; font-size: 13px; line-height: 1.68; }
.work-area-tags { display: inline-flex; margin-top: 11px; padding: 8px 9px; border-radius: 999px; color: #4b585d; font-size: 12.5px; font-weight: 600; }
.work-area-cyan .work-area-tags { background: rgba(0,184,224,.12); }
.work-area-lime .work-area-tags { background: rgba(202,212,7,.16); }
.work-area-yellow .work-area-tags { background: rgba(255,205,0,.18); }
.work-area-cyan-soft .work-area-tags { background: rgba(112,204,194,.17); }
.work-areas-closing { margin: 46px auto 0; color: #657174; font-size: 13.5px; text-align: center; }
.work-areas-closing > span { margin-right: 7px; color: var(--lime); font-size: 16px; }

.how-it-works-section { position: relative; padding: 99px 7.1% 109px; background: #fffefa; }
.how-it-works-heading { max-width: 740px; margin: 0 auto 67px; text-align: center; }
.how-it-works-heading h2 { margin: 0; color: var(--ink); font-size: clamp(39px, 4.2vw, 61px); font-weight: 610; line-height: 1.1; letter-spacing: -2.9px; }
.how-it-works-heading h2 > span { position: relative; color: var(--deep-cyan); white-space: nowrap; }
.how-it-works-heading h2 > span::after { position: absolute; right: 0; bottom: -5px; left: 2px; height: 6px; border-radius: 73% 32% 67% 41%; background: var(--yellow); content: ""; transform: rotate(-.8deg); }
.how-it-works-heading > p:last-child { max-width: 558px; margin: 20px auto 0; color: var(--muted); font-size: 14.5px; line-height: 1.8; }

.journey-steps { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 1120px; margin: 0 auto; gap: 45px; }
.journey-steps::before { position: absolute; top: 21px; right: 16%; left: 16%; border-top: 2px dashed rgba(39,48,57,.12); content: ""; }
.journey-step { position: relative; text-align: center; }
.journey-number { position: relative; z-index: 1; display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; border: 4px solid #fffefa; border-radius: 50%; color: var(--ink); font-size: 13px; font-weight: 750; }
.journey-step-cyan .journey-number { background: rgba(0,184,224,.21); }
.journey-step-lime .journey-number { background: rgba(202,212,7,.25); }
.journey-step-yellow .journey-number { background: rgba(255,205,0,.28); }
.journey-illustration { position: relative; width: 138px; height: 122px; margin: 28px auto 18px; }
.journey-illustration-select::before { position: absolute; top: 13px; right: 8px; width: 95px; height: 93px; border-radius: 44% 56% 54% 46%; background: rgba(0,184,224,.085); content: ""; transform: rotate(-13deg); }
.journey-window { position: absolute; display: block; width: 68px; height: 75px; border: 2px solid var(--deep-cyan); border-radius: 14px; background: #fffefa; }
.journey-window-back { top: 15px; left: 23px; transform: rotate(-10deg); }
.journey-window-front { top: 31px; left: 48px; display: grid; place-items: center; transform: rotate(8deg); }
.journey-window-front > span { color: var(--cyan); font-size: 34px; }
.journey-cursor { position: absolute; right: 12px; bottom: 10px; color: var(--yellow); font-size: 33px; font-weight: 700; }
.journey-orbit { position: absolute; border: 2px solid rgba(125,133,5,.63); border-radius: 50%; }
.journey-orbit-outer { top: 9px; left: 19px; width: 106px; height: 106px; background: rgba(202,212,7,.09); }
.journey-orbit-inner { top: 26px; left: 36px; width: 72px; height: 72px; border-style: dashed; background: #fffefa; }
.journey-heart { position: absolute; top: 37px; left: 55px; color: #899100; font-size: 42px; line-height: 1; }
.journey-spark { position: absolute; top: 8px; right: 8px; color: var(--cyan); font-size: 24px; }
.journey-illustration-discover::before { position: absolute; top: 10px; left: 23px; width: 104px; height: 101px; border-radius: 48% 52% 42% 58%; background: rgba(255,205,0,.12); content: ""; }
.journey-hill { position: absolute; bottom: 16px; border: 2px solid #e6b500; border-bottom: 0; border-radius: 50% 50% 0 0; background: #fffefa; }
.journey-hill-first { left: 17px; width: 69px; height: 50px; }
.journey-hill-second { right: 8px; width: 72px; height: 73px; }
.journey-flag { position: absolute; top: 10px; right: 36px; color: var(--cyan); font-size: 24px; }
.journey-path { position: absolute; bottom: 15px; left: 12px; width: 116px; border-top: 2px solid #e6b500; }
.journey-kicker { color: #778184; font-size: 12.5px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.journey-step h3 { margin: 11px 0 10px; color: var(--ink); font-size: 19px; font-weight: 700; letter-spacing: -.45px; }
.journey-step > p { max-width: 300px; min-height: 81px; margin: 0 auto; color: var(--muted); font-size: 13.5px; line-height: 1.8; }
.journey-note { display: inline-flex; margin-top: 15px; padding: 8px 11px; border-radius: 999px; color: #536064; font-size: 12.5px; font-weight: 600; }
.journey-step-cyan .journey-note { background: rgba(0,184,224,.10); }
.journey-step-lime .journey-note { background: rgba(202,212,7,.13); }
.journey-step-yellow .journey-note { background: rgba(255,205,0,.14); }

.journey-accompaniment { display: flex; max-width: 1020px; margin: 68px auto 0; padding: 20px 24px; align-items: center; justify-content: space-between; border-radius: 18px; background: #f5f7f2; }
.journey-accompaniment-copy { display: flex; align-items: center; gap: 12px; }
.journey-accompaniment-icon { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 11px; background: rgba(0,184,224,.13); color: var(--deep-cyan); font-size: 17px; }
.journey-accompaniment-copy p { margin: 0; color: #647074; font-size: 13px; }
.journey-accompaniment-copy strong { color: var(--ink); }
.journey-accompaniment > a { color: #067489; font-size: 13px; font-weight: 700; }
.journey-accompaniment > a span { margin-left: 6px; }

.audience-section { position: relative; padding: 112px 7.1% 91px; background: linear-gradient(140deg, #f4f7f4 0%, #f8f7ef 58%, #f5f9f7 100%); }
.audience-layout { display: grid; max-width: 1130px; margin: 0 auto; grid-template-columns: .94fr 1.06fr; align-items: center; gap: 9%; }
.audience-story { position: relative; }
.audience-story h2 { margin: 0; color: var(--ink); font-size: clamp(38px, 4.05vw, 56px); font-weight: 610; line-height: 1.12; letter-spacing: -2.6px; }
.audience-story h2 > span { position: relative; color: var(--deep-cyan); white-space: nowrap; }
.audience-story h2 > span::after { position: absolute; right: 0; bottom: -4px; left: 0; height: 6px; border-radius: 74% 31% 64% 39%; background: var(--yellow); content: ""; transform: rotate(-1deg); }
.audience-intro { max-width: 440px; margin: 22px 0 26px; color: var(--muted); font-size: 13.5px; line-height: 1.85; }
.audience-photo { position: relative; width: 94%; height: 293px; overflow: hidden; border-radius: 22px 84px 22px 22px; background: #e9e9e1; box-shadow: 0 19px 40px rgba(51,67,62,.1); }
.audience-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 41%; }
.audience-photo-note { position: absolute; left: 13px; bottom: 14px; padding: 9px 12px; border-radius: 999px; background: rgba(255,254,250,.94); color: #465258; font-size: 12.5px; font-weight: 650; }
.audience-photo-note > span { margin-left: 5px; color: var(--deep-cyan); font-size: 13.5px; }
.audience-doodle { position: absolute; right: -2px; bottom: 21px; color: var(--lime); font-size: 41px; }

.audience-profiles { display: grid; gap: 14px; }
.audience-card { display: grid; grid-template-columns: 44px 1fr; align-items: start; gap: 14px; padding: 20px 20px 18px; border: 1px solid rgba(39,48,57,.045); border-radius: 18px; background: rgba(255,254,250,.86); box-shadow: 0 9px 25px rgba(53,67,61,.045); }
.audience-card-icon { display: inline-grid; width: 39px; height: 39px; place-items: center; border-radius: 13px; color: var(--ink); font-size: 19px; }
.audience-card-cyan .audience-card-icon { background: rgba(0,184,224,.18); }
.audience-card-lime .audience-card-icon { background: rgba(202,212,7,.21); }
.audience-card-yellow .audience-card-icon { background: rgba(255,205,0,.23); }
.audience-card-sky .audience-card-icon { background: rgba(112,204,194,.2); }
.audience-card h3 { margin: 1px 0 6px; color: var(--ink); font-size: 15px; font-weight: 700; letter-spacing: -.2px; }
.audience-card p { max-width: 387px; margin: 0; color: var(--muted); font-size: 12.5px; line-height: 1.72; }
.audience-card > div > span { display: inline-flex; margin-top: 9px; color: #647073; font-size: 12.5px; font-weight: 650; }
.audience-card-cyan > div > span { color: #06758c; }
.audience-card-lime > div > span { color: #777e04; }
.audience-card-yellow > div > span { color: #967600; }
.audience-card-sky > div > span { color: #397f76; }

.audience-closing { display: flex; max-width: 1130px; margin: 58px auto 0; padding-top: 24px; align-items: center; gap: 8px; border-top: 1px solid rgba(39,48,57,.1); color: #647073; font-size: 13px; }
.audience-closing > span { color: var(--lime); font-size: 15px; }
.audience-closing > a { margin-left: auto; color: var(--deep-cyan); font-size: 13px; font-weight: 700; white-space: nowrap; }
.audience-closing > a span { margin-left: 5px; }

.impact-section { position: relative; padding: 105px 7.1% 88px; overflow: hidden; background: #174c58; color: #fffefa; }
.impact-shape { position: absolute; display: block; border-radius: 45% 55% 58% 42%; }
.impact-shape-one { top: -105px; right: -85px; width: 285px; height: 285px; background: rgba(0,184,224,.13); transform: rotate(19deg); }
.impact-shape-two { bottom: -92px; left: -70px; width: 215px; height: 215px; background: rgba(202,212,7,.09); transform: rotate(-16deg); }
.impact-heading { position: relative; z-index: 1; max-width: 770px; margin: 0 auto 58px; text-align: center; }
.impact-kicker { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 18px; color: rgba(255,254,250,.68); font-size: 12.5px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; }
.impact-kicker > span { color: var(--lime); font-size: 17px; }
.impact-heading h2 { margin: 0; font-size: clamp(39px, 4.15vw, 59px); font-weight: 590; line-height: 1.11; letter-spacing: -2.8px; }
.impact-heading h2 > span { color: #a9e7ef; }
.impact-heading > p:last-child { max-width: 575px; margin: 20px auto 0; color: rgba(255,254,250,.69); font-size: 14.5px; line-height: 1.8; }

.impact-numbers { position: relative; z-index: 1; display: grid; max-width: 1170px; margin: 0 auto; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 12px; }
.impact-number { min-height: 204px; padding: 24px 18px 20px; border: 1px solid rgba(255,255,255,.1); border-radius: 22px; background: rgba(255,255,255,.065); }
.impact-number strong { display: block; margin-bottom: 7px; font-size: clamp(31px, 3.2vw, 48px); font-weight: 680; line-height: 1; letter-spacing: -2px; }
.impact-number > span { display: block; min-height: 36px; color: #fffefa; font-size: 13px; font-weight: 750; line-height: 1.35; text-transform: uppercase; letter-spacing: .7px; }
.impact-number p { margin: 13px 0 0; color: rgba(255,254,250,.62); font-size: 12.5px; line-height: 1.72; }
.impact-number-cyan strong { color: #51d9ef; }
.impact-number-lime strong { color: var(--lime); }
.impact-number-yellow strong { color: var(--yellow); }
.impact-number-sky strong { color: #9fe3e9; }
.impact-number-white strong { color: #fffefa; }

.impact-observation { position: relative; z-index: 1; display: grid; max-width: 970px; margin: 47px auto 0; padding: 23px 26px; grid-template-columns: 42px 1fr auto; align-items: center; gap: 15px; border-radius: 19px; background: #fffefa; color: var(--ink); }
.impact-observation-mark { color: var(--cyan); font-family: Georgia, serif; font-size: 58px; line-height: .75; }
.impact-observation span { display: block; margin-bottom: 5px; color: #657174; font-size: 12.5px; font-weight: 750; letter-spacing: .9px; text-transform: uppercase; }
.impact-observation p { max-width: 570px; margin: 0; font-size: 13.5px; font-weight: 620; line-height: 1.55; }
.impact-observation small { max-width: 178px; color: #859094; font-size: 12.5px; line-height: 1.55; text-align: right; }
.impact-source { position: relative; z-index: 1; margin: 17px auto 0; color: rgba(255,254,250,.43); font-size: 12.5px; text-align: center; }

.testimonials-section { position: relative; padding: 111px 7.1% 97px; overflow: hidden; background: linear-gradient(155deg,#f7faf7 0%,#fffdf5 55%,#f2f8f7 100%); }
.testimonials-doodle { position: absolute; pointer-events: none; }
.testimonials-doodle-one { top: 97px; left: 9%; color: rgba(202,212,7,.65); font-size: 35px; transform: rotate(-13deg); }
.testimonials-doodle-two { top: 164px; right: 10%; color: rgba(0,184,224,.53); font-size: 27px; }
.testimonials-heading { max-width: 790px; margin: 0 auto 54px; text-align: center; }
.testimonials-heading h2 { margin: 0; color: var(--ink); font-size: clamp(38px,4.05vw,57px); font-weight: 610; line-height: 1.13; letter-spacing: -2.65px; }
.testimonials-heading h2 > span { position: relative; color: var(--deep-cyan); }
.testimonials-heading h2 > span::after { position: absolute; right: 3px; bottom: -5px; left: 4px; height: 6px; border-radius: 64% 34% 70% 39%; background: var(--yellow); content: ""; transform: rotate(-.6deg); }
.testimonials-heading > p:last-child { max-width: 540px; margin: 19px auto 0; color: var(--muted); font-size: 14.5px; line-height: 1.8; }
.testimonial-featured { display: grid; max-width: 1120px; margin: 0 auto; grid-template-columns: 1.05fr .95fr; overflow: hidden; border: 1px solid rgba(39,48,57,.055); border-radius: 26px; background: #fffefa; box-shadow: 0 18px 47px rgba(52,66,60,.075); }
.testimonial-featured-video { position: relative; display: block; min-height: 330px; overflow: hidden; background: #174c58; }
.testimonial-featured-video > img { display: block; width: 100%; height: 100%; min-height: 330px; object-fit: cover; object-position: center 43%; transition: transform .35s ease; }
.testimonial-featured-video:hover > img,.testimonial-featured-video:focus-visible > img { transform: scale(1.035); }
.testimonial-featured-play { position: absolute; bottom: 24px; left: 22px; display: grid; width: 47px; height: 47px; padding-left: 3px; place-items: center; border-radius: 50%; background: rgba(255,254,250,.95); color: var(--deep-cyan); font-size: 17px; box-shadow: 0 7px 20px rgba(31,42,42,.2); }
.testimonial-featured-video-label { position: absolute; bottom: 38px; left: 79px; color: #fff; font-size: 12.5px; font-weight: 730; text-shadow: 0 1px 8px rgba(24,36,36,.8); }
.testimonial-featured-copy { position: relative; display: flex; padding: 36px 39px 31px; flex-direction: column; justify-content: center; }
.testimonial-eyebrow { color: #738080; font-size: 12.5px; font-weight: 760; letter-spacing: .95px; text-transform: uppercase; }
.testimonial-quote-mark { height: 51px; margin-top: 13px; color: var(--cyan); font-family: Georgia, serif; font-size: 76px; line-height: .95; }
.testimonial-featured-copy blockquote { max-width: 440px; margin: 0; color: var(--ink); font-size: clamp(19px,2.08vw,27px); font-weight: 610; line-height: 1.39; letter-spacing: -.55px; }
.testimonial-featured-copy > p { max-width: 405px; margin: 14px 0 19px; color: var(--muted); font-size: 12.5px; line-height: 1.77; }
.testimonial-featured-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.testimonial-featured-footer > a { color: var(--deep-cyan); font-size: 12.5px; font-weight: 720; white-space: nowrap; }
.testimonial-person { display: flex; min-width: 0; align-items: center; gap: 10px; }
.testimonial-avatar { display: grid; width: 35px; height: 35px; flex: 0 0 35px; place-items: center; border-radius: 50%; color: #244049; font-size: 13.5px; font-weight: 750; }
.testimonial-avatar-cyan { background: rgba(0,184,224,.17); }
.testimonial-avatar-lime { background: rgba(202,212,7,.22); }
.testimonial-avatar-yellow { background: rgba(255,205,0,.24); }
.testimonial-person > div { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.testimonial-person strong { color: var(--ink); font-size: 12.5px; font-weight: 740; }
.testimonial-person > div > span { color: #75817f; font-size: 12.5px; }
.testimonials-grid { display: grid; max-width: 1120px; margin: 18px auto 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 17px; }
.testimonial-card { display: flex; min-height: 423px; padding: 0 21px 19px; flex-direction: column; overflow: hidden; border: 1px solid rgba(39,48,57,.055); border-radius: 21px; background: rgba(255,254,250,.93); }
.testimonial-card-photo { position: relative; display: block; height: 171px; margin: 0 -21px 13px; overflow: hidden; background: #e9efec; }
.testimonial-card-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 43%; transition: transform .3s ease; }
.testimonial-card-photo:hover img,.testimonial-card-photo:focus-visible img { transform: scale(1.045); }
.testimonial-play { position: absolute; bottom: 12px; left: 12px; display: grid; width: 32px; height: 32px; padding-left: 2px; place-items: center; border-radius: 50%; background: rgba(255,254,250,.93); color: var(--deep-cyan); font-size: 13.5px; box-shadow: 0 5px 16px rgba(31,42,42,.16); }
.testimonial-card-video-label { position: absolute; bottom: 22px; left: 53px; color: #fff; font-size: 12.5px; font-weight: 730; text-shadow: 0 1px 8px rgba(24,36,36,.8); }
.testimonial-card-mark { height: 39px; font-family: Georgia, serif; font-size: 56px; line-height: .98; }
.testimonial-card-lime .testimonial-card-mark { color: #aab307; }
.testimonial-card-yellow .testimonial-card-mark { color: #e1ae00; }
.testimonial-card-cyan .testimonial-card-mark { color: var(--cyan); }
.testimonial-card blockquote { margin: 0 0 20px; color: #344248; font-size: 13.5px; font-weight: 590; line-height: 1.7; }
.testimonial-card-footer { display: flex; margin-top: auto; padding-top: 15px; align-items: center; justify-content: space-between; gap: 8px; border-top: 1px solid rgba(39,48,57,.085); }
.testimonial-card-footer > a { color: var(--deep-cyan); font-size: 12.5px; font-weight: 720; white-space: nowrap; }
.testimonial-family-label { color: #798380; font-size: 12.5px; white-space: nowrap; }
.testimonials-closing { display: flex; max-width: 1100px; margin: 37px auto 0; align-items: center; gap: 8px; color: #687472; font-size: 12.5px; }
.testimonials-closing > span { color: var(--lime); font-size: 15px; }
.testimonials-closing > a { margin-left: auto; color: var(--deep-cyan); font-size: 12.5px; font-weight: 700; }

.purpose-section { position: relative; padding: 111px 7.1% 99px; background: #fffefa; }
.purpose-heading { max-width: 770px; margin: 0 auto 62px; text-align: center; }
.purpose-heading h2 { margin: 0; color: var(--ink); font-size: clamp(39px,4.2vw,60px); font-weight: 610; line-height: 1.11; letter-spacing: -2.8px; }
.purpose-heading h2 > span { position: relative; color: var(--deep-cyan); white-space: nowrap; }
.purpose-heading h2 > span::after { position: absolute; right: 0; bottom: -5px; left: 1px; height: 6px; border-radius: 70% 35% 66% 43%; background: var(--yellow); content: ""; transform: rotate(-.9deg); }
.purpose-heading > p:last-child { max-width: 570px; margin: 20px auto 0; color: var(--muted); font-size: 14.5px; line-height: 1.8; }

.purpose-main-grid { display: grid; max-width: 1090px; margin: 0 auto; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 21px; }
.purpose-card { position: relative; min-height: 318px; padding: 31px 31px 29px; overflow: hidden; border-radius: 24px; }
.purpose-card-mission { background: linear-gradient(145deg,#edf8f8,#f3f8f2); }
.purpose-card-vision { background: linear-gradient(145deg,#f8f7e9,#fff8e8); }
.purpose-card::after { position: absolute; right: -33px; bottom: -36px; width: 140px; height: 140px; border-radius: 43% 57% 61% 39%; content: ""; opacity: .47; }
.purpose-card-mission::after { background: rgba(0,184,224,.12); }
.purpose-card-vision::after { background: rgba(255,205,0,.17); }
.purpose-card-top { display: flex; align-items: center; gap: 11px; }
.purpose-card-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 13px; color: var(--ink); font-size: 19px; }
.purpose-card-mission .purpose-card-icon { background: rgba(0,184,224,.2); }
.purpose-card-vision .purpose-card-icon { background: rgba(255,205,0,.24); }
.purpose-card-top > span:last-child { color: #687477; font-size: 12.5px; font-weight: 750; letter-spacing: .85px; text-transform: uppercase; }
.purpose-card h3 { position: relative; z-index: 1; max-width: 390px; margin: 21px 0 10px; color: var(--ink); font-size: 23px; font-weight: 690; line-height: 1.25; letter-spacing: -.65px; }
.purpose-card > p { position: relative; z-index: 1; max-width: 425px; margin: 0; color: #657174; font-size: 13px; line-height: 1.78; }
.purpose-card > p + p { margin-top: 13px; }
.purpose-handwritten { position: relative; z-index: 1; display: inline-flex; margin-top: 19px; color: var(--deep-cyan); font-size: 12.5px; font-weight: 700; }
.purpose-card-vision .purpose-handwritten { color: #947500; }

.values-heading { max-width: 1090px; margin: 60px auto 24px; text-align: center; }
.values-heading > span { color: #768082; font-size: 12.5px; font-weight: 750; letter-spacing: .9px; text-transform: uppercase; }
.values-heading h3 { margin: 10px 0 0; color: var(--ink); font-size: 28px; font-weight: 680; letter-spacing: -.7px; }
.values-grid { display: grid; max-width: 1090px; margin: 0 auto; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.value-card { min-height: 189px; padding: 19px 15px 17px; border: 1px solid rgba(39,48,57,.07); border-radius: 18px; background: #fffefa; }
.value-icon { display: grid; width: 35px; height: 35px; place-items: center; border-radius: 12px; color: var(--ink); font-size: 18px; }
.value-card-cyan .value-icon { background: rgba(0,184,224,.16); }
.value-card-lime .value-icon { background: rgba(202,212,7,.19); }
.value-card-yellow .value-icon { background: rgba(255,205,0,.21); }
.value-card-sky .value-icon { background: rgba(112,204,194,.2); }
.value-card h4 { margin: 15px 0 7px; color: var(--ink); font-size: 14.5px; font-weight: 700; }
.value-card p { margin: 0; color: var(--muted); font-size: 12.5px; line-height: 1.7; }
.purpose-closing { max-width: 1060px; margin: 42px auto 0; padding: 19px 20px; border-radius: 15px; background: linear-gradient(110deg,rgba(0,184,224,.075),rgba(202,212,7,.08),rgba(255,205,0,.09)); color: #596568; font-size: 13px; text-align: center; }
.purpose-closing > span { margin-right: 7px; color: var(--deep-cyan); }

.contact-section { position: relative; padding: 112px 7.1% 104px; overflow: hidden; background: linear-gradient(135deg,#f4f8f4 0%,#fbf9ee 55%,#f2f8f7 100%); }
.contact-decoration { position: absolute; border-radius: 46% 54% 60% 40%; }
.contact-decoration-one { top: -71px; left: -55px; width: 168px; height: 168px; background: rgba(202,212,7,.12); }
.contact-decoration-two { right: -61px; bottom: -79px; width: 215px; height: 215px; background: rgba(0,184,224,.1); }
.contact-layout { position: relative; z-index: 1; display: grid; max-width: 1080px; margin: 0 auto; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 9%; }
.contact-copy h2 { margin: 0; color: var(--ink); font-size: clamp(42px,4.7vw,66px); font-weight: 610; line-height: 1.1; letter-spacing: -3px; }
.contact-copy h2 > span { position: relative; color: var(--deep-cyan); white-space: nowrap; }
.contact-copy h2 > span::after { position: absolute; right: 0; bottom: -5px; left: 0; height: 7px; border-radius: 70% 36% 64% 40%; background: var(--yellow); content: ""; transform: rotate(-.9deg); }
.contact-copy > p:not(.section-kicker) { max-width: 465px; margin: 22px 0 26px; color: var(--muted); font-size: 14.5px; line-height: 1.85; }
.contact-button { display: inline-flex; padding: 16px 20px; align-items: center; gap: 10px; border-radius: 999px; background: var(--cyan); color: #12353e; font-size: 13.5px; font-weight: 750; box-shadow: 0 10px 23px rgba(0,184,224,.19); }
.contact-note { display: block; margin-top: 12px; color: #87908f; font-size: 12.5px; }
.contact-card { padding: 27px 26px 23px; border: 1px solid rgba(39,48,57,.06); border-radius: 23px; background: rgba(255,254,250,.94); box-shadow: 0 18px 38px rgba(49,64,61,.08); }
.contact-card-kicker { display: block; margin-bottom: 17px; color: #697477; font-size: 12.5px; font-weight: 750; letter-spacing: .9px; text-transform: uppercase; }
.contact-step { display: grid; padding: 14px 0; grid-template-columns: 39px 1fr; align-items: start; gap: 12px; border-top: 1px solid rgba(39,48,57,.09); }
.contact-step > span { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 11px; color: var(--ink); font-size: 12.5px; font-weight: 750; }
.contact-step-cyan > span { background: rgba(0,184,224,.17); }
.contact-step-lime > span { background: rgba(202,212,7,.19); }
.contact-step-yellow > span { background: rgba(255,205,0,.21); }
.contact-step h3 { margin: 1px 0 5px; color: var(--ink); font-size: 13.5px; font-weight: 700; }
.contact-step p { margin: 0; color: var(--muted); font-size: 12.5px; line-height: 1.65; }
.contact-email { display: inline-flex; margin-top: 10px; align-items: center; gap: 7px; color: var(--deep-cyan); font-size: 13px; font-weight: 700; }

.site-footer { padding: 58px 7.1% 22px; background: #fffefa; }
.footer-main { display: grid; max-width: 1130px; margin: 0 auto; grid-template-columns: 1.05fr 1.2fr .75fr; gap: 7%; }
.footer-brand img { display: block; width: 183px; height: auto; }
.footer-brand p { max-width: 235px; margin: 13px 0 0; color: var(--muted); font-size: 12.5px; line-height: 1.7; }
.footer-nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.footer-nav > div,.footer-contact { display: flex; flex-direction: column; align-items: flex-start; }
.footer-nav strong,.footer-contact strong { margin-bottom: 12px; color: var(--ink); font-size: 12.5px; }
.footer-nav a,.footer-contact > a { margin-bottom: 9px; color: #687477; font-size: 12.5px; }
.footer-contact > a { color: var(--deep-cyan); font-weight: 650; }
.footer-contact > span { max-width: 180px; color: #84908f; font-size: 12.5px; line-height: 1.65; }
.footer-bottom { display: flex; max-width: 1130px; margin: 36px auto 0; padding-top: 18px; align-items: center; justify-content: space-between; border-top: 1px solid rgba(39,48,57,.09); color: #818989; font-size: 12.5px; }
.footer-bottom > div { display: flex; gap: 18px; }
.footer-bottom > a { color: var(--deep-cyan); font-weight: 700; }

@media (min-width: 1500px) { .hero { min-height: 790px; } .hero-visual { height: 650px; } .photo-stage { height: 615px; } }
@media (max-width: 1080px) { .desktop-nav { gap: 19px; } .hero { gap: 3%; padding-left: 6%; padding-right: 6%; } h1 { font-size: 59px; letter-spacing: -3px; } .hero-visual { height: 530px; } .photo-stage { height: 500px; width: 94%; } .areas-list { gap: 11px; } .solutions-strip { gap: 14px; } .discovery-content { gap: 5%; } .experience-collage { min-height: 475px; } .experience-photo-main { height: 338px; } .experience-photo-secondary { height: 190px; } .work-areas-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 700px; gap: 22px; } .work-area-card { min-height: 422px; } .work-area-photo { height: 218px; } .journey-steps { gap: 23px; } .journey-step h3 { font-size: 16px; } .audience-layout { gap: 5%; } .audience-story h2 { font-size: 42px; } .audience-card { padding: 17px 15px; } .impact-numbers { grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 760px; } .impact-number { min-height: 190px; } .testimonial-featured-copy { padding: 27px 25px; } .testimonial-featured-footer { align-items: flex-start; flex-direction: column; } .testimonial-card { padding: 0 15px 17px; } .testimonial-card-photo { height: 139px; margin-right: -15px; margin-left: -15px; } .testimonial-card-footer { align-items: flex-start; flex-direction: column; gap: 10px; } .values-grid { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 720px; } .contact-layout { gap: 5%; } .footer-main { gap: 4%; } }
@media (max-width: 760px) {
  .site-header { height: 78px; padding: 0 6.5%; }
  .brand-logo { width: 164px; }
  .desktop-nav { display: none; }
  .hero { grid-template-columns: 1fr; min-height: auto; gap: 28px; padding: 29px 7% 41px; }
  .hero-copy { padding-top: 0; }
  .eyebrow { font-size: 12.5px; letter-spacing: .7px; margin-bottom: 19px; }
  h1 { font-size: clamp(47px, 11vw, 66px); letter-spacing: -2.9px; max-width: 580px; }
  .hero-manifesto { margin-top: 19px; font-size: 14.5px; }
  .hero-description { font-size: 14.5px; margin-top: 8px; line-height: 1.75; }
  .hero-actions { gap: 14px; margin-top: 23px; }
  .button-primary { padding: 14px 13px; font-size: 12.5px; }
  .button-secondary { font-size: 12.5px; }
  .hero-divider { margin-top: 30px; }
  .areas-list { gap: 7px; }
  .hero-visual { height: 470px; }
  .photo-stage { width: 88%; height: 450px; }
  .floating-pill { top: 28px; right: 22px; }
  .solutions-strip { padding: 24px 7%; align-items: flex-start; flex-direction: column; gap: 12px; }
  .strip-options { gap: 8px; flex-wrap: wrap; font-size: 12.5px; }
  .discovery-section { padding: 75px 7% 61px; }
  .discovery-heading { margin-bottom: 45px; }
  .section-kicker { font-size: 12.5px; letter-spacing: 1px; }
  .discovery-heading h2 { font-size: clamp(34px, 8vw, 47px); letter-spacing: -1.7px; }
  .section-intro { margin-top: 17px; font-size: 13.5px; line-height: 1.75; }
  .discovery-content { grid-template-columns: 1fr; gap: 28px; }
  .experience-collage { min-height: 405px; }
  .experience-photo-main { width: 92%; height: 294px; }
  .experience-photo-secondary { width: 62%; height: 167px; }
  .collage-doodle-bottom { bottom: 58px; font-size: 43px; }
  .discovery-explanation { padding: 0; }
  .experience-step { grid-template-columns: 44px 1fr; gap: 11px; padding: 16px 0; }
  .experience-step h3 { font-size: 14.5px; }
  .experience-step p { font-size: 13px; }
  .section-bottom-note { margin-top: 37px; padding: 17px; font-size: 12.5px; line-height: 1.6; }
  .work-areas-section { padding: 78px 7% 66px; }
  .work-areas-heading { margin-bottom: 39px; }
  .work-areas-heading h2 { font-size: clamp(32px, 7.6vw, 45px); letter-spacing: -1.7px; }
  .work-areas-heading > p:last-child { margin-top: 16px; font-size: 13px; line-height: 1.72; }
  .work-areas-grid { grid-template-columns: 1fr; max-width: 390px; gap: 17px; }
  .work-area-card { min-height: 0; }
  .work-area-card:nth-child(even) { margin-top: 0; }
  .work-area-photo { height: 228px; }
  .work-area-copy h3 { min-height: 0; }
  .work-area-copy > p { min-height: 0; }
  .work-areas-closing { margin-top: 32px; font-size: 12.5px; line-height: 1.6; }
  .how-it-works-section { padding: 75px 7% 71px; }
  .how-it-works-heading { margin-bottom: 43px; }
  .how-it-works-heading h2 { font-size: clamp(32px, 7.6vw, 45px); letter-spacing: -1.7px; }
  .how-it-works-heading > p:last-child { margin-top: 16px; font-size: 13px; line-height: 1.72; }
  .journey-steps { grid-template-columns: 1fr; max-width: 380px; gap: 36px; }
  .journey-steps::before { top: 21px; right: auto; bottom: 44px; left: 21px; border-top: 0; border-left: 2px dashed rgba(39,48,57,.12); }
  .journey-step { padding-left: 52px; text-align: left; }
  .journey-number { position: absolute; top: 0; left: 0; }
  .journey-illustration { height: 115px; margin: 0 0 12px 5px; }
  .journey-step h3 { margin-top: 8px; font-size: 16px; }
  .journey-step > p { min-height: 0; margin: 0; font-size: 13px; }
  .journey-note { margin-top: 11px; font-size: 12.5px; }
  .journey-accompaniment { margin-top: 42px; padding: 18px; align-items: flex-start; flex-direction: column; gap: 16px; }
  .journey-accompaniment-copy { align-items: flex-start; gap: 10px; }
  .journey-accompaniment-copy p { max-width: 225px; padding-top: 3px; font-size: 12.5px; line-height: 1.65; }
  .journey-accompaniment > a { margin-left: 42px; font-size: 12.5px; }
  .audience-section { padding: 77px 7% 65px; }
  .audience-layout { grid-template-columns: 1fr; max-width: 450px; gap: 34px; }
  .audience-story h2 { font-size: clamp(33px, 8vw, 46px); letter-spacing: -1.6px; }
  .audience-intro { margin: 17px 0 21px; font-size: 13px; line-height: 1.75; }
  .audience-photo { width: 95%; height: 240px; }
  .audience-doodle { right: -1px; bottom: 12px; font-size: 36px; }
  .audience-profiles { gap: 11px; }
  .audience-card { grid-template-columns: 38px 1fr; gap: 10px; padding: 16px 13px; }
  .audience-card-icon { width: 35px; height: 35px; font-size: 17px; }
  .audience-card h3 { font-size: 14.5px; }
  .audience-card p { font-size: 12.5px; }
  .audience-card > div > span { font-size: 12.5px; }
  .audience-closing { margin-top: 36px; align-items: flex-start; flex-wrap: wrap; font-size: 12.5px; line-height: 1.7; }
  .audience-closing > a { width: 100%; margin-top: 7px; margin-left: 22px; font-size: 12.5px; }
  .impact-section { padding: 76px 7% 62px; }
  .impact-heading { margin-bottom: 39px; }
  .impact-heading h2 { font-size: clamp(33px, 8vw, 46px); letter-spacing: -1.7px; }
  .impact-heading > p:last-child { margin-top: 16px; font-size: 13px; }
  .impact-numbers { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  .impact-number { min-height: 174px; padding: 20px 14px 16px; }
  .impact-number:last-child { grid-column: 1 / -1; min-height: 0; }
  .impact-number strong { font-size: 33px; }
  .impact-number > span { min-height: 31px; font-size: 12.5px; }
  .impact-number p { margin-top: 9px; font-size: 12.5px; }
  .impact-observation { margin-top: 31px; padding: 20px 17px; grid-template-columns: 33px 1fr; gap: 8px; }
  .impact-observation-mark { font-size: 47px; }
  .impact-observation p { font-size: 12.5px; }
  .impact-observation small { grid-column: 2; max-width: none; font-size: 12.5px; text-align: left; }
  .impact-source { max-width: 280px; font-size: 12.5px; line-height: 1.5; }
  .testimonials-section { padding: 79px 7% 69px; }
  .testimonials-doodle-one { top: 49px; left: 6%; font-size: 25px; }
  .testimonials-doodle-two { top: 112px; right: 6%; font-size: 19px; }
  .testimonials-heading { margin-bottom: 38px; }
  .testimonials-heading h2 { font-size: clamp(31px,7.5vw,44px); letter-spacing: -1.6px; }
  .testimonials-heading > p:last-child { margin-top: 16px; font-size: 13px; }
  .testimonial-featured { max-width: 460px; grid-template-columns: 1fr; border-radius: 21px; }
  .testimonial-featured-video,.testimonial-featured-video > img { min-height: 220px; aspect-ratio: 16 / 9; }
  .testimonial-featured-copy { padding: 24px 21px 22px; }
  .testimonial-featured-copy blockquote { font-size: 21px; }
  .testimonial-featured-copy > p { font-size: 12.5px; }
  .testimonial-featured-footer { align-items: center; flex-direction: row; }
  .testimonial-featured-footer > a { font-size: 12.5px; }
  .testimonials-grid { max-width: 460px; margin-top: 13px; grid-template-columns: 1fr; gap: 11px; }
  .testimonial-card { min-height: 0; padding: 0 18px 17px; }
  .testimonial-card-photo { height: 205px; margin-right: -18px; margin-left: -18px; }
  .testimonial-card blockquote { font-size: 13px; }
  .testimonial-card-footer { align-items: center; flex-direction: row; }
  .testimonials-closing { max-width: 460px; margin-top: 26px; flex-wrap: wrap; font-size: 12.5px; }
  .testimonials-closing > a { width: 100%; margin-left: 21px; font-size: 12.5px; }
  .purpose-section { padding: 78px 7% 68px; }
  .purpose-heading { margin-bottom: 40px; }
  .purpose-heading h2 { font-size: clamp(32px,7.8vw,45px); letter-spacing: -1.7px; }
  .purpose-heading > p:last-child { margin-top: 16px; font-size: 13px; }
  .purpose-main-grid { grid-template-columns: 1fr; max-width: 420px; gap: 13px; }
  .purpose-card { min-height: 0; padding: 23px 21px 22px; }
  .purpose-card h3 { margin-top: 17px; font-size: 19px; }
  .purpose-card > p { font-size: 12.5px; }
  .purpose-handwritten { margin-top: 15px; font-size: 12.5px; }
  .values-heading { margin-top: 43px; }
  .values-heading h3 { font-size: 21px; }
  .values-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .value-card { min-height: 166px; padding: 16px 11px; }
  .value-card h4 { margin-top: 12px; font-size: 13px; }
  .value-card p { font-size: 12.5px; }
  .purpose-closing { margin-top: 32px; padding: 16px 13px; font-size: 12.5px; line-height: 1.65; }
  .contact-section { padding: 79px 7% 71px; }
  .contact-layout { grid-template-columns: 1fr; max-width: 440px; gap: 35px; }
  .contact-copy h2 { font-size: clamp(36px,8.8vw,50px); letter-spacing: -1.9px; }
  .contact-copy > p:not(.section-kicker) { margin: 18px 0 22px; font-size: 13px; }
  .contact-button { padding: 14px 16px; font-size: 12.5px; }
  .contact-card { padding: 22px 19px 18px; }
  .contact-step { grid-template-columns: 36px 1fr; gap: 10px; }
  .contact-step h3 { font-size: 13px; }
  .contact-step p { font-size: 12.5px; }
  .site-footer { padding: 43px 7% 20px; }
  .footer-main { grid-template-columns: 1fr; gap: 30px; }
  .footer-brand img { width: 171px; }
  .footer-nav { gap: 18px; }
  .footer-contact > span { max-width: 240px; }
  .footer-bottom { margin-top: 28px; align-items: flex-start; flex-wrap: wrap; gap: 12px; line-height: 1.6; }
  .footer-bottom > div { width: 100%; order: 2; gap: 14px; }
  .footer-bottom > a { margin-left: auto; }
}

/* Página de soluciones */
.solutions-page { background: var(--paper); }
.solutions-hero { position: relative; display: grid; min-height: 650px; padding: 55px 7.1% 85px; grid-template-columns: 1fr .9fr; align-items: center; gap: 7%; overflow: hidden; background: linear-gradient(145deg,#fffefa 0%,#f7f9ed 51%,#eef8f8 100%); }
.solutions-hero-shape { position: absolute; border-radius: 44% 56% 62% 38%; pointer-events: none; }
.solutions-hero-shape-one { top: -85px; right: 31%; width: 190px; height: 190px; background: rgba(255,205,0,.12); transform: rotate(21deg); }
.solutions-hero-shape-two { bottom: -72px; left: -45px; width: 165px; height: 165px; background: rgba(0,184,224,.1); }
.solutions-hero-copy { position: relative; z-index: 2; }
.solutions-hero-copy h1 { max-width: 690px; }
.solutions-hero-copy > p:not(.eyebrow) { max-width: 565px; margin: 23px 0 29px; color: var(--muted); font-size: 14px; line-height: 1.82; }
.solutions-hero-copy .button-primary { display: inline-flex; align-items: center; gap: 8px; }
.solutions-hero-visual { position: relative; min-height: 470px; }
.solutions-orbit-center { position: absolute; top: 50%; left: 50%; z-index: 2; display: grid; width: 170px; height: 170px; padding: 24px; place-content: center; border-radius: 50%; background: #174c58; color: #fffefa; text-align: center; box-shadow: 0 22px 45px rgba(31,59,62,.2); transform: translate(-50%,-50%); }
.solutions-orbit-center > span { color: var(--lime); font-size: 27px; }
.solutions-orbit-center strong { margin-top: 6px; font-size: 15px; }
.solutions-orbit-center small { margin-top: 6px; color: rgba(255,255,255,.62); font-size: 12.5px; }
.solutions-hero-visual::before,.solutions-hero-visual::after { position: absolute; top: 50%; left: 50%; border: 1px dashed rgba(39,48,57,.17); border-radius: 50%; content: ""; transform: translate(-50%,-50%); }
.solutions-hero-visual::before { width: 370px; height: 370px; }
.solutions-hero-visual::after { width: 270px; height: 270px; }
.solutions-orbit-card { position: absolute; z-index: 3; display: flex; width: 155px; min-height: 104px; padding: 16px; flex-direction: column; border: 1px solid rgba(39,48,57,.06); border-radius: 19px; background: rgba(255,254,250,.96); box-shadow: 0 14px 31px rgba(47,64,62,.1); }
.solutions-orbit-card > span { font-size: 12.5px; font-weight: 750; }
.solutions-orbit-card strong { margin-top: 8px; font-size: 14.5px; }
.solutions-orbit-card small { margin-top: 5px; color: var(--muted); font-size: 12.5px; }
.solutions-orbit-one { top: 18px; left: 4%; transform: rotate(-3deg); }
.solutions-orbit-one > span { color: var(--deep-cyan); }
.solutions-orbit-two { top: 105px; right: -1%; transform: rotate(3deg); }
.solutions-orbit-two > span { color: #8b9300; }
.solutions-orbit-three { right: 12%; bottom: 14px; transform: rotate(-2deg); }
.solutions-orbit-three > span { color: #a57e00; }
.solutions-intro { padding: 103px 7% 63px; text-align: center; }
.solutions-intro h2 { margin: 0; color: var(--ink); font-size: clamp(38px,4.1vw,59px); font-weight: 610; line-height: 1.12; letter-spacing: -2.7px; }
.solutions-intro h2 span { color: var(--deep-cyan); }
.solutions-intro > p:last-child { max-width: 600px; margin: 19px auto 0; color: var(--muted); font-size: 14.5px; line-height: 1.8; }
.solutions-list { padding: 0 7.1% 100px; }
.solution-detail { display: grid; max-width: 1130px; margin: 0 auto 33px; padding: 18px; grid-template-columns: .96fr 1.04fr; align-items: stretch; gap: 5.5%; border: 1px solid rgba(39,48,57,.06); border-radius: 27px; background: #fffefa; box-shadow: 0 15px 38px rgba(47,62,59,.065); }
.solution-detail:nth-child(even) .solution-detail-media { order: 2; }
.solution-detail-media { position: relative; min-height: 370px; overflow: hidden; border-radius: 20px; background: #eef0eb; }
.solution-detail-media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 45%; }
.solution-detail-number { position: absolute; top: 16px; left: 16px; display: grid; width: 42px; height: 42px; place-items: center; border-radius: 14px; color: var(--ink); font-size: 13px; font-weight: 760; }
.solution-detail-cyan .solution-detail-number { background: var(--cyan); }
.solution-detail-lime .solution-detail-number { background: var(--lime); }
.solution-detail-yellow .solution-detail-number { background: var(--yellow); }
.solution-detail-note { position: absolute; right: 14px; bottom: 14px; left: 14px; padding: 12px 14px; border-radius: 14px; background: rgba(255,254,250,.94); color: #3d4b4e; font-size: 12.5px; font-weight: 680; text-align: center; }
.solution-detail-copy { display: flex; padding: 37px 35px 32px 0; flex-direction: column; justify-content: center; }
.solution-detail:nth-child(even) .solution-detail-copy { padding-right: 0; padding-left: 35px; }
.solution-detail-eyebrow { margin: 0 0 12px; color: #788280; font-size: 12.5px; font-weight: 750; letter-spacing: .9px; text-transform: uppercase; }
.solution-detail-copy h2 { margin: 0; color: var(--ink); font-size: clamp(28px,3vw,41px); font-weight: 650; line-height: 1.17; letter-spacing: -1.4px; }
.solution-detail-description { max-width: 500px; margin: 15px 0 18px; color: var(--muted); font-size: 13.5px; line-height: 1.8; }
.solution-detail-copy ul { display: grid; margin: 0; padding: 0; gap: 10px; list-style: none; }
.solution-detail-copy li { display: flex; align-items: flex-start; gap: 9px; color: #536064; font-size: 12.5px; line-height: 1.55; }
.solution-detail-copy li > span { display: grid; width: 19px; height: 19px; flex: 0 0 19px; place-items: center; border-radius: 50%; color: var(--ink); font-size: 12.5px; }
.solution-detail-cyan li > span { background: rgba(0,184,224,.16); }
.solution-detail-lime li > span { background: rgba(202,212,7,.2); }
.solution-detail-yellow li > span { background: rgba(255,205,0,.22); }
.solution-detail-copy > a { display: inline-flex; width: fit-content; margin-top: 23px; padding-bottom: 6px; gap: 8px; border-bottom: 2px solid var(--yellow); color: var(--deep-cyan); font-size: 13px; font-weight: 730; }
.solutions-choice { max-width: 1130px; margin: 0 auto 92px; padding: 48px 50px; border-radius: 28px; background: linear-gradient(120deg,#eef8f8,#f8f9e8 58%,#fff6d7); text-align: center; }
.solutions-choice h2 { margin: 0; color: var(--ink); font-size: clamp(31px,3.4vw,47px); font-weight: 630; letter-spacing: -1.8px; }
.solutions-choice > div:first-child > p:last-child { max-width: 590px; margin: 15px auto 0; color: var(--muted); font-size: 13.5px; line-height: 1.75; }
.solutions-choice-path { display: flex; max-width: 690px; margin: 31px auto 28px; align-items: center; justify-content: center; gap: 16px; }
.solutions-choice-path span { display: flex; align-items: center; gap: 8px; color: #526064; font-size: 12.5px; }
.solutions-choice-path strong { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 10px; background: #fffefa; color: var(--deep-cyan); font-size: 12.5px; }
.solutions-choice-path i { color: #98a09d; font-style: normal; }
.solutions-choice .contact-button { display: inline-flex; }
.solutions-footer { display: flex; padding: 40px 7.1%; align-items: center; gap: 24px; border-top: 1px solid var(--line); }
.solutions-footer img { display: block; width: 175px; }
.solutions-footer p { margin: 0; color: var(--muted); font-size: 12.5px; }
.solutions-footer > a:last-child { margin-left: auto; color: var(--deep-cyan); font-size: 12.5px; font-weight: 700; }

@media (max-width: 1080px) {
  .solutions-hero { gap: 3%; }
  .solutions-hero-visual { transform: scale(.9); }
  .solution-detail { gap: 3%; }
  .solutions-choice { margin-right: 5%; margin-left: 5%; }
}

@media (max-width: 760px) {
  .solutions-hero { min-height: auto; padding: 38px 7% 70px; grid-template-columns: 1fr; gap: 39px; }
  .solutions-hero-copy h1 { font-size: clamp(45px,11vw,63px); }
  .solutions-hero-copy > p:not(.eyebrow) { font-size: 13.5px; }
  .solutions-hero-visual { min-height: 385px; transform: none; }
  .solutions-hero-visual::before { width: 310px; height: 310px; }
  .solutions-hero-visual::after { width: 225px; height: 225px; }
  .solutions-orbit-center { width: 138px; height: 138px; }
  .solutions-orbit-card { width: 128px; min-height: 91px; padding: 13px; }
  .solutions-orbit-card strong { font-size: 13px; }
  .solutions-orbit-one { left: 0; }
  .solutions-orbit-two { top: 108px; right: 0; }
  .solutions-orbit-three { right: 8%; }
  .solutions-intro { padding: 77px 7% 45px; }
  .solutions-intro h2 { font-size: clamp(32px,8vw,45px); letter-spacing: -1.7px; }
  .solutions-list { padding: 0 7% 67px; }
  .solution-detail { max-width: 470px; margin-bottom: 17px; padding: 11px; grid-template-columns: 1fr; gap: 0; }
  .solution-detail:nth-child(even) .solution-detail-media { order: 0; }
  .solution-detail-media { min-height: 270px; }
  .solution-detail-copy,.solution-detail:nth-child(even) .solution-detail-copy { padding: 27px 14px 24px; }
  .solution-detail-copy h2 { font-size: 30px; }
  .solutions-choice { margin: 0 7% 65px; padding: 37px 22px; }
  .solutions-choice-path { align-items: flex-start; flex-direction: column; gap: 10px; }
  .solutions-choice-path i { display: none; }
  .solutions-footer { align-items: flex-start; flex-direction: column; gap: 12px; }
  .solutions-footer > a:last-child { margin-left: 0; }
}

/* Página de áreas */
.areas-hero { display: grid; min-height: 640px; padding: 55px 7.1% 86px; grid-template-columns: 1fr .9fr; align-items: center; gap: 7%; background: linear-gradient(145deg,#fffefa,#f5f9f0 54%,#eef8f8); }
.areas-hero-copy > p:not(.eyebrow) { max-width: 535px; margin: 22px 0 29px; color: var(--muted); font-size: 14px; line-height: 1.82; }
.areas-hero-copy .button-primary { display: inline-flex; align-items: center; gap: 8px; }
.areas-hero-map { position: relative; min-height: 475px; }
.areas-hero-map::before,.areas-hero-map::after { position: absolute; top: 50%; left: 50%; border: 1px dashed rgba(39,48,57,.15); border-radius: 50%; content: ""; transform: translate(-50%,-50%); }
.areas-hero-map::before { width: 390px; height: 390px; }
.areas-hero-map::after { width: 270px; height: 270px; }
.areas-map-center { position: absolute; top: 50%; left: 50%; z-index: 2; display: flex; width: 164px; height: 164px; align-items: center; justify-content: center; flex-direction: column; border-radius: 50%; background: #174c58; color: #fffefa; box-shadow: 0 19px 43px rgba(31,59,62,.2); transform: translate(-50%,-50%); }
.areas-map-center strong { font-size: 14px; }.areas-map-center small { margin-top: 7px; color: rgba(255,255,255,.63); font-size: 12.5px; }
.areas-map-item { position: absolute; z-index: 3; display: flex; min-width: 142px; padding: 13px 15px; align-items: center; gap: 10px; border-radius: 17px; background: rgba(255,254,250,.96); box-shadow: 0 12px 28px rgba(47,64,62,.1); font-size: 13px; }
.areas-map-item i { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 11px; color: var(--ink); font-style: normal; font-size: 16px; }
.areas-map-cyan { top: 22px; left: 9%; transform: rotate(-3deg); }.areas-map-cyan i { background: rgba(0,184,224,.2); }
.areas-map-lime { top: 108px; right: 0; transform: rotate(3deg); }.areas-map-lime i { background: rgba(202,212,7,.24); }
.areas-map-yellow { right: 8%; bottom: 25px; transform: rotate(-2deg); }.areas-map-yellow i { background: rgba(255,205,0,.25); }
.areas-map-sky { bottom: 73px; left: 0; transform: rotate(2deg); }.areas-map-sky i { background: rgba(112,204,194,.23); }
.areas-principle { display: flex; max-width: 1040px; margin: -24px auto 0; padding: 22px 27px; align-items: center; gap: 13px; border-radius: 18px; background: #fffefa; box-shadow: 0 14px 34px rgba(48,65,61,.08); }
.areas-principle > span { color: var(--lime); font-size: 21px; }.areas-principle p { margin: 0; color: #586568; font-size: 13.5px; line-height: 1.7; }
.areas-detail-list { padding: 104px 7.1% 94px; }
.area-detail { display: grid; max-width: 1150px; margin: 0 auto 38px; padding: 17px; grid-template-columns: .96fr 1.04fr; gap: 6%; border: 1px solid rgba(39,48,57,.055); border-radius: 28px; background: #fffefa; box-shadow: 0 14px 36px rgba(47,62,59,.06); }
.area-detail:nth-child(even) .area-detail-photo { order: 2; }.area-detail:nth-child(even) .area-detail-copy { padding-right: 0; padding-left: 24px; }
.area-detail-photo { position: relative; min-height: 450px; overflow: hidden; border-radius: 21px; background: #edf0eb; }
.area-detail-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 44%; }
.area-detail-icon { position: absolute; top: 16px; right: 16px; display: grid; width: 46px; height: 46px; place-items: center; border-radius: 15px; color: var(--ink); font-size: 20px; }
.area-detail-cyan .area-detail-icon { background: var(--cyan); }.area-detail-lime .area-detail-icon { background: var(--lime); }.area-detail-yellow .area-detail-icon { background: var(--yellow); }.area-detail-sky .area-detail-icon { background: #9fe3e9; }
.area-detail-number { position: absolute; bottom: 15px; left: 16px; padding: 9px 12px; border-radius: 12px; background: rgba(255,254,250,.93); color: var(--ink); font-size: 12.5px; font-weight: 760; }
.area-detail-copy { display: flex; padding: 33px 25px 31px 0; flex-direction: column; justify-content: center; }
.area-detail-label { color: #75817f; font-size: 12.5px; font-weight: 750; letter-spacing: .95px; text-transform: uppercase; }
.area-detail-copy h2 { margin: 12px 0 14px; color: var(--ink); font-size: clamp(30px,3.2vw,44px); font-weight: 650; line-height: 1.15; letter-spacing: -1.55px; }
.area-detail-copy > p { max-width: 510px; margin: 0; color: var(--muted); font-size: 13.5px; line-height: 1.82; }
.area-activities { margin-top: 21px; padding-top: 19px; border-top: 1px solid var(--line); }.area-activities > strong { color: #485558; font-size: 12.5px; }
.area-activities ul { display: grid; margin: 14px 0 0; padding: 0; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px 12px; list-style: none; }
.area-activities li { display: flex; align-items: center; gap: 8px; color: #627073; font-size: 12.5px; }.area-activities li span { display: grid; width: 18px; height: 18px; flex: 0 0 18px; place-items: center; border-radius: 50%; color: var(--ink); font-size: 12.5px; }
.area-detail-cyan .area-activities li span { background: rgba(0,184,224,.16); }.area-detail-lime .area-activities li span { background: rgba(202,212,7,.2); }.area-detail-yellow .area-activities li span { background: rgba(255,205,0,.22); }.area-detail-sky .area-activities li span { background: rgba(112,204,194,.2); }
.area-outcome { display: flex; margin-top: 21px; padding: 15px 17px; align-items: flex-start; gap: 10px; border-radius: 15px; background: #f6f8f4; }.area-outcome > span { color: var(--deep-cyan); }.area-outcome strong { display: block; margin-bottom: 4px; color: #475457; font-size: 12.5px; }.area-outcome p { margin: 0; color: #6d7979; font-size: 12.5px; line-height: 1.55; }
.areas-accompaniment { max-width: 1130px; margin: 0 auto 92px; padding: 48px 50px; border-radius: 28px; background: linear-gradient(120deg,#eef8f8,#f8f9e8 58%,#fff6d7); text-align: center; }
.areas-accompaniment h2 { margin: 0; color: var(--ink); font-size: clamp(31px,3.4vw,47px); font-weight: 630; letter-spacing: -1.8px; }.areas-accompaniment > div:first-child > p:last-child { max-width: 600px; margin: 15px auto 0; color: var(--muted); font-size: 13.5px; line-height: 1.75; }
.areas-accompaniment-steps { display: flex; max-width: 650px; margin: 30px auto 27px; align-items: center; justify-content: center; gap: 17px; }.areas-accompaniment-steps span { display: flex; align-items: center; gap: 8px; color: #536164; font-size: 12.5px; }.areas-accompaniment-steps strong { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 10px; background: #fffefa; color: var(--deep-cyan); font-size: 12.5px; }.areas-accompaniment-steps i { color: #969f9b; font-style: normal; }.areas-accompaniment .contact-button { display: inline-flex; }

@media (max-width: 1080px) { .areas-hero { gap: 3%; }.areas-hero-map { transform: scale(.9); }.area-detail { gap: 3%; }.areas-accompaniment { margin-right: 5%; margin-left: 5%; } }
@media (max-width: 760px) {
  .areas-hero { min-height: auto; padding: 38px 7% 75px; grid-template-columns: 1fr; gap: 36px; }.areas-hero-copy h1 { font-size: clamp(45px,11vw,63px); }.areas-hero-copy > p:not(.eyebrow) { font-size: 13.5px; }
  .areas-hero-map { min-height: 390px; transform: none; }.areas-hero-map::before { width: 315px; height: 315px; }.areas-hero-map::after { width: 220px; height: 220px; }.areas-map-center { width: 132px; height: 132px; }.areas-map-item { min-width: 118px; padding: 10px; font-size: 12.5px; }.areas-map-item i { width: 30px; height: 30px; }.areas-map-cyan { left: 0; }.areas-map-lime { right: 0; }.areas-map-yellow { right: 3%; }.areas-map-sky { left: 0; }
  .areas-principle { margin: -25px 7% 0; padding: 18px; }.areas-principle p { font-size: 12.5px; }.areas-detail-list { padding: 75px 7% 66px; }
  .area-detail { max-width: 470px; margin-bottom: 18px; padding: 11px; grid-template-columns: 1fr; gap: 0; }.area-detail:nth-child(even) .area-detail-photo { order: 0; }.area-detail-photo { min-height: 300px; }.area-detail-copy,.area-detail:nth-child(even) .area-detail-copy { padding: 27px 13px 24px; }.area-detail-copy h2 { font-size: 30px; }.area-activities ul { grid-template-columns: 1fr; }
  .areas-accompaniment { margin: 0 7% 65px; padding: 37px 22px; }.areas-accompaniment-steps { align-items: flex-start; flex-direction: column; gap: 10px; }.areas-accompaniment-steps i { display: none; }
}

/* Página Quiénes somos */
.about-hero { display: grid; min-height: 690px; padding: 45px 7.1% 82px; grid-template-columns: 1fr .96fr; align-items: center; gap: 7%; background: linear-gradient(150deg,#fffefa 0%,#f8f8ee 52%,#eff8f7 100%); }
.about-hero-copy > p:not(.eyebrow) { max-width: 530px; margin: 21px 0 29px; color: var(--muted); font-size: 14px; line-height: 1.83; }.about-hero-copy .button-primary { display: inline-flex; align-items: center; gap: 8px; }
.about-hero-visual { position: relative; height: 485px; overflow: visible; border-radius: 105px 35px 82px 35px; background: #eceee9; }.about-hero-visual > img { display: block; width: 100%; height: 100%; border-radius: inherit; object-fit: cover; object-position: 48% 42%; }.about-hero-note { position: absolute; right: 17px; bottom: 18px; left: 17px; padding: 15px 17px; border-radius: 16px; background: rgba(255,254,250,.95); color: #3d4b4d; font-size: 13px; font-weight: 680; text-align: center; }.about-hero-spark { position: absolute; top: -17px; right: -14px; color: var(--lime); font-size: 41px; }
.about-story { padding: 105px 7.1% 100px; }.about-story-heading { margin: 0 auto 58px; text-align: center; }.about-story-heading h2,.about-section-heading h2 { margin: 0; color: var(--ink); font-size: clamp(37px,4.05vw,57px); font-weight: 620; line-height: 1.12; letter-spacing: -2.6px; }.about-story-heading h2 > span,.about-section-heading h2 > span { color: var(--deep-cyan); }
.about-story-layout { display: grid; max-width: 1130px; margin: 0 auto; grid-template-columns: .88fr 1.12fr; align-items: center; gap: 8%; }.about-story-photo { position: relative; min-height: 420px; overflow: hidden; border-radius: 24px 88px 24px 24px; }.about-story-photo img { display: block; width: 100%; height: 100%; min-height: 420px; object-fit: cover; object-position: 46% 43%; }.about-story-photo > span { position: absolute; right: 13px; bottom: 13px; left: 13px; padding: 12px; border-radius: 14px; background: rgba(255,254,250,.93); color: #485558; font-size: 12.5px; font-weight: 670; text-align: center; }.about-story-copy > p { margin: 0 0 15px; color: #657174; font-size: 13.5px; line-height: 1.84; }.about-story-highlight { display: flex; margin-top: 21px; padding: 17px 18px; align-items: flex-start; gap: 10px; border-radius: 15px; background: linear-gradient(105deg,rgba(0,184,224,.085),rgba(202,212,7,.1)); }.about-story-highlight > span { color: var(--deep-cyan); }.about-story-highlight strong { color: #405054; font-size: 12.5px; line-height: 1.65; }
.about-team { padding: 103px 7.1% 90px; background: linear-gradient(180deg,#f4f8f5,#faf9ef); }.about-section-heading { max-width: 800px; margin: 0 auto 51px; text-align: center; }.about-section-heading > p:last-child { max-width: 580px; margin: 18px auto 0; color: var(--muted); font-size: 13.5px; line-height: 1.8; }.about-team-grid { display: grid; max-width: 1130px; margin: 0 auto; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }.about-team-card { display: flex; min-height: 490px; padding: 12px 12px 21px; flex-direction: column; overflow: hidden; border: 1px solid rgba(39,48,57,.06); border-radius: 22px; background: rgba(255,254,250,.95); box-shadow: 0 12px 30px rgba(48,63,60,.055); }.about-team-photo { height: 238px; overflow: hidden; border-radius: 16px 16px 12px 12px; background: #edf0eb; }.about-team-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 27%; }.about-team-card-lime .about-team-photo img { object-position: center 30%; }.about-team-avatar { display: grid; width: 100%; height: 238px; place-items: center; border-radius: 16px 16px 12px 12px; color: #334248; font-size: 42px; font-weight: 740; }.about-team-card-cyan .about-team-avatar { background: rgba(0,184,224,.17); }.about-team-card-lime .about-team-avatar { background: rgba(202,212,7,.21); }.about-team-card-yellow .about-team-avatar { background: linear-gradient(145deg,rgba(255,205,0,.21),rgba(202,212,7,.13)); }.about-team-role { margin: 20px 11px 0; color: #76817f; font-size: 12.5px; font-weight: 750; letter-spacing: .8px; text-transform: uppercase; }.about-team-card h3 { margin: 8px 11px 9px; color: var(--ink); font-size: 17px; font-weight: 700; line-height: 1.35; }.about-team-card > p { margin: 0 11px; color: var(--muted); font-size: 12.5px; line-height: 1.75; }.about-team-card > a,.about-team-label { margin: auto 11px 0; padding-top: 17px; color: var(--deep-cyan); font-size: 12.5px; font-weight: 710; }.about-team-label { color: #827000; }.about-team-note { margin: 18px auto 0; color: #818a88; font-size: 12.5px; text-align: center; }
.about-purpose { padding: 107px 7.1% 99px; }.about-purpose .about-section-heading { margin-bottom: 54px; }
.about-recognitions { padding: 103px 7.1% 96px; background: #174c58; color: #fffefa; }.about-recognition-heading { max-width: 780px; margin: 0 auto 52px; text-align: center; }.about-recognition-heading h2 { margin: 0; font-size: clamp(37px,4.1vw,58px); font-weight: 610; line-height: 1.12; letter-spacing: -2.6px; }.about-recognition-heading h2 > span { color: #a9e7ef; }.about-recognition-heading > p:last-child { max-width: 590px; margin: 18px auto 0; color: rgba(255,254,250,.7); font-size: 13.5px; line-height: 1.8; }.about-recognition-grid { display: grid; max-width: 1130px; margin: 0 auto; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }.about-recognition-card { min-height: 160px; padding: 22px 20px 20px; border: 1px solid rgba(255,255,255,.11); border-radius: 19px; background: rgba(255,255,255,.07); }.about-recognition-card > span { font-size: 12.5px; font-weight: 760; }.about-recognition-cyan > span { color: #74d9ea; }.about-recognition-lime > span { color: var(--lime); }.about-recognition-yellow > span { color: var(--yellow); }.about-recognition-card h3 { margin: 12px 0 8px; color: #fffefa; font-size: 14px; font-weight: 690; line-height: 1.35; }.about-recognition-card p { margin: 0; color: rgba(255,254,250,.65); font-size: 12.5px; line-height: 1.65; }
.about-recognition-logo { display: grid; width: 94px; height: 59px; margin-bottom: 17px; padding: 7px; place-items: center; overflow: hidden; border-radius: 10px; background: #fff; }.about-recognition-logo img { display: block; width: 100%; height: 100%; object-fit: contain; }.about-recognition-card { min-height: 229px; }
.about-collaborators { padding: 104px 7.1% 97px; }.about-collaborator-grid { display: grid; max-width: 1090px; margin: 0 auto; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }.about-collaborator-card { display: flex; min-height: 162px; padding: 20px 18px 16px; align-items: center; justify-content: center; flex-direction: column; gap: 13px; border: 1px solid rgba(39,48,57,.075); border-radius: 17px; background: #fff; text-align: center; }.about-collaborator-card img { display: block; width: min(100%,194px); height: 82px; object-fit: contain; }.about-collaborator-card > span { color: #63706f; font-size: 12.5px; font-weight: 650; line-height: 1.5; }
.about-closing { max-width: 1130px; margin: 0 auto 88px; padding: 49px 47px; border-radius: 27px; background: linear-gradient(120deg,#eef8f8,#f8f9e8 58%,#fff6d7); text-align: center; }.about-closing h2 { margin: 0; color: var(--ink); font-size: clamp(32px,3.5vw,48px); font-weight: 640; letter-spacing: -1.8px; }.about-closing > p:not(.section-kicker) { max-width: 560px; margin: 15px auto 24px; color: var(--muted); font-size: 13.5px; line-height: 1.78; }.about-closing .contact-button { display: inline-flex; }

@media (max-width: 1080px) { .about-hero { gap: 4%; }.about-story-layout { gap: 5%; }.about-team-card { padding: 10px 10px 19px; }.about-closing { margin-right: 5%; margin-left: 5%; } }
@media (max-width: 760px) {
  .about-hero { min-height: auto; padding: 38px 7% 66px; grid-template-columns: 1fr; gap: 34px; }.about-hero-copy h1 { font-size: clamp(46px,11vw,63px); }.about-hero-copy > p:not(.eyebrow) { font-size: 13.5px; }.about-hero-visual { height: 370px; border-radius: 79px 25px 64px 25px; }.about-hero-note { font-size: 12.5px; }
  .about-story { padding: 77px 7% 70px; }.about-story-heading { margin-bottom: 37px; }.about-story-heading h2,.about-section-heading h2 { font-size: clamp(32px,8vw,45px); letter-spacing: -1.6px; }.about-story-layout { max-width: 470px; grid-template-columns: 1fr; gap: 29px; }.about-story-photo,.about-story-photo img { min-height: 285px; }.about-story-copy > p { font-size: 13px; }
  .about-team { padding: 77px 7% 68px; }.about-section-heading { margin-bottom: 37px; }.about-team-grid { max-width: 455px; grid-template-columns: 1fr; gap: 12px; }.about-team-card { min-height: 0; padding: 10px 10px 20px; }.about-team-photo,.about-team-avatar { height: 285px; }.about-team-card > a,.about-team-label { margin-top: 17px; }
  .about-purpose { padding: 78px 7% 72px; }.about-purpose .about-section-heading { margin-bottom: 39px; }
  .about-recognitions { padding: 78px 7% 68px; }.about-recognition-heading { margin-bottom: 35px; }.about-recognition-heading h2 { font-size: clamp(32px,8vw,45px); letter-spacing: -1.6px; }.about-recognition-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }.about-recognition-card { min-height: 207px; padding: 17px 13px; }.about-recognition-logo { width: 77px; height: 49px; margin-bottom: 13px; }.about-recognition-card h3 { font-size: 13px; }.about-recognition-card p { font-size: 12.5px; }
  .about-collaborators { padding: 77px 7% 70px; }.about-collaborator-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }.about-collaborator-card { min-height: 132px; padding: 14px 11px 12px; gap: 9px; }.about-collaborator-card img { height: 64px; }.about-collaborator-card > span { font-size: 12.5px; }
  .about-closing { margin: 0 7% 65px; padding: 37px 21px; }.about-closing > p:not(.section-kicker) { font-size: 13px; }
}

/* NeuroKids: landing, biblioteca editorial y artículos */
.neuro-page { --neuro-navy: #173a49; --neuro-mint: #edf8f3; }.neuro-site-header .desktop-nav { gap: 29px; }.neuro-header-cta { background: var(--cyan); color: #113743; }.neuro-eyebrow { background: rgba(0,184,224,.11); color: var(--deep-cyan); }.neuro-eyebrow > span { background: var(--cyan); }
.neuro-landing-hero { display: grid; min-height: 720px; padding: 44px 7.1% 83px; grid-template-columns: 1.06fr .94fr; align-items: center; gap: 7%; background: linear-gradient(145deg,#fffefa 0%,#f8fbf7 54%,#eff9f5 100%); }.neuro-landing-logo { display: block; width: min(315px,78%); height: auto; margin: 0 0 20px; border-radius: 14px; box-shadow: 0 11px 27px rgba(40,53,44,.09); }.neuro-landing-copy h1 { max-width: 635px; font-size: clamp(48px,5.15vw,72px); }.neuro-landing-intro { max-width: 515px; margin: 24px 0 28px; color: var(--muted); font-size: 14px; line-height: 1.87; }.neuro-social-proof { display: flex; margin: 23px 0 0; align-items: center; gap: 8px; color: #768080; font-size: 12.5px; }.neuro-social-proof > span { color: var(--lime); }
.neuro-landing-visual { position: relative; height: 495px; }.neuro-hero-photo { position: absolute; inset: 22px 15px 15px 0; overflow: hidden; border-radius: 110px 34px 95px 34px; background: #eef0e8; }.neuro-hero-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 62% 45%; }.neuro-floating-quote { position: absolute; right: -3px; bottom: 37px; left: 39px; display: grid; padding: 18px 20px 16px 53px; grid-template-columns: 1fr; border-radius: 17px; background: rgba(255,254,250,.97); box-shadow: 0 12px 33px rgba(26,50,44,.1); }.neuro-floating-quote > span { position: absolute; top: 18px; left: 19px; color: var(--deep-cyan); font-size: 22px; }.neuro-floating-quote strong { color: var(--ink); font-size: 13.5px; }.neuro-floating-quote small { margin-top: 5px; color: #798481; font-size: 12.5px; }.neuro-hero-spark { position: absolute; top: -2px; right: -7px; color: var(--lime); font-size: 42px; }.neuro-hero-dots { position: absolute; right: 18px; bottom: 1px; color: var(--yellow); font-size: 25px; letter-spacing: 4px; }
.neuro-promise { padding: 29px 7.1%; background: #183f4b; text-align: center; }.neuro-promise p { margin: 0; color: rgba(255,254,250,.79); font-size: 13.5px; }.neuro-promise strong { color: #fffefa; }
.neuro-reasons { padding: 105px 7.1% 99px; }.neuro-reasons-grid { display: grid; max-width: 1130px; margin: 0 auto; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 17px; }.neuro-reason { min-height: 230px; padding: 24px 23px; border: 1px solid rgba(39,48,57,.075); border-radius: 20px; background: #fff; }.neuro-reason > span { display: grid; width: 47px; height: 47px; place-items: center; border-radius: 15px; font-size: 20px; }.neuro-reason-cyan > span { background: rgba(0,184,224,.13); color: var(--deep-cyan); }.neuro-reason-lime > span { background: rgba(202,212,7,.18); color: #737c00; }.neuro-reason-yellow > span { background: rgba(255,205,0,.19); color: #a07a00; }.neuro-reason h3 { margin: 17px 0 9px; font-size: 15px; }.neuro-reason p { margin: 0; color: var(--muted); font-size: 12.5px; line-height: 1.8; }
.neuro-preview,.neuro-related { padding: 101px 7.1% 97px; background: #f5f8f5; }.neuro-preview-heading,.neuro-library-heading { display: flex; max-width: 1130px; margin: 0 auto 38px; align-items: flex-end; justify-content: space-between; }.neuro-preview-heading h2,.neuro-library-heading h2,.neuro-featured-heading h2 { margin: 0; color: var(--ink); font-size: clamp(35px,3.7vw,51px); font-weight: 625; line-height: 1.14; letter-spacing: -2px; }.neuro-preview-heading h2 > span,.neuro-library-heading h2 > span,.neuro-featured-heading h2 > span { color: var(--deep-cyan); }.neuro-preview-heading > a { color: var(--deep-cyan); font-size: 12.5px; font-weight: 690; }.neuro-preview-grid,.neuro-library-grid { display: grid; max-width: 1130px; margin: 0 auto; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 19px; }
.neuro-edition-card { display: flex; min-height: 430px; padding: 10px; flex-direction: column; overflow: hidden; border: 1px solid rgba(39,48,57,.075); border-radius: 20px; background: #fffefa; box-shadow: 0 11px 28px rgba(39,55,46,.04); }.neuro-edition-image { position: relative; display: block; height: 190px; overflow: hidden; border-radius: 14px; background: #eef0ea; }.neuro-edition-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 200ms ease; }.neuro-edition-image:hover img { transform: scale(1.04); }.neuro-edition-image > span { position: absolute; top: 11px; left: 11px; padding: 7px 9px; border-radius: 9px; background: rgba(255,254,250,.94); color: var(--ink); font-size: 12.5px; font-weight: 750; }.neuro-edition-copy { display: flex; padding: 15px 10px 11px; flex: 1; flex-direction: column; }.neuro-edition-meta { display: flex; margin: 0 0 10px; justify-content: space-between; gap: 7px; color: #7b8682; font-size: 12.5px; }.neuro-edition-meta span:first-child { color: var(--deep-cyan); font-weight: 650; }.neuro-edition-copy h3 { margin: 0 0 10px; color: var(--ink); font-size: 15px; font-weight: 690; line-height: 1.43; }.neuro-edition-description { margin: 0; color: var(--muted); font-size: 12.5px; line-height: 1.77; }.neuro-edition-link { margin-top: auto; padding-top: 16px; color: var(--deep-cyan); font-size: 12.5px; font-weight: 710; }.neuro-edition-link span { margin-left: 4px; }
.neuro-signup { display: grid; max-width: 1150px; margin: 89px auto; padding: 54px; grid-template-columns: .96fr 1.04fr; align-items: center; gap: 66px; border-radius: 29px; background: linear-gradient(130deg,#eef8f7,#f8f9eb 68%,#fff6db); }.neuro-signup-copy h2 { margin: 0; font-size: clamp(37px,3.75vw,51px); font-weight: 625; line-height: 1.14; letter-spacing: -2px; }.neuro-signup-copy h2 > span { color: var(--deep-cyan); }.neuro-signup-copy > p:not(.section-kicker) { margin: 18px 0 0; color: var(--muted); font-size: 13px; line-height: 1.8; }.neuro-signup-tags { display: flex; margin-top: 21px; flex-wrap: wrap; gap: 7px; }.neuro-signup-tags span { padding: 7px 10px; border-radius: 999px; background: rgba(255,255,255,.81); color: #556264; font-size: 12.5px; }
.neuro-form-card { padding: 29px; border: 1px solid rgba(39,48,57,.07); border-radius: 21px; background: rgba(255,254,250,.97); box-shadow: 0 15px 36px rgba(47,63,56,.06); }.neuro-subscribe-form { display: grid; gap: 8px; }.neuro-subscribe-form > label:not(.neuro-consent) { margin-top: 9px; color: #435256; font-size: 12.5px; font-weight: 700; }.neuro-subscribe-form > input,.neuro-subscribe-form > select { width: 100%; min-height: 45px; padding: 0 13px; border: 1px solid rgba(39,48,57,.12); border-radius: 11px; background: #fff; color: #425055; font: inherit; font-size: 12.5px; }.neuro-subscribe-form > input:focus,.neuro-subscribe-form > select:focus { border-color: var(--cyan); outline: 2px solid rgba(0,184,224,.13); }.neuro-consent { display: flex; margin: 13px 0 5px; align-items: flex-start; gap: 8px; color: #687476; font-size: 12.5px; line-height: 1.6; }.neuro-consent input { margin: 1px 0 0; accent-color: var(--deep-cyan); }.neuro-consent a { color: var(--deep-cyan); text-decoration: underline; }.neuro-subscribe-form button { min-height: 47px; border: none; border-radius: 999px; background: var(--cyan); color: #163541; font: inherit; font-size: 12.5px; font-weight: 760; cursor: pointer; }.neuro-form-note { margin: 5px 0 0; color: #87908c; font-size: 12.5px; text-align: center; }
.neuro-archive-hero { display: grid; min-height: 500px; padding: 52px 7.1% 83px; grid-template-columns: .94fr 1.06fr; align-items: center; gap: 9%; background: linear-gradient(143deg,#fffefa,#f5f9f4 67%,#eef8f4); }.neuro-archive-hero h1 { font-size: clamp(48px,5.1vw,72px); }.neuro-archive-hero > div:first-child > p:not(.eyebrow) { max-width: 505px; margin: 19px 0 0; color: var(--muted); font-size: 14.5px; line-height: 1.83; }.neuro-archive-stats { display: flex; margin-top: 25px; gap: 19px; }.neuro-archive-stats span { color: #6d7978; font-size: 12.5px; }.neuro-archive-stats strong { color: var(--deep-cyan); font-size: 13.5px; }.neuro-brand-panel { padding: 12px 12px 15px; border-radius: 19px; background: #fffefa; box-shadow: 0 16px 40px rgba(39,55,45,.075); }.neuro-brand-panel img { display: block; width: 100%; height: auto; border-radius: 12px; }.neuro-brand-panel > span { display: block; margin-top: 12px; color: #566363; font-size: 12.5px; font-weight: 650; text-align: center; }
.neuro-archive-featured { max-width: 1130px; margin: 0 auto; padding: 92px 0 88px; }.neuro-featured-heading { margin-bottom: 34px; }.neuro-edition-featured { display: grid; min-height: 380px; grid-template-columns: 1.09fr .91fr; gap: 25px; }.neuro-edition-featured .neuro-edition-image { height: 356px; }.neuro-edition-featured .neuro-edition-copy { justify-content: center; padding: 30px 24px 30px 5px; }.neuro-edition-featured .neuro-edition-copy h3 { margin-top: 13px; font-size: 31px; line-height: 1.22; letter-spacing: -1.1px; }.neuro-edition-featured .neuro-edition-description { font-size: 13px; }.neuro-edition-featured .neuro-edition-link { margin-top: 15px; }.neuro-library { padding: 101px 7.1% 95px; background: #f5f8f5; }.neuro-library-count { color: #74807c; font-size: 12.5px; }.neuro-library-grid { gap: 19px; }.neuro-archive-cta { max-width: 1130px; margin: 89px auto; padding: 51px 45px; border-radius: 26px; background: linear-gradient(120deg,#eef8f8,#f8f9e8 58%,#fff6d7); text-align: center; }.neuro-archive-cta h2 { margin: 0; font-size: clamp(30px,3.3vw,45px); font-weight: 635; letter-spacing: -1.6px; }.neuro-archive-cta > p:not(.section-kicker) { margin: 14px 0 21px; color: var(--muted); font-size: 13px; }.neuro-archive-cta .contact-button { display: inline-flex; }
.neuro-article-header { max-width: 770px; margin: 0 auto; padding: 41px 0 38px; font-family: Arial,"Segoe UI",sans-serif; text-align: center; }.neuro-breadcrumb { display: inline-flex; margin-bottom: 28px; align-items: center; gap: 7px; color: var(--deep-cyan); font-size: 13.5px; }.neuro-article-masthead { display: block; width: 100%; height: auto; margin: 0 0 34px; border-radius: 10px; }.neuro-article-edition { margin: 0 0 11px; color: #007f9b; font-size: 14.5px; font-weight: 700; letter-spacing: .65px; }.neuro-article-header h1 { max-width: 700px; margin: 0 auto; color: #243947; font-size: clamp(31px,4vw,43px); font-weight: 700; line-height: 1.22; letter-spacing: -.7px; }.neuro-article-deck { max-width: 680px; margin: 17px auto 0; color: #5d696d; font-size: 15px; line-height: 1.72; }.neuro-article-meta { display: flex; margin-top: 20px; justify-content: center; flex-wrap: wrap; gap: 14px; color: #687674; font-size: 13px; line-height: 1.5; }.neuro-article-meta a { color: #008fae; font-weight: 650; }.neuro-article-cover { max-width: 770px; margin: 0 auto 41px; }.neuro-article-cover img { display: block; width: 100%; height: auto; max-height: none; border-radius: 9px; object-fit: contain; }
.neuro-article-layout { display: block; max-width: 720px; margin: 0 auto 91px; }.neuro-article-content { width: 100%; font-family: Arial,"Segoe UI",sans-serif; }.neuro-article-content > p,.neuro-article-list { margin: 0 0 16px; color: #343a3d; font-size: 15.5px; line-height: 1.78; }.neuro-article-content > h2 { margin: 37px 0 20px; color: #0099bb; font-size: 21px; font-weight: 700; line-height: 1.42; letter-spacing: 0; text-align: center; }.neuro-article-content > h2:first-child { margin-top: 3px; }.neuro-article-content > h3 { margin: 23px 0 11px; color: #33414a; font-size: 16px; font-weight: 700; line-height: 1.55; letter-spacing: 0; }.neuro-article-list { padding-left: 25px; }.neuro-article-list li { padding-left: 2px; }.neuro-article-list li + li { margin-top: 5px; }.neuro-article-emphasis { margin-top: 18px !important; color: #008bab !important; }.neuro-article-inline-image { margin: 31px 0; }.neuro-article-inline-image img { display: block; width: 100%; height: auto; max-height: none; border-radius: 7px; object-fit: contain; }.neuro-article-share { margin-top: 38px; padding: 23px 25px; border-radius: 13px; background: #eff8f5; }.neuro-article-share > strong { color: #253a42; font-size: 15px; }.neuro-article-share > p { margin: 10px 0 12px; color: #58666a; font-size: 14.5px; line-height: 1.7; }.neuro-article-share > a { color: var(--deep-cyan); font-size: 13.5px; font-weight: 710; }

@media (max-width: 1080px) { .neuro-landing-hero,.neuro-archive-hero { gap: 5%; }.neuro-signup { margin-right: 5%; margin-left: 5%; gap: 35px; }.neuro-archive-featured,.neuro-archive-cta { margin-right: 6%; margin-left: 6%; }.neuro-article-header { padding-right: 7%; padding-left: 7%; }.neuro-article-cover { margin-right: 8%; margin-left: 8%; }.neuro-article-layout { margin-right: 9%; margin-left: 9%; } }
@media (max-width: 760px) {
  .neuro-landing-hero { min-height: auto; padding: 37px 7% 72px; grid-template-columns: 1fr; gap: 34px; }.neuro-landing-logo { width: min(285px,83%); margin-bottom: 18px; }.neuro-landing-copy h1,.neuro-archive-hero h1 { font-size: clamp(45px,10.7vw,62px); }.neuro-landing-intro { font-size: 13.5px; }.neuro-social-proof { font-size: 12.5px; }.neuro-landing-visual { height: 390px; }.neuro-hero-photo { border-radius: 78px 27px 67px 27px; }.neuro-floating-quote { left: 24px; }.neuro-promise { padding: 21px 7%; }.neuro-promise p { font-size: 12.5px; line-height: 1.65; }
  .neuro-reasons { padding: 76px 7% 69px; }.neuro-reasons-grid { max-width: 455px; grid-template-columns: 1fr; gap: 10px; }.neuro-reason { min-height: 0; padding: 20px; }.neuro-preview,.neuro-related { padding: 75px 7% 67px; }.neuro-preview-heading,.neuro-library-heading { margin-bottom: 28px; align-items: flex-start; flex-direction: column; gap: 15px; }.neuro-preview-heading h2,.neuro-library-heading h2,.neuro-featured-heading h2 { font-size: clamp(32px,8vw,44px); letter-spacing: -1.35px; }.neuro-preview-grid,.neuro-library-grid { max-width: 465px; grid-template-columns: 1fr; gap: 12px; }.neuro-edition-card { min-height: 390px; }.neuro-edition-image { height: 220px; }.neuro-edition-copy h3 { font-size: 16px; }
  .neuro-signup { margin: 65px 7%; padding: 30px 19px; grid-template-columns: 1fr; gap: 23px; }.neuro-signup-copy h2 { font-size: 36px; letter-spacing: -1.4px; }.neuro-form-card { padding: 20px; }.neuro-archive-hero { min-height: auto; padding: 39px 7% 69px; grid-template-columns: 1fr; gap: 34px; }.neuro-archive-stats { gap: 11px; flex-wrap: wrap; }.neuro-archive-featured { margin: 0 7%; padding: 69px 0 65px; }.neuro-edition-featured { min-height: 0; grid-template-columns: 1fr; gap: 0; }.neuro-edition-featured .neuro-edition-image { height: 245px; }.neuro-edition-featured .neuro-edition-copy { padding: 20px 12px 13px; }.neuro-edition-featured .neuro-edition-copy h3 { font-size: 23px; }.neuro-library { padding: 73px 7% 69px; }.neuro-archive-cta { margin: 66px 7%; padding: 37px 19px; }
  .neuro-article-header { padding: 33px 7% 29px; }.neuro-breadcrumb { margin-bottom: 21px; }.neuro-article-masthead { margin-bottom: 26px; border-radius: 7px; }.neuro-article-header h1 { font-size: clamp(28px,7.3vw,37px); letter-spacing: -.5px; }.neuro-article-deck { font-size: 14px; }.neuro-article-meta { gap: 8px 12px; font-size: 12.5px; }.neuro-article-cover { margin: 0 7% 29px; }.neuro-article-cover img { height: auto; max-height: none; border-radius: 7px; }.neuro-article-layout { margin: 0 8% 66px; }.neuro-article-content > p,.neuro-article-list { font-size: 15px; line-height: 1.76; }.neuro-article-content > h2 { font-size: 19px; }.neuro-article-content > h3 { font-size: 15.5px; }.neuro-article-inline-image { margin: 25px 0; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; }.neuro-edition-image img { transition: none; } }

/* Aula Inmersiva VR */
.strip-product-link { color: var(--deep-cyan); font-weight: 650; }
.strip-product-link:hover { color: var(--cyan); }
.aula-hero { position: relative; display: grid; min-height: 640px; padding: 45px 7.1% 105px; grid-template-columns: .97fr 1.03fr; align-items: center; gap: 6.3%; overflow: hidden; background: linear-gradient(145deg,#fffefa,#f5faf2 54%,#e9f7f8); }
.aula-hero-orb { position: absolute; border-radius: 50%; pointer-events: none; }.aula-hero-orb-one { top: -170px; right: -120px; width: 440px; height: 440px; background: rgba(0,184,224,.055); }.aula-hero-orb-two { bottom: -175px; left: 34%; width: 320px; height: 320px; background: rgba(202,212,7,.07); }
.aula-hero-copy,.aula-hero-visual { position: relative; z-index: 1; }.aula-breadcrumb { display: inline-flex; margin-bottom: 34px; align-items: center; gap: 7px; color: #72807f; font-size: 12.5px; }.aula-breadcrumb span { color: var(--deep-cyan); }.aula-hero-copy .eyebrow { margin-bottom: 16px; }.aula-hero-copy h1 { margin: 0; color: var(--ink); font-size: clamp(43px,5vw,71px); font-weight: 650; line-height: 1.05; letter-spacing: -3px; }.aula-hero-copy h1 span { color: #078da6; }.aula-hero-copy > p:last-of-type { max-width: 530px; margin: 22px 0 28px; color: var(--muted); font-size: 14.5px; line-height: 1.88; }.aula-hero-actions { display: flex; align-items: center; gap: 17px; }.aula-hero-actions .button-primary { display: inline-flex; align-items: center; gap: 7px; }.aula-text-link { display: inline-flex; align-items: center; gap: 7px; color: #496169; font-size: 12.5px; font-weight: 640; }.aula-text-link span { color: var(--deep-cyan); font-size: 12.5px; }
.aula-hero-visual { min-height: 395px; display: flex; align-items: center; }.aula-hero-screen { width: 100%; padding: 12px; border: 1px solid rgba(255,255,255,.88); border-radius: 23px; background: rgba(255,254,250,.83); box-shadow: 0 28px 66px rgba(33,63,67,.16); transform: rotate(-2deg); }.aula-hero-screen > img { display: block; width: 100%; aspect-ratio: 2.32/1; object-fit: cover; border-radius: 14px; }.aula-screen-bottom { display: flex; padding: 14px 3px 4px; align-items: center; justify-content: space-between; }.aula-screen-bottom > span { display: flex; align-items: center; gap: 7px; color: #687675; font-size: 12.5px; }.aula-screen-bottom i { width: 7px; height: 7px; border-radius: 50%; background: #83ba59; }.aula-screen-bottom strong { color: #3b4c51; font-size: 12.5px; }.aula-floating { position: absolute; display: flex; align-items: center; gap: 10px; border-radius: 16px; background: rgba(255,254,250,.96); box-shadow: 0 15px 38px rgba(40,61,56,.14); }.aula-floating-games { right: -13px; bottom: 47px; padding: 13px 16px; }.aula-floating-games > span { color: var(--lime); font-size: 22px; }.aula-floating-games strong,.aula-floating-games small { display: block; }.aula-floating-games strong,.aula-floating-play strong { color: #3c4c50; font-size: 12.5px; }.aula-floating-games small { margin-top: 4px; color: #74807d; font-size: 12.5px; }.aula-floating-play { top: 40px; left: -19px; padding: 12px 14px; }.aula-floating-play > span { color: var(--cyan); font-size: 17px; }
.aula-principle { position: relative; z-index: 2; display: grid; max-width: 1110px; margin: -49px auto 0; padding: 24px 29px; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 25px; border-radius: 22px; background: #fffefa; box-shadow: 0 17px 45px rgba(42,61,56,.085); }.aula-principle > div { display: grid; grid-template-columns: 30px 1fr; column-gap: 10px; align-items: center; }.aula-principle > div > span { grid-row: span 2; display: grid; width: 30px; height: 30px; place-items: center; border-radius: 10px; background: #ebf8f7; color: var(--deep-cyan); }.aula-principle strong { color: #3e4d51; font-size: 12.5px; }.aula-principle small { margin-top: 4px; color: #73807c; font-size: 12.5px; }
.aula-experiences { padding: 113px 7.1% 75px; }.aula-section-heading { max-width: 730px; margin: 0 auto 51px; text-align: center; }.aula-section-heading h2,.aula-outcomes-heading h2,.aula-closing h2 { margin: 0; color: var(--ink); font-size: clamp(36px,4vw,54px); font-weight: 635; line-height: 1.16; letter-spacing: -2px; }.aula-section-heading h2 span,.aula-outcomes-heading h2 span,.aula-closing h2 span { color: var(--deep-cyan); }.aula-section-heading > p:last-child,.aula-outcomes-heading > p:last-child { max-width: 565px; margin: 14px auto 0; color: var(--muted); font-size: 13px; line-height: 1.78; }
.aula-experience { display: grid; max-width: 1140px; margin: 0 auto 27px; padding: 13px; grid-template-columns: 1.08fr .92fr; gap: 5.1%; border: 1px solid rgba(39,48,57,.07); border-radius: 24px; background: #fffefa; box-shadow: 0 14px 36px rgba(42,59,54,.055); }.aula-experience:nth-of-type(even) .aula-experience-image { order: 2; }.aula-experience:nth-of-type(even) .aula-experience-copy { padding-left: 18px; }.aula-experience-image { position: relative; display: flex; min-height: 285px; align-items: center; overflow: hidden; border-radius: 16px; background: linear-gradient(140deg,#edf1ed,#f6f7ef); }.aula-experience-image img { display: block; width: 100%; height: auto; }.aula-experience-counter { position: absolute; right: 12px; bottom: 12px; padding: 8px 10px; border-radius: 9px; background: rgba(255,254,250,.95); color: #405055; font-size: 12.5px; font-weight: 700; }.aula-experience-copy { display: flex; padding: 30px 21px 30px 0; flex-direction: column; justify-content: center; }.aula-experience-kicker { color: #73807c; font-size: 12.5px; font-weight: 730; letter-spacing: .75px; text-transform: uppercase; }.aula-experience-copy h3 { margin: 10px 0 4px; color: var(--ink); font-size: clamp(27px,3vw,39px); font-weight: 645; letter-spacing: -1.2px; }.aula-experience-line { margin: 0 0 12px !important; color: var(--deep-cyan) !important; font-weight: 660; }.aula-experience-copy > p { max-width: 470px; margin: 0; color: #677477; font-size: 12.5px; line-height: 1.83; }.aula-skill-list { display: flex; margin-top: 17px; flex-wrap: wrap; gap: 7px; }.aula-skill-list span { padding: 7px 9px; border-radius: 999px; background: #edf8f8; color: #526367; font-size: 12.5px; }.aula-experience-yellow .aula-skill-list span { background: #fff7dd; }.aula-experience-lime .aula-skill-list span { background: #f3f6dc; }.aula-experience-blue .aula-skill-list span { background: #edf3fb; }
.aula-film { max-width: 1190px; margin: 20px auto 106px; padding: 60px 7% 45px; overflow: hidden; border-radius: 30px; background: radial-gradient(circle at 12% 12%,rgba(0,184,224,.24),transparent 36%),radial-gradient(circle at 84% 82%,rgba(202,212,7,.11),transparent 29%),linear-gradient(140deg,#102c37,#123a45 58%,#102a35); color: #fffefa; text-align: center; }.aula-film-copy { max-width: 630px; margin: 0 auto 27px; }.aula-film-kicker { display: flex; align-items: center; justify-content: center; gap: 8px; color: #82dfe5; font-size: 12.5px; font-weight: 660; }.aula-film-copy h2 { margin: 11px 0; font-size: clamp(35px,3.8vw,49px); font-weight: 620; letter-spacing: -1.7px; }.aula-film-copy > p:last-child { color: rgba(255,254,250,.7); font-size: 13px; line-height: 1.78; }.aula-video-frame { position: relative; width: 100%; aspect-ratio: 16/9; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 18px; background: #071922; box-shadow: 0 20px 55px rgba(0,0,0,.28); }.aula-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }.aula-film-youtube { display: inline-flex; margin-top: 18px; align-items: center; gap: 7px; color: rgba(255,254,250,.78); font-size: 12.5px; }
.aula-method { padding: 0 7.1% 108px; }.aula-method-steps { display: grid; max-width: 1140px; margin: 0 auto; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 12px; }.aula-method-steps article { min-height: 162px; padding: 20px 16px; border: 1px solid rgba(39,48,57,.06); border-radius: 17px; background: #f7faf7; }.aula-method-steps article > span { display: grid; width: 33px; height: 33px; margin-bottom: 15px; place-items: center; border-radius: 11px; background: #e0f2f0; color: var(--deep-cyan); font-size: 12.5px; font-weight: 750; }.aula-method-steps article:nth-child(2) > span { background: #f5f3d9; }.aula-method-steps article:nth-child(3) > span { background: #fff2cf; }.aula-method-steps article:nth-child(4) > span { background: #e8eff9; }.aula-method-steps article:nth-child(5) > span { background: #edf2d5; }.aula-method-steps strong { display: block; color: #36484d; font-size: 13.5px; }.aula-method-steps p { margin: 8px 0 0; color: #6d7979; font-size: 12.5px; line-height: 1.63; }
.aula-outcomes { display: grid; padding: 87px 9%; grid-template-columns: .83fr 1.17fr; gap: 9%; background: linear-gradient(135deg,#f3f8f3,#eef8f7 62%,#f8f8e9); }.aula-outcomes-heading { display: flex; flex-direction: column; justify-content: center; }.aula-outcomes-heading > p:last-child { margin-right: 0; margin-left: 0; }.aula-outcomes-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }.aula-outcomes-grid article { min-height: 171px; padding: 20px 18px; border-radius: 17px; background: rgba(255,254,250,.85); }.aula-outcomes-grid article > span { color: var(--deep-cyan); font-size: 19px; }.aula-outcomes-grid article:nth-child(2) > span { color: #a5ae05; }.aula-outcomes-grid article:nth-child(3) > span { color: #e0ac00; }.aula-outcomes-grid article:nth-child(4) > span { color: #638bb5; }.aula-outcomes-grid h3 { margin: 13px 0 6px; color: #37474d; font-size: 13.5px; }.aula-outcomes-grid p { margin: 0; color: #687576; font-size: 12.5px; line-height: 1.7; }
.aula-resource { display: flex; max-width: 1110px; margin: 68px auto 0; padding: 24px 28px; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid rgba(39,48,57,.08); border-radius: 19px; background: #fffefa; }.aula-resource > div { display: flex; align-items: center; gap: 13px; }.aula-resource > div > span { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 12px; background: #ecf8f7; color: var(--deep-cyan); font-size: 18px; }.aula-resource strong { display: block; color: #34464b; font-size: 12.5px; }.aula-resource p { margin: 5px 0 0; color: #73807c; font-size: 12.5px; }.aula-resource > a { color: var(--deep-cyan); font-size: 12.5px; font-weight: 680; }
.aula-closing { padding: 95px 7% 104px; text-align: center; }.aula-closing > p:not(.section-kicker) { max-width: 530px; margin: 16px auto 24px; color: var(--muted); font-size: 13px; line-height: 1.75; }.aula-closing > div { display: flex; align-items: center; justify-content: center; gap: 18px; }.aula-closing > div > a:last-child { color: #657270; font-size: 12.5px; }

/* Destacado de Aula Inmersiva en la página de soluciones */
.aula-feature-bridge { display: grid; max-width: 1125px; margin: 0 auto 80px; padding: 17px; grid-template-columns: 1.15fr .85fr; gap: 31px; align-items: center; border-radius: 25px; background: linear-gradient(125deg,#eff8f7,#f8f8e7); }.aula-feature-image { display: block; width: 100%; height: auto; border-radius: 15px; }.aula-feature-copy { padding: 13px 17px 13px 0; }.aula-feature-copy > span { color: #71807b; font-size: 12.5px; font-weight: 740; letter-spacing: .75px; text-transform: uppercase; }.aula-feature-copy h2 { margin: 11px 0 9px; color: #304147; font-size: clamp(27px,3vw,37px); font-weight: 640; line-height: 1.16; letter-spacing: -1.25px; }.aula-feature-copy > p { margin: 0 0 16px; color: #657373; font-size: 12.5px; line-height: 1.76; }.aula-feature-copy > a { color: var(--deep-cyan); font-size: 12.5px; font-weight: 720; }

/* Vídeo institucional: Más allá del mar */
.about-film { position: relative; max-width: 1135px; margin: 12px auto 106px; padding: 58px 7% 42px; overflow: hidden; border-radius: 29px; background: radial-gradient(ellipse at 20% 0%,rgba(58,186,189,.25),transparent 40%),radial-gradient(ellipse at 88% 80%,rgba(8,128,169,.18),transparent 39%),linear-gradient(140deg,#102c37,#123943 57%,#112631); text-align: center; }.about-film::before { position: absolute; top: 17px; right: 30px; color: rgba(255,255,255,.22); content: "✦"; font-size: 23px; }.about-film-kicker { margin: 0 0 11px; color: #84dbe2; font-size: 12.5px; font-weight: 670; letter-spacing: .35px; }.about-film h2 { max-width: 720px; margin: 0 auto; color: #fffefa; font-size: clamp(35px,4.2vw,54px); font-weight: 625; line-height: 1.14; letter-spacing: -1.9px; }.about-film h2 span { color: #93e5e6; }.about-film-description { max-width: 620px; margin: 14px auto 25px; color: rgba(255,254,250,.73); font-size: 13px; line-height: 1.78; }.about-film .aula-video-frame { border-color: rgba(162,230,232,.2); }.about-film-bottom { display: flex; margin-top: 16px; align-items: center; justify-content: space-between; }.about-film-bottom > span { color: rgba(255,254,250,.66); font-size: 12.5px; }.about-film-bottom > a { color: #a5e8e8; font-size: 12.5px; font-weight: 650; }

@media (max-width: 1080px) {
  .aula-hero { gap: 3%; }.aula-principle,.aula-feature-bridge,.about-film,.aula-film,.aula-resource { margin-right: 6%; margin-left: 6%; }.aula-hero-copy h1 { letter-spacing: -2.1px; }.aula-experience { gap: 3%; }.aula-outcomes { gap: 5%; }.aula-floating-games { right: 0; }
}

@media (max-width: 760px) {
  .aula-hero { min-height: auto; padding: 32px 7% 104px; grid-template-columns: 1fr; gap: 25px; }.aula-breadcrumb { margin-bottom: 26px; }.aula-hero-copy h1 { font-size: clamp(42px,10.5vw,61px); letter-spacing: -2px; }.aula-hero-copy > p:last-of-type { font-size: 13.5px; }.aula-hero-actions { align-items: flex-start; flex-direction: column; gap: 13px; }.aula-hero-visual { min-height: 240px; }.aula-floating-play { top: 10px; left: 0; }.aula-floating-games { right: -3px; bottom: 2px; }.aula-screen-bottom strong { font-size: 12.5px; }.aula-screen-bottom > span { font-size: 12.5px; }
  .aula-principle { margin: -62px 7% 0; padding: 18px 17px; grid-template-columns: 1fr; gap: 16px; }.aula-experiences { padding: 77px 7% 57px; }.aula-section-heading { margin-bottom: 34px; }.aula-section-heading h2,.aula-outcomes-heading h2,.aula-closing h2 { font-size: clamp(34px,8.2vw,46px); letter-spacing: -1.55px; }.aula-experience { max-width: 520px; margin-bottom: 15px; padding: 10px; grid-template-columns: 1fr; gap: 0; }.aula-experience:nth-of-type(even) .aula-experience-image { order: 0; }.aula-experience-image { min-height: 0; }.aula-experience-copy,.aula-experience:nth-of-type(even) .aula-experience-copy { padding: 22px 11px 17px; }.aula-experience-copy h3 { font-size: 30px; }
  .aula-film { margin: 0 7% 77px; padding: 37px 16px 26px; border-radius: 22px; }.aula-film-copy h2 { font-size: 36px; }.aula-video-frame { border-radius: 12px; }.aula-method { padding: 0 7% 78px; }.aula-method-steps { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }.aula-method-steps article { min-height: 139px; padding: 16px 13px; }.aula-method-steps article:last-child { grid-column: 1/-1; min-height: 111px; }
  .aula-outcomes { padding: 68px 7%; grid-template-columns: 1fr; gap: 29px; }.aula-outcomes-grid { gap: 9px; }.aula-outcomes-grid article { min-height: 157px; padding: 16px 13px; }.aula-resource { margin: 50px 7% 0; padding: 19px 15px; align-items: flex-start; flex-direction: column; gap: 16px; }.aula-resource > a { padding-left: 53px; }.aula-closing { padding: 76px 7% 77px; }.aula-closing > div { flex-direction: column; gap: 12px; }
  .aula-feature-bridge { margin: 0 7% 58px; padding: 12px; grid-template-columns: 1fr; gap: 4px; }.aula-feature-copy { padding: 17px 9px 13px; }.aula-feature-copy h2 { font-size: 31px; }.about-film { margin: 0 7% 74px; padding: 42px 16px 27px; border-radius: 21px; }.about-film h2 { font-size: clamp(34px,8vw,43px); letter-spacing: -1.35px; }.about-film-description { font-size: 12.5px; }.about-film-bottom { align-items: flex-start; flex-direction: column; gap: 9px; }
}

/* Primera revisión: lectura cómoda sin perder el carácter limpio de la web. */
:root { font-size: 16px; --muted: #56636a; --deep-cyan: #00687b; }
body p:not(.eyebrow):not(.section-kicker):not(.aula-film-kicker):not(.about-film-kicker):not(.solution-detail-eyebrow):not(.neuro-article-edition) { font-size: max(15px,.95rem) !important; line-height: 1.76 !important; }
.desktop-nav { font-size: 14px; }.header-cta,.button-primary,.button-secondary,.contact-button { font-size: 14px; }
.eyebrow,.section-kicker,.solution-detail-eyebrow,.aula-experience-kicker,.about-team-role,.work-area-label,.area-detail-label,.aula-feature-copy > span { font-size: 13px; letter-spacing: .8px; }
.desktop-nav,.section-kicker,.aula-experience-kicker,.about-team-role,.work-area-label,.area-detail-label,.aula-feature-copy > span,.aula-principle small,.aula-floating-games small,.aula-screen-bottom > span { color: #526164; }
.aula-experience-copy > p,.solution-detail-description,.about-story-copy > p,.about-team-card > p,.work-area-copy > p,.area-detail-copy > p,.aula-outcomes-grid p,.aula-method-steps p { color: #526164; }
.impact-section .section-kicker,.about-recognitions .section-kicker { color: #e1f0ef; }
.about-team-label { color: #635700; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible { outline: 3px solid var(--deep-cyan); outline-offset: 4px; }
.area-item,.work-area-tags,.aula-skill-list span,.aula-text-link,.aula-film-youtube,.aula-film-kicker,.about-film-kicker,.about-film-bottom > a,.about-team-card > a,.about-team-label,.aula-resource > a,.solution-detail-copy > a,.aula-feature-copy > a,.aula-closing > div > a:last-child { font-size: 13.5px; }
.about-team-card h3 { font-size: 19px; }.aula-method-steps strong,.aula-outcomes-grid h3,.aula-resource strong { font-size: 15px; }.aula-principle strong { font-size: 14.5px; }.aula-principle small,.aula-floating-games small,.about-film-bottom > span,.aula-screen-bottom > span { font-size: 13px; }
.neuro-article-content > p,.neuro-article-list,.neuro-article-content > h3 { font-size: max(16px,1rem) !important; }.neuro-article-list li { font-size: 16px; line-height: 1.75; }

/* Los detalles decorativos no deben tapar personas ni quedar recortados. */
.photo-stage .floating-pill { top: 62px; right: 63px; max-width: calc(100% - 110px); white-space: nowrap; }
.work-area-icon,.area-detail-icon { top: auto; right: 12px; bottom: 12px; }
.about-team-card-cyan .about-team-photo img { object-position: center 50%; }
.about-team-card-lime .about-team-photo img { object-position: center 12%; }
.about-team-card-yellow .about-team-photo img { object-position: center 49%; }
.aula-hero-screen > img { aspect-ratio: 1.9/1; object-fit: contain; background: #edf0eb; }

/* Portadas accesibles para reproducir vídeos desde una copia local. */
.local-video-poster { position: absolute; inset: 0; display: block; overflow: hidden; background: #10262e; }.local-video-poster > img { display: block; width: 100%; height: 100%; object-fit: cover; opacity: .73; transition: opacity 180ms ease,transform 220ms ease; }.local-video-poster:hover > img,.local-video-poster:focus-visible > img { opacity: .9; transform: scale(1.025); }.local-video-overlay { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 11px; background: linear-gradient(180deg,rgba(7,23,29,.08),rgba(7,23,29,.56)); color: #fff; text-align: center; }.local-video-play { display: grid; width: 75px; height: 75px; place-items: center; padding-left: 5px; border: 2px solid rgba(255,255,255,.9); border-radius: 50%; background: rgba(0,184,224,.78); font-size: 27px; box-shadow: 0 12px 34px rgba(0,0,0,.2); }.local-video-overlay strong { font-size: clamp(20px,3vw,34px); font-weight: 670; letter-spacing: -.5px; }.local-video-overlay small { color: rgba(255,255,255,.86); font-size: 14.5px; }

@media (max-width: 760px) {
  body p:not(.eyebrow):not(.section-kicker):not(.aula-film-kicker):not(.about-film-kicker):not(.solution-detail-eyebrow):not(.neuro-article-edition) { font-size: 14.5px !important; }.desktop-nav { font-size: 14.5px; }.header-cta,.button-primary,.button-secondary,.contact-button { font-size: 14.5px; }.photo-stage .floating-pill { top: 51px; right: 42px; max-width: calc(100% - 73px); font-size: 13px; }.aula-principle { gap: 20px; }.aula-method-steps article,.aula-outcomes-grid article { min-height: 175px; }.local-video-play { width: 55px; height: 55px; font-size: 19px; }.local-video-overlay { gap: 7px; }.local-video-overlay small { max-width: 88%; font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) { .local-video-poster > img { transition: none; } }

/* Actualidad: un archivo editorial conectado con el resto de Minifunkids. */
.news-page { overflow: hidden; }
.news-page .site-header .desktop-nav, .site-header .desktop-nav { gap: clamp(12px, 1.65vw, 24px); }
.news-hero { display: grid; min-height: 665px; padding: 68px 7.1% 105px; grid-template-columns: 1fr .98fr; align-items: center; gap: 7%; background: linear-gradient(145deg,#fffefa 5%,#f6f8ef 54%,#eef8f7 100%); }
.news-hero-copy h1 { margin: 17px 0 0; color: var(--ink); font-size: clamp(49px,6.2vw,79px); font-weight: 635; line-height: 1.035; letter-spacing: -3.3px; }
.news-hero-copy h1 span,.news-heading h2 span,.news-neuro-bridge h2 span,.news-closing h2 span { color: var(--deep-cyan); }
.news-hero-copy > p:not(.eyebrow) { max-width: 505px; margin: 23px 0 28px; color: var(--muted); }
.news-hero-copy .button-primary { display: inline-flex; align-items: center; gap: 9px; }
.news-hero-collage { position: relative; display: grid; min-height: 475px; grid-template-columns: 1fr .68fr; align-items: center; gap: 15px; }
.news-collage-main,.news-collage-side { position: relative; overflow: hidden; background: #e9efed; box-shadow: 0 17px 44px rgba(41,62,58,.12); }
.news-collage-main { height: 405px; border-radius: 82px 24px 24px 24px; }.news-collage-side { height: 278px; border-radius: 22px 22px 68px 22px; }
.news-collage-main img,.news-collage-side img { display: block; width: 100%; height: 100%; object-fit: cover; }
.news-collage-main > span,.news-collage-side > span { position: absolute; right: 10px; bottom: 10px; left: 10px; padding: 11px; border-radius: 12px; background: rgba(255,254,250,.94); color: #3f4e52; font-size: 13.5px; font-weight: 660; text-align: center; }
.news-collage-side > span { font-size: 13px; }.news-collage-note { position: absolute; right: 7px; bottom: 13px; display: flex; padding: 12px 15px; align-items: center; gap: 8px; border-radius: 15px; background: #fffefa; color: #465558; font-size: 13.5px; box-shadow: 0 8px 24px rgba(41,62,58,.1); }.news-collage-note > span { color: var(--deep-cyan); }
.news-stats { position: relative; z-index: 1; display: grid; max-width: 1010px; margin: -40px auto 0; padding: 24px 28px; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid rgba(47,60,59,.07); border-radius: 21px; background: #fffefa; box-shadow: 0 12px 36px rgba(40,61,55,.075); }.news-stats > div { display: grid; justify-items: center; gap: 5px; }.news-stats > div + div { border-left: 1px solid rgba(45,59,57,.1); }.news-stats strong { color: var(--deep-cyan); font-size: 22px; }.news-stats span { color: #56636a; font-size: 13.5px; text-align: center; }
.news-featured-section,.news-archive,.news-related { max-width: 1230px; margin: 0 auto; padding: 115px 7.1% 0; }.news-featured-section { max-width: 1290px; }.news-heading { max-width: 730px; margin: 0 auto 40px; text-align: center; }.news-heading h2 { margin: 10px 0 0; color: var(--ink); font-size: clamp(37px,4vw,55px); font-weight: 625; line-height: 1.12; letter-spacing: -2.1px; }.news-heading > p:last-child:not(.section-kicker) { margin: 14px 0 0; color: var(--muted); }
.news-card { display: flex; min-width: 0; flex-direction: column; overflow: hidden; border: 1px solid rgba(43,58,56,.075); border-radius: 20px; background: #fffefa; box-shadow: 0 8px 25px rgba(40,61,55,.052); transition: transform 180ms ease,box-shadow 180ms ease; }.news-card:hover,.news-card:focus-within { transform: translateY(-3px); box-shadow: 0 14px 31px rgba(40,61,55,.095); }.news-card[hidden] { display: none !important; }.news-card-photo { height: 200px; overflow: hidden; background: #eef2ef; }.news-card-image { display: block; width: 100%; height: 100%; object-fit: cover; }.news-image-fallback { padding: 20px; background: #fff; object-fit: contain !important; }.news-card-body { display: flex; flex: 1; padding: 19px 20px 21px; flex-direction: column; }.news-card-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 9px 11px; }.news-category { display: inline-flex; padding: 6px 9px; align-items: center; gap: 5px; border-radius: 99px; color: #39474a; font-size: 12.5px; font-weight: 680; }.news-category-cyan { background: rgba(0,184,224,.13); }.news-category-yellow { background: rgba(255,205,0,.2); }.news-category-lime { background: rgba(202,212,7,.18); }.news-category-sky { background: rgba(112,204,194,.2); }.news-card-meta time { color: #56636a; font-size: 13px; }.news-card h3 { margin: 15px 0 9px; color: var(--ink); font-size: 19px; font-weight: 660; line-height: 1.36; letter-spacing: -.32px; }.news-card h3 a { color: inherit; text-decoration: none; }.news-card-body > p { margin: 0 0 16px; color: #56636a; }.news-read-more { display: inline-flex; margin-top: auto; align-items: center; gap: 6px; color: var(--deep-cyan); font-size: 14.5px; font-weight: 670; text-decoration: none; }.news-card-featured { display: grid; max-width: 1080px; min-height: 340px; margin: 0 auto; grid-template-columns: 1.04fr .96fr; }.news-card-featured .news-card-photo { height: auto; min-height: 340px; }.news-card-featured .news-card-body { padding: 38px 34px; justify-content: center; }.news-card-featured h3 { margin-top: 21px; font-size: clamp(26px,3.2vw,37px); line-height: 1.19; letter-spacing: -.85px; }.news-card-featured .news-read-more { margin-top: 8px; }
.news-archive { padding-bottom: 98px; }.news-filters { display: flex; margin: 0 auto 14px; justify-content: center; flex-wrap: wrap; gap: 8px; }.news-filter { min-height: 40px; padding: 9px 12px; border: 1px solid rgba(46,62,59,.14); border-radius: 99px; background: #fffefa; color: #425054; font-family: inherit; font-size: 13.5px; font-weight: 630; cursor: pointer; }.news-filter > span:last-child { color: #617073; }.news-filter.is-active { border-color: var(--deep-cyan); background: var(--deep-cyan); color: #fff; }.news-filter.is-active > span:last-child { color: rgba(255,255,255,.9); }.news-filter-status { min-height: 26px; margin: 0 0 18px; color: #526164; text-align: center; }.news-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 19px; }
.news-neuro-bridge { display: grid; max-width: 1090px; margin: 0 auto 88px; padding: 46px 48px; grid-template-columns: 1fr 170px; align-items: center; gap: 40px; border-radius: 27px; background: linear-gradient(120deg,#edf8f8 0%,#f7f8ea 60%,#fff5d7 100%); }.news-neuro-bridge h2 { margin: 12px 0 0; color: var(--ink); font-size: clamp(25px,3vw,38px); font-weight: 640; line-height: 1.2; letter-spacing: -.85px; }.news-neuro-bridge > div > p:not(.section-kicker) { max-width: 630px; margin: 15px 0 0; color: #526164; }.news-neuro-bridge > img { display: block; width: 100%; max-width: 170px; }.news-bridge-actions { display: flex; margin-top: 21px; align-items: center; flex-wrap: wrap; gap: 16px; }.news-bridge-actions > a:last-child { color: var(--deep-cyan); font-size: 14.5px; font-weight: 660; text-decoration: none; }
.news-closing { padding: 43px 7.1% 95px; text-align: center; }.news-closing h2 { margin: 13px 0; color: var(--ink); font-size: clamp(38px,4vw,54px); font-weight: 630; line-height: 1.13; letter-spacing: -1.8px; }.news-closing > p:not(.section-kicker) { max-width: 570px; margin: 0 auto 24px; color: var(--muted); }.news-closing .contact-button { display: inline-flex; }
.news-article-hero { max-width: 870px; margin: 0 auto; padding: 74px 7.1% 34px; }.news-breadcrumb { display: inline-flex; margin-bottom: 29px; align-items: center; gap: 7px; color: var(--deep-cyan); font-size: 14.5px; font-weight: 660; text-decoration: none; }.news-article-hero .news-card-meta { margin-bottom: 17px; }.news-article-hero h1 { margin: 0; color: var(--ink); font-size: clamp(38px,5vw,61px); font-weight: 630; line-height: 1.13; letter-spacing: -1.9px; }.news-article-deck { margin: 20px 0 0; color: #516064; }.news-article-figure { max-width: 1030px; margin: 0 auto; }.news-article-image { display: block; width: 100%; height: min(520px,55vw); border-radius: 23px; background: #eef2ef; object-fit: cover; }.news-article-figure figcaption { margin: 10px 4px 0; color: #56636a; font-size: 13.5px; }.news-article-content { max-width: 810px; margin: 0 auto; padding: 38px 7.1% 0; }.news-article-content > p { margin: 0 0 17px; color: #47565a; }.news-article-note { display: flex; margin: 28px 0 20px; padding: 18px; align-items: flex-start; gap: 11px; border-radius: 15px; background: linear-gradient(105deg,rgba(0,184,224,.085),rgba(202,212,7,.105)); }.news-article-note > span { color: var(--deep-cyan); }.news-article-note strong { color: #405054; font-size: 14px; }.news-article-note p { margin: 6px 0 0; color: #526164; }.news-source-link,.news-all-stories { display: inline-flex; align-items: center; gap: 7px; color: var(--deep-cyan); font-size: 14.5px; font-weight: 660; text-decoration: none; }
.news-related { padding-top: 95px; padding-bottom: 70px; }.news-related-grid { display: grid; max-width: 780px; margin: 0 auto; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }.news-card-compact .news-card-photo { height: 180px; }.news-card-compact .news-card-body { padding: 17px; }.news-card-compact h3 { min-height: 53px; font-size: 18px; }.news-all-stories { display: flex; margin: 27px auto 0; justify-content: center; }.news-article-neuro { display: flex; max-width: 980px; margin: 0 auto 74px; padding: 22px 24px; align-items: center; justify-content: space-between; gap: 22px; border: 1px solid rgba(47,65,60,.09); border-radius: 17px; background: #f4f8f4; }.news-article-neuro > div { display: flex; align-items: flex-start; gap: 11px; }.news-article-neuro > div > span { color: var(--deep-cyan); }.news-article-neuro strong { color: #415054; font-size: 14px; }.news-article-neuro p { margin: 5px 0 0; color: #56636a; }.news-article-neuro > a { flex: 0 0 auto; color: var(--deep-cyan); font-size: 14.5px; font-weight: 660; text-decoration: none; }
.home-news { padding: 87px 7.1% 95px; background: linear-gradient(180deg,#fffefa,#f6f8f4); }.home-news .news-heading { margin-bottom: 35px; }.home-news-grid { display: grid; max-width: 1080px; margin: 0 auto; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }.home-news-all { display: flex; margin: 27px auto 0; justify-content: center; color: var(--deep-cyan); font-size: 14.5px; font-weight: 660; text-decoration: none; }
@media (max-width: 1100px) { .site-header .desktop-nav { gap: 11px; font-size: 13.5px; }.news-stats,.news-neuro-bridge,.news-article-figure,.news-article-neuro { margin-right: 7.1%; margin-left: 7.1%; }.news-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (min-width: 761px) and (max-width: 1020px) { .site-header { padding-right: 4%; padding-left: 4%; }.site-header .brand-logo { width: 150px; }.site-header .header-cta { padding: 10px 12px; font-size: 13.5px; } }
@media (max-width: 760px) { .news-hero { min-height: auto; padding: 43px 7% 77px; grid-template-columns: 1fr; gap: 33px; }.news-hero-copy h1 { font-size: clamp(45px,11vw,63px); letter-spacing: -2px; }.news-hero-collage { min-height: 365px; gap: 10px; }.news-collage-main { height: 320px; border-radius: 64px 20px 20px 20px; }.news-collage-side { height: 215px; }.news-collage-main > span,.news-collage-side > span { padding: 8px; font-size: 12.5px; }.news-collage-note { right: 0; bottom: 0; padding: 9px; font-size: 12.5px; }.news-stats { margin: -31px 7% 0; padding: 16px 10px; }.news-stats strong { font-size: 16px; }.news-stats span { font-size: 12.5px; }.news-featured-section,.news-archive,.news-related { padding-right: 7%; padding-left: 7%; }.news-featured-section,.news-archive { padding-top: 75px; }.news-heading h2 { font-size: 36px; letter-spacing: -1.2px; }.news-card-featured { grid-template-columns: 1fr; }.news-card-featured .news-card-photo { height: 240px; min-height: 240px; }.news-card-featured .news-card-body { padding: 21px; }.news-card-featured h3 { font-size: 27px; }.news-grid,.home-news-grid { grid-template-columns: 1fr; }.news-filters { justify-content: flex-start; }.news-filter { font-size: 13px; }.news-neuro-bridge { margin: 0 7% 65px; padding: 31px 23px; grid-template-columns: 1fr; gap: 19px; }.news-neuro-bridge > img { max-width: 118px; }.news-bridge-actions { align-items: flex-start; flex-direction: column; }.news-closing { padding: 26px 7% 74px; }.news-closing h2 { font-size: 36px; }.news-article-hero { padding: 47px 7% 25px; }.news-article-hero h1 { font-size: 39px; letter-spacing: -1.1px; }.news-article-figure { margin-right: 7%; margin-left: 7%; }.news-article-image { height: 62vw; border-radius: 17px; }.news-article-content { padding: 29px 7% 0; }.news-related { padding-top: 71px; }.news-related-grid { grid-template-columns: 1fr; }.news-card-compact h3 { min-height: 0; }.news-article-neuro { margin: 0 7% 60px; padding: 19px 16px; align-items: flex-start; flex-direction: column; }.news-article-neuro > a { padding-left: 22px; }.home-news { padding: 70px 7% 76px; } }
@media (prefers-reduced-motion: reduce) { .news-card { transition: none; }.news-card:hover,.news-card:focus-within { transform: none; } }

/* Información práctica: preguntas frecuentes y espacios para seguir creciendo. */
.guide-subnav { display: flex; min-height: 55px; padding: 0 7.1%; justify-content: center; align-items: center; flex-wrap: wrap; gap: 9px 24px; border-top: 1px solid rgba(46,59,58,.08); border-bottom: 1px solid rgba(46,59,58,.08); background: #fffefa; }.guide-subnav a { display: inline-flex; align-items: center; gap: 6px; color: #536164; font-size: 13.5px; font-weight: 620; }.guide-subnav-active { color: var(--deep-cyan) !important; }.guide-subnav-active > span { color: var(--deep-cyan); }
.guide-hero { display: grid; min-height: 625px; padding: 66px 7.1% 84px; grid-template-columns: 1.03fr .97fr; align-items: center; gap: 7%; background: linear-gradient(145deg,#fffefa 4%,#f6f8ef 55%,#edf8f6 100%); }.guide-hero-copy h1 { margin: 16px 0 0; color: var(--ink); font-size: clamp(45px,5.6vw,72px); font-weight: 635; line-height: 1.08; letter-spacing: -2.7px; }.guide-hero-copy h1 span,.guide-heading h2 span,.faq-human h2 span { color: var(--deep-cyan); }.guide-hero-copy > p:not(.eyebrow) { max-width: 530px; margin: 23px 0 27px; color: #526164; }.guide-hero-copy .button-primary { display: inline-flex; align-items: center; gap: 8px; }
.faq-hero-visual { position: relative; display: grid; min-height: 420px; place-items: center; }.faq-hero-visual::before,.faq-hero-visual::after { position: absolute; border-radius: 50%; content: ""; }.faq-hero-visual::before { width: 370px; height: 370px; border: 1px solid rgba(0,104,123,.14); }.faq-hero-visual::after { width: 282px; height: 282px; border: 1px dashed rgba(0,104,123,.18); }.faq-visual-center { position: relative; z-index: 2; display: grid; width: 210px; height: 210px; justify-items: center; align-content: center; gap: 10px; border-radius: 50%; background: #fffefa; box-shadow: 0 15px 47px rgba(45,64,60,.12); text-align: center; }.faq-visual-center > span { color: var(--deep-cyan); font-size: 63px; font-weight: 710; line-height: 1; }.faq-visual-center > strong { color: #455356; font-size: 14.5px; line-height: 1.5; }.faq-visual-chip { position: absolute; z-index: 3; padding: 10px 14px; border-radius: 13px; background: #fffefa; color: #405054; font-size: 13.5px; font-weight: 650; box-shadow: 0 7px 22px rgba(45,64,60,.11); }.faq-chip-cyan { top: 41px; left: 13px; border-left: 3px solid var(--cyan); }.faq-chip-yellow { top: 92px; right: 0; border-left: 3px solid var(--yellow); }.faq-chip-lime { bottom: 53px; right: 6px; border-left: 3px solid var(--lime); }.faq-chip-sky { bottom: 79px; left: 0; border-left: 3px solid #70ccc2; }
.guide-heading { max-width: 730px; margin: 0 auto 36px; text-align: center; }.guide-heading h2 { margin: 11px 0 0; color: var(--ink); font-size: clamp(36px,4vw,54px); font-weight: 635; line-height: 1.14; letter-spacing: -1.9px; }.guide-heading > p:last-child:not(.section-kicker) { margin: 14px auto 0; color: #526164; }
.faq-search-section { max-width: 1020px; margin: 0 auto; padding: 96px 7.1% 76px; }.faq-search-label { display: flex; max-width: 700px; min-height: 59px; margin: 0 auto; padding: 0 16px; align-items: center; gap: 10px; border: 1px solid rgba(45,60,57,.15); border-radius: 17px; background: #fffefa; box-shadow: 0 8px 24px rgba(40,61,55,.06); }.faq-search-label > span:first-child { color: var(--deep-cyan); font-size: 21px; }.faq-search-label input { width: 100%; border: 0; outline: 0; background: transparent; color: #354448; font-family: inherit; font-size: 14px; }.faq-search-label:focus-within { outline: 3px solid var(--deep-cyan); outline-offset: 4px; }.faq-search-label input:focus-visible { outline: 0; }.faq-search-key { color: #74807f; font-size: 15px; }.faq-filters { display: flex; max-width: 870px; margin: 19px auto 12px; justify-content: center; flex-wrap: wrap; gap: 8px; }.faq-filter { min-height: 38px; padding: 8px 11px; border: 1px solid rgba(46,62,59,.14); border-radius: 99px; background: #fffefa; color: #425054; font-family: inherit; font-size: 13px; font-weight: 620; cursor: pointer; }.faq-filter > span:last-child { color: #617073; }.faq-filter.is-active { border-color: var(--deep-cyan); background: var(--deep-cyan); color: #fff; }.faq-filter.is-active > span:last-child { color: rgba(255,255,255,.9); }.faq-results-status { margin: 0 0 35px; color: #56636a; text-align: center; }.faq-group { margin: 0 auto 33px; }.faq-group[hidden],.faq-item[hidden] { display: none !important; }.faq-group-heading { display: flex; margin-bottom: 15px; align-items: center; gap: 11px; }.faq-group-heading > span { display: grid; width: 39px; height: 39px; place-items: center; border-radius: 12px; background: rgba(0,184,224,.11); color: var(--deep-cyan); font-size: 16px; }.faq-group-heading h2 { margin: 0; color: #334247; font-size: 20px; font-weight: 660; }.faq-group-heading p { margin: 2px 0 0; color: #56636a; }.faq-accordion { display: grid; gap: 8px; }.faq-item { overflow: hidden; border: 1px solid rgba(48,61,59,.11); border-radius: 14px; background: #fffefa; }.faq-item summary { display: flex; min-height: 59px; padding: 14px 16px; align-items: center; justify-content: space-between; gap: 13px; color: #354448; font-size: 14px; font-weight: 650; cursor: pointer; list-style: none; }.faq-item summary::-webkit-details-marker { display: none; }.faq-item summary i { display: grid; width: 25px; height: 25px; flex: 0 0 25px; place-items: center; border-radius: 50%; background: #edf5f3; color: var(--deep-cyan); font-size: 17px; font-style: normal; transition: transform 150ms ease; }.faq-item[open] summary i { transform: rotate(45deg); }.faq-answer { padding: 0 54px 17px 16px; }.faq-answer p { margin: 0; color: #526164; }.faq-answer a { display: inline-flex; margin-top: 11px; align-items: center; gap: 6px; color: var(--deep-cyan); font-size: 14.5px; font-weight: 650; }.faq-empty { padding: 39px 20px; text-align: center; }.faq-empty > span { display: block; color: var(--deep-cyan); font-size: 43px; }.faq-empty strong { display: block; margin-top: 7px; color: #405054; font-size: 18px; }.faq-empty p { color: #56636a; }.faq-empty a { color: var(--deep-cyan); font-size: 14.5px; font-weight: 650; }
.faq-human { margin: 0 7.1% 83px; padding: 57px 30px; border-radius: 27px; background: linear-gradient(120deg,#edf8f8 0%,#f7f8ea 62%,#fff5d7 100%); text-align: center; }.faq-human h2 { margin: 13px 0; color: var(--ink); font-size: clamp(36px,3.7vw,49px); font-weight: 640; line-height: 1.15; letter-spacing: -1.5px; }.faq-human > div > p:not(.section-kicker) { max-width: 610px; margin: 0 auto 20px; color: #526164; }.faq-human .contact-button { display: inline-flex; }
.guide-next { max-width: 1080px; margin: 0 auto; padding: 0 7.1% 80px; }.guide-next-compact { padding-top: 25px; }.guide-cross-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }.guide-cross-card { display: grid; min-height: 123px; padding: 17px; align-content: center; gap: 7px; border: 1px solid rgba(45,60,57,.11); border-radius: 16px; background: #fffefa; }.guide-cross-card > span { color: var(--deep-cyan); font-size: 19px; }.guide-cross-card strong { color: #38474a; font-size: 15px; }.guide-cross-card small { color: #56636a; font-size: 13px; }.guide-tone-yellow > span { color: #917000; }.guide-tone-lime > span { color: #687000; }.guide-tone-sky > span { color: #246f6a; }.guide-editor-note { display: flex; margin: 27px 0 0; padding: 18px; align-items: flex-start; gap: 10px; border: 1px dashed rgba(0,104,123,.28); border-radius: 15px; background: rgba(0,184,224,.045); }.guide-editor-note > span { color: var(--deep-cyan); font-size: 16px; }.guide-editor-note strong { color: #415054; font-size: 14.5px; }.guide-editor-note p { margin: 6px 0 0; color: #526164; }
.guide-simple-hero { min-height: 560px; }.guide-photo { position: relative; height: 405px; overflow: hidden; border-radius: 85px 25px 65px 25px; background: #edf1ed; }.guide-photo > img { display: block; width: 100%; height: 100%; object-fit: cover; }.guide-photo > span { position: absolute; right: 12px; bottom: 12px; left: 12px; padding: 13px; border-radius: 13px; background: rgba(255,254,250,.94); color: #405054; font-size: 13.5px; font-weight: 640; text-align: center; }
.guide-process,.guide-use-cases,.guide-resources { max-width: 1200px; margin: 0 auto; padding: 95px 7.1% 70px; }.guide-process-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }.guide-process-grid article { min-height: 220px; padding: 19px 16px; border: 1px solid rgba(46,60,58,.1); border-radius: 17px; background: #fffefa; }.guide-process-grid article > span { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 10px; background: rgba(0,184,224,.13); color: var(--deep-cyan); font-size: 13.5px; font-weight: 690; }.guide-process-grid h3 { margin: 15px 0 8px; color: #37464a; font-size: 16px; line-height: 1.3; }.guide-process-grid p { margin: 0; color: #56636a; }.guide-scope,.guide-case-method { max-width: 980px; margin: 0 auto; padding: 10px 7.1% 79px; }.guide-scope-pills { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; }.guide-scope-pills span { padding: 10px 13px; border: 1px solid rgba(46,60,58,.11); border-radius: 99px; background: #fffefa; color: #465558; font-size: 13.5px; }
.guide-cases-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }.guide-case-card { min-height: 220px; padding: 22px; border: 1px solid rgba(45,60,57,.1); border-radius: 18px; background: #fffefa; }.guide-case-card > span { color: var(--deep-cyan); font-size: 13px; font-weight: 690; text-transform: uppercase; letter-spacing: .6px; }.guide-case-card h3 { margin: 13px 0 9px; color: #37464a; font-size: 20px; line-height: 1.3; }.guide-case-card p { margin: 0; color: #56636a; }.guide-case-card > strong { display: inline-block; margin-top: 13px; color: #677075; font-size: 13px; font-weight: 620; }
.guide-resources-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }.guide-resource-card { display: flex; min-height: 214px; padding: 20px; align-items: flex-start; gap: 12px; border: 1px solid rgba(45,60,57,.11); border-radius: 17px; background: #fffefa; }.guide-resource-card > span { display: grid; width: 35px; height: 35px; flex: 0 0 35px; place-items: center; border-radius: 10px; background: rgba(0,184,224,.11); color: var(--deep-cyan); }.guide-resource-card small { color: #56636a; font-size: 13px; }.guide-resource-card h3 { margin: 9px 0 7px; color: #37464a; font-size: 17px; line-height: 1.3; }.guide-resource-card p { margin: 0 0 11px; color: #56636a; }.guide-resource-card a { color: var(--deep-cyan); font-size: 13.5px; font-weight: 650; }.guide-resource-card > div > strong { color: #6b7475; font-size: 13px; font-weight: 600; }.guide-resource-pending { background: #fafaf6; }.guide-resource-pending > span { background: #eff0e8; color: #697072; }
.guide-global-strip { display: flex; max-width: 1100px; margin: 0 auto; padding: 20px 17px; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid rgba(46,60,58,.11); }.guide-global-strip > div { display: flex; align-items: center; gap: 8px; color: #425054; }.guide-global-strip > div > span { color: var(--deep-cyan); }.guide-global-strip > div > strong { font-size: 13.5px; }.guide-global-strip nav { display: flex; align-items: center; flex-wrap: wrap; gap: 15px; }.guide-global-strip nav a { color: #526164; font-size: 13px; font-weight: 590; }.guide-global-strip nav a[aria-current="page"] { color: var(--deep-cyan); font-weight: 700; }
.home-guides { padding: 88px 7.1% 90px; background: #fffefa; }.home-guides-grid { display: grid; max-width: 1080px; margin: 0 auto; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }.home-guide-card { display: flex; min-height: 205px; padding: 19px; flex-direction: column; border: 1px solid rgba(45,60,57,.105); border-radius: 17px; background: #fffefa; }.home-guide-card > span { display: grid; width: 35px; height: 35px; place-items: center; border-radius: 11px; background: rgba(0,184,224,.12); color: var(--deep-cyan); font-size: 17px; }.home-guide-card h3 { margin: 14px 0 8px; color: #354448; font-size: 17px; }.home-guide-card p { margin: 0 0 12px; color: #56636a; }.home-guide-card > strong { margin-top: auto; color: var(--deep-cyan); font-size: 13px; }
@media (max-width: 1080px) { .guide-process-grid,.home-guides-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.guide-global-strip { margin-right: 7.1%; margin-left: 7.1%; } }
@media (max-width: 760px) { .guide-subnav { min-height: 75px; padding: 10px 7%; justify-content: flex-start; gap: 10px 13px; }.guide-subnav a { font-size: 12.5px; }.guide-hero { min-height: auto; padding: 43px 7% 69px; grid-template-columns: 1fr; gap: 32px; }.guide-hero-copy h1 { font-size: clamp(40px,9.8vw,58px); letter-spacing: -1.6px; }.faq-hero-visual { min-height: 360px; }.faq-hero-visual::before { width: 300px; height: 300px; }.faq-hero-visual::after { width: 230px; height: 230px; }.faq-visual-center { width: 175px; height: 175px; }.faq-visual-center > span { font-size: 53px; }.faq-visual-center > strong { font-size: 13px; }.faq-visual-chip { padding: 8px 9px; font-size: 12.5px; }.faq-chip-cyan { top: 41px; left: 0; }.faq-chip-yellow { top: 88px; right: -1px; }.faq-chip-lime { right: 0; bottom: 39px; }.faq-chip-sky { bottom: 85px; left: -3px; }.guide-heading h2 { font-size: 35px; letter-spacing: -1.05px; }.faq-search-section { padding: 70px 7% 56px; }.faq-search-label { min-height: 55px; padding: 0 11px; }.faq-search-label input { font-size: 13.5px; }.faq-filters { justify-content: flex-start; }.faq-filter { font-size: 12.5px; }.faq-group-heading h2 { font-size: 18px; }.faq-item summary { padding: 12px; font-size: 14.5px; }.faq-answer { padding: 0 13px 15px; }.faq-human { margin: 0 7% 62px; padding: 39px 17px; }.faq-human h2 { font-size: 34px; }.guide-next { padding: 0 7% 60px; }.guide-cross-grid { grid-template-columns: 1fr; }.guide-cross-card { min-height: 93px; }.guide-photo { height: 330px; border-radius: 61px 20px 45px 20px; }.guide-process,.guide-use-cases,.guide-resources { padding: 72px 7% 55px; }.guide-process-grid,.guide-cases-grid,.guide-resources-grid,.home-guides-grid { grid-template-columns: 1fr; }.guide-process-grid article { min-height: 165px; }.guide-scope,.guide-case-method { padding: 7px 7% 61px; }.guide-case-card { min-height: 190px; }.guide-resource-card { min-height: 170px; padding: 16px; }.guide-global-strip { margin-right: 7%; margin-left: 7%; padding: 17px 0; align-items: flex-start; flex-direction: column; gap: 11px; }.guide-global-strip nav { gap: 10px 12px; }.guide-global-strip nav a { font-size: 12.5px; }.home-guides { padding: 69px 7% 71px; } }
@media (prefers-reduced-motion: reduce) { .faq-item summary i { transition: none; } }

/* Autoría de los artículos propios de Actualidad. */
.news-article-author { color: var(--deep-cyan); font-size: 13px; font-weight: 680; }

/* Textos completos de las publicaciones, con sus títulos, listas e imágenes originales. */
.news-article-content > h3 { margin: 29px 0 12px; color: #354448; font-size: 21px; font-weight: 655; line-height: 1.4; letter-spacing: -.25px; }
.news-article-list { display: grid; margin: 12px 0 22px; padding-left: 23px; gap: 10px; color: #47565a; }
.news-article-list li { padding-left: 4px; font-size: 15px; line-height: 1.75; }
.news-inline-figure { margin: 28px 0; }.news-inline-figure img { display: block; width: 100%; max-height: 550px; border-radius: 17px; object-fit: contain; background: #f3f6f3; }
.news-external-link > a { display: inline-flex; align-items: center; gap: 7px; color: var(--deep-cyan); font-size: 14px; font-weight: 650; }

/* Retratos amplios del equipo: el visor debe seguir visible dentro de cada tarjeta. */
.about-team-card .about-team-photo { height: 325px; background: #fff; }
.about-team-card-cyan .about-team-photo img,.about-team-card-lime .about-team-photo img { object-fit: contain; object-position: center center; background: #fff; }
@media (max-width: 760px) { .news-article-content > h3 { margin-top: 24px; font-size: 19px; }.news-article-list li { font-size: 14.5px; }.about-team-card .about-team-photo { height: 340px; } }

/* Redes sociales corporativas y navegación legal en todas las páginas. */
.site-social-topbar { display: flex; min-height: 44px; padding: 5px 7.1%; align-items: center; justify-content: flex-end; gap: 16px; border-bottom: 1px solid rgba(45,60,57,.08); background: linear-gradient(105deg,#f3f8f5,#fbfaf0 77%,#fffefa); }
.site-social-topbar > span { color: #546265; font-size: 13px; font-weight: 630; }
.social-links { display: flex; align-items: center; justify-content: center; gap: 9px; }
.social-link { display: grid; width: 35px; height: 35px; place-items: center; border-radius: 50%; color: #164c57; transition: background-color 160ms ease,color 160ms ease,transform 160ms ease; }
.social-link:hover,.social-link:focus-visible { background: rgba(0,184,224,.12); color: #006b80; transform: translateY(-2px); }
.social-link svg { display: block; width: 17px; height: 17px; fill: currentColor; }
.social-links-footer { gap: 14px; }
.social-links-footer .social-link { width: 41px; height: 41px; background: rgba(0,184,224,.075); }
.social-links-footer .social-link:hover,.social-links-footer .social-link:focus-visible { background: rgba(0,184,224,.16); }
.footer-social-block { display: flex; padding: 6px 0 21px; justify-content: center; }
.footer-bottom .legal-links,.legal-links { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; }
.legal-links a { color: #08788d; font-size: 13px; font-weight: 640; }
.legal-links a:hover,.legal-links a:focus-visible { color: #005668; text-decoration: underline; text-underline-offset: 3px; }
.global-footer-tail { max-width: 1100px; margin: 0 auto; padding: 0 17px 24px; }
.global-footer-tail .social-links-footer { padding: 2px 0 19px; }
.global-footer-bottom { display: flex; min-height: 49px; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid rgba(46,60,58,.11); }
.global-footer-bottom > span { color: #596669; font-size: 12.5px; }

/* Marco institucional aportado por Minifunkids: se mantiene íntegro y sin alteraciones. */
.institutional-recognition { padding: 42px 6% 57px; background: #fff; }
.institutional-scroll { max-width: 1401px; margin: 0 auto; overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; }
.institutional-scroll img { display: block; width: 100%; height: auto; }
.institutional-scroll-note { display: none; }
.visually-hidden { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; clip-path: inset(50%); border: 0; }

/* Páginas legales: textos originales conservados y reorganizados para facilitar la lectura. */
.legal-hero { padding: 86px 7.1% 54px; background: linear-gradient(140deg,#fffefa,#f3f8f4 64%,#faf8ea); text-align: center; }
.legal-hero h1 { max-width: none; margin: 14px 0 0; font-size: clamp(41px,5vw,65px); font-weight: 650; letter-spacing: -2.4px; }
.legal-hero > p:last-child { margin: 14px 0 0; color: #546265; font-size: 14px; }
.legal-subnav { display: flex; min-height: 70px; padding: 12px 7.1%; align-items: center; justify-content: center; flex-wrap: wrap; gap: 12px 27px; border-bottom: 1px solid rgba(45,60,57,.09); }
.legal-subnav a { color: #566568; font-size: 13.5px; font-weight: 620; }
.legal-subnav a[aria-current="page"] { color: #08788d; font-weight: 740; }
.legal-content { max-width: 1020px; margin: 0 auto; padding: 70px 7.1% 92px; }
.legal-content > h2 { margin: 40px 0 16px; color: #243f45; font-size: clamp(20px,2.1vw,27px); font-weight: 680; line-height: 1.35; letter-spacing: -.25px; }
.legal-content > h3 { margin: 29px 0 11px; color: #315057; font-size: 18px; font-weight: 660; line-height: 1.45; }
.legal-content > p,.legal-content li { color: #47565a; font-size: 14px; line-height: 1.85; }
.legal-content > p { margin: 0 0 15px; }
.legal-content a { color: #08788d; text-decoration: underline; text-underline-offset: 3px; }
.legal-content ul { display: grid; margin: 12px 0 21px; padding-left: 22px; gap: 9px; }
.legal-table-wrap { margin: 17px 0 25px; overflow-x: auto; border: 1px solid rgba(45,60,57,.12); border-radius: 14px; }
.legal-table { width: 100%; border-collapse: collapse; background: #fffefa; }
.legal-table th,.legal-table td { min-width: 110px; padding: 12px 14px; border-bottom: 1px solid rgba(45,60,57,.09); color: #47565a; font-size: 13.5px; line-height: 1.65; text-align: left; vertical-align: top; }
.legal-table th { background: rgba(0,184,224,.065); color: #28474e; font-weight: 680; }
.legal-table tr:last-child th,.legal-table tr:last-child td { border-bottom: 0; }

@media (max-width: 1080px) { .global-footer-tail { margin-right: 7.1%; margin-left: 7.1%; padding-right: 0; padding-left: 0; } }
@media (max-width: 760px) {
  .site-social-topbar { min-height: 45px; padding: 4px 5%; justify-content: center; gap: 7px; }.site-social-topbar > span { display: none; }.social-links { gap: 7px; }.social-link { width: 34px; height: 34px; }.social-links-footer { gap: 11px; }
  .institutional-recognition { padding: 29px 5% 36px; }.institutional-scroll img { width: 940px; max-width: none; }.institutional-scroll-note { display: block; margin: 9px 0 0; color: #536265; font-size: 13px; text-align: center; }
  .footer-bottom { align-items: flex-start; gap: 15px; }.footer-bottom .legal-links,.legal-links { gap: 9px 13px; }.footer-social-block { padding-bottom: 18px; }.global-footer-tail { margin-right: 7%; margin-left: 7%; padding-bottom: 20px; }.global-footer-bottom { padding: 15px 0 2px; align-items: flex-start; flex-direction: column; gap: 12px; }
  .legal-hero { padding: 67px 7% 45px; }.legal-hero h1 { font-size: clamp(37px,9vw,52px); letter-spacing: -1.3px; }.legal-subnav { min-height: 67px; gap: 10px 14px; }.legal-subnav a { font-size: 13px; }.legal-content { padding: 51px 7% 67px; }.legal-content > h2 { margin-top: 34px; font-size: 21px; }.legal-content > h3 { font-size: 17px; }.legal-content > p,.legal-content li { font-size: 14.5px; }.legal-table th,.legal-table td { min-width: 125px; padding: 10px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) { .social-link { transition: none; } }

/* =====================================================================
   PARCHE DE LANZAMIENTO · agosto 2026
   Correcciones aplicadas sobre el diseño original. Este bloque va al
   final a propósito: al tener la misma especificidad que las reglas de
   arriba, gana por orden de aparición y se puede revisar o revertir
   entero sin tocar el resto de la hoja.
   ===================================================================== */

/* --- Hallazgo 02 · los titulares dejan de recortarse en pantallas estrechas.
   En escritorio el texto cabe en una línea, así que quitar nowrap no cambia
   nada allí; solo evita el recorte cuando no cabe. --- */
@media (max-width: 1080px) {
  h1 > span,
  h2 > span,
  .discovery-heading h2 > span,
  .work-areas-heading h2 > span,
  .how-it-works-heading h2 > span,
  .audience-story h2 > span,
  .purpose-heading h2 > span,
  .contact-copy h2 > span,
  .news-heading h2 > span,
  .news-neuro-bridge h2 > span,
  .news-closing h2 > span,
  .guide-heading h2 > span,
  .faq-human h2 > span { white-space: normal; }
}

/* --- Hallazgo 02 · el mínimo de los clamp() era mayor que el ancho
   disponible en un móvil de 390 px. --- */
@media (max-width: 760px) {
  .hero-copy h1,
  .solutions-hero-copy h1,
  .news-hero-copy h1,
  .about-hero-copy h1,
  .areas-hero-copy h1,
  .aula-hero-copy h1,
  .neuro-landing-copy h1,
  .neuro-archive-hero h1 { font-size: clamp(30px, 8.5vw, 44px); letter-spacing: -1px; }
  .guide-hero-copy h1    { font-size: clamp(29px, 8vw, 42px);   letter-spacing: -.8px; }
  .legal-hero h1         { font-size: clamp(28px, 7.5vw, 40px); letter-spacing: -.6px; }
  .news-article-hero h1  { font-size: clamp(27px, 7.2vw, 36px); letter-spacing: -.6px; }
}

/* --- Hallazgo 09 · los botones de acción principal eran de 12 px
   (10,5 px en móvil). Un botón de conversión tiene que leerse. --- */
.contact-button,
.button-primary,
.header-cta,
.hero-actions > a {
  font-size: 15px;
  letter-spacing: .01em;
}
.contact-button, .button-primary { font-size: 16px; padding: 16px 26px; }
@media (max-width: 760px) {
  .contact-button, .button-primary { font-size: 15px; padding: 15px 22px; }
  .header-cta { font-size: 13.5px; padding: 11px 16px; }
}

/* --- Hallazgo 09 · texto de lectura a tamaño cómodo. --- */
.hero-copy > p:not(.eyebrow),
.solutions-hero-copy > p:not(.eyebrow),
.areas-hero-copy > p:not(.eyebrow),
.about-hero-copy > p:not(.eyebrow),
.guide-hero-copy > p:not(.eyebrow),
.news-hero-copy > p:not(.eyebrow),
.aula-hero-copy > p:not(.eyebrow),
.section-intro,
.neuro-article-content > p,
.neuro-article-list,
.news-article-content > p { font-size: 16px; line-height: 1.72; }

/* --- Hallazgo 09 · los avisos legales y de contexto se leen. --- */
.hero-image-note,
.photo-credit,
.impact-disclaimer,
.impact-observation-note,
.testimonial-family-label,
.contact-note { font-size: 13px !important; }

/* --- Hallazgo 10 · área táctil de 44 px sin cambiar el aspecto visual.
   Se aplica solo a enlaces de texto sueltos, nunca a tarjetas ni a
   elementos que ya son grandes, para no solapar zonas pulsables. --- */
.audience-closing > a,
.testimonial-featured-footer > a,
.testimonial-card-footer > a,
.news-read-more,
.neuro-edition-link,
.section-link,
.guide-card > a,
.solutions-card > a,
.legal-links a,
.desktop-nav a,
.footer-nav a { position: relative; display: inline-flex; align-items: center; min-height: 24px; }
.audience-closing > a::after,
.testimonial-featured-footer > a::after,
.testimonial-card-footer > a::after,
.news-read-more::after,
.neuro-edition-link::after,
.section-link::after,
.legal-links a::after,
.desktop-nav a::after,
.footer-nav a::after { content: ""; position: absolute; inset: -12px -6px; }

/* --- Hallazgo 26 · el color por sí solo no basta para señalar un enlace
   dentro de un párrafo. --- */
.neuro-article-content > p a,
.news-article-content > p a,
.legal-content a { text-decoration: underline; text-underline-offset: 3px; }

/* --- Foco visible y consistente en todo lo que se puede recorrer
   con el teclado (el original solo lo definía en 11 sitios). --- */
a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid var(--deep-cyan);
  outline-offset: 3px;
  border-radius: 4px;
}

/* --- Hallazgo 13 · ninguna imagen debe deformarse cuando WordPress
   añade width/height reales. --- */
img { max-width: 100%; height: auto; }

/* --- Hallazgo 02 (bis) · el testimonio destacado no colapsaba a una
   columna en móvil y desbordaba la pantalla. --- */
@media (max-width: 760px) {
  .testimonial-featured { grid-template-columns: 1fr; }
  .testimonial-featured > * { min-width: 0; }
  .testimonial-featured-video,
  .testimonial-featured-video > img { min-height: 220px; }
  .testimonial-featured-video { width: 100%; }
}
