:root{--p-ink:#382a22;--p-clay:#ad5639;--p-gold:#f5a623;--p-cream:#fffaf2;--p-sand:#f3e1c7;--p-muted:#756960;--p-line:#e5d6c5}.program-page{background:var(--p-cream);color:var(--p-ink);min-height:100vh}.content-wrap{width:min(1120px,100% - 48px);margin-inline:auto}.program-hero{background:var(--p-sand);overflow:hidden}.program-hero-grid{grid-template-columns:1.08fr .92fr;align-items:center;min-height:530px;display:grid}.back-link{color:#946d54;margin-bottom:45px;font-size:12px;display:inline-block}.program-eyebrow,.program-section header p,.services header p,.approach p,.faq p,.program-closing>div>div>p:first-child{color:#966047;letter-spacing:1.8px;margin:0 0 13px;font-size:10px;font-weight:700}.program-hero h1,.program-section h2,.services h2,.approach h2,.faq h2,.program-closing h2{letter-spacing:-2.6px;margin:0;font-family:Georgia,serif;font-size:clamp(42px,5vw,68px);font-weight:400;line-height:1.01}.program-lead{max-width:535px;color:var(--p-muted);margin:24px 0 28px;font-size:15px;line-height:1.7}.program-button{color:#fff;background:var(--p-ink);border-radius:99px;align-items:center;gap:17px;padding:14px 17px 14px 22px;font-size:13px;font-weight:700;display:inline-flex}.program-button span{background:var(--p-gold);width:24px;height:24px;color:var(--p-ink);border-radius:50%;place-items:center;font-size:17px;display:grid}.program-mascot{align-self:end;padding:25px 0 0}.program-mascot img{filter:drop-shadow(0 20px 14px #4c2c1b28);width:min(460px,100%);height:auto;margin-left:auto;animation:4.5s ease-in-out infinite mascot-float;display:block}.program-section{padding:110px 0}.program-formats{background:#fffaf2;padding:105px 0}.program-formats header{grid-template-columns:.9fr 1.1fr;align-items:end;column-gap:70px;max-width:none;display:grid}.program-formats header>p:first-child,.private-tutor-heading>div>p{color:#966047;letter-spacing:1.8px;grid-column:1;margin:0 0 13px;font-size:10px;font-weight:700}.program-formats h2{letter-spacing:-2px;grid-column:1;margin:0;font-family:Georgia,serif;font-size:clamp(40px,4.6vw,60px);font-weight:400;line-height:1.04}.program-formats-lead{max-width:460px;color:var(--p-muted);grid-area:1/2/span 2;margin:0;font-size:15px;line-height:1.75}.program-format-grid{grid-template-columns:repeat(2,1fr);gap:24px;margin-top:42px;display:grid}.program-format-grid article{border:1px solid var(--p-line);background:#fff;overflow:hidden}.program-format-grid img{object-fit:cover;width:100%;height:265px;display:block}.program-format-grid article>div{padding:26px}.program-format-grid h3{letter-spacing:-1px;margin:0;font-family:Georgia,serif;font-size:30px;font-weight:400}.program-format-grid p{min-height:43px;color:var(--p-muted);margin:10px 0 20px;font-size:13px;line-height:1.65}.format-link{color:var(--p-ink);align-items:center;gap:10px;font-size:12px;font-weight:800;display:inline-flex}.format-link span{background:var(--p-gold);border-radius:50%;place-items:center;width:21px;height:21px;font-size:16px;display:grid}.program-format-accordion{border-top:1px solid var(--p-line);margin-top:46px}.program-format-accordion article{border-bottom:1px solid var(--p-line)}.program-format-accordion button{width:100%;color:var(--p-ink);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:70px 1fr auto;align-items:center;gap:16px;padding:27px 0;transition:background .2s;display:grid}.program-format-accordion button:hover{background:#f8eddd}.program-format-accordion button:focus-visible{outline:2px solid var(--p-gold);outline-offset:-2px}.program-format-accordion button>span{color:#b47b5a;letter-spacing:1px;font-size:11px}.program-format-accordion button strong{letter-spacing:-1px;font-family:Georgia,serif;font-size:29px;font-weight:400}.program-format-accordion button b{width:30px;height:30px;color:var(--p-ink);border:1px solid #d5ae67;border-radius:50%;justify-content:center;align-items:center;padding:0;font-family:Arial,sans-serif;font-size:23px;font-weight:400;line-height:1;transition:transform .2s,background .2s;display:flex}.program-format-accordion article.open button b{background:var(--p-gold);transform:rotate(45deg)}.program-format-panel{display:none}.program-format-accordion article.open .program-format-panel{display:block}.program-format-panel>div{gap:26px;padding-bottom:30px;display:grid}.program-format-overview{grid-template-columns:minmax(280px,.95fr) 1.05fr;align-items:center;gap:34px;display:grid}.program-format-main-image{aspect-ratio:1;background:#fffdf9;margin:0;display:grid;overflow:hidden}.program-format-main-image img{object-fit:cover;width:100%;height:100%;display:block}.program-format-copy{max-width:760px;padding:4px 0}.program-format-copy>p{color:var(--p-muted);margin:0;font-size:14px;line-height:1.7}.program-format-copy ul{gap:8px;margin:18px 0 22px;padding:0;list-style:none;display:grid}.program-format-copy li{color:#75513c;align-items:baseline;gap:9px;font-size:12px;line-height:1.45;display:flex}.program-format-copy li:before{content:"✦";color:var(--p-gold)}.program-format-video{border:1px solid var(--p-line);background:#f5e8d7;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);align-items:center;gap:28px;padding:23px;display:grid}.program-format-video p{color:#966047;letter-spacing:1.5px;margin:0 0 10px;font-size:10px;font-weight:700}.program-format-video h3{color:var(--p-ink);letter-spacing:-.8px;margin:0;font-family:Georgia,serif;font-size:27px;font-weight:400;line-height:1.18}.program-format-video video{background:#2f241f;width:100%;max-height:360px;display:block}.format-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.format-gallery-grid-private{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.format-gallery-grid-private figcaption{min-height:68px;padding:8px}.format-gallery-grid-private strong{font-size:10px}.format-gallery-grid-private figcaption span{font-size:9px}.format-gallery-grid-private figcaption span:last-child{color:#966047;font-weight:700}.format-gallery-grid figure{border:1px solid var(--p-line);background:#fffdf9;margin:0;overflow:hidden}.format-gallery-grid img{aspect-ratio:1;object-fit:cover;width:100%;height:auto;display:block}.format-gallery-grid figcaption{gap:4px;min-height:73px;padding:11px 12px 12px;display:grid}.format-gallery-grid strong{color:var(--p-ink);gap:5px;font-size:12px;line-height:1.35;display:grid}.format-gallery-grid figcaption span{color:var(--p-muted);font-size:10.5px;line-height:1.45}.program-section header,.services header{max-width:660px}.program-list{border-top:1px solid var(--p-line);margin-top:52px}.program-list article{border-bottom:1px solid var(--p-line);grid-template-columns:75px 1fr auto;gap:15px;padding:29px 0;display:grid}.program-list article>span{letter-spacing:1px;color:#b47b5a;padding-top:6px;font-size:11px}.program-list h3{letter-spacing:-1px;margin:0;font-family:Georgia,serif;font-size:27px;font-weight:400}.program-list p{max-width:570px;color:var(--p-muted);margin:9px 0 14px;font-size:14px;line-height:1.65}.program-list ul{flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none;display:flex}.program-list li{color:#75513c;background:#f4eadc;border-radius:99px;padding:7px 10px;font-size:11px}.program-detail-trigger{color:var(--p-ink);background:var(--p-gold);cursor:pointer;white-space:nowrap;border:1px solid #d8b97d;border-radius:99px;align-self:start;margin-top:5px;padding:8px 12px;font:700 11px/1 inherit}.program-detail-trigger:hover{background:#e99b10}.services{color:#fff;background:#4a3024;padding:100px 0}.services header p{color:#f4d7ae}.services header h2{max-width:550px}.service-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:50px;display:grid}.service-grid article{background:#6a3d2d;min-height:230px;padding:23px}.service-grid article:nth-child(2){background:#925038}.service-grid article:nth-child(3){color:var(--p-ink);background:#f5a623}.service-grid article:nth-child(4){color:var(--p-ink);background:#fff7eb}.service-grid span{height:50px;font-family:Georgia,serif;font-size:34px;display:block}.service-grid h3{letter-spacing:-.8px;margin:20px 0 9px;font-family:Georgia,serif;font-size:23px;font-weight:400}.service-grid p{opacity:.82;margin:0;font-size:12px;line-height:1.6}.approach{grid-template-columns:.85fr 1.15fr;gap:105px;padding:115px 0;display:grid}.approach-copy{position:relative}.approach-copy img{width:180px;height:auto;margin:28px 0 -80px 20px;animation:4.5s ease-in-out infinite mascot-float;display:block}.approach-steps{border-top:1px solid var(--p-line)}.approach-steps article{border-bottom:1px solid var(--p-line);grid-template-columns:55px 1fr;column-gap:15px;padding:28px 0;display:grid}.approach-steps span{color:#b47b5a;letter-spacing:1px;grid-row:span 2;padding-top:5px;font-size:11px}.approach-steps h3{margin:0;font-size:18px}.approach-steps p{color:var(--p-muted);letter-spacing:normal;margin:8px 0 0;font-size:13px;font-weight:400;line-height:1.6}.faq{background:#f5e8d7;padding:100px 0}.faq-grid{grid-template-columns:.75fr 1.25fr;gap:90px;display:grid}.faq-grid>div:first-child{position:relative}.faq-grid>div:first-child img{width:170px;height:auto;margin:30px 0 -55px 24px;animation:4.5s ease-in-out infinite mascot-float;display:block}.faq article{border-top:1px solid #d9c4ae}.faq article:last-child{border-bottom:1px solid #d9c4ae}.faq button{width:100%;color:var(--p-ink);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;padding:21px 0;font-size:15px;font-weight:700;display:flex}.faq button b{font-size:23px;font-weight:400;transition:transform .2s}.faq article.open button b{transform:rotate(45deg)}.faq article>div{grid-template-rows:0fr;transition:grid-template-rows .25s;display:grid}.faq article.open>div{grid-template-rows:1fr}.faq article>div p{min-height:0;color:var(--p-muted);letter-spacing:normal;margin:0;padding:0;font-size:13px;font-weight:400;line-height:1.7;overflow:hidden}.faq article.open>div p{padding:0 15px 21px 0}.program-closing{color:#fff;background:#4a3024;padding:110px 0;position:relative;overflow:hidden}.program-closing>div{z-index:1;display:flex;position:relative}.program-closing h2{max-width:610px}.program-closing>div>div>p:not(:first-child){color:#f2d8bc;max-width:440px;margin:23px 0;font-size:15px;line-height:1.7}.program-closing .gold{color:var(--p-ink);background:var(--p-gold)}.program-closing .gold span{background:#fff}.program-closing>div>img{width:290px;height:auto;animation:4.5s ease-in-out infinite mascot-float;position:absolute;bottom:-85px;right:3%}.product-modal-backdrop{z-index:50;background:#1e160fd9;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:auto}.product-modal{width:min(680px,100%);max-height:min(760px,100vh - 48px);color:var(--p-ink);background:#fffaf2;padding:48px;position:relative;overflow:auto;box-shadow:0 20px 60px #0005}.product-modal>p:first-of-type{color:#966047;letter-spacing:1.8px;margin:0 0 12px;font-size:10px;font-weight:700}.product-modal h2{letter-spacing:-2px;margin:0;font-family:Georgia,serif;font-size:clamp(36px,5vw,54px);font-weight:400;line-height:1}.product-modal-description{color:var(--p-muted);margin:25px 0;font-size:15px;line-height:1.75}.product-modal h3{margin:26px 0 13px;font-size:15px}.product-modal ul{color:var(--p-muted);gap:10px;margin:0;padding-left:21px;font-size:14px;line-height:1.6;display:grid}.product-modal li::marker{color:#b47b5a}.product-modal-close{width:32px;height:32px;color:var(--p-ink);cursor:pointer;background:#f4eadc;border:0;border-radius:50%;font-size:24px;line-height:1;position:absolute;top:16px;right:16px}.product-modal-consult{background:var(--p-ink);color:#fff;border-radius:99px;margin-top:30px;padding:12px 17px;font-size:12px;font-weight:700;display:inline-flex}.product-modal-formats{margin-top:28px}.product-modal-formats h3{margin:0 0 12px}.product-modal-formats>div{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.product-modal-formats a{min-height:112px;color:var(--p-ink);background:#fff;border:1px solid #dfc8a9;gap:7px;padding:15px 34px 15px 15px;transition:border-color .2s,background .2s;display:grid;position:relative}.product-modal-formats a:hover{background:#f9eddd;border-color:#b47b5a}.product-modal-formats b{font-size:12px}.product-modal-formats span{color:var(--p-muted);font-size:11px;line-height:1.5}.product-modal-formats i{color:#b47b5a;font-size:18px;font-style:normal;position:absolute;bottom:13px;right:14px}@keyframes mascot-float{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-10px)rotate(1deg)}}@media (max-width:780px){.content-wrap{width:min(100% - 40px,620px)}.program-hero-grid{min-height:auto;padding-top:42px;display:block}.program-mascot{height:270px}.program-mascot img{width:280px}.program-hero h1,.program-section h2,.services h2,.approach h2,.faq h2,.program-closing h2{font-size:42px}.program-list{margin-top:35px}.program-list article{grid-template-columns:38px 1fr}.program-detail-trigger{grid-column:2;justify-self:start;margin-top:0}.program-list h3{font-size:23px}.services,.program-section,.approach,.faq{padding:75px 0}.service-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:32px}.service-grid article{min-height:210px;padding:17px}.service-grid h3{font-size:19px}.approach,.faq-grid{grid-template-columns:1fr;gap:35px}.approach-copy img,.faq-grid>div:first-child img{display:none}.program-closing{padding:78px 0}.program-closing>div>img{opacity:.7;width:150px;bottom:-21px;right:-23px}.product-modal{padding:42px 25px 28px}.product-modal-description{font-size:14px}.product-modal-formats>div{grid-template-columns:1fr}.program-formats{padding:72px 0}.program-formats header{grid-template-columns:1fr;gap:22px}.program-formats h2,.program-formats header>p:first-child{grid-column:auto}.program-formats-lead{grid-area:auto}.program-format-accordion{margin-top:30px}.program-format-accordion button{grid-template-columns:36px 1fr auto;gap:10px;padding:20px 0}.program-format-accordion button strong{font-size:23px}.program-format-accordion button b{width:27px;height:27px;font-size:20px}.program-format-panel>div{gap:18px;padding-bottom:24px}.program-format-overview{grid-template-columns:1fr;gap:18px}.program-format-video{grid-template-columns:1fr;gap:16px;padding:18px}.program-format-video h3{font-size:23px}.program-format-copy{padding:0}.format-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.format-gallery-grid-private{grid-template-columns:repeat(2,minmax(0,1fr))}.format-gallery-grid figcaption{min-height:82px;padding:9px 10px 10px}}
.program-page{color:#182a69;background:#fff}.program-hero{background:#eaf0ff}.back-link{color:#7180b4}.program-eyebrow,.program-section header p,.services header p,.approach p,.faq p,.program-closing>div>div>p:first-child{color:#6579b8}.program-lead,.program-list p,.approach-steps p,.faq article>div p{color:#667096}.program-button{background:#182a69}.program-button span,.program-list article>a{color:#182a69;background:#f5a623}.program-list,.program-list article,.approach-steps,.approach-steps article{border-color:#d8dfef}.program-list article>span,.approach-steps span{color:#7183bc}.program-list li{color:#4c609c;background:#edf1fb}.services{background:#182a69}.services header p{color:#bdcaf0}.service-grid article{background:#25449b}.service-grid article:nth-child(2){background:#3661c1}.service-grid article:nth-child(3){color:#182a69;background:#f5a623}.service-grid article:nth-child(4){color:#182a69;background:#fff}.faq{background:#edf2ff}.faq article,.faq article:last-child{border-color:#cdd7ef}.faq button{color:#182a69}.program-closing{background:#182a69}.program-closing>div>div>p:not(:first-child){color:#cfdbff}.program-closing .gold{color:#182a69;background:#f5a623}
