*{box-sizing:border-box;margin:0;padding:0}:root{--accent:#8b5cf6;--accent-dark:#7c3aed;--accent-darker:#6d28d9;--text:#1f2937;--muted:#4b5563;--gray:#6b7280;--border:#e5e7eb;--surface:#f9fafb;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-weight:400;line-height:1.5}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}a{color:var(--accent);-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:var(--accent-dark)}button{font-family:inherit}::selection{background-color:var(--accent);color:#fff}.app{flex-direction:column;min-height:100vh;display:flex}.header{color:#fff;text-align:center;background:linear-gradient(#141e3273,#141e3259),url(/header-background.jpg) 50%/cover no-repeat;padding:3rem 0;position:relative;box-shadow:0 4px 6px #0000001a}.logo{text-shadow:2px 2px 8px #00000080,0 0 20px #0000004d;z-index:1;margin:0 0 .5rem;font-size:3rem;font-weight:700;position:relative}.tagline{opacity:.98;text-shadow:1px 1px 4px #00000080;z-index:1;margin:0 0 1.5rem;font-size:1.25rem;position:relative}.contact-header{z-index:1;flex-wrap:wrap;justify-content:center;align-items:center;gap:2rem;display:flex;position:relative}.phone-link{color:#fff;background:#fff3;border-radius:50px;padding:.75rem 1.5rem;font-size:1.1rem;font-weight:600;text-decoration:none;transition:all .3s}.phone-link:hover{color:#fff;background:#ffffff4d;transform:translateY(-2px)}.enrollment-badge{color:#78350f;background:#fbbf24;border-radius:50px;padding:.75rem 1.5rem;font-size:1rem;font-weight:700;box-shadow:0 2px 4px #0003}.enrollment-ages{text-shadow:1px 1px 4px #00000080;z-index:1;margin:1rem 0 0;font-size:1rem;font-weight:600;position:relative}.nav{border-bottom:2px solid var(--border);z-index:100;background:#fff;padding:1rem 0;position:sticky;top:0;box-shadow:0 2px 4px #0000000d}.nav .container{justify-content:center;align-items:center;gap:.75rem;display:flex;position:relative}.hamburger-button{cursor:pointer;color:var(--gray);z-index:101;background:0 0;border:none;border-radius:8px;padding:.5rem .75rem;transition:all .3s;display:none}.hamburger-button:hover{color:var(--accent);background:#f3f4f6}.nav-overlay{display:none}.nav-links{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.nav-links a{color:var(--gray);white-space:nowrap;border-radius:8px;padding:.5rem .75rem;font-weight:500;text-decoration:none;transition:all .3s}.nav-links a:hover{color:var(--accent);background:#f3f4f6}.main{flex:1}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.section{padding:4rem 0;scroll-margin-top:5.5rem}.section-alt{background:var(--surface)}.section h2{color:var(--text);text-align:center;margin-bottom:2rem;padding-bottom:1rem;font-size:2.5rem;position:relative}.section h2:after{content:"";background:linear-gradient(90deg, var(--accent), var(--accent-dark));border-radius:2px;width:80px;height:4px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.basics-grid{grid-template-columns:repeat(2,1fr);gap:0 2rem;max-width:900px;margin-top:2rem;margin-left:auto;margin-right:auto;display:grid}.basic-item{align-items:flex-start;gap:1rem;padding:1rem 0;display:flex}.basic-item:not(:last-child){border-bottom:1px solid var(--border);padding-bottom:1rem}.basic-icon{width:20px;height:20px;color:var(--accent);flex-shrink:0;margin-top:2px}.basic-content{color:var(--muted);flex:1;font-size:1rem;line-height:1.6}.basic-content strong{color:var(--text);font-weight:600}.about-content,.philosophy-content,.location-content,.program-content{max-width:800px;color:var(--muted);margin:0 auto;font-size:1.1rem;line-height:1.8}.about-content p,.philosophy-content p,.location-content p,.program-content p{margin-bottom:1.5rem}.teacher-card{border-top:4px solid var(--accent);background:#fff;border-radius:16px;max-width:800px;margin:0 auto;padding:2rem;box-shadow:0 4px 12px #0000001a}.teacher-card h3{color:var(--text);margin-bottom:.35rem;font-size:1.4rem}.teacher-role{color:var(--accent);margin-bottom:1rem;font-weight:600}.teacher-card p{color:var(--muted);font-size:1.05rem;line-height:1.8}.photos-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-top:2rem;display:grid}.photo-card{aspect-ratio:1;background:#f3f4f6;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000014}.photo-card img{object-fit:cover}.photo-caption{color:#fff;background:linear-gradient(#0000,#111827bf);padding:.75rem .9rem;font-size:.85rem;font-weight:600;position:absolute;bottom:0;left:0;right:0}.location-map-container{max-width:900px;margin:2rem auto 0}.location-map-iframe{border:0;border-radius:12px;width:100%;height:450px;margin-bottom:1.5rem;box-shadow:0 4px 12px #0000001a}.location-address{text-align:center;color:var(--text);background:#fff;border-radius:12px;margin:0;padding:1rem;font-size:1.1rem;box-shadow:0 2px 8px #00000014}.location-address strong{color:var(--accent)}.schedule-list{max-width:800px;margin:2rem auto 0;padding-left:2rem;position:relative}.schedule-list:before{content:"";background:var(--border);width:2px;position:absolute;top:.25rem;bottom:0;left:.775rem}.schedule-item{margin-bottom:2.5rem;padding-left:2rem;position:relative}.schedule-item:before{content:"";background:var(--accent);width:12px;height:12px;box-shadow:0 0 0 2px var(--accent);z-index:1;border:3px solid #fff;border-radius:50%;position:absolute;top:.25rem;left:-1.75rem}.schedule-item:last-child{margin-bottom:0}.schedule-time{color:var(--accent);letter-spacing:.5px;margin-bottom:.5rem;font-size:.95rem;font-weight:600}.schedule-activity strong{color:var(--text);margin-bottom:.4rem;font-size:1.1rem;font-weight:600;display:block}.enrollment-intro{text-align:center;color:var(--muted);margin-bottom:2rem;font-size:1.2rem}.tour-banner{border-top:4px solid var(--accent);text-align:center;background:#fff;border-radius:12px;max-width:900px;margin:0 auto 2.5rem;padding:1.75rem 2rem;box-shadow:0 2px 8px #00000014}.tour-banner h3{color:var(--text);margin-bottom:.75rem;font-size:1.4rem}.tour-banner p{color:var(--muted);margin-bottom:.5rem;line-height:1.7}.tour-banner p:last-child{margin-bottom:0}.enrollment-steps{max-width:900px;margin:0 auto}.enrollment-step{background:#fff;border-radius:12px;gap:2rem;margin-bottom:2.5rem;padding:2rem;transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 2px 8px #00000014}.enrollment-step:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001f}.step-number{background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;min-width:60px;height:60px;font-size:1.5rem;font-weight:700;display:flex}.step-content h3{color:var(--text);margin:0 0 .75rem;font-size:1.5rem}.step-content p{color:var(--muted);margin:0;font-size:1.05rem;line-height:1.7}.enrollment-contact{text-align:center;background:#fff;border-radius:12px;max-width:600px;margin:3rem auto 0;padding:2rem;box-shadow:0 2px 8px #00000014}.director-row{justify-content:center;align-items:center;gap:1rem;margin:1.25rem 0;display:flex}.director-photo{object-fit:cover;border-radius:50%}.director-name{color:var(--text);margin:0;font-weight:700}.director-title{color:var(--gray);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.9rem}.enrollment-contact h3{color:var(--text);margin-bottom:1rem}.enrollment-contact p{color:var(--muted);margin-bottom:.5rem}.contact-info{font-size:1.1rem}.contact-info a{color:var(--accent);font-weight:600;text-decoration:none;transition:color .3s}.contact-info a:hover{color:var(--accent-dark);text-decoration:underline}.footer{color:#fff;text-align:center;background:#1f2937;margin-top:4rem;padding:2rem 0}.footer p{color:#d1d5db;margin:.5rem 0}@media (max-width:1023px){.hamburger-button{display:block;position:absolute;right:1rem}.nav-link-enrollment{display:none}.nav-overlay.nav-overlay-visible{z-index:99;background:#00000080;width:100%;height:100vh;display:block;position:fixed;top:0;left:0}.nav-links.nav-links-open{z-index:100;background:#fff;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:0;width:280px;max-width:85vw;height:100vh;padding:4rem 2rem 2rem;position:fixed;top:0;right:0;overflow-y:auto;box-shadow:-4px 0 12px #00000026}.nav-links:not(.nav-links-open){flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex;position:relative}.nav-links.nav-links-open a{border-bottom:1px solid var(--border);border-radius:0;width:100%;padding:1rem 0;font-size:1rem;display:block!important}.nav-links.nav-links-open a:last-child{border-bottom:none}.nav-links.nav-links-open a:hover{background:var(--surface);color:var(--accent)}}@media (max-width:940px){.nav-link-schedule{display:none}}@media (max-width:900px){.nav-link-program{display:none}}@media (max-width:860px){.nav-link-location{display:none}}@media (max-width:820px){.nav-link-philosophy{display:none}}@media (max-width:780px){.nav-link-photos{display:none}}@media (max-width:740px){.nav-link-about{display:none}}@media (max-width:700px){.nav-link-basics{display:none}}@media (max-width:768px){.logo{font-size:2rem}.tagline{font-size:1rem}.contact-header{flex-direction:column;gap:1rem}.section{padding:2.5rem 0}.section h2{font-size:2rem}.basics-grid{grid-template-columns:1fr}.photos-grid{grid-template-columns:repeat(2,1fr)}.schedule-list{padding-left:1.5rem}.schedule-list:before{top:.25rem;left:.4375rem}.schedule-item{padding-left:1.5rem}.schedule-item:before{width:10px;height:10px;left:-1.0625rem}.enrollment-step{text-align:center;flex-direction:column;gap:1.5rem}.step-number{margin:0 auto}}
