*{margin:0;padding:0;box-sizing:border-box;font-weight:300;font-style:normal}h1,h2,h3,h4,h5,h6{font-weight:300;font-style:bold}body,html{height:100%;font-family:Arial,Helvetica,sans-serif;background:#f4f4f4;color:#111;width:100%;overflow-x:hidden;margin:0;padding:0}body{min-height:100vh}a{color:inherit;text-decoration:none}.layout{display:flex;min-height:100vh}.sidebar{width:280px;min-height:100vh;background:#121212;color:#fff;padding:24px 20px;display:none;flex-direction:column;gap:24px}.sidebar__header h2{font-size:20px;line-height:1.3;font-weight:700}.sidebar__nav ul{list-style:none;display:flex;flex-direction:column;gap:14px}.sidebar__section-title{font-weight:700;margin-top:10px}.content{flex:1 1;min-height:100vh;padding:30px}.home{min-height:100vh}.hero,.home{align-items:center;justify-content:center}.hero{position:relative;height:340px;display:flex;text-align:center;color:#fff;background-image:url(/fondo4.jpg);background-size:cover;background-position:50%;border-bottom:6px solid #fff}.hero:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.5)}.hero h1,.hero h2{position:relative;font-size:50px;font-weight:700}.photos{gap:20px;flex-wrap:wrap;padding:40px 20px;width:100%;margin:0 auto}.photos,.site-footer{display:flex;justify-content:center;align-items:center;max-width:1280px}.site-footer{padding-top:2rem;margin:5rem auto 0;border-top:1px solid rgba(72,158,49,.2);text-align:center;color:#6b7280;font-size:.875rem}.site-footer p{margin:0}.photos img{width:100%;max-width:100%;height:auto;border-radius:12px;object-fit:cover;box-shadow:0 10px 30px rgba(0,0,0,.35);transition:transform .3s ease}.photos img:hover{transform:scale(1.05)}.intro{position:relative;padding:80px 40px;text-align:center;font-size:22px;line-height:1.6;color:#fff;background-image:url(/fondo1.gif);background-size:cover;background-position:50%;background-attachment:fixed;margin-top:-40px}.intro:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.75)}.intro p{position:relative;max-width:900px;margin:auto}.lesson{max-width:900px;padding:40px}.lesson__header h1{font-size:40px;margin-bottom:20px}.lesson__section{margin-top:40px}.lesson__video{margin-top:20px}.navbar{justify-content:space-between;padding:10px 40px;background:#111;color:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:1100;flex-wrap:wrap}.navbar,.navbar-links{display:flex;align-items:center}.navbar-links{gap:30px}.logo{height:100px}.course-dropdown{position:relative}.course-button{background:none;border:none;color:#fff;font-size:16px;cursor:pointer;transition:transform .2s ease}.course-menu{position:absolute;top:40px;background:#fff;color:#000;display:flex;flex-direction:column;min-width:220px;box-shadow:0 5px 10px rgba(0,0,0,.2);border-radius:8px;opacity:0;transform:translateY(-10px);animation:dropdownFade .25s ease forwards}.course-item{padding:10px 14px;transition:background-color .2s ease,transform .15s ease}.course-item:hover{background:#f2f2f2;transform:translateX(4px)}.contact-map{margin-top:40px}.contact-info,.contact-map{justify-content:center;display:flex}.contact-info{gap:40px;padding:60px 40px;flex-wrap:wrap}.contact-card{background:#fff;padding:30px;width:280px;border-radius:10px;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.15);transition:transform .2s ease}.contact-card:hover{transform:translateY(-6px)}.contact-card h3{margin-bottom:10px}.contact-back{position:relative;padding:80px 40px;text-align:center;font-size:22px;line-height:1.6;color:#fff;background-size:cover;background-position:50%;margin-top:-25px;background-image:url(/fondo-titulo2.jpg)}.contact-social{max-width:600px;margin:40px auto;display:flex;flex-direction:column;gap:20px}.social-row{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff;border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,.15);font-size:18px;transition:transform .2s ease,box-shadow .2s ease}.social-row:hover{transform:translateY(-4px);box-shadow:0 10px 25px rgba(0,0,0,.25)}.social-button{justify-content:center;max-width:760px;margin:40px auto 0;background:linear-gradient(135deg,#2f855a,#48bb78);color:#fff;font-weight:700;text-align:center;padding:18px 24px}.social-button span{width:100%}.cta-wrapper{display:flex;justify-content:center;padding:0 20px 40px}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.lesson{max-width:1000px;margin:0 auto;padding:20px;background:#f9f9f9;min-height:100vh}.lesson h1{font-size:36px;font-weight:700;color:#2d3748;margin-bottom:30px;text-align:center;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.lesson-section{background:#fff;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.1);margin-bottom:20px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.lesson-section:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(0,0,0,.15)}.lesson-section iframe{border:none;border-radius:0 0 12px 12px;width:100%;aspect-ratio:16/9;height:auto}.lesson-text{background:#fff;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.1);padding:30px;margin-bottom:20px;line-height:1.8;font-size:18px;font-family:Georgia,serif;color:#2d3748;transition:transform .3s ease,box-shadow .3s ease}.lesson-text:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(0,0,0,.15)}.lesson-image{background:#fff;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.1);padding:20px;margin-bottom:20px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.lesson-image:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(0,0,0,.15)}.lesson-image img{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.lesson-image-text{background:#fff;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.1);padding:30px;margin-bottom:20px;transition:transform .3s ease,box-shadow .3s ease}.lesson-image-text:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(0,0,0,.15)}.image-text-container{display:grid;grid-template-columns:1fr 1fr;grid-gap:30px;gap:30px;align-items:center}.image-text-image{text-align:center}.image-text-image img{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.image-text-content{display:flex;flex-direction:column;justify-content:center}.image-text-content p{line-height:1.8;font-size:18px;font-family:Georgia,serif;color:#2d3748;white-space:pre-wrap;word-wrap:break-word}.game-block{background:#fff;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.1);padding:30px 15px;margin-bottom:30px;transition:transform .3s ease,box-shadow .3s ease}.game-block:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(0,0,0,.15)}.game-block h2{font-size:32px;font-weight:700;color:#2d3748;margin-bottom:30px;text-align:center}.scratch-demo{text-align:center;margin-bottom:40px}.scratch-demo iframe{border-radius:12px;box-shadow:0 8px 25px rgba(0,0,0,.15);max-width:100%;width:100%;height:auto;aspect-ratio:485/402}.game-info{background:#f7fafc;border-radius:12px;padding:30px;margin-bottom:40px}.game-info p{margin-bottom:15px;font-size:16px;color:#4a5568}.game-info h3{font-size:24px;font-weight:600;color:#2d3748;margin-top:30px;margin-bottom:15px}.game-pdf{margin-bottom:40px}.game-pdf h3{font-size:24px;font-weight:600;color:#2d3748;margin-bottom:20px;text-align:center}.game-pdf iframe{border-radius:12px;box-shadow:0 8px 25px rgba(0,0,0,.15);width:100%;height:600px;border:none}@media (max-width:1024px){.lesson{max-width:90%;padding:15px}.lesson h1{font-size:32px}.lesson h1,.lesson-section{margin-bottom:25px}.lesson-text{padding:25px;font-size:15px}.lesson-image{padding:15px}.image-text-container{grid-template-columns:1fr 1fr;gap:20px}.image-text-content p{font-size:16px}.game-block{padding:25px}}@media (max-width:768px){.lesson h1{font-size:28px}.lesson-section iframe{aspect-ratio:16/9}.lesson-text{padding:20px;font-size:14px}.lesson-image{padding:15px}.image-text-container{grid-template-columns:1fr;gap:20px}.image-text-content p{font-size:15px}.game-block{padding:20px}.navbar{padding:10px 20px;flex-direction:column;gap:10px}.navbar-links{gap:15px;font-size:14px;flex-wrap:wrap;justify-content:center}.logo{height:60px}.pdf-viewer{padding:15px;max-width:100%;margin:10px auto}.pdf-document{min-height:50vh;overflow:hidden}.pdf-document iframe{height:50vh;min-height:50vh}.pdf-controls{flex-wrap:wrap;gap:10px;padding:12px}.pdf-button{padding:8px 12px;font-size:12px;flex:1 1;min-width:80px}.pdf-page-info{width:100%;text-align:center;order:3;font-size:14px}.scratch-demo{margin-bottom:30px}.scratch-demo iframe{max-width:100%!important;width:100%!important;height:auto!important;min-height:300px}.game-pdf{margin-bottom:30px}.game-pdf h3{font-size:18px;margin-bottom:15px}}@media (max-width:480px){.lesson{padding:10px}.lesson h1{font-size:24px}.lesson h1,.lesson-section{margin-bottom:20px}.lesson-text{padding:15px;font-size:13px}.game-block{padding:15px}.pdf-viewer{padding:10px;border-radius:8px}.pdf-document,.pdf-document iframe{min-height:40vh}.pdf-controls{flex-direction:column;padding:10px;gap:8px}.pdf-button{width:100%;padding:10px;font-size:13px}.pdf-page-info{font-size:13px;padding:8px}.scratch-demo{margin-bottom:20px}.scratch-demo iframe{height:250px!important;min-height:250px!important}.game-pdf h3{font-size:16px;margin-bottom:12px}.game-info{padding:15px}.game-info h3{font-size:18px;margin-top:20px}.game-info p{font-size:14px}}.menu-button{display:none;position:fixed;top:20px;left:20px;z-index:1001;background:#121212;color:#fff;border:none;padding:10px;border-radius:5px;cursor:pointer;font-size:18px}.text-preserve-whitespace{white-space:pre-wrap;word-wrap:break-word}.pdf-viewer{background:transparent;border-radius:0;padding:0;box-shadow:none;margin-bottom:20px;width:100%}.pdf-document{display:flex;justify-content:center;overflow:visible;width:100%;min-height:85vh}.pdf-document iframe{width:100%;height:85vh;border-radius:10px;box-shadow:0 4px 12px rgba(0,0,0,.15)}.pdf-loading{color:#666;font-size:16px}.pdf-error,.pdf-loading{text-align:center;padding:40px}.pdf-error{color:#e53e3e;background:#fed7d7;border-radius:8px;margin:20px 0}.pdf-error p{margin:5px 0;font-size:14px}.pdf-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:#f7fafc;border-radius:8px}.pdf-button{background:#3182ce;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:background-color .2s ease}.pdf-button:hover:not(:disabled){background:#2c5282}.pdf-button:disabled{background:#cbd5e0;cursor:not-allowed}.pdf-page-info{font-size:16px;font-weight:600;color:#2d3748}.sidebar{position:relative}.sidebar.open{transform:translateX(0)}@media (max-width:768px){.layout{flex-direction:column}.menu-button{display:block}.sidebar{display:flex;position:fixed;top:0;left:0;width:280px;height:100vh;z-index:1000;transform:translateX(-100%);transition:transform .3s ease}.sidebar.open{transform:translateX(0)}.content{padding:20px;margin-top:0}.navbar{padding:10px 20px}}@media (max-width:480px){.sidebar{width:100%}.content{padding:15px}.menu-button{top:15px;left:15px}.navbar{display:none}.navbar-links a{font-size:11px;padding:4px 6px;white-space:nowrap}.logo{height:40px}}@media (max-width:1024px){.hero{height:280px}.hero h1,.hero h2{font-size:40px}.photos{padding:30px;gap:15px}.intro{padding:60px 30px;font-size:20px}.navbar{padding:10px 30px}.navbar-links{gap:20px}.logo{height:80px}.contact-info{padding:40px 20px;gap:20px}.contact-card{width:240px;padding:20px}.social-row{font-size:16px;padding:12px 16px}}@media (max-width:768px){.hero{height:240px}.hero h1,.hero h2{font-size:32px}.photos{padding:20px;gap:10px}.photos img{max-width:300px}.intro{padding:40px 20px;font-size:18px;margin-top:-20px}.intro p{max-width:100%}.navbar{display:none}.logo{height:60px}.content{padding:20px}.site-footer{padding-top:1rem;margin-top:3rem;font-size:.75rem}.contact-info{padding:30px 15px;gap:15px}.contact-card{width:100%;max-width:300px;padding:15px}.contact-back{padding:40px 20px;font-size:18px;margin-top:-15px}.contact-social{margin:20px auto;gap:15px}.social-row{font-size:14px;padding:10px 12px}.course-menu{min-width:200px}}@media (max-width:480px){.hero{height:200px}.hero h1,.hero h2{font-size:24px}.photos{padding:15px;gap:8px}.photos img{max-width:250px}.intro{padding:30px 15px;font-size:16px;margin-top:-15px}.navbar{padding:8px 10px;flex-wrap:wrap;gap:8px}.navbar>div:nth-child(2){display:none}.navbar-links{gap:8px;width:100%;justify-content:space-around}.navbar-links a{font-size:12px;padding:4px 6px}.logo{height:45px}.content{padding:15px}.site-footer{padding-top:.5rem;margin-top:2rem;font-size:.7rem}.contact-info{padding:20px 10px;gap:10px}.contact-card{width:100%;padding:12px}.contact-back,.contact-card h3{font-size:16px}.contact-back{padding:30px 15px;margin-top:-10px}.contact-social{margin:15px auto;gap:10px}.social-row{font-size:12px;padding:8px 10px}.course-menu{min-width:180px}.course-item{padding:8px 12px}.lesson-image{padding:10px}.image-text-container{grid-template-columns:1fr;gap:15px}.image-text-content p{font-size:13px}}