:root{--primary:#4CAF50;--primary-dark:#2E7D32;--primary-light:#81C784;--accent-yellow:#FFC107;--accent-orange:#FF9800;--accent-red:#E53935;--accent-blue:#2196F3;--accent-pink:#FF6B9D;--accent-purple:#9C27B0;--bg-cream:#FFF9E6;--bg-light:#F5F9F2;--text-dark:#2C3E2D;--text-gray:#5D6D5D;--text-light:#8A9A8A;--white:#ffffff;--shadow-sm:0 2px 8px rgba(0,0,0,0.08);--shadow-md:0 4px 20px rgba(0,0,0,0.12);--shadow-lg:0 10px 40px rgba(0,0,0,0.15);--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{font-family:'Noto Sans TC',sans-serif;color:var(--text-dark);line-height:1.7;background:var(--white);overflow-x:hidden}a{text-decoration:none;color:inherit}ul{list-style:none}img{max-width:100%;display:block}.container{max-width:1200px;margin:0 auto;padding:0 24px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 34px;border-radius:50px;font-weight:700;font-size:15.5px;cursor:pointer;border:none;transition:transform 0.25s cubic-bezier(0.34,1.3,0.64,1),box-shadow 0.25s ease,background 0.25s ease,color 0.25s ease;font-family:inherit;text-align:center}.btn-primary{background:linear-gradient(135deg,#5CB860,var(--primary-dark));color:white;box-shadow:0 8px 22px rgba(76,175,80,0.32)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(76,175,80,0.42)}.btn-secondary{background:white;color:var(--primary-dark);border:2px solid var(--primary);box-shadow:0 4px 14px rgba(76,175,80,0.12)}.btn-secondary:hover{background:var(--primary);color:white;transform:translateY(-3px);box-shadow:0 12px 26px rgba(76,175,80,0.3)}.btn-full{width:100%}.btn-multi{flex-direction:column;gap:4px;padding:14px 36px;line-height:1.3}.btn-line-1{font-size:16px;font-weight:700}.btn-line-2{font-size:22px;font-weight:900;font-family:'Fredoka',sans-serif;letter-spacing:1px}.news-marquee{position:fixed;top:0;left:0;right:0;z-index:1001;display:flex;align-items:center;background:linear-gradient(135deg,#E53935,#C62828);color:white;height:32px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.15)}.news-marquee-label{flex-shrink:0;padding:0 14px;background:#B71C1C;height:100%;display:flex;align-items:center;font-size:13px;font-weight:900;letter-spacing:1px;position:relative;z-index:2}.news-marquee-label::after{content:'';position:absolute;right:-12px;top:0;width:0;height:0;border-left:12px solid #B71C1C;border-top:16px solid transparent;border-bottom:16px solid transparent}.news-marquee-content{flex:1;overflow:hidden;position:relative}.news-marquee-track{display:flex;align-items:center;gap:32px;white-space:nowrap;animation:news-scroll 60s linear infinite;-webkit-animation:news-scroll 60s linear infinite;padding-left:24px;will-change:transform;-webkit-transform:translateZ(0);transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}@media (hover:hover) and (pointer:fine){.news-marquee:hover .news-marquee-track{animation-play-state:paused}}@media (max-width:768px){.news-marquee-track{animation-duration:40s;-webkit-animation-duration:40s}}@keyframes news-scroll{0%{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}100%{-webkit-transform:translate3d(-50%,0,0);transform:translate3d(-50%,0,0)}}@-webkit-keyframes news-scroll{0%{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}100%{-webkit-transform:translate3d(-50%,0,0);transform:translate3d(-50%,0,0)}}.news-item{font-size:13px;font-weight:500}.news-divider{color:rgba(255,255,255,0.5);font-size:10px}body{padding-top:32px}.navbar{top:32px!important}@media (max-width:640px){.news-marquee{height:28px}body{padding-top:28px}.navbar{top:28px!important}.news-item{font-size:12px}}.navbar{position:fixed;top:0;left:0;width:100%;background:rgba(255,255,255,0.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:1000;transition:all 0.3s ease;box-shadow:0 2px 10px rgba(0,0,0,0.05)}.navbar.scrolled{box-shadow:var(--shadow-md)}.nav-container{max-width:1280px;margin:0 auto;padding:14px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px}.logo{display:flex;align-items:center;gap:12px}.logo-img{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(76,175,80,0.3));transition:transform 0.4s cubic-bezier(0.34,1.56,0.64,1)}.logo:hover .logo-img{transform:rotate(15deg) scale(1.15)}.logo-text{display:flex;flex-direction:column;line-height:1.2}.logo-title{font-size:22px;font-weight:900;color:var(--text-dark)}.logo-subtitle{font-size:11px;color:var(--primary);font-family:'Fredoka',sans-serif;letter-spacing:1px}.nav-menu{display:flex;gap:22px;flex-wrap:nowrap}.nav-menu a{color:var(--text-dark);font-weight:500;font-size:14px;position:relative;transition:color 0.3s ease;white-space:nowrap}.nav-menu a::after{content:'';position:absolute;left:0;bottom:-6px;width:0;height:3px;background:var(--primary);border-radius:3px;transition:width 0.3s ease}.nav-menu a:hover{color:var(--primary)}.nav-menu a:hover::after,.nav-menu a.active::after{width:100%}.nav-menu a.active{color:var(--primary)}.hamburger{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:8px}.hamburger span{width:28px;height:3px;background:var(--text-dark);border-radius:3px;transition:0.3s}.hero{min-height:100vh;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#FFF9E6 0%,#F0F9F0 50%,#E8F5E9 100%);overflow:hidden;padding:120px 24px 80px}.hero-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}.floating-shape{position:absolute;border-radius:50%;opacity:0.6;animation:float 6s ease-in-out infinite}.shape-1{width:180px;height:180px;background:linear-gradient(135deg,#FFD54F,#FFC107);top:10%;left:5%;animation-delay:0s}.shape-2{width:120px;height:120px;background:linear-gradient(135deg,#81C784,#4CAF50);top:20%;right:10%;animation-delay:1.5s}.shape-3{width:90px;height:90px;background:linear-gradient(135deg,#FF8A65,#FF5722);bottom:15%;left:15%;animation-delay:3s}.shape-4{width:150px;height:150px;background:linear-gradient(135deg,#64B5F6,#2196F3);bottom:20%;right:8%;animation-delay:2s;border-radius:30%}.shape-5{width:70px;height:70px;background:linear-gradient(135deg,#BA68C8,#9C27B0);top:50%;right:30%;animation-delay:4s}@keyframes float{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-30px) rotate(180deg)}}.hero-content{text-align:center;position:relative;z-index:2;max-width:900px}.hero-full-logo{max-width:480px;width:90%;height:auto;margin:0 auto 32px;display:block;filter:drop-shadow(0 10px 30px rgba(76,175,80,0.25));animation:logoFadeIn 1s ease-out}@keyframes logoFadeIn{from{opacity:0;transform:translateY(-20px) scale(0.95)}to{opacity:1;transform:translateY(0) scale(1)}}.hero-badge{display:inline-block;background:white;color:var(--primary-dark);padding:10px 24px;border-radius:50px;font-size:14px;font-weight:700;margin-bottom:28px;box-shadow:var(--shadow-md);border:2px dashed var(--primary);animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}.hero-title{font-size:clamp(40px,8vw,80px);font-weight:900;line-height:1.15;margin-bottom:28px;color:var(--text-dark)}.hero-title span{display:inline-block;margin:0 4px;position:relative;animation:titleSlide 0.8s ease-out backwards}.line-1{color:var(--primary-dark);animation-delay:0.1s}.line-2{background:linear-gradient(135deg,var(--accent-orange),var(--accent-red));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation-delay:0.3s}.line-3{color:var(--accent-blue);animation-delay:0.5s}@keyframes titleSlide{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.hero-desc{font-size:17px;color:var(--text-gray);margin-bottom:40px;font-family:'Fredoka','Noto Sans TC',sans-serif;line-height:1.6}.hero-cta{display:flex;gap:16px;justify-content:center;margin-bottom:60px;flex-wrap:wrap}.hero-stats{display:flex;justify-content:center;gap:40px;flex-wrap:wrap}.stat-item{display:flex;flex-direction:column;align-items:center;padding:16px 32px;background:rgba(255,255,255,0.7);border-radius:var(--radius-md);backdrop-filter:blur(10px);border:2px solid white}.stat-number{font-size:36px;font-weight:900;color:var(--primary-dark);line-height:1}.stat-label{font-size:14px;color:var(--text-gray);margin-top:4px}.scroll-indicator{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);width:26px;height:42px;border:2px solid var(--primary-dark);border-radius:20px;display:flex;justify-content:center}.scroll-indicator span{width:4px;height:8px;background:var(--primary-dark);border-radius:2px;margin-top:8px;animation:scrollDot 1.5s ease-in-out infinite}@keyframes scrollDot{0%{transform:translateY(0);opacity:1}100%{transform:translateY(16px);opacity:0}}.section-header{text-align:center;margin-bottom:60px}.section-tag{display:inline-flex;align-items:center;gap:7px;background:rgba(76,175,80,0.1);color:var(--primary-dark);padding:7px 18px;border-radius:50px;font-size:12px;font-weight:700;letter-spacing:1.8px;margin-bottom:18px;font-family:'Fredoka',sans-serif;border:1px solid rgba(76,175,80,0.2)}.section-tag::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-orange)}.section-tag.light{background:rgba(255,255,255,0.18);color:white;border-color:rgba(255,255,255,0.3)}.section-title{font-size:clamp(30px,4.6vw,44px);font-weight:900;color:var(--text-dark);margin-bottom:18px;letter-spacing:0.5px}.section-title.light{color:white}.section-title::after{content:"";display:block;width:56px;height:4px;margin:16px auto 0;border-radius:4px;background:linear-gradient(90deg,var(--primary),var(--accent-orange))}.section-title.light::after{background:linear-gradient(90deg,#fff,rgba(255,255,255,0.4))}.section-desc{font-size:16.5px;color:var(--text-gray);line-height:1.8}.section-desc.light{color:rgba(255,255,255,0.9)}.about{padding:100px 0;background:var(--white)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.about-text h3{font-size:32px;font-weight:900;color:var(--primary-dark);margin-bottom:24px}.about-text p{color:var(--text-gray);margin-bottom:16px;font-size:16px;line-height:1.9}.features-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px}.service-areas{margin-top:28px;padding:20px;background:linear-gradient(135deg,#FFF8E1,#FFFDE7);border-radius:var(--radius-md);border:2px dashed #FFC107}.service-areas-title{font-size:16px;font-weight:900;color:var(--text-dark);margin-bottom:12px}.service-areas-tags{display:flex;flex-wrap:wrap;gap:8px}.area-tag{display:inline-block;background:white;color:var(--text-dark);padding:6px 14px;border-radius:50px;font-size:13px;font-weight:700;border:1.5px solid #E0E0E0;transition:all 0.3s ease}.area-tag:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.1)}.area-primary{background:linear-gradient(135deg,#FF9800,#E65100);color:white;border-color:#E65100;box-shadow:0 4px 12px rgba(255,152,0,0.3)}.feature-item{display:flex;gap:14px;padding:16px;background:var(--bg-light);border-radius:var(--radius-md);transition:all 0.3s ease;border:2px solid transparent}.feature-item:hover{background:white;border-color:var(--primary-light);transform:translateY(-4px);box-shadow:var(--shadow-md)}.feature-icon{font-size:32px;flex-shrink:0}.feature-item h4{font-size:16px;font-weight:700;color:var(--text-dark);margin-bottom:4px}.feature-item p{font-size:13px;color:var(--text-gray);margin:0}.about-visual{display:flex;align-items:center;justify-content:center;min-height:400px;position:relative}.logo-showcase{position:relative;width:320px;height:320px;display:flex;align-items:center;justify-content:center}.logo-showcase-img{width:100%;height:100%;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 20px 40px rgba(76,175,80,0.35));animation:logoFloat 4s ease-in-out infinite}@keyframes logoFloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(-3deg)}}.logo-glow{position:absolute;inset:10%;background:radial-gradient(circle,rgba(76,175,80,0.4) 0%,transparent 70%);border-radius:50%;z-index:1;animation:glowPulse 3s ease-in-out infinite}@keyframes glowPulse{0%,100%{transform:scale(1);opacity:0.6}50%{transform:scale(1.2);opacity:1}}.about-visual::before{content:'';position:absolute;width:90%;height:90%;background-image:radial-gradient(circle at 10% 20%,var(--accent-yellow) 0,transparent 8%),radial-gradient(circle at 90% 80%,var(--accent-orange) 0,transparent 8%),radial-gradient(circle at 80% 15%,var(--accent-blue) 0,transparent 6%),radial-gradient(circle at 20% 85%,var(--accent-pink) 0,transparent 7%);opacity:0.4;z-index:0}.courses{padding:100px 0;background:linear-gradient(180deg,#FFF9E6 0%,#FFFFFF 100%);position:relative}.courses-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.course-card{background:white;padding:40px 28px;border-radius:var(--radius-lg);text-align:center;position:relative;transition:all 0.4s ease;box-shadow:0 12px 30px rgba(0,0,0,0.1);border-top:6px solid transparent}.course-card:hover{transform:translateY(-12px);box-shadow:0 20px 40px rgba(0,0,0,0.15)}.course-1{border-top-color:var(--primary)}.course-2{border-top-color:var(--accent-orange)}.course-3{border-top-color:var(--accent-pink)}.course-4{border-top-color:#E91E63}.course-icon-text{font-size:36px!important;font-weight:900;letter-spacing:4px;background:linear-gradient(135deg,#E91E63,#AD1457);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}.course-price-special{flex-direction:column;gap:4px;background:linear-gradient(135deg,#FFF3E0,#FFE0B2);border:2px dashed #FF9800}.price-original-small{font-size:14px;color:#999;text-decoration:line-through}.price-discount{color:#E53935!important;font-size:28px!important;text-shadow:0 2px 8px rgba(229,57,53,0.2)}.course-price-special .price-label{font-size:12px;color:var(--text-gray);margin-top:-4px}.course-link{display:block;margin-top:12px;padding:10px;text-align:center;background:linear-gradient(135deg,#E91E63,#AD1457);color:white;border-radius:8px;font-weight:700;font-size:13px;transition:all 0.3s ease}.course-link:hover{transform:translateX(4px);box-shadow:0 6px 16px rgba(233,30,99,0.3)}.course-badge{position:absolute;top:-12px;right:24px;background:var(--accent-red);color:white;padding:6px 16px;border-radius:50px;font-size:12px;font-weight:700;box-shadow:var(--shadow-md)}.course-icon{font-size:64px;margin-bottom:16px;display:inline-block;animation:iconBob 3s ease-in-out infinite}@keyframes iconBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}.course-card h3{font-size:24px;font-weight:900;color:var(--text-dark);margin-bottom:8px}.course-target{color:var(--primary);font-size:14px;font-weight:700;margin-bottom:20px;padding-bottom:16px;border-bottom:2px dashed var(--primary-light)}.course-list{text-align:left;margin-bottom:24px}.course-list li{padding:8px 0;color:var(--text-gray);font-size:14px;position:relative;padding-left:24px}.course-list li::before{content:'✓';position:absolute;left:0;color:var(--primary);font-weight:900;font-size:16px}.course-price{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;background:var(--bg-light);border-radius:var(--radius-md);margin-bottom:12px}.price-label{font-size:12px;color:var(--text-gray)}.price-amount{font-size:24px;font-weight:900;color:var(--primary-dark)}.course-promo{margin-top:8px;background:var(--accent-yellow);color:var(--text-dark);padding:8px;border-radius:var(--radius-sm);font-size:13px;font-weight:700}.seo-keyword-section{padding:80px 0;background:linear-gradient(135deg,#FFFDE7 0%,#F1F8E9 100%)}.seo-content-block{max-width:1100px;margin:0 auto}.seo-h2{text-align:center;font-size:clamp(26px,4vw,38px);font-weight:900;color:var(--text-dark);margin-bottom:48px;position:relative}.seo-h2::after{content:'';display:block;width:80px;height:4px;background:linear-gradient(135deg,var(--primary),var(--accent-orange));margin:16px auto 0;border-radius:4px}.seo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:40px}.seo-card{background:white;padding:28px 24px;border-radius:var(--radius-lg);box-shadow:0 6px 20px rgba(0,0,0,0.06);transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);border-left:5px solid var(--primary)}.seo-card:nth-child(2){border-left-color:var(--accent-orange)}.seo-card:nth-child(3){border-left-color:var(--accent-blue)}.seo-card:nth-child(4){border-left-color:var(--accent-pink)}.seo-card:nth-child(5){border-left-color:var(--accent-purple)}.seo-card:nth-child(6){border-left-color:#E53935}.seo-card:hover{transform:translateY(-6px);box-shadow:0 14px 32px rgba(0,0,0,0.12)}.seo-emoji{font-size:40px;margin-bottom:12px}.seo-card h3{font-size:18px;font-weight:900;color:var(--text-dark);margin-bottom:10px}.seo-card p{font-size:14px;color:var(--text-gray);line-height:1.8;margin:0}.seo-card strong{color:var(--primary-dark);font-weight:700}.seo-cta-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;background:white;padding:24px 32px;border-radius:100px;box-shadow:0 10px 30px rgba(0,0,0,0.08);flex-wrap:wrap;border:3px dashed var(--primary)}.seo-cta-bar p{font-size:16px;font-weight:700;color:var(--text-dark);margin:0}.seo-cta-bar strong{color:var(--accent-red);font-family:'Fredoka',sans-serif;font-size:22px}@media (max-width:968px){.seo-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:580px){.seo-grid{grid-template-columns:1fr}.seo-cta-bar{flex-direction:column;text-align:center;border-radius:24px}}.phonics{padding:100px 0 100px;background:linear-gradient(135deg,#FFF8E1 0%,#FFECB3 50%,#FFE0B2 100%);position:relative;overflow:hidden}.phonics-bg{position:absolute;inset:0;pointer-events:none;z-index:0}.phonics-deco{position:absolute;font-size:48px;opacity:0.4;animation:phonics-float 5s ease-in-out infinite}.p-d1{top:8%;left:6%;animation-delay:0s}.p-d2{top:12%;right:8%;animation-delay:1s}.p-d3{top:50%;left:3%;animation-delay:2s;font-size:36px}.p-d4{top:55%;right:5%;animation-delay:0.5s}.p-d5{bottom:8%;left:10%;animation-delay:1.5s}.p-d6{bottom:12%;right:12%;animation-delay:2.5s;font-size:42px}@keyframes phonics-float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(15deg)}}.phonics-banner{text-align:center;margin-bottom:56px;position:relative;z-index:1}.banner-tag{display:inline-block;background:linear-gradient(135deg,#E91E63,#AD1457);color:white;padding:10px 28px;border-radius:50px;font-size:16px;font-weight:700;margin-bottom:24px;box-shadow:0 8px 20px rgba(233,30,99,0.4);animation:bounce 2s ease-in-out infinite}.banner-title{font-size:clamp(40px,7vw,80px);font-weight:900;line-height:1.1;margin-bottom:20px}.banner-line-1{display:inline-block;background:linear-gradient(135deg,#FF6F00,#E65100);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-right:16px;text-shadow:4px 4px 0 rgba(255,152,0,0.2)}.banner-line-2{display:inline-block;background:linear-gradient(135deg,#1976D2,#0D47A1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.banner-slogan{font-size:22px;font-weight:700;color:#E91E63;margin-bottom:8px;letter-spacing:2px}.banner-sub-line{font-size:15px;color:var(--primary-dark);font-weight:700;margin-bottom:24px;background:rgba(255,255,255,0.6);display:inline-block;padding:6px 18px;border-radius:50px;letter-spacing:1px}.banner-deadline{display:inline-flex;align-items:center;gap:10px;background:white;color:var(--text-dark);padding:14px 28px;border-radius:50px;font-size:16px;box-shadow:0 8px 20px rgba(0,0,0,0.1);border:3px dashed #E91E63;font-weight:700}.banner-deadline strong{color:#E53935;font-size:20px;margin:0 4px}.deadline-icon{font-size:22px;animation:bell-shake 2s ease-in-out infinite}@keyframes bell-shake{0%,100%{transform:rotate(0)}10%,30%,50%{transform:rotate(-15deg)}20%,40%,60%{transform:rotate(15deg)}70%{transform:rotate(0)}}.phonics-info{display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:24px;margin-bottom:80px;position:relative;z-index:1}.period-card{background:white;padding:32px 24px;border-radius:var(--radius-lg);text-align:center;box-shadow:0 12px 30px rgba(0,0,0,0.1);border-top:6px solid var(--primary);transition:transform 0.3s ease}.period-card:hover{transform:translateY(-8px) scale(1.02)}.period-label{display:inline-block;color:white;padding:8px 20px;border-radius:50px;font-weight:700;font-size:14px;margin-bottom:16px}.period-1{background:linear-gradient(135deg,#4CAF50,#2E7D32)}.period-2{background:linear-gradient(135deg,#E53935,#C62828)}.period-card:nth-child(3){border-top-color:#E53935}.period-date{font-size:36px;font-weight:900;color:var(--text-dark);margin:12px 0;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.date-icon{font-size:44px;display:inline-block;animation:iconBob 3s ease-in-out infinite}.period-note{font-size:16px;color:var(--text-gray);margin-top:12px;font-weight:500}.price-card{background:white;color:var(--text-dark);padding:32px 28px;border-radius:var(--radius-lg);box-shadow:0 12px 30px rgba(0,0,0,0.1);text-align:center;position:relative;overflow:hidden;border-top:6px solid #FF8A00;transition:transform 0.3s ease}.price-card:hover{transform:translateY(-8px) scale(1.02)}.price-card::before{content:'✨';position:absolute;top:12px;right:16px;font-size:28px;opacity:0.5;animation:phonics-float 3s ease-in-out infinite}.price-card::after{content:'🎁';position:absolute;top:12px;left:16px;font-size:24px;animation:phonics-float 4s ease-in-out infinite}.price-header{display:inline-block;background:linear-gradient(135deg,#FF8A00,#E53935);color:white;padding:8px 22px;border-radius:50px;font-size:14px;font-weight:700;margin-bottom:20px;letter-spacing:2px;box-shadow:0 6px 16px rgba(229,57,53,0.3)}.price-row{display:flex;align-items:baseline;justify-content:center;gap:8px;margin-bottom:8px}.price-label-line{font-size:14px;color:var(--text-gray);margin-right:6px}.price-original{font-size:26px;font-weight:700;text-decoration:line-through;color:#999}.price-special-row{margin-bottom:16px}.price-special{font-size:52px;font-weight:900;color:#E53935;text-shadow:0 4px 12px rgba(229,57,53,0.2)}.price-unit{font-size:14px;color:var(--text-gray)}.price-cp{margin-top:16px;padding:12px 14px;background:linear-gradient(135deg,#FFF8E1,#FFECB3);border-radius:10px;font-size:13px;line-height:1.8;color:var(--text-dark);border:1px dashed #FFA726}.price-cp strong{color:#E53935;font-size:15px}.phonics-features-header{text-align:center;margin-bottom:48px;position:relative;z-index:1}.phonics-features-header h3{font-size:clamp(24px,4vw,36px);font-weight:900;color:var(--text-dark);margin-bottom:12px}.phonics-features-header p{font-size:16px;color:var(--text-gray)}.phonics-features{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:64px;position:relative;z-index:1}.feature-step{background:white;padding:28px 20px;border-radius:var(--radius-lg);text-align:center;position:relative;box-shadow:0 8px 20px rgba(0,0,0,0.08);transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);border:3px solid transparent}.feature-step:hover{transform:translateY(-12px) scale(1.04);box-shadow:0 20px 40px rgba(0,0,0,0.15)}.step-number{position:absolute;top:-14px;left:50%;transform:translateX(-50%);color:white;padding:6px 16px;border-radius:50px;font-size:12px;font-weight:900;letter-spacing:2px;font-family:'Fredoka',sans-serif;box-shadow:0 4px 12px rgba(0,0,0,0.15)}.step-1{border-color:#E91E63}.step-1 .step-number{background:linear-gradient(135deg,#E91E63,#AD1457)}.step-2{border-color:#29B6F6}.step-2 .step-number{background:linear-gradient(135deg,#29B6F6,#0277BD)}.step-3{border-color:#66BB6A}.step-3 .step-number{background:linear-gradient(135deg,#66BB6A,#2E7D32)}.step-4{border-color:#FFA726}.step-4 .step-number{background:linear-gradient(135deg,#FFA726,#E65100)}.step-5{border-color:#AB47BC}.step-5 .step-number{background:linear-gradient(135deg,#AB47BC,#6A1B9A)}.step-6{border-color:#FF7043}.step-6 .step-number{background:linear-gradient(135deg,#FF7043,#BF360C)}.step-7{border-color:#42A5F5}.step-7 .step-number{background:linear-gradient(135deg,#42A5F5,#1565C0)}.step-8{border-color:#FFCA28}.step-8 .step-number{background:linear-gradient(135deg,#FFCA28,#F57F17);color:#5D4037}.step-icon{font-size:56px;margin:16px 0 12px;display:inline-block;animation:iconBob 3s ease-in-out infinite}.step-icon-text{font-size:38px;font-weight:900;letter-spacing:4px;background:linear-gradient(135deg,#E91E63,#AD1457);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:2px 2px 0 rgba(233,30,99,0.15)}.feature-step h4{font-size:20px;font-weight:900;color:var(--text-dark);margin-bottom:8px}.feature-step p{font-size:13px;color:var(--text-gray);line-height:1.7}.phonics-poster-area{background:white;border-radius:var(--radius-xl);padding:40px 32px;margin-bottom:56px;box-shadow:0 16px 40px rgba(0,0,0,0.1);position:relative;z-index:1;text-align:center;overflow:hidden}.camp-full-badge{display:inline-block;margin:14px auto 4px;padding:10px 26px;background:linear-gradient(135deg,#E53935,#C62828);color:#fff;font-size:16px;font-weight:800;border-radius:50px;letter-spacing:0.5px;box-shadow:0 6px 18px rgba(229,57,53,0.32)}@media (max-width:480px){.camp-full-badge{font-size:14px;padding:9px 18px}}.phonics-poster-area::before,.phonics-poster-area::after{content:'✨';position:absolute;font-size:32px;opacity:0.4;animation:phonics-float 4s ease-in-out infinite}.phonics-poster-area::before{top:16px;left:24px;content:'🎉'}.phonics-poster-area::after{top:16px;right:24px;content:'📚'}.poster-title{font-size:clamp(22px,3vw,28px);font-weight:900;color:var(--text-dark);margin-bottom:8px}.poster-desc{font-size:15px;color:var(--text-gray);margin-bottom:32px}.poster-buttons{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:800px;margin:0 auto}.poster-btn{display:flex;align-items:center;gap:16px;padding:22px 24px;background:white;border:3px solid #FFE0B2;border-radius:var(--radius-lg);cursor:pointer;transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);text-align:left;font-family:inherit;position:relative;overflow:hidden}.poster-btn::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(255,152,0,0.05) 50%,transparent 100%);opacity:0;transition:opacity 0.3s ease}.poster-btn-schedule{border-color:#FFB74D;background:linear-gradient(135deg,#FFF8E1,#FFFFFF)}.poster-btn-poster{border-color:#F06292;background:linear-gradient(135deg,#FCE4EC,#FFFFFF)}.poster-btn:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 16px 40px rgba(0,0,0,0.15)}.poster-btn:hover::before{opacity:1}.poster-btn-schedule:hover{border-color:#FF9800}.poster-btn-poster:hover{border-color:#E91E63}.pb-icon{font-size:48px;flex-shrink:0;width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:white;box-shadow:0 6px 16px rgba(0,0,0,0.1)}.poster-btn-schedule .pb-icon{background:linear-gradient(135deg,#FFE0B2,#FFCC80)}.poster-btn-poster .pb-icon{background:linear-gradient(135deg,#FCE4EC,#F8BBD0)}.pb-text{flex:1;display:flex;flex-direction:column;gap:4px}.pb-label{font-size:18px;font-weight:900;color:var(--text-dark)}.pb-sub{font-size:13px;color:var(--text-gray)}.pb-arrow{font-size:28px;font-weight:900;color:#BF360C;transition:transform 0.3s ease}.poster-btn-poster .pb-arrow{color:#AD1457}.poster-btn:hover .pb-arrow{transform:translateX(8px)}.summer-poster-area{margin-bottom:32px;background:linear-gradient(135deg,#FFF8E1,#FFE0B2)}.summer-poster-area::before{content:'☀️'}.summer-poster-area::after{content:'🏖️'}.summer-week-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:900px;margin:0 auto}.week-btn{display:flex;align-items:center;gap:12px;padding:16px 14px;background:white;border:3px solid;border-radius:var(--radius-md);cursor:pointer;transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);text-align:left;font-family:inherit;position:relative;overflow:hidden}.week-btn:hover{transform:translateY(-6px) scale(1.04);box-shadow:0 12px 28px rgba(0,0,0,0.15)}.wb-num{width:44px;height:44px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:900;color:white;font-family:'Fredoka',sans-serif;box-shadow:0 4px 12px rgba(0,0,0,0.15)}.wb-info{flex:1;display:flex;flex-direction:column;gap:2px}.wb-week{font-size:14px;font-weight:900;color:var(--text-dark)}.wb-date{font-size:12px;color:var(--text-gray);font-family:'Fredoka',sans-serif;font-weight:500}.week-btn-1{border-color:#FF6B9D}.week-btn-1 .wb-num{background:linear-gradient(135deg,#FF6B9D,#C2185B)}.week-btn-2{border-color:#FFA726}.week-btn-2 .wb-num{background:linear-gradient(135deg,#FFA726,#E65100)}.week-btn-3{border-color:#FFD54F}.week-btn-3 .wb-num{background:linear-gradient(135deg,#FFD54F,#F57F17);color:#5D4037}.week-btn-4{border-color:#66BB6A}.week-btn-4 .wb-num{background:linear-gradient(135deg,#66BB6A,#2E7D32)}.week-btn-5{border-color:#29B6F6}.week-btn-5 .wb-num{background:linear-gradient(135deg,#29B6F6,#0277BD)}.week-btn-6{border-color:#5C6BC0}.week-btn-6 .wb-num{background:linear-gradient(135deg,#5C6BC0,#283593)}.week-btn-7{border-color:#AB47BC}.week-btn-7 .wb-num{background:linear-gradient(135deg,#AB47BC,#6A1B9A)}.week-btn-8{border-color:#EC407A}.week-btn-8 .wb-num{background:linear-gradient(135deg,#EC407A,#AD1457)}@media (max-width:768px){.summer-week-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.summer-week-grid{grid-template-columns:1fr}}.lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:24px}.lightbox.active{display:flex;animation:lightbox-fade 0.3s ease-out}@keyframes lightbox-fade{from{opacity:0}to{opacity:1}}.lightbox-backdrop{position:absolute;inset:0;background:rgba(0,0,0,0.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.lightbox-content{position:relative;max-width:95vw;max-height:92vh;display:flex;flex-direction:column;align-items:center;gap:16px;z-index:1;animation:lightbox-pop 0.4s cubic-bezier(0.34,1.56,0.64,1)}@keyframes lightbox-pop{from{transform:scale(0.85);opacity:0}to{transform:scale(1);opacity:1}}.lightbox-close{position:absolute;top:-56px;right:0;width:44px;height:44px;border-radius:50%;background:white;border:none;font-size:28px;font-weight:700;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,0.3);transition:transform 0.3s ease;display:flex;align-items:center;justify-content:center;line-height:1}.lightbox-close:hover{transform:rotate(90deg) scale(1.1)}.lightbox-title{color:white;font-size:18px;font-weight:700;text-align:center;padding:8px 24px;background:rgba(255,255,255,0.1);border-radius:50px;backdrop-filter:blur(8px)}.lightbox-img{max-width:100%;max-height:78vh;object-fit:contain;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,0.5)}@media (max-width:768px){.poster-buttons{grid-template-columns:1fr}.lightbox-close{top:-50px;width:40px;height:40px;font-size:24px}}.phonics-schedule{background:white;border-radius:var(--radius-xl);padding:40px 32px;margin-bottom:56px;box-shadow:0 16px 40px rgba(0,0,0,0.1);position:relative;z-index:1;overflow:hidden}.phonics-schedule::before,.phonics-schedule::after{content:'⭐';position:absolute;font-size:28px;opacity:0.4}.phonics-schedule::before{top:16px;left:24px;content:'🐸'}.phonics-schedule::after{top:16px;right:24px;content:'🦄'}.schedule-header-banner{text-align:center;margin-bottom:24px}.schedule-header-banner h3{font-size:clamp(20px,3vw,28px);font-weight:900;color:var(--text-dark);margin-bottom:14px}.class-size-tag{display:inline-block;background:linear-gradient(135deg,#FF6F00,#E65100);color:white;padding:10px 28px;border-radius:50px;font-weight:700;font-size:16px;letter-spacing:1px;box-shadow:0 6px 16px rgba(255,111,0,0.4)}.schedule-table-wrap{overflow-x:auto;border-radius:var(--radius-md);margin-bottom:24px}.schedule-table{width:100%;min-width:720px;border-collapse:separate;border-spacing:4px;background:#FFF8E1;border-radius:var(--radius-md);padding:6px}.schedule-table thead th{background:linear-gradient(135deg,#5D4037,#3E2723);color:white;padding:14px 8px;font-size:15px;font-weight:700;border-radius:6px;text-align:center}.schedule-table .time-col{background:linear-gradient(135deg,#FF7043,#BF360C);width:130px}.schedule-table tbody tr{background:transparent}.schedule-table tbody td{background:white;padding:14px 8px;text-align:center;font-size:14px;border-radius:6px;vertical-align:middle;transition:transform 0.2s ease}.schedule-table tbody td:hover{transform:scale(1.03);z-index:1;position:relative;box-shadow:0 4px 12px rgba(0,0,0,0.1)}.time-cell{background:linear-gradient(180deg,#FFE0B2,#FFCC80)!important;display:flex;flex-direction:column;gap:2px;font-weight:700}.time-label{font-size:15px;font-weight:900;color:#BF360C}.time-sub{font-size:12px;color:#5D4037;font-weight:500}.row-break .merge-cell{background:linear-gradient(135deg,#FFF3E0,#FFE0B2)!important;font-weight:700;color:#BF360C;font-size:15px;letter-spacing:1px;padding:14px}.merge-lunch{background:linear-gradient(135deg,#E1F5FE,#B3E5FC)!important;color:#01579B!important}.merge-home{background:linear-gradient(135deg,#FCE4EC,#F8BBD0)!important;color:#AD1457!important}.subj{display:inline-block;padding:8px 12px;border-radius:8px;font-weight:700;font-size:13px;line-height:1.5;width:100%;box-sizing:border-box}.subj-cn{background:#FFEBEE;color:#C62828}.subj-eng{background:#E3F2FD;color:#1565C0}.subj-math{background:#F3E5F5;color:#6A1B9A}.subj-art{background:#FFF3E0;color:#E65100}.subj-game{background:#E8F5E9;color:#2E7D32}.subj-read{background:#FFF8E1;color:#F57F17}.subj-write{background:#E0F7FA;color:#006064}.subj-sport{background:#FCE4EC;color:#AD1457}.schedule-legend{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding-top:16px;border-top:2px dashed #E0E0E0}.legend-item{padding:6px 14px;border-radius:50px;font-size:12px;font-weight:700}.legend-cn{background:#FFEBEE;color:#C62828}.legend-eng{background:#E3F2FD;color:#1565C0}.legend-math{background:#F3E5F5;color:#6A1B9A}.legend-art{background:#FFF3E0;color:#E65100}.legend-game{background:#E8F5E9;color:#2E7D32}.legend-read{background:#FFF8E1;color:#F57F17}.legend-write{background:#E0F7FA;color:#006064}.legend-sport{background:#FCE4EC;color:#AD1457}.phonics-cta{text-align:center;background:white;padding:40px 32px;border-radius:var(--radius-xl);box-shadow:0 16px 40px rgba(0,0,0,0.1);border:4px dashed var(--primary-light);position:relative;z-index:1}.cta-msg{font-size:18px;font-weight:700;color:var(--text-dark);margin-bottom:24px}.cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.camps{padding:100px 0;background:linear-gradient(135deg,#2E7D32 0%,#4CAF50 100%);position:relative;overflow:hidden}.camps::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,0.1) 0,transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,255,255,0.1) 0,transparent 50%)}.camps-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;position:relative;z-index:1}.camps-merged{position:relative;z-index:1}.camps-merged-card{background:white;border-radius:var(--radius-xl);padding:40px;box-shadow:0 20px 50px rgba(0,0,0,0.15);position:relative;overflow:hidden}.camps-merged-card::before{content:'☀️';position:absolute;top:16px;left:24px;font-size:56px;opacity:0.15;animation:phonics-float 4s ease-in-out infinite}.camps-merged-card::after{content:'❄️';position:absolute;top:16px;right:24px;font-size:56px;opacity:0.15;animation:phonics-float 4s ease-in-out infinite reverse}.camp-merged-header{text-align:center;margin-bottom:32px;padding-bottom:24px;border-bottom:3px dashed var(--primary-light)}.camp-merged-header h3{font-size:clamp(28px,4vw,38px);font-weight:900;color:var(--text-dark);margin-bottom:16px}.camp-seasons-tags{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.camp-season-summer{background:linear-gradient(135deg,#FF9800,#F57C00);color:white;padding:8px 20px;border-radius:50px;font-weight:700;font-size:14px;letter-spacing:1px;box-shadow:0 6px 16px rgba(245,124,0,0.3)}.camp-season-winter{background:linear-gradient(135deg,#2196F3,#0D47A1);color:white;padding:8px 20px;border-radius:50px;font-weight:700;font-size:14px;letter-spacing:1px;box-shadow:0 6px 16px rgba(13,71,161,0.3)}.camp-section-title{font-size:20px;font-weight:900;color:var(--primary-dark);margin-bottom:20px;text-align:center}.camp-activities-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:36px}.cact{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 8px;background:linear-gradient(135deg,#FFF8E1,#FFFDE7);border-radius:var(--radius-md);border:2px solid #FFE082;transition:all 0.3s cubic-bezier(0.34,1.56,0.64,1);text-align:center}.cact:hover{transform:translateY(-6px) scale(1.05);box-shadow:0 10px 24px rgba(0,0,0,0.1);border-color:var(--accent-orange)}.cact-icon{font-size:32px;display:inline-block;animation:iconBob 3s ease-in-out infinite}.cact span:last-child{font-size:13px;font-weight:700;color:var(--text-dark)}.camp-periods{display:grid;grid-template-columns:1fr 1fr;gap:20px}.camp-period-card{padding:28px 24px;border-radius:var(--radius-lg);text-align:center;position:relative;transition:transform 0.3s ease;border-top:6px solid}.camp-period-card:hover{transform:translateY(-4px)}.camp-period-summer{background:linear-gradient(135deg,#FFF3E0,#FFE0B2);border-top-color:#FF9800}.camp-period-winter{background:linear-gradient(135deg,#E3F2FD,#BBDEFB);border-top-color:#2196F3}.period-icon{font-size:48px;margin-bottom:8px;display:inline-block;animation:iconBob 3s ease-in-out infinite}.camp-period-card h4{font-size:24px;font-weight:900;color:var(--text-dark);margin-bottom:6px}.period-date-text{font-size:16px;font-weight:700;color:var(--text-dark);margin-bottom:16px;padding:8px 16px;background:white;border-radius:50px;display:inline-block}.period-info-list{list-style:none;padding:0;margin:0}.period-info-list li{font-size:14px;color:var(--text-gray);margin-bottom:6px;padding:6px 0}.period-info-list strong{color:var(--text-dark);margin-right:4px}.camp-card{background:white;border-radius:var(--radius-lg);padding:36px;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.camp-card.summer::before{content:'☀️';position:absolute;top:16px;right:16px;font-size:48px;opacity:0.2}.camp-card.winter::before{content:'❄️';position:absolute;top:16px;right:16px;font-size:48px;opacity:0.2}.camp-header{margin-bottom:24px;padding-bottom:20px;border-bottom:3px dashed var(--primary-light)}.camp-header h3{font-size:28px;font-weight:900;color:var(--text-dark);margin-bottom:8px}.camp-season{background:var(--primary);color:white;padding:4px 14px;border-radius:50px;font-size:12px;font-weight:700;font-family:'Fredoka',sans-serif;letter-spacing:1px}.camp-card.winter .camp-season{background:var(--accent-blue)}.camp-card.summer .camp-season{background:var(--accent-orange)}.camp-schedule{margin-bottom:24px}.schedule-row{display:flex;align-items:center;gap:16px;padding:12px 16px;margin-bottom:8px;background:var(--bg-light);border-radius:var(--radius-sm);transition:all 0.3s ease}.schedule-row:hover{background:var(--primary);color:white;transform:translateX(8px)}.schedule-row .day{font-family:'Fredoka',sans-serif;font-weight:700;font-size:14px;color:var(--primary-dark);min-width:50px}.schedule-row:hover .day{color:white}.schedule-row .activity{font-size:16px;font-weight:500}.camp-time{background:var(--bg-cream);padding:16px;border-radius:var(--radius-md);border-left:4px solid var(--accent-orange);font-size:14px;color:var(--text-gray);line-height:1.8}.gallery{padding:100px 0;background:radial-gradient(circle at 10% 20%,#FFF3E0 0%,transparent 35%),radial-gradient(circle at 90% 80%,#E8F5E9 0%,transparent 35%),radial-gradient(circle at 50% 50%,#FFFDE7 0%,#FFFFFF 100%);position:relative;overflow:hidden}.gallery-bg-deco{position:absolute;inset:0;pointer-events:none;z-index:0}.gallery-bg-deco span{position:absolute;font-weight:900;opacity:0.15;animation:deco-drift 8s ease-in-out infinite}.deco-star{font-size:80px;color:var(--accent-yellow)}.deco-heart{font-size:70px;color:var(--accent-pink)}.deco-circle{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,var(--primary-light),var(--accent-blue));opacity:0.1}.deco-1{top:8%;left:5%;animation-delay:0s}.deco-2{top:15%;right:8%;animation-delay:1s}.deco-3{bottom:15%;left:10%;animation-delay:2s}.deco-4{top:60%;right:12%;animation-delay:3s;font-size:60px;color:var(--accent-orange)}.deco-5{bottom:8%;right:20%;animation-delay:1.5s;width:70px;height:70px}.deco-6{top:45%;left:8%;animation-delay:2.5s}@keyframes deco-drift{0%,100%{transform:translate(0,0) rotate(0)}25%{transform:translate(15px,-20px) rotate(8deg)}50%{transform:translate(-10px,-10px) rotate(-5deg)}75%{transform:translate(20px,10px) rotate(3deg)}}.title-emoji{display:inline-block;animation:emoji-wobble 2s ease-in-out infinite}@keyframes emoji-wobble{0%,100%{transform:rotate(0)}25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}}.polaroid-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 50px;max-width:1100px;margin:0 auto;position:relative;z-index:1;padding:40px 20px}.polaroid{background:white;padding:18px 18px 24px;box-shadow:0 4px 12px rgba(0,0,0,0.1),0 12px 30px rgba(0,0,0,0.08);border-radius:4px;position:relative;transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);cursor:pointer}.polaroid-1{transform:rotate(-4deg)}.polaroid-2{transform:rotate(3deg) translateY(-15px)}.polaroid-3{transform:rotate(-2deg) translateY(20px)}.polaroid-4{transform:rotate(4deg)}.polaroid-5{transform:rotate(-3deg) translateY(-10px)}.polaroid-6{transform:rotate(2deg) translateY(15px)}.polaroid:hover{transform:rotate(0) translateY(-15px) scale(1.05);z-index:5;box-shadow:0 12px 25px rgba(0,0,0,0.15),0 25px 50px rgba(0,0,0,0.12)}.polaroid .photo{width:100%;aspect-ratio:1 / 1;background-size:cover;background-position:center;background-color:#f0f0f0;border-radius:2px;margin-bottom:14px;transition:filter 0.4s ease}.polaroid:hover .photo{filter:saturate(1.2) contrast(1.05)}.polaroid .caption{font-family:'Noto Sans TC',cursive;font-size:17px;text-align:center;color:var(--text-dark);font-weight:700;padding:4px;margin:0}.tape{position:absolute;top:-12px;width:70px;height:24px;background:rgba(255,235,59,0.65);box-shadow:0 2px 6px rgba(0,0,0,0.1);z-index:2}.tape-1{left:30%;transform:rotate(-8deg);background:rgba(255,213,79,0.7)}.tape-2{right:25%;transform:rotate(10deg);background:rgba(129,199,132,0.65)}.tape::before,.tape::after{content:'';position:absolute;top:0;bottom:0;width:6px;background-image:linear-gradient(45deg,transparent 33%,rgba(255,255,255,0.5) 50%,transparent 66%)}.tape::before{left:0}.tape::after{right:0}.day-life{padding:100px 0;background:linear-gradient(135deg,#FFB74D 0%,#FF8A65 50%,#F06292 100%);position:relative;overflow:hidden}.day-life::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle at 20% 20%,rgba(255,255,255,0.15) 0,transparent 25%),radial-gradient(circle at 80% 60%,rgba(255,255,255,0.15) 0,transparent 25%),radial-gradient(circle at 50% 90%,rgba(255,255,255,0.1) 0,transparent 30%)}.day-life::after{content:'⭐ 🌈 🎈 🎨 ✨ 🌟';position:absolute;top:8%;left:0;right:0;text-align:center;font-size:28px;letter-spacing:100px;opacity:0.25;pointer-events:none;white-space:nowrap}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;position:relative;z-index:1;margin-bottom:60px}.exp-card{background:white;border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,0.15);transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);position:relative}.exp-card:hover{transform:translateY(-12px) scale(1.02);box-shadow:0 20px 50px rgba(0,0,0,0.25)}.exp-card:nth-child(odd):hover{transform:translateY(-12px) scale(1.02) rotate(-1deg)}.exp-card:nth-child(even):hover{transform:translateY(-12px) scale(1.02) rotate(1deg)}.exp-img{width:100%;aspect-ratio:4 / 3;background-size:cover;background-position:center;background-color:#f0f0f0;position:relative;overflow:hidden}.exp-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,0.4) 100%);transition:opacity 0.4s ease}.exp-emoji{position:absolute;bottom:16px;right:16px;width:64px;height:64px;background:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;box-shadow:0 6px 16px rgba(0,0,0,0.25);z-index:2;animation:emoji-bounce 3s ease-in-out infinite}@keyframes emoji-bounce{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(10deg)}}.exp-content{padding:28px 24px}.exp-content h3{font-size:22px;font-weight:900;color:var(--text-dark);margin-bottom:10px}.exp-content p{font-size:14px;color:var(--text-gray);line-height:1.7;margin-bottom:14px}.exp-tag{display:inline-block;background:linear-gradient(135deg,#FFD54F,#FF9800);color:white;padding:4px 14px;border-radius:50px;font-size:12px;font-weight:700}.exp-card-1 .exp-tag{background:linear-gradient(135deg,#4CAF50,#2E7D32)}.exp-card-2 .exp-tag{background:linear-gradient(135deg,#E91E63,#AD1457)}.exp-card-3 .exp-tag{background:linear-gradient(135deg,#2196F3,#1565C0)}.exp-card-4 .exp-tag{background:linear-gradient(135deg,#9C27B0,#6A1B9A)}.exp-card-5 .exp-tag{background:linear-gradient(135deg,#FF9800,#E65100)}.exp-card-6 .exp-tag{background:linear-gradient(135deg,#00BCD4,#00838F)}.growth-banner{background:white;border-radius:var(--radius-xl);padding:48px 32px;text-align:center;box-shadow:0 20px 50px rgba(0,0,0,0.15);position:relative;z-index:1;border:4px dashed var(--primary-light);max-width:900px;margin:0 auto}.growth-banner::before{content:'🌱';position:absolute;top:-32px;left:50%;transform:translateX(-50%);background:var(--primary);width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;box-shadow:0 8px 20px rgba(76,175,80,0.4);animation:growth-pulse 2s ease-in-out infinite}@keyframes growth-pulse{0%,100%{transform:translateX(-50%) scale(1)}50%{transform:translateX(-50%) scale(1.1)}}.growth-content h3{font-size:28px;font-weight:900;color:var(--primary-dark);margin:16px 0 16px}.growth-content p{font-size:16px;color:var(--text-gray);line-height:1.9}.adventure-strip{background:white;padding:32px 0;overflow:hidden;position:relative;z-index:1;box-shadow:0 -10px 30px rgba(0,0,0,0.1);margin-top:80px}.adventure-strip::before,.adventure-strip::after{content:'';position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none}.adventure-strip::before{left:0;background:linear-gradient(90deg,white,transparent)}.adventure-strip::after{right:0;background:linear-gradient(-90deg,white,transparent)}.adventure-track{display:flex;gap:20px;width:max-content;animation:marquee-scroll 40s linear infinite}.adventure-strip:hover .adventure-track{animation-play-state:paused}@keyframes marquee-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}.adv-item{flex-shrink:0;width:220px;height:160px;border-radius:var(--radius-md);overflow:hidden;position:relative;box-shadow:var(--shadow-md);cursor:pointer;transition:transform 0.3s ease}.adv-item:hover{transform:scale(1.06) rotate(-1deg);z-index:3}.adv-item img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease}.adv-item:hover img{transform:scale(1.15)}.adv-item span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(0,0,0,0.85),transparent);color:white;padding:24px 12px 10px;font-size:14px;font-weight:700;text-align:center}.teachers{padding:100px 0;background:radial-gradient(circle at 20% 20%,#E8F5E9 0%,transparent 35%),radial-gradient(circle at 80% 80%,#FFF3E0 0%,transparent 35%),white}.teachers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:56px}.teacher-card{background:white;padding:32px 24px;border-radius:var(--radius-lg);text-align:center;box-shadow:0 8px 24px rgba(0,0,0,0.08);transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);border-top:5px solid}.teacher-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,0.15)}.teacher-1{border-top-color:#4CAF50}.teacher-2{border-top-color:#FF9800}.teacher-3{border-top-color:#2196F3}.teacher-4{border-top-color:#E91E63}.teacher-5{border-top-color:#9C27B0}.teacher-6{border-top-color:#00BCD4}.teacher-avatar{width:96px;height:96px;margin:0 auto 16px;background:linear-gradient(135deg,#FFF8E1,#FFE082);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:56px;box-shadow:0 6px 16px rgba(0,0,0,0.1);border:4px solid white}.teacher-1 .teacher-avatar{background:linear-gradient(135deg,#C8E6C9,#81C784)}.teacher-2 .teacher-avatar{background:linear-gradient(135deg,#FFE0B2,#FFB74D)}.teacher-3 .teacher-avatar{background:linear-gradient(135deg,#BBDEFB,#64B5F6)}.teacher-4 .teacher-avatar{background:linear-gradient(135deg,#F8BBD0,#F06292)}.teacher-5 .teacher-avatar{background:linear-gradient(135deg,#E1BEE7,#BA68C8)}.teacher-6 .teacher-avatar{background:linear-gradient(135deg,#B2EBF2,#4DD0E1)}.teacher-name{font-size:22px;font-weight:900;color:var(--text-dark);margin-bottom:4px}.teacher-role{font-size:13px;color:var(--primary-dark);font-weight:700;margin-bottom:12px;padding-bottom:12px;border-bottom:2px dashed #E0E0E0}.teacher-intro{font-size:14px;color:var(--text-gray);line-height:1.7;margin-bottom:16px}.teacher-tags{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.t-tag{background:linear-gradient(135deg,#FFF8E1,#FFE082);color:#5D4037;padding:4px 12px;border-radius:50px;font-size:12px;font-weight:700}.teachers-promise{background:linear-gradient(135deg,#FFFDE7,#FFF9C4);padding:36px 32px;border-radius:var(--radius-xl);border:3px dashed #FFC107;text-align:center}.teachers-promise h3{font-size:24px;font-weight:900;color:var(--text-dark);margin-bottom:24px}.promise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.promise-item{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.promise-icon{font-size:36px}.promise-item strong{font-size:16px;color:var(--text-dark)}.promise-item span{font-size:13px;color:var(--text-gray)}@media (max-width:968px){.teachers-grid{grid-template-columns:repeat(2,1fr)}.promise-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:580px){.teachers-grid{grid-template-columns:1fr}}.trust-section{padding:100px 0;background:linear-gradient(135deg,#F5F9F2,#E8F5E9)}.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:56px;max-width:1000px;margin-left:auto;margin-right:auto}.cert-card{background:white;padding:16px;border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(0,0,0,0.1);text-align:center;cursor:pointer;transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);border:none;font-family:inherit}.cert-card:hover{transform:translateY(-8px);box-shadow:0 16px 36px rgba(0,0,0,0.15)}.cert-img-wrap{position:relative;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:16px;background:#f5f5f5}.cert-img-wrap img{width:100%;height:240px;object-fit:cover;display:block;transition:transform 0.4s ease}.cert-card:hover .cert-img-wrap img{transform:scale(1.05)}.cert-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.5);color:white;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;opacity:0;transition:opacity 0.3s ease}.cert-card:hover .cert-overlay{opacity:1}.cert-title{font-size:17px;font-weight:900;color:var(--text-dark);margin-bottom:4px}.cert-desc{font-size:13px;color:var(--text-gray)}.trust-features{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:1000px;margin:0 auto}.trust-item{background:white;padding:24px 16px;border-radius:var(--radius-md);text-align:center;box-shadow:0 4px 12px rgba(0,0,0,0.06)}.trust-icon{font-size:40px;display:block;margin-bottom:8px}.trust-item strong{display:block;font-size:16px;font-weight:900;color:var(--text-dark);margin-bottom:4px}.trust-item p{font-size:13px;color:var(--text-gray);margin:0}@media (max-width:768px){.cert-grid{grid-template-columns:1fr}.trust-features{grid-template-columns:repeat(2,1fr)}}.line-qrcode-box{background:linear-gradient(135deg,#E8F5E9,#C8E6C9);border-radius:var(--radius-lg);padding:24px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;border:3px dashed #06C755;margin-bottom:24px}.qr-text{text-align:left}.qr-title{font-size:20px;font-weight:900;color:#06C755;margin-bottom:6px}.qr-subtitle{font-size:13px;color:var(--text-gray);margin-bottom:12px}.qr-id{font-size:14px;color:var(--text-dark);margin-bottom:14px}.qr-id strong{font-family:'Fredoka',sans-serif;color:#06C755;font-size:16px}.qr-btn{display:inline-block;background:linear-gradient(135deg,#06C755,#008C00);color:white;padding:10px 20px;border-radius:50px;font-weight:700;font-size:14px;box-shadow:0 6px 16px rgba(6,199,85,0.3);transition:all 0.3s ease}.qr-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(6,199,85,0.4)}.qr-image-wrap{background:white;padding:8px;border-radius:var(--radius-sm);box-shadow:0 4px 12px rgba(0,0,0,0.1)}.qr-image-wrap img{width:120px;height:120px;display:block}@media (max-width:480px){.line-qrcode-box{grid-template-columns:1fr;text-align:center}.qr-text{text-align:center}.qr-image-wrap{margin:0 auto}}.reviews{padding:100px 0;background:radial-gradient(circle at 20% 20%,#FFF3E0 0%,transparent 30%),radial-gradient(circle at 80% 80%,#FFFDE7 0%,transparent 30%),#FFFFFF}.rating-summary{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;max-width:900px;margin:0 auto 64px;background:white;border-radius:var(--radius-xl);padding:48px;box-shadow:0 16px 40px rgba(0,0,0,0.1);border:3px dashed #FFC107}.rating-big-box{text-align:center;border-right:2px dashed #E0E0E0;padding-right:32px}.rating-score{font-size:80px;font-weight:900;color:#FFC107;line-height:1;font-family:'Fredoka',sans-serif;text-shadow:0 4px 12px rgba(255,193,7,0.3)}.rating-stars{display:flex;justify-content:center;gap:4px;margin:12px 0}.rating-stars span{font-size:28px;color:#FFC107;text-shadow:0 2px 6px rgba(255,193,7,0.4);animation:star-twinkle 2s ease-in-out infinite}.rating-stars span:nth-child(2){animation-delay:0.2s}.rating-stars span:nth-child(3){animation-delay:0.4s}.rating-stars span:nth-child(4){animation-delay:0.6s}.rating-stars span:nth-child(5){animation-delay:0.8s}@keyframes star-twinkle{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}.rating-count{font-size:15px;color:var(--text-gray);margin-bottom:16px}.rating-count strong{color:#E65100;font-size:18px;font-weight:900;font-family:'Fredoka',sans-serif}.rating-link{display:inline-block;color:var(--primary-dark);font-weight:700;font-size:14px;padding:8px 16px;border:2px solid var(--primary);border-radius:50px;transition:all 0.3s ease}.rating-link:hover{background:var(--primary);color:white;transform:translateY(-2px)}.rating-breakdown{display:flex;flex-direction:column;gap:10px;justify-content:center}.bar-row{display:flex;align-items:center;gap:12px}.bar-label{font-size:14px;font-weight:700;color:#FFC107;min-width:30px;font-family:'Fredoka',sans-serif}.bar-bg{flex:1;height:10px;background:#F5F5F5;border-radius:50px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,#FFD54F,#FFC107);border-radius:50px;transition:width 1.5s ease-out}.bar-percent{font-size:13px;color:var(--text-gray);font-weight:700;min-width:40px;text-align:right;font-family:'Fredoka',sans-serif}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:56px}.testimonial-card{background:white;padding:32px 28px;border-radius:var(--radius-lg);box-shadow:0 8px 24px rgba(0,0,0,0.08);position:relative;transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);border-top:4px solid #FFC107}.testimonial-card:hover{transform:translateY(-8px);box-shadow:0 16px 40px rgba(0,0,0,0.12)}.quote-mark{position:absolute;top:8px;right:24px;font-size:80px;font-weight:900;color:rgba(255,193,7,0.2);font-family:'Georgia',serif;line-height:1}.testimonial-stars{color:#FFC107;font-size:18px;margin-bottom:16px;letter-spacing:2px}.testimonial-text{color:var(--text-dark);font-size:14.5px;line-height:1.8;margin-bottom:24px;position:relative;z-index:1}.testimonial-author{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px dashed #E0E0E0}.author-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:white;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:900;flex-shrink:0}.testimonial-card:nth-child(2) .author-avatar{background:linear-gradient(135deg,#FF9800,#E65100)}.testimonial-card:nth-child(3) .author-avatar{background:linear-gradient(135deg,#E91E63,#AD1457)}.testimonial-card:nth-child(4) .author-avatar{background:linear-gradient(135deg,#2196F3,#0D47A1)}.testimonial-card:nth-child(5) .author-avatar{background:linear-gradient(135deg,#9C27B0,#6A1B9A)}.testimonial-card:nth-child(6) .author-avatar{background:linear-gradient(135deg,#00BCD4,#00838F)}.author-name{font-size:15px;font-weight:900;color:var(--text-dark)}.author-role{font-size:12px;color:var(--text-gray);margin-top:2px}.reviews-cta{text-align:center;background:linear-gradient(135deg,#FFF8E1,#FFECB3);padding:32px 24px;border-radius:var(--radius-xl);border:3px dashed #FFC107}.reviews-cta p{font-size:17px;font-weight:700;color:var(--text-dark);margin-bottom:20px}@media (max-width:968px){.rating-summary{grid-template-columns:1fr;padding:32px 24px}.rating-big-box{border-right:none;border-bottom:2px dashed #E0E0E0;padding-right:0;padding-bottom:24px}.testimonials-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.testimonials-grid{grid-template-columns:1fr}.rating-score{font-size:60px}}.schedule{padding:100px 0;background:var(--bg-light)}.schedule-timeline{max-width:800px;margin:0 auto;position:relative}.schedule-timeline::before{content:'';position:absolute;left:90px;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--primary),var(--primary-light));border-radius:4px}.timeline-item{display:flex;align-items:center;gap:32px;margin-bottom:24px;position:relative}.time{width:80px;flex-shrink:0;font-family:'Fredoka',sans-serif;font-size:22px;font-weight:700;color:var(--primary-dark);text-align:right}.timeline-item::before{content:'';position:absolute;left:84px;width:16px;height:16px;background:white;border:4px solid var(--primary);border-radius:50%;z-index:1}.event-card{flex:1;margin-left:16px;background:white;padding:20px 24px;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:all 0.3s ease;border-left:4px solid var(--primary)}.event-card:hover{transform:translateX(8px);box-shadow:var(--shadow-md)}.event-card h4{font-size:18px;font-weight:700;color:var(--text-dark);margin-bottom:4px}.event-card p{font-size:14px;color:var(--text-gray)}.ai-quick-answer{padding:80px 0;background:linear-gradient(135deg,#F3E5F5,#E1BEE7)}.ai-answer-card{background:white;border-radius:var(--radius-xl);padding:48px 36px;box-shadow:0 20px 50px rgba(156,39,176,0.15);border:3px dashed #9C27B0}.ai-answer-header{text-align:center;margin-bottom:36px}.ai-icon{font-size:56px;display:inline-block;animation:iconBob 3s ease-in-out infinite}.ai-answer-header h2{font-size:clamp(26px,4vw,36px);font-weight:900;color:var(--text-dark);margin:12px 0 8px}.ai-subtitle{font-size:15px;color:var(--text-gray)}.ai-facts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:40px}.ai-fact{display:flex;flex-direction:column;gap:4px;padding:14px 18px;background:linear-gradient(135deg,#FFF8E1,#FFFDE7);border-radius:var(--radius-md);border-left:4px solid #9C27B0;transition:all 0.3s ease}.ai-fact:hover{transform:translateX(6px);box-shadow:0 6px 16px rgba(156,39,176,0.15)}.ai-fact-label{font-size:12px;color:#6A1B9A;font-weight:700}.ai-fact-value{font-size:14px;color:var(--text-dark);font-weight:700;line-height:1.5}.ai-qa-section{padding-top:36px;border-top:2px dashed #E0E0E0}.ai-qa-title{font-size:22px;font-weight:900;color:#6A1B9A;margin-bottom:24px;text-align:center}.ai-qa-list{display:flex;flex-direction:column;gap:18px}.ai-qa-item{padding:20px 24px;background:linear-gradient(135deg,#F3E5F5,#FFFFFF);border-radius:var(--radius-md);border:2px solid #E1BEE7}.ai-qa-item strong{display:block;color:#6A1B9A;font-size:17px;font-weight:900;margin-bottom:8px}.ai-qa-item p{color:var(--text-dark);font-size:15px;line-height:1.8;margin:0}@media (max-width:768px){.ai-facts-grid{grid-template-columns:1fr}.ai-answer-card{padding:28px 20px}}.faq{padding:100px 0;background:radial-gradient(circle at 30% 30%,#FFF8E1 0%,transparent 40%),radial-gradient(circle at 70% 70%,#E8F5E9 0%,transparent 40%),#FFFFFF}.faq-list{max-width:880px;margin:0 auto 48px;display:flex;flex-direction:column;gap:14px}.faq-item{background:white;border-radius:var(--radius-md);box-shadow:0 4px 16px rgba(0,0,0,0.06);overflow:hidden;border:2px solid #F0F0F0;transition:all 0.3s ease}.faq-item:hover{border-color:var(--primary-light)}.faq-item[open]{border-color:var(--primary);box-shadow:0 8px 24px rgba(76,175,80,0.15)}.faq-question{display:flex;align-items:center;gap:16px;padding:20px 24px;cursor:pointer;list-style:none;font-weight:700;font-size:17px;color:var(--text-dark);transition:background 0.3s ease}.faq-question::-webkit-details-marker{display:none}.faq-question:hover{background:linear-gradient(135deg,#FFF8E1,transparent)}.faq-icon{flex-shrink:0;width:36px;height:36px;background:linear-gradient(135deg,#FF9800,#E65100);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900;font-family:'Fredoka',sans-serif}.faq-text{flex:1}.faq-arrow{flex-shrink:0;font-size:14px;color:var(--primary);transition:transform 0.3s ease}.faq-item[open] .faq-arrow{transform:rotate(180deg)}.faq-answer{padding:8px 24px 24px 76px;border-top:1px dashed #E0E0E0;margin-top:0}.faq-answer p{color:var(--text-gray);line-height:1.9;font-size:15px;margin:12px 0}.faq-answer strong{color:var(--primary-dark);font-weight:700}.faq-answer ul{padding-left:20px;margin:12px 0}.faq-answer li{color:var(--text-gray);line-height:2;font-size:15px}.faq-cta{background:linear-gradient(135deg,#FFF8E1,#FFECB3);padding:36px 32px;border-radius:var(--radius-xl);text-align:center;border:3px dashed var(--accent-orange);max-width:600px;margin:0 auto}.faq-cta p{font-size:17px;font-weight:700;color:var(--text-dark);margin-bottom:20px}.faq-cta-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}@media (max-width:640px){.faq-question{padding:16px;font-size:15px;gap:12px}.faq-icon{width:28px;height:28px;font-size:14px}.faq-answer{padding:8px 16px 20px 56px}}.latest-blog{padding:100px 0;background:linear-gradient(180deg,#FFF9E6 0%,#FFFFFF 100%)}.blog-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:40px}.blog-preview-card{display:block;background:white;border-radius:var(--radius-lg);padding:28px 24px;box-shadow:0 8px 24px rgba(0,0,0,0.08);transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);text-decoration:none;color:inherit;border-top:5px solid var(--accent-orange)}.blog-preview-card:hover{transform:translateY(-8px);box-shadow:0 16px 36px rgba(0,0,0,0.12)}.bp-tag{display:inline-block;background:var(--accent-orange);color:white;padding:4px 14px;border-radius:50px;font-size:12px;font-weight:700;margin-bottom:14px}.bp-tag-blue{background:#2196F3}.bp-tag-pink{background:#E91E63}.bp-tag-summer{background:#FF9800}.bp-tag-winter{background:#2196F3}.bp-tag-green{background:#4CAF50}.bp-card-winter{border-top-color:#2196F3!important}.bp-card-winter .bp-link{color:#2196F3!important}.bp-card-summer{border-top-color:#FF9800!important}.bp-card-summer .bp-link{color:#FF9800!important}.bp-card-school{border-top-color:#4CAF50!important}.bp-card-school .bp-link{color:#4CAF50!important}.blog-preview-card:nth-child(2){border-top-color:#2196F3}.blog-preview-card:nth-child(3){border-top-color:#E91E63}.blog-preview-card h3{font-size:18px;font-weight:900;color:var(--text-dark);margin-bottom:12px;line-height:1.5}.blog-preview-card p{font-size:14px;color:var(--text-gray);line-height:1.7;margin-bottom:16px}.bp-link{color:var(--accent-orange);font-weight:700;font-size:14px;transition:gap 0.3s ease}.blog-preview-card:nth-child(2) .bp-link{color:#2196F3}.blog-preview-card:nth-child(3) .bp-link{color:#E91E63}.blog-view-all{text-align:center}@media (max-width:968px){.blog-preview-grid{grid-template-columns:1fr}}.contact{padding:100px 0;background:white}.contact-grid{display:grid;grid-template-columns:1fr;gap:40px}.contact-info{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}.contact-info .info-card-hours{grid-column:1 / -1}.info-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px}.info-card.info-card-hours{min-height:auto;padding:18px 28px;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:20px}.info-card.info-card-hours .info-icon{margin-bottom:0}.info-card.info-card-hours h4{margin-bottom:0}.info-card.info-card-hours .hours-list{flex-direction:row;gap:24px;flex-wrap:wrap;justify-content:center}.info-card.info-card-hours .hours-row{display:flex;gap:8px;align-items:center}@media (max-width:600px){.info-card.info-card-hours{flex-direction:column}.info-card.info-card-hours .hours-list{flex-direction:column;gap:6px}}.info-card{background:var(--bg-light);padding:24px;border-radius:var(--radius-md);text-align:center;transition:all 0.3s ease;border:2px solid transparent}.info-card:hover{background:white;border-color:var(--primary);transform:translateY(-4px);box-shadow:var(--shadow-md)}.info-icon{font-size:36px;margin-bottom:8px}.info-card h4{font-size:15px;font-weight:700;color:var(--text-dark);margin-bottom:6px}.info-card p,.info-card a{font-size:14px;color:var(--text-gray);line-height:1.6}.info-card a:hover{color:var(--primary-dark);font-weight:700}.hours-list{display:flex;flex-direction:column;gap:4px;margin-top:4px}.hours-row{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 6px;background:white;border-radius:6px;font-size:12px}.hours-label{color:var(--primary-dark);font-weight:700;background:linear-gradient(135deg,#E8F5E9,#C8E6C9);padding:1px 8px;border-radius:50px;font-size:11px}.hours-time{color:var(--text-dark);font-weight:700;font-family:'Fredoka',sans-serif;font-size:12px}.contact-map-wrapper{grid-column:1 / -1;margin-top:24px;text-align:center}.map-title{font-size:22px;font-weight:900;color:var(--text-dark);margin-bottom:4px}.map-subtitle{font-size:14px;color:var(--text-gray);margin-bottom:20px}.map-direction-btn{display:inline-block;margin-top:16px;background:linear-gradient(135deg,#4285F4,#1A73E8);color:white;padding:12px 28px;border-radius:50px;font-weight:700;font-size:15px;text-decoration:none;box-shadow:0 6px 16px rgba(66,133,244,0.3);transition:all 0.3s ease}.map-direction-btn:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(66,133,244,0.4)}.directions-info{margin-top:32px;padding:28px;background:linear-gradient(135deg,#F5F9F2,#E8F5E9);border-radius:var(--radius-lg);border:2px dashed var(--primary)}.directions-title{font-size:20px;font-weight:900;color:var(--primary-dark);margin-bottom:20px;text-align:center}.directions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}.direction-item{display:flex;align-items:flex-start;gap:12px;background:white;padding:16px;border-radius:var(--radius-md);box-shadow:0 4px 12px rgba(0,0,0,0.05);transition:transform 0.3s ease}.direction-item:hover{transform:translateY(-4px)}.direction-icon{font-size:32px;flex-shrink:0}.direction-item strong{display:block;color:var(--text-dark);font-size:14px;font-weight:700;margin-bottom:4px}.direction-item p{color:var(--text-gray);font-size:13px;margin:0}.landmark-info{text-align:center;padding-top:24px;border-top:2px dashed #E0E0E0}.landmark-title{font-size:18px;font-weight:900;color:var(--primary-dark);margin-bottom:16px}.landmark-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.landmark-tag{display:inline-block;background:white;color:var(--text-dark);padding:8px 16px;border-radius:50px;font-size:13px;font-weight:700;border:2px solid var(--primary-light)}@media (max-width:768px){.directions-grid{grid-template-columns:1fr}}.contact-form{background:var(--bg-cream);padding:36px;border-radius:var(--radius-lg);border:3px dashed var(--primary-light)}.contact-form h3{font-size:24px;font-weight:900;color:var(--primary-dark);margin-bottom:8px;text-align:center}.form-subtitle{text-align:center;font-size:13px;color:var(--text-gray);margin-bottom:24px}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:14px;font-weight:700;color:var(--text-dark);margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:var(--radius-sm);font-size:15px;font-family:inherit;transition:all 0.3s ease;background:white}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px rgba(76,175,80,0.1)}.form-group textarea{resize:vertical}.contact-form-wrapper{display:flex;flex-direction:column;gap:24px}.quick-contact{background:white;border:2px dashed var(--primary-light);border-radius:var(--radius-lg);padding:24px;text-align:center}.quick-title{font-size:15px;font-weight:700;color:var(--text-dark);margin-bottom:16px}.quick-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.quick-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 8px;border-radius:var(--radius-md);font-weight:700;font-size:13px;color:white;transition:all 0.3s ease;text-align:center}.quick-btn .qicon{font-size:26px}.quick-phone{background:linear-gradient(135deg,#4CAF50,#2E7D32)}.quick-line{background:linear-gradient(135deg,#00C300,#008C00)}.quick-mail{background:linear-gradient(135deg,#FF9800,#E65100)}.quick-btn:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(0,0,0,0.2)}.footer{background:var(--text-dark);color:white;padding:60px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:48px;margin-bottom:40px}.footer-logo .logo-title{color:white}.footer-col p{color:rgba(255,255,255,0.7);margin-bottom:8px;font-size:14px}.footer-col p a{color:rgba(255,255,255,0.85);transition:color 0.3s ease}.footer-col p a:hover{color:var(--primary-light)}.social-links{display:flex;gap:10px;margin-top:16px}.social-btn{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;transition:all 0.3s ease;text-decoration:none}.social-fb{background:#1877F2;color:white!important;font-family:Georgia,serif}.social-line{background:#06C755;color:white!important}.social-vocus{background:linear-gradient(135deg,#00BCD4,#006064);color:white!important;font-family:'Fredoka',sans-serif;font-size:20px}.social-btn:hover{transform:translateY(-4px) scale(1.1);box-shadow:0 6px 16px rgba(0,0,0,0.2)}.footer-tagline{color:var(--primary-light)!important;font-style:italic}.footer-col h4{font-size:16px;margin-bottom:16px;color:var(--primary-light)}.footer-col ul li{margin-bottom:8px}.footer-col ul a{color:rgba(255,255,255,0.7);font-size:14px;transition:color 0.3s ease}.footer-col ul a:hover{color:var(--primary-light)}.footer-keywords{display:flex;flex-wrap:wrap;gap:8px}.footer-keywords li{margin:0}.footer-keywords a{display:inline-block;padding:4px 12px;background:rgba(255,255,255,0.08);border-radius:50px;font-size:12px;transition:all 0.3s ease}.footer-keywords a:hover{background:var(--primary);color:white!important;transform:translateY(-2px)}.footer-bottom{padding-top:24px;border-top:1px solid rgba(255,255,255,0.1);text-align:center;color:rgba(255,255,255,0.5);font-size:13px}.float-contact-group{position:fixed;left:16px;bottom:24px;z-index:999;display:flex;flex-direction:column;gap:12px}.float-btn{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:900;color:white;text-decoration:none;box-shadow:0 6px 16px rgba(0,0,0,0.2);transition:all 0.3s ease;position:relative}.float-btn:hover{transform:translateX(8px) scale(1.1);box-shadow:0 10px 24px rgba(0,0,0,0.3)}.float-line{background:linear-gradient(135deg,#06C755,#008C00)}.float-fb{background:linear-gradient(135deg,#1877F2,#0D5BC9);font-family:Georgia,serif}.float-map{background:linear-gradient(135deg,#FF5722,#BF360C)}.float-tooltip{position:absolute;left:60px;top:50%;transform:translateY(-50%);background:rgba(0,0,0,0.85);color:white;padding:6px 14px;border-radius:50px;font-size:13px;font-weight:700;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity 0.3s ease}.float-btn:hover .float-tooltip{opacity:1}@media (max-width:768px){.float-contact-group{left:12px;bottom:80px}.float-btn{width:44px;height:44px;font-size:18px}.float-tooltip{display:none}}.float-call{position:fixed;bottom:24px;right:24px;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:white;padding:14px 24px;border-radius:50px;display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;box-shadow:0 8px 24px rgba(76,175,80,0.5);z-index:999;transition:all 0.3s ease;animation:pulseCall 2s ease-in-out infinite}@keyframes pulseCall{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}.float-call:hover{transform:scale(1.1);box-shadow:0 12px 30px rgba(76,175,80,0.6)}.call-icon{font-size:18px}.fade-in{opacity:0;transform:translateY(30px);transition:all 0.8s ease}.fade-in.visible{opacity:1;transform:translateY(0)}@media (max-width:968px){.about-grid,.camps-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.polaroid-wall{grid-template-columns:repeat(2,1fr);gap:30px}.experience-grid{grid-template-columns:repeat(2,1fr)}.phonics-features{grid-template-columns:repeat(2,1fr)}.phonics-info{grid-template-columns:1fr}.price-card{order:-1}.camp-activities-grid{grid-template-columns:repeat(3,1fr)}.camp-periods{grid-template-columns:1fr}.camps-merged-card{padding:28px 20px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.features-list{grid-template-columns:1fr}.logo-showcase{width:240px;height:240px}.hero-full-logo{max-width:360px}}@media (max-width:768px){.nav-menu{position:fixed;top:76px;left:0;width:100%;background:white;flex-direction:column;padding:24px;gap:20px;box-shadow:var(--shadow-md);transform:translateX(-100%);transition:transform 0.3s ease}.nav-menu.active{transform:translateX(0)}.hamburger{display:flex}.hero{padding:100px 16px 60px}.hero-stats{gap:12px}.stat-item{padding:12px 20px}.stat-number{font-size:28px}.footer-grid{grid-template-columns:1fr;text-align:center}.footer-logo{justify-content:center}.contact-info{grid-template-columns:1fr 1fr}.schedule-timeline::before{left:60px}.timeline-item::before{left:54px}.time{width:50px;font-size:16px}.timeline-item{gap:20px}.float-call .call-text{display:none}.float-call{padding:16px}.call-icon{font-size:24px}}@media (max-width:480px){.courses-grid{grid-template-columns:1fr}.contact-info{grid-template-columns:1fr}.polaroid-wall{grid-template-columns:1fr;gap:24px}.experience-grid{grid-template-columns:1fr}.growth-content h3{font-size:22px}.adv-item{width:160px;height:120px}.hero-cta{flex-direction:column;width:100%}.btn{width:100%}.contact-form{padding:24px 20px}}.hyperlocal-geo{padding:80px 0;background:linear-gradient(135deg,#E3F2FD 0%,#E8F5E9 50%,#FFF9E6 100%);position:relative;overflow:hidden}.hyperlocal-geo::before{content:"";position:absolute;top:-100px;right:-100px;width:300px;height:300px;background:rgba(76,175,80,0.08);border-radius:50%}.hyperlocal-geo::after{content:"";position:absolute;bottom:-80px;left:-80px;width:240px;height:240px;background:rgba(33,150,243,0.08);border-radius:50%}.hyperlocal-header{text-align:center;margin-bottom:48px;position:relative;z-index:1}.hyperlocal-pin{display:inline-block;font-size:48px;margin-bottom:12px;animation:pinBounce 2s ease-in-out infinite}@keyframes pinBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}.hyperlocal-header h2{font-size:clamp(24px,4vw,34px);font-weight:900;color:#1B5E20;margin-bottom:14px}.hyperlocal-desc{font-size:16px;color:#424242;line-height:1.8}.hyperlocal-desc strong{color:#1B5E20}.landmark-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:48px;position:relative;z-index:1}.landmark-card{background:white;border-radius:16px;padding:24px 18px;text-align:center;box-shadow:0 4px 16px rgba(0,0,0,0.08);border:2px solid #E8F5E9;transition:all 0.3s ease}.landmark-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,0.12);border-color:#4CAF50}.landmark-card.landmark-primary{background:linear-gradient(135deg,#FFF9E6 0%,#FFE082 100%);border-color:#FF9800;transform:scale(1.04)}.landmark-emoji{display:block;font-size:42px;margin-bottom:8px;line-height:1}.landmark-card h3{font-size:17px;font-weight:800;color:#1B5E20;margin:0 0 10px}.landmark-card.landmark-primary h3{color:#E65100}.landmark-distance{font-size:16px;color:#424242;margin:0 0 4px}.landmark-distance strong{color:#2E7D32;font-size:20px;font-weight:900}.landmark-card.landmark-primary .landmark-distance strong{color:#E65100}.landmark-meta{font-size:13px;color:#757575;margin:0 0 6px}.landmark-note{font-size:13px;color:#E65100;font-weight:700;margin:8px 0 0}.service-areas-block{background:white;border-radius:20px;padding:32px;box-shadow:0 4px 20px rgba(0,0,0,0.06);margin-bottom:48px;position:relative;z-index:1}.service-areas-title{font-size:22px;font-weight:800;color:#1B5E20;margin:0 0 24px;text-align:center}.service-areas-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.service-area-item{padding:14px 18px;background:#F1F8E9;border-left:4px solid #4CAF50;border-radius:8px;display:flex;flex-direction:column;gap:4px}.service-area-item strong{font-size:16px;color:#1B5E20;font-weight:800}.service-area-item span{font-size:13px;color:#616161}.hyperlocal-faq{background:white;border-radius:20px;padding:32px;box-shadow:0 4px 20px rgba(0,0,0,0.06);position:relative;z-index:1}.hyperlocal-faq-title{font-size:22px;font-weight:800;color:#1565C0;margin:0 0 24px;text-align:center}.hyperlocal-faq-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.hyperlocal-faq-item{padding:18px 20px;background:linear-gradient(135deg,#E3F2FD 0%,#F3E5F5 100%);border-left:4px solid #1976D2;border-radius:12px}.hyperlocal-faq-item strong{display:block;font-size:15px;font-weight:800;color:#0D47A1;margin-bottom:8px}.hyperlocal-faq-item p{font-size:14px;line-height:1.7;color:#424242;margin:0}@media (max-width:768px){.hyperlocal-geo{padding:60px 0}.hyperlocal-header h2{font-size:22px}.landmark-grid{grid-template-columns:repeat(2,1fr);gap:12px}.landmark-card{padding:18px 12px}.landmark-card.landmark-primary{transform:scale(1)}.landmark-emoji{font-size:34px}.landmark-card h3{font-size:15px}.service-areas-block,.hyperlocal-faq{padding:22px 18px}.service-areas-title,.hyperlocal-faq-title{font-size:18px}.hyperlocal-faq-list{grid-template-columns:1fr}}.form-trust{display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center;margin:0 0 22px;padding:14px 12px;background:linear-gradient(135deg,#f0f9f4,#e8f5e9);border:1px solid #c8e6c9;border-radius:14px;font-size:14px;color:#2e7d32;font-weight:700}.form-trust span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}@media(max-width:480px){.form-trust{font-size:13px;gap:6px 12px;padding:12px 8px}}.skip-link{position:absolute;left:-9999px;top:0;z-index:99999;background:#4CAF50;color:#fff;padding:12px 22px;border-radius:0 0 10px 0;font-weight:700;text-decoration:none;box-shadow:0 4px 12px rgba(0,0,0,.2)}.skip-link:focus{left:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,details:focus-visible,summary:focus-visible{outline:3px solid #ffa726;outline-offset:2px;border-radius:4px}