body{background:#fffdf9;color:#293e3b}header,main,footer{max-width:1240px}header{padding-top:22px;padding-bottom:22px}.brand{color:#355b56}.intro-strip{margin:0 30px;padding:13px 24px;background:#e7f1ed;border-radius:14px;display:flex;justify-content:space-between;gap:15px;font-size:14px}.intro-strip a{font-weight:bold;text-decoration:none}.hero{margin:25px 30px 0;padding:45px 45px 35px;gap:45px;border:1px solid #ede8e0;border-radius:32px;background:radial-gradient(ellipse at 90% 10%,#ebe4f5 0,transparent 55%),radial-gradient(ellipse at 5% 95%,#e0f0ea 0,transparent 50%),#fff9f0;box-shadow:0 18px 45px #65756813;grid-template-columns:1.2fr 1fr}.hero h1{font-family:Arial,sans-serif;font-weight:800;font-size:clamp(36px,4.1vw,56px);letter-spacing:-1.7px;line-height:1.13}.hero h1 em{color:#5b8174}.hero .photo-portrait{border-radius:190px 190px 28px 28px;overflow:hidden;padding:0;background:#eee6da;position:relative;box-shadow:0 18px 34px #5f514825;transform:rotate(2deg)}.photo-portrait img{display:block;width:100%;height:490px;object-fit:cover;object-position:50% 68%;transform:scale(1.25);transform-origin:50% 75%}.portrait-caption{position:absolute;bottom:0;left:0;right:0;padding:40px 18px 20px;background:linear-gradient(transparent,#fffdf5 65%);text-align:center}.portrait-caption span{font-size:23px}.portrait-caption strong{font-size:12px;letter-spacing:1px}.button{border-radius:100px;box-shadow:0 7px 15px #536b5c1a;transition:transform .2s}.button:hover{transform:translateY(-3px)}.outline{box-shadow:none;background:#ffffff80}.real-classroom{padding-top:85px}.classroom-heading{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}h2{font-family:Arial,sans-serif;font-weight:750;letter-spacing:-1px}.classroom-heading p{font-size:17px}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:25px}.photo-card{border:1px solid #e5e6dc;padding:12px;background:#fff;border-radius:24px;text-align:left;overflow:hidden;box-shadow:0 12px 35px #36544815;transition:transform .2s;color:inherit}.photo-card:first-child{transform:rotate(-1deg)}.photo-card:last-child{transform:rotate(1deg)}.photo-card:hover{transform:translateY(-6px)}.photo-card img{width:100%;height:370px;object-fit:cover;object-position:50% 50%;border-radius:16px;display:block}.photo-card span{display:grid;gap:6px;padding:20px}.photo-card small{letter-spacing:2px;color:#6a7063;font-size:10px}.photo-card strong{font-size:23px}.photo-card em{font-size:13px;font-style:normal;color:#557b6b}.explorer{margin:0 30px;background:linear-gradient(135deg,#e7f1ec,#f2edf6);border:1px solid #dde9e2}.cards article{border:1px solid #ffffff;box-shadow:0 10px 25px #444d3910}.steps{margin-top:45px}.training{box-shadow:0 10px 28px #947a4610}dialog{border:0;border-radius:22px;padding:18px;max-width:90vw;max-height:92vh;background:#fffdf9;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#182c29cc}#large-photo{display:block;max-width:100%;max-height:70vh;object-fit:contain;margin:auto}.close-photo{display:block;margin:0 0 12px auto;padding:10px 18px;border:1px solid #71867a;border-radius:30px;background:#e7f1ed;color:#293e3b}#photo-caption{max-width:700px;margin:12px auto;font-size:14px}@media(max-width:760px){.intro-strip{margin:0 16px;flex-direction:column;gap:4px;padding:12px 18px}.hero{margin:18px 16px 0;padding:28px 22px;grid-template-columns:1fr;gap:25px}.hero .photo-portrait{max-width:340px;transform:rotate(1deg)}.photo-portrait img{height:370px}.classroom-heading,.photo-grid{grid-template-columns:1fr;gap:15px}.photo-card img{height:330px}.real-classroom{padding-top:55px}.explorer{margin:0 16px}.photo-card strong{font-size:21px}}@media(prefers-reduced-motion:reduce){.button:hover,.photo-card:hover{transform:none}}

/* Una portada alegre, con movimiento suave y control para pausarlo. */
.hero{position:relative;isolation:isolate;background-size:140% 140%;animation:joy-background 12s ease-in-out infinite alternate}.hero>div:not(.joy-sparkles){position:relative;z-index:1}.joy-sparkles{position:absolute;inset:0;overflow:hidden;pointer-events:none;border-radius:32px;z-index:0}.joy-sparkles span{position:absolute;color:#c59a48;font-size:28px;animation:joy-sparkle 4s ease-in-out infinite}.joy-sparkles span:nth-child(1){left:5%;top:8%}.joy-sparkles span:nth-child(2){left:54%;top:20%;animation-delay:1s;color:#a28abc}.joy-sparkles span:nth-child(3){right:5%;top:8%;animation-delay:2s}.joy-sparkles span:nth-child(4){left:48%;bottom:12%;animation-delay:1.5s;color:#689e8c}.joy-sparkles span:nth-child(5){right:4%;bottom:8%;animation-delay:.7s}.hero .photo-portrait{animation:joy-float 6s ease-in-out infinite}.actions .button:not(.outline),.closing .button:not(.outline){position:relative;overflow:hidden;animation:joy-pulse 3.5s ease-in-out infinite}.actions .button:not(.outline)::after,.closing .button:not(.outline)::after{content:"";position:absolute;inset:-40% auto -40% -70%;width:35%;background:linear-gradient(90deg,transparent,#ffffff70,transparent);transform:skewX(-20deg);animation:joy-shine 5s ease-in-out infinite;pointer-events:none}.photo-card{transition:transform .3s,box-shadow .3s,border-color .3s}.photo-card:hover,.photo-card:focus-visible{transform:translateY(-7px) rotate(0);box-shadow:0 20px 38px #73866335;border-color:#a0bfaa}.photo-card img{transition:transform .6s}.photo-card:hover img{transform:scale(1.025)}.cards article{transition:transform .3s,box-shadow .3s}.cards article:hover{transform:translateY(-6px);box-shadow:0 18px 35px #735e8525}button[aria-pressed="true"]{box-shadow:0 0 0 3px #8aa99535}#motion-toggle{border:1px solid #b9cfc2;border-radius:30px;padding:7px 12px;background:#fffdf9;color:#355b56;font:inherit;font-size:12px;cursor:pointer;white-space:nowrap}#motion-toggle:focus-visible{outline:3px solid #9276b1;outline-offset:3px}.intro-strip{align-items:center;flex-wrap:wrap}.motion-paused *,.motion-paused *::before,.motion-paused *::after{animation-play-state:paused!important}.motion-paused .photo-card,.motion-paused .photo-card img,.motion-paused .cards article,.motion-paused .button{transition:none}.motion-paused .photo-card:hover,.motion-paused .photo-card:hover img,.motion-paused .cards article:hover,.motion-paused .button:hover{transform:none}
@keyframes joy-float{0%,100%{transform:translateY(0) rotate(2deg)}50%{transform:translateY(-10px) rotate(.5deg)}}@keyframes joy-pulse{0%,100%{box-shadow:0 7px 15px #536b5c25,0 0 0 0 #91b6a650}50%{box-shadow:0 10px 24px #536b5c35,0 0 0 7px #91b6a600}}@keyframes joy-shine{0%,60%{left:-70%}85%,100%{left:140%}}@keyframes joy-sparkle{0%,100%{opacity:.35;transform:scale(.8) rotate(-8deg)}50%{opacity:1;transform:scale(1.15) rotate(8deg)}}@keyframes joy-background{from{background-position:0% 0%}to{background-position:100% 100%}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.photo-card:hover img,.cards article:hover{transform:none}}@media(max-width:760px){.joy-sparkles span{font-size:22px}#motion-toggle{align-self:flex-start}.hero .photo-portrait{animation-duration:7s}}
