:root{--blue:#101cf4;--ink:#141414;--yellow:#ffce00;--purple:#a77ae8;--soft:#f8f7f5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:white;color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.wrap{max-width:1250px;margin:auto;padding-left:36px;padding-right:36px}.header{max-width:1370px;margin:auto;padding:12px 36px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:white}.brand img{display:block;width:235px;height:84px;object-fit:cover;object-position:center}.header nav{display:flex;align-items:center;gap:27px;font-size:14px;font-weight:600}.header nav a:hover{color:var(--blue)}.header .contact-link{color:white;background:var(--blue);padding:13px 25px;border-radius:30px}.header .contact-link:hover{color:white;background:#0009ae}.menu{display:none}.hero{display:grid;grid-template-columns:45% 55%;min-height:455px;align-items:center}.hero-copy{padding:20px 0 35px;z-index:2}.eyebrow{color:var(--blue);letter-spacing:.31em;font-size:14px;font-weight:800;margin:0 0 18px}.hero .eyebrow{font-size:18px}.hero h1,h2,h3,.quote{font-family:Georgia,'Times New Roman',serif;font-weight:400}.hero h1{font-size:clamp(42px,4.35vw,69px);line-height:1.09;letter-spacing:-.045em;margin:0 0 27px}.under{position:relative;white-space:nowrap}.under:after{content:'';position:absolute;left:0;right:0;bottom:-9px;height:5px;background:var(--yellow);border-radius:70%;transform:rotate(-2deg)}.intro{font-size:18px;line-height:1.52;max-width:480px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;border-radius:40px;padding:15px 23px;font-size:14px;font-weight:600;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--blue);color:white}.secondary{border:1.5px solid #111;background:white}.hero-photo{height:415px;position:relative;background:url('assets/portada.jpg') center/cover no-repeat;border-radius:210px 0 0 0;margin-left:12px}.orb{position:absolute;border-radius:50%;opacity:.83}.purple{width:160px;height:160px;background:var(--purple);top:0;left:-35px;mix-blend-mode:multiply}.yellow{width:115px;height:115px;background:var(--yellow);bottom:0;right:0;clip-path:inset(0 0 0 0)}.values{display:grid;grid-template-columns:repeat(3,1fr);padding-top:27px;padding-bottom:45px}.values>div{display:flex;align-items:center;justify-content:center;gap:20px;font:24px/1.15 Georgia,serif}.values>div+div{border-left:1px solid #555}.line-icon{font:40px Arial;color:var(--blue)}h2{font-size:clamp(34px,3.8vw,53px);line-height:1.13;letter-spacing:-.03em;margin:0 0 25px}.center{text-align:center}.about{padding-top:80px;padding-bottom:90px;max-width:950px}.about p:last-child{font-size:19px;line-height:1.65;max-width:850px}.services{padding-top:25px;padding-bottom:45px}.services h2{margin-bottom:45px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service{position:relative;overflow:hidden;min-height:330px;padding:68px 32px 25px;background:#f1f0ed}.service:before{content:'';position:absolute;inset:0;background:linear-gradient(140deg,#f6f5f3 30%,#e5e4e0);z-index:0}.service>*{position:relative;z-index:1}.service h3{font-size:32px;line-height:1.05;letter-spacing:-.025em;margin:0 0 16px}.service p{font-size:15px;line-height:1.42;max-width:280px}.service a{display:inline-grid;place-items:center;background:white;width:43px;height:43px;border-radius:50%;font-size:24px;margin-top:8px}.circle{position:absolute;z-index:1!important;border-radius:50%;width:130px;height:130px}.s1 .circle{background:var(--blue);left:-85px;bottom:-50px}.s2 .circle{background:var(--yellow);right:20px;top:-70px}.s3 .circle{background:var(--purple);right:-60px;bottom:-65px}.ages{margin-top:20px;margin-bottom:100px;display:flex;align-items:center;justify-content:space-around;gap:25px;background:#f2ebfa;border-radius:20px;padding-top:28px;padding-bottom:28px}.ages strong{color:var(--blue);letter-spacing:.15em;max-width:260px;font-size:14px;line-height:1.5}.ages div{font-size:18px;font-weight:600}.activities{padding-top:25px;padding-bottom:95px}.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.activity-grid article{padding:25px;border-top:2px solid var(--blue);background:#fafafa}.activity-grid span{font-size:12px;color:var(--blue);font-weight:700}.activity-grid h3{font-size:27px;margin:20px 0 10px}.activity-grid p{line-height:1.55;color:#444}.training{background:#f2f0ed}.training-inner{padding-top:85px;padding-bottom:85px}.training-inner h2{max-width:760px}.training-inner>p:not(.eyebrow){font-size:18px;line-height:1.6;max-width:730px}.landscape{height:330px;background:url('assets/roque-nublo-conceptual.jpg') center 57%/cover no-repeat;position:relative;display:flex;align-items:flex-start}.landscape:before{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,.94),rgba(255,255,255,.3) 58%,transparent)}.quote{position:relative;width:100%;display:flex;justify-content:flex-end}.quote p{border-left:3px solid var(--blue);padding-left:24px;font-size:clamp(23px,2.6vw,34px);font-style:italic;line-height:1.2;max-width:690px}.contact{padding-top:95px;padding-bottom:100px}.contact p:not(.eyebrow){font-size:18px;line-height:1.6;max-width:720px}.contact small{display:block;margin-top:22px;color:#666}.footer{background:#111;color:white}.footer .wrap{padding-top:27px;padding-bottom:27px;display:flex;justify-content:space-between;gap:15px;font-size:12px;letter-spacing:.09em}@media(max-width:850px){.header{padding:10px 20px}.brand img{width:190px;height:70px}.menu{display:block;background:none;border:0;font-size:27px;color:var(--blue)}.header nav{display:none;position:absolute;top:84px;left:0;right:0;background:white;z-index:10;box-shadow:0 15px 25px #0002;padding:22px;flex-direction:column;align-items:stretch}.header nav.open{display:flex}.wrap{padding-left:22px;padding-right:22px}.hero{display:flex;flex-direction:column;align-items:stretch}.hero-copy{padding:30px 0}.hero-photo{height:370px;margin:0}.hero h1{font-size:clamp(43px,8vw,64px)}.values{gap:12px}.values>div{font-size:17px;gap:8px}.line-icon{font-size:27px}.cards{grid-template-columns:1fr}.service{min-height:265px;padding-top:40px}.ages{flex-wrap:wrap;justify-content:center;text-align:center}.ages strong{width:100%;max-width:none}.activity-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:530px){.hero-photo{height:270px}.purple{width:100px;height:100px}.yellow{width:75px;height:75px}.values{padding-top:30px;grid-template-columns:1fr}.values>div{justify-content:flex-start;padding:12px 30px}.values>div+div{border-left:0;border-top:1px solid #ddd}.about{padding-top:35px;padding-bottom:50px}.ages{margin-bottom:55px}.activity-grid{grid-template-columns:1fr}.landscape{height:300px}.quote p{font-size:22px}.footer .wrap{flex-direction:column}}

/* Servicios especializados */
.specialist-services{padding-top:64px;padding-bottom:68px}.specialist-services h2{margin-bottom:32px}.specialist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.specialist-grid article{background:#f7f7f8;border:1px solid #e5e5e8;padding:38px;min-height:340px;display:flex;flex-direction:column;align-items:flex-start}.specialist-grid .service-num{font-size:12px;letter-spacing:.17em;font-weight:700;color:#1119e8}.specialist-grid h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(26px,3vw,36px);line-height:1.13;margin:22px 0 12px}.specialist-grid p{line-height:1.65;margin:0 0 16px}.specialist-grid .audience{font-size:14px;font-weight:600;margin-top:auto}.specialist-grid a{color:#1119e8;font-weight:700;text-decoration:none;border-bottom:1px solid #1119e8;padding-bottom:3px;margin-top:14px}@media(max-width:720px){.specialist-grid{grid-template-columns:1fr}.specialist-grid article{padding:28px;min-height:0}}

/* Encuentros con familias: sección protagonista */
.activity-grid .family-highlight{background:#f0efff;border:1px solid #d9d3ff;position:relative;overflow:hidden;padding:30px;}
.activity-grid .family-highlight::after{content:"";position:absolute;right:-45px;top:-48px;width:150px;height:150px;border:22px solid rgba(80,48,174,.12);border-radius:50%;pointer-events:none;}
.activity-grid .family-highlight>span{color:#5332b7;font-weight:750;letter-spacing:.09em;}
.activity-grid .family-highlight h3{color:#241b4b;}
.activity-grid .family-highlight .family-tagline{font-size:1.1rem;font-weight:700;color:#5332b7;margin:12px 0;}
.activity-grid .family-highlight .family-statement{border-left:3px solid #5836bd;padding-left:14px;font-weight:650;color:#241b4b;margin:18px 0;}
.activity-grid .family-highlight .family-link{display:inline-block;color:#4228a0;font-weight:700;text-decoration:underline;text-underline-offset:4px;margin-top:8px;}

/* Campus CEREBRATE: sección ampliada */
.campus-detail{padding-top:76px;padding-bottom:84px;max-width:1040px}.campus-detail h2{max-width:780px}.campus-detail>p:not(.eyebrow){max-width:780px;line-height:1.75}.campus-detail h3{font-size:1.35rem;margin-top:30px}.campus-detail ul{padding-left:1.4rem;line-height:1.9;margin-bottom:26px}.campus-detail li::marker{color:#1733ec}.campus-detail .btn{display:inline-block;margin-top:16px}

.footer a{color:inherit;text-decoration:underline;text-underline-offset:4px}.contact a[href*="instagram"]{color:#244ee6;font-weight:600}

/* Experiencias CEREBRATE: texto justificado en escritorio, legible en móvil */
@media (min-width: 721px) { .activity-grid article p { text-align: justify; text-justify: inter-word; hyphens: auto; } }
@media (max-width: 720px) { .activity-grid article p { text-align: left; } }

/* Ajustes para lectura y navegación en móvil */
.about p:last-child { text-align: justify; text-justify: inter-word; hyphens: auto; }
.contact-details a { overflow-wrap:anywhere; color:var(--blue); font-weight:600; }
@media(max-width:720px){
  .about p:last-child {text-align:left;}
  .header {position:sticky;top:0;z-index:50;border-bottom:1px solid #ececf0;}
  .header nav {top:100%;max-height:calc(100dvh - 74px);overflow-y:auto;}
  .header nav a {padding:10px 4px;min-height:44px;display:flex;align-items:center;}
  .header .contact-link {justify-content:center;}
  .menu {min-width:48px;min-height:48px;cursor:pointer;}
  .hero h1 {font-size:clamp(38px,10.5vw,58px);overflow-wrap:normal;}
  .hero h1 .under {white-space:normal;}
  .hero .eyebrow {font-size:12px;letter-spacing:.24em;}
  .intro {font-size:16px;line-height:1.65;}
  .hero-photo {background-position:center 38%;}
  .actions {gap:10px;}
  .actions .btn {min-height:48px;}
  .service {padding:36px 25px 25px;}
  .activity-grid article {padding:24px;}
  .contact {padding-top:65px;padding-bottom:70px;}
  .landscape {background-position:46% center;}
  .quote {justify-content:flex-start;}
  .quote p {background:rgba(255,255,255,.62);padding:12px 15px;border-left-width:3px;}
  h2 {font-size:clamp(32px,8.4vw,43px);}
  .training-inner {padding-top:60px;padding-bottom:60px;}
  .specialist-services {padding-top:45px;padding-bottom:50px;}
}
@media(max-width:390px){
  .brand img {width:158px;height:58px;}
  .hero h1 {font-size:37px;}
  .btn {width:100%;}
  .hero-photo {height:245px;}
  .wrap {padding-left:19px;padding-right:19px;}
}
