:root{--ink:#24343b;--muted:#68756f;--olive:#687a50;--olive-dark:#45543a;--sage:#dfe8d5;--cream:#fbf8ec;--sun:#e6c760;--peach:#e9ad8f;--paper:#fffef9;--line:#d9dfcf;--shadow:0 20px 55px #3a49301f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit}button,input{font:inherit}.site-shell{min-height:100vh;overflow:hidden}.nav-wrap{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fbf8ecf0;border-bottom:1px solid #687a502e;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;gap:28px;width:min(1180px,100% - 36px);min-height:82px;margin:auto;display:flex}.brand{align-items:center;gap:12px;text-decoration:none;display:flex}.tree-logo{background:linear-gradient(145deg,#fffef8,#f3efd9);border:1px solid #d9cfaa;border-radius:18px;flex:0 0 54px;width:54px;height:54px;display:inline-block;position:relative;overflow:hidden;box-shadow:0 7px 16px #3a49301f}.tree-crown{z-index:2;background:#79945d;border-radius:50%;transition:background .5s;position:absolute;box-shadow:inset -3px -4px #374d2d1f}.tree-crown-one{width:25px;height:25px;top:10px;left:8px}.tree-crown-two{width:28px;height:28px;top:8px;right:7px}.tree-crown-three{width:30px;height:26px;top:18px;left:12px}.tree-trunk{z-index:1;background:#8f6847;border-radius:5px 5px 2px 2px;width:8px;height:22px;position:absolute;bottom:7px;left:23px}.tree-ground{z-index:3;background:#c7d7ae;border-radius:50%;width:35px;height:7px;position:absolute;bottom:5px;left:9px}.tree-sun-fruit{z-index:4;background:#f4ca50;border-radius:50%;width:8px;height:8px;position:absolute;top:17px;left:23px;box-shadow:10px 7px #f4ca50,-8px 9px #f4ca50}.tree-logo.season-spring .tree-crown{background:#91b77d}.tree-logo.season-summer .tree-crown{background:#6f8b55}.tree-logo.season-fall .tree-crown-one{background:#d69354}.tree-logo.season-fall .tree-crown-two{background:#b46e42}.tree-logo.season-fall .tree-crown-three{background:#d1a34a}.tree-logo.season-winter .tree-crown{background:#9eb4a6}.tree-logo.season-winter .tree-crown:after{content:"";opacity:.9;background:#fff;border-radius:50%;width:13px;height:4px;position:absolute;top:3px;left:5px}.brand strong{font-family:Georgia,serif;font-size:20px;line-height:1.1;display:block}.brand small{color:var(--muted);font-size:11px}.nav-links{align-items:center;gap:22px;font-size:13px;font-weight:750;display:flex}.nav-links a{text-decoration:none}.nav-links a:hover{color:var(--olive)}.mobile-site-nav{display:none}.nav-cta,.button{border:1px solid var(--olive);border-radius:15px;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-weight:800;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-flex}.nav-cta,.button.primary{color:#fff;background:linear-gradient(135deg, #829369, var(--olive));box-shadow:0 10px 24px #50633d33}.button.secondary{color:var(--olive-dark);background:var(--paper)}.button:hover,.nav-cta:hover{transform:translateY(-2px);box-shadow:0 14px 28px #50633d33}.hero{width:min(1180px,100% - 36px);box-shadow:var(--shadow);background:linear-gradient(135deg,#fff4c7 0%,#f7edba 48%,#e3ecdd 100%);border:1px solid #e2ddb8;border-radius:38px;grid-template-columns:1.12fr .88fr;align-items:center;gap:42px;margin:44px auto 22px;padding:66px 64px;display:grid;position:relative;overflow:hidden}.hero:before{content:"";border:46px solid #ffffff47;border-radius:50%;width:340px;height:340px;position:absolute;bottom:-245px;left:-150px}.hero-content{z-index:3;position:relative}.eyebrow{color:#7c6e36;letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px;font-size:12px;font-weight:900}h1,h2,h3{margin-top:0;font-family:Georgia,Times New Roman,serif;line-height:1.08}h1{letter-spacing:-.04em;max-width:760px;margin-bottom:20px;font-size:clamp(45px,6.4vw,82px)}.hero-copy{color:#5c675f;max-width:650px;font-size:18px}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.trust-row{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.trust-row span{color:#596b47;background:#fffef99e;border:1px solid #687a503d;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:800}.trust-row span:before{content:"✓";color:var(--olive);margin-right:6px}.seasonal-hero{isolation:isolate;border-radius:34px;min-height:390px;position:relative}.seasonal-hero:before{content:"";background:#ffffff75;border-radius:50%;width:310px;height:310px;position:absolute;top:23px;right:8px;box-shadow:0 28px 50px #4d5b3b1f}.seasonal-character{z-index:4;object-fit:contain;filter:drop-shadow(0 20px 18px #4a3f232e);width:88%;height:350px;animation:5s ease-in-out infinite characterFloat;position:absolute;bottom:18px;right:0}.seasonal-orbit{z-index:1;border:1px solid #8a825333;border-radius:50%;position:absolute}.orbit-one{width:350px;height:350px;top:3px;right:-12px}.orbit-two{width:285px;height:285px;top:36px;right:21px}.seasonal-cloud{z-index:2;background:#ffffffd1;border-radius:999px;width:75px;height:24px;position:absolute;box-shadow:24px -7px 0 -5px #ffffffd1}.cloud-one{bottom:80px;left:-8px}.cloud-two{top:88px;right:-30px;transform:scale(.75)}.seasonal-label{z-index:5;color:#556448;letter-spacing:.04em;background:#fffef9e6;border:1px solid #687a5033;border-radius:999px;padding:9px 13px;font-size:11px;font-weight:900;position:absolute;bottom:8px;left:10px;box-shadow:0 8px 20px #434f351a}.season-dot{background:#e3be46;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.seasonal-hero.season-spring:before{background:#e9f1df}.seasonal-hero.season-spring .season-dot{background:#91b77d}.seasonal-hero.season-fall:before{background:#f4dfc7}.seasonal-hero.season-fall .season-dot{background:#c67f45}.seasonal-hero.season-winter:before{background:#e1eceb}.seasonal-hero.season-winter .season-dot{background:#8aaab2}@keyframes characterFloat{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-8px)rotate(1deg)}}.section{width:min(1180px,100% - 36px);margin:84px auto}.friends-section{border:1px solid var(--line);background:#fffef9bd;border-radius:30px;grid-template-columns:.72fr 1.28fr;align-items:center;gap:42px;padding:34px;display:grid}.friends-copy h2{margin-bottom:12px;font-size:clamp(31px,3.2vw,45px)}.friends-copy p:last-child{color:var(--muted)}.friend-cards{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.friend-card{text-align:center;background:#fffdf6;border:1px solid #e0ddc9;border-radius:22px;min-width:0;padding:16px 12px 14px;transition:transform .2s,box-shadow .2s;box-shadow:0 10px 24px #3949310f}.friend-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px #3949311c}.friend-image-wrap{background:linear-gradient(145deg,#f5edc9,#e9efdf);border-radius:18px;height:118px;margin-bottom:10px;overflow:hidden}.friend-image-wrap img{object-fit:contain;filter:drop-shadow(0 9px 9px #5b4a2121);width:100%;height:100%}.friend-card strong,.friend-card span{display:block}.friend-card strong{font-family:Georgia,serif;font-size:17px}.friend-card span{color:var(--muted);margin-top:3px;font-size:10px}.friend-brave .friend-image-wrap{background:linear-gradient(145deg,#f7e6d9,#f5edcb)}.friend-happy .friend-image-wrap{background:linear-gradient(145deg,#e2ecdd,#f5edcb)}.section-heading{max-width:720px;margin-bottom:30px}.section-heading h2{margin-bottom:12px;font-size:clamp(34px,4vw,52px)}.section-heading p{color:var(--muted)}.cards{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.card{border:1px solid var(--line);background:var(--paper);border-radius:26px;padding:30px;box-shadow:0 12px 32px #39493112}.card-number{width:44px;height:44px;color:var(--olive-dark);background:var(--sage);border-radius:15px;place-items:center;margin-bottom:22px;font-weight:900;display:grid}.card:nth-child(2) .card-number{background:#f7e9bd}.card:nth-child(3) .card-number{background:#f7dfd4}.card h3{margin-bottom:10px;font-size:25px}.card p{color:var(--muted);margin:0}.split{grid-template-columns:1fr 1fr;gap:22px;display:grid}.feature{border-radius:30px;padding:42px}.feature.olive{color:#fff;background:var(--olive-dark)}.feature.light{border:1px solid var(--line);background:var(--paper)}.feature h2{font-size:38px}.feature ul{margin:22px 0 0;padding-left:20px}.feature li{margin:10px 0}.hours{border-top:1px solid #fff3;grid-template-columns:1fr auto;gap:10px 22px;padding-top:14px;display:grid}.hours-row{display:contents}.hours-row>strong{text-align:right}.notice{background:#fff3ed;border:1px solid #e3c6b5;border-radius:24px;justify-content:space-between;align-items:center;gap:24px;padding:28px 32px;display:flex}.notice p{color:#765d51;margin:4px 0 0}.contact-grid{grid-template-columns:.8fr 1.2fr;gap:22px;display:grid}.contact-panel{background:var(--paper);border:1px solid var(--line);border-radius:30px;padding:38px}.contact-panel a{color:var(--olive-dark);font-weight:800}.consent-box{background:#f2f6ed;border:1px solid #cfd9c3;border-radius:20px;padding:24px}.consent-box label{color:#475444;align-items:flex-start;gap:12px;font-size:13px;display:flex}.consent-box input{width:20px;height:20px;accent-color:var(--olive);flex:none;margin-top:2px}.consent-box p{color:var(--muted);margin:12px 0 0 32px;font-size:12px}.consent-route{align-items:flex-start;gap:14px;display:flex}.consent-route .consent-icon{color:#fff;background:var(--olive);border-radius:10px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.consent-route strong{color:#43533e;font-family:Georgia,serif;font-size:17px;display:block}.consent-route p{margin:8px 0 0}.consent-proof{background:#fffef9;border:1px solid #cfd9c3;border-radius:20px;margin:22px 0;padding:12px;box-shadow:0 12px 30px #39493114}.consent-proof img{border:1px solid #e0e3d7;border-radius:14px;width:100%;height:auto;display:block}.consent-proof figcaption{color:var(--muted);padding:10px 6px 2px;font-size:12px}.consent-proof-panel{background:#fffef9;border:1px solid #cfd9c3;border-radius:24px;margin:24px 0;padding:24px;box-shadow:0 12px 30px #39493114}.proof-label{letter-spacing:.12em;text-transform:uppercase;margin:0 0 15px;font-size:12px;font-weight:900;color:var(--olive-dark)!important}.consent-choice-demo{background:#f1f6ed;border:2px solid #b8c8ab;border-radius:18px;grid-template-columns:24px 1fr;gap:14px;margin-top:14px;padding:20px;display:grid}.consent-choice-demo.marketing{background:#fff8e8;border-color:#d6b977}.consent-choice-demo .unchecked-box{background:#fff;border:2px solid #687563;border-radius:4px;width:23px;height:23px}.consent-choice-demo strong{color:#32412f;font-family:Georgia,serif;font-size:18px}.consent-choice-demo p{color:#4e5b52;margin:8px 0;font-size:14px}.consent-choice-demo span{color:#6d786d;font-size:12px;font-weight:800}.proof-note{font-weight:800;color:#43533e!important;margin:16px 2px 0!important}.consent-page{width:min(960px,100% - 36px)}.consent-intro{margin:28px 0;font-size:17px}.consent-live-panel{box-shadow:var(--shadow);background:#fffef9;border:1px solid #cbd7bd;border-radius:28px;margin:28px 0 44px;padding:30px}.consent-form-heading h2{margin:0 0 8px;font-size:30px}.consent-form-heading p:last-child{margin-top:0}.consent-field-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.consent-field-grid label{gap:7px;display:grid}.consent-field-grid label span{color:#43533e;font-size:12px;font-weight:850}.consent-field-grid input{width:100%;min-height:50px;color:var(--ink);background:#fff;border:1.5px solid #bfcbb2;border-radius:13px;outline:none;padding:0 14px}.consent-field-grid input:focus{border-color:var(--olive);box-shadow:0 0 0 4px #687a5024}.consent-honeypot{opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;position:absolute!important}.consent-checkbox-control{cursor:pointer;background:#f1f6ed;border:2px solid #9cad8c;border-radius:18px;align-items:flex-start;gap:14px;margin-top:22px;padding:22px;display:flex}.consent-checkbox-control input{width:24px;height:24px;accent-color:var(--olive);flex:0 0 24px;margin-top:3px}.consent-checkbox-control span{gap:7px;display:grid}.consent-checkbox-control strong{color:#32412f;font-family:Georgia,serif;font-size:19px}.consent-checkbox-control small{color:#4e5b52;font-size:13px;line-height:1.58}.consent-policy-links{font-size:12px;margin:14px 2px 20px!important}.consent-policy-links a{font-weight:850}.consent-submit{cursor:pointer;border-width:1px;width:100%}.consent-submit:disabled{opacity:.68;cursor:wait;transform:none}.form-error{background:#fff0ea;border:1px solid #dca28c;border-radius:12px;padding:12px 14px;color:#8b3e2c!important}.consent-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:18px;display:flex}.consent-actions .button{color:#fff;font-size:12px}.footer{color:#eef3e8;background:#34422f;margin-top:90px}.footer-inner{grid-template-columns:1.2fr .8fr .8fr;gap:40px;width:min(1180px,100% - 36px);margin:auto;padding:48px 0 32px;display:grid}.footer-brand{align-items:flex-start;gap:15px;display:flex}.footer-brand .tree-logo{margin-top:2px}.footer h3{font-size:25px}.footer p,.footer a{color:#ccd6c5}.footer a{margin:8px 0;display:block}.footer-bottom{color:#bdc9b6;border-top:1px solid #ffffff21;width:min(1180px,100% - 36px);margin:auto;padding:22px 0;font-size:12px}.announcement-stack{gap:10px;width:min(1180px,100% - 36px);margin:22px auto 0;display:grid}.announcement{background:#f2f6ed;border:1px solid #cfd9c3;border-radius:18px;justify-content:space-between;align-items:center;gap:24px;padding:18px 22px;display:flex}.announcement.tone-notice{background:#fff8d8;border-color:#d7bd61}.announcement.tone-urgent{background:#fff0e9;border-color:#c87961}.announcement strong{font-family:Georgia,serif;font-size:20px}.announcement p{margin:3px 0 0}.announcement a{flex:none;font-weight:800}.page-hero{box-shadow:var(--shadow);background:linear-gradient(135deg,#fff4c7,#e3ecdd);border:1px solid #e2ddb8;border-radius:34px;margin-top:46px;padding:54px}.page-hero h1{font-size:clamp(42px,6vw,72px)}.page-hero>p:last-child{max-width:780px;color:var(--muted);font-size:18px}.story-panel{border:1px solid var(--line);background:var(--paper);border-radius:28px;padding:38px}.story-panel h2{font-size:38px}.story-panel p{color:var(--muted);white-space:pre-line}.cms-reusable{border:1px solid var(--line);background:var(--paper);border-radius:28px;padding:34px}.cms-reusable.layout-highlight{background:#fff8d8}.cms-reusable.layout-text_image{grid-template-columns:1fr minmax(260px,42%);align-items:center;gap:30px;display:grid}.cms-reusable img{object-fit:cover;border-radius:20px;width:100%;max-height:420px}.cms-card-grid{align-items:stretch}.cms-card-image{aspect-ratio:16/9;object-fit:cover;background:var(--sage);border-radius:16px;width:100%;margin-bottom:20px}.staff-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.staff-card{border:1px solid var(--line);background:var(--paper);border-radius:24px;overflow:hidden}.staff-photo{aspect-ratio:4/3;object-fit:cover;background:var(--sage);width:100%;display:block}.staff-card>div{padding:24px}.staff-card h3{margin-bottom:5px;font-size:26px}.staff-card strong{color:var(--olive)}.staff-card p{color:var(--muted);white-space:pre-line}.program-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.program-card{border:1px solid var(--line);background:var(--paper);border-radius:26px;padding:30px;box-shadow:0 12px 32px #39493112}.program-card h2{font-size:34px}.program-card>p{white-space:pre-line}.program-schedule{color:var(--olive-dark);font-weight:800}.tuition{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.tuition p{white-space:pre-line}.faq-section details{border:1px solid var(--line);background:var(--paper);border-radius:18px;margin:12px 0;padding:0 22px}.faq-section summary{cursor:pointer;padding:19px 30px 19px 0;font-weight:850}.faq-section summary:focus-visible{outline:3px solid var(--olive);outline-offset:4px}.faq-section details p{color:var(--muted);white-space:pre-line;margin:0;padding:0 0 20px}.legal{width:min(880px,100% - 36px);margin:54px auto 100px}.legal-header{background:linear-gradient(135deg,#f3e5a9,#e7eee1);border-radius:30px;padding:44px}.legal h1{font-size:clamp(40px,6vw,64px)}.legal h2{margin-top:42px;font-size:28px}.legal h3{margin-top:28px;font-size:21px}.legal p,.legal li{color:#53605b}.legal li{margin:7px 0}.legal .effective{color:#71806f;font-size:13px}.legal-callout{border-left:5px solid var(--olive);background:#eef3e9;border-radius:0 16px 16px 0;margin:28px 0;padding:22px}@media (max-width:850px){.nav-links{display:none}.mobile-site-nav{order:2;display:block;position:relative}.mobile-site-nav summary{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:12px;align-items:center;gap:6px;min-height:42px;padding:8px 12px;font-weight:800;list-style:none;display:flex}.mobile-site-nav summary::-webkit-details-marker{display:none}.mobile-site-nav>div{z-index:40;border:1px solid var(--line);background:var(--paper);min-width:210px;box-shadow:var(--shadow);border-radius:16px;gap:4px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.mobile-site-nav a{border-radius:10px;padding:10px 12px;font-weight:800;text-decoration:none}.mobile-site-nav a:hover{background:var(--sage)}.hero{grid-template-columns:1fr;padding:48px 28px}.seasonal-hero{width:100%;max-width:470px;min-height:315px;margin:auto}.seasonal-character{height:290px}.seasonal-hero:before{width:260px;height:260px;right:10%}.cards,.split,.contact-grid,.footer-inner,.friends-section,.cms-reusable.layout-text_image{grid-template-columns:1fr}.announcement{flex-direction:column;align-items:flex-start}}@media (max-width:520px){.nav{width:min(100% - 22px,1180px)}.brand small{display:none}.nav-cta{min-height:42px;padding:0 13px;font-size:12px}.hero,.section{width:calc(100% - 22px)}.hero{border-radius:26px;margin-top:20px}.seasonal-hero{min-height:255px}.seasonal-character{width:100%;height:235px}.seasonal-hero:before{width:220px;height:220px;right:6%}.seasonal-label{left:0}.section{margin:58px auto}.feature,.contact-panel{padding:28px}.friends-section{padding:24px 18px}.friend-cards{grid-template-columns:repeat(3,1fr);gap:7px}.friend-card{border-radius:16px;padding:9px 6px}.friend-image-wrap{height:82px}.friend-card strong{font-size:12px}.friend-card span{display:none}.notice{flex-direction:column;align-items:flex-start}.consent-live-panel{padding:22px 16px}.consent-field-grid{grid-template-columns:1fr}.consent-checkbox-control{padding:17px 14px}}
