@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap";.site-nav{flex-direction:row!important;justify-content:space-between!important;align-items:flex-start!important;display:flex!important}.site-nav .brand-mark{flex-direction:column!important;align-items:flex-start!important;gap:7px!important;width:auto!important;height:auto!important;display:inline-flex!important}.site-nav .brand-mark img{object-fit:contain;max-height:66px;border-radius:0!important;width:96px!important;height:auto!important}.site-nav .brand-mark .brand-slogan{line-height:1.05;width:auto!important;height:auto!important;color:var(--ink)!important;background:0 0!important;border-radius:0!important;margin:0!important;padding:0!important;font-size:17px!important;display:block!important}.site-nav .nav-actions{gap:6px;align-self:flex-start!important;margin-left:auto!important;display:flex!important}@media (width<=760px){.site-nav{gap:10px;width:calc(100% - 32px)!important;padding:18px 0 16px!important}.site-nav .brand-mark{flex:auto;max-width:170px}.site-nav .brand-mark img{max-height:60px;width:86px!important}.site-nav .brand-mark .brand-slogan{max-width:150px;font-size:16px!important}.site-nav .nav-actions{flex:none;margin-left:auto!important}.site-nav .nav-actions .button{min-height:42px;padding:9px 12px!important;font-size:13px!important}}html body .site-nav{flex-direction:row!important;justify-content:space-between!important;align-items:flex-start!important;display:flex!important}html body .site-nav .nav-actions{align-self:flex-start!important;margin-left:auto!important;display:flex!important}html body .site-nav .brand-slogan{width:auto!important;height:auto!important;color:var(--ink)!important;background:0 0!important;border-radius:0!important;font-size:17px!important;display:block!important}@media (width<=760px){html body .site-nav{gap:10px;flex-direction:row!important;width:calc(100% - 32px)!important;display:flex!important}html body .site-nav .brand-mark{flex:auto;max-width:170px}html body .site-nav .nav-actions{flex:none}}.site-nav .brand-mark,.site-footer .brand-mark{justify-content:flex-start;width:auto;height:auto;flex-direction:column!important;align-items:flex-start!important;gap:7px!important;display:inline-flex!important}.site-nav .brand-mark img,.site-footer .brand-mark img{object-fit:contain;object-position:left center;max-height:66px;display:block;background:0 0!important;border-radius:0!important;width:96px!important;height:auto!important}.site-nav .brand-mark .brand-slogan,.site-footer .brand-mark .brand-slogan{font-weight:700;line-height:1.05;width:auto!important;min-width:0!important;height:auto!important;min-height:0!important;color:var(--ink)!important;background:0 0!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;font-size:17px!important;display:block!important}.site-footer .brand-mark .brand-slogan{color:var(--cream)!important}.site-nav{justify-content:space-between!important;align-items:flex-start!important;width:min(1160px,100% - 64px)!important;min-height:0!important;padding:20px 0 16px!important;display:flex!important}.site-nav .nav-actions{align-self:flex-start;gap:8px;margin-left:auto;display:flex!important}@media (width<=760px){.site-nav{gap:10px;flex-direction:row!important;align-items:flex-start!important;width:calc(100% - 32px)!important;padding:18px 0 16px!important;display:flex!important}.site-nav .brand-mark{flex:auto;max-width:170px;min-width:0!important}.site-nav .brand-mark img{max-height:60px;width:86px!important}.site-nav .brand-mark .brand-slogan{max-width:150px;font-size:16px!important}.site-nav .nav-actions{flex:none;align-self:flex-start;gap:5px;margin-left:auto}.site-nav .nav-actions .button{min-height:42px;padding:9px 12px!important;font-size:13px!important}.site-footer .brand-mark{width:auto}.site-footer .brand-mark img{width:86px!important}}:root{--paper:#f5f1eb;--ink:#26342f;--coral:#e77c5b;--sage:#dce8df;--peach:#f6d9cb;--cream:#fffaf3}.site-nav .brand-mark,.site-footer .brand-mark{flex-direction:column;align-items:flex-start;gap:8px;font-size:0;line-height:1;display:inline-flex!important}.site-nav .brand-mark img,.site-footer .brand-mark img{object-fit:contain;object-position:left center;border-radius:0!important;width:88px!important;height:58px!important}.site-nav .brand-mark>span:not(.brand-slogan),.site-footer .brand-mark>span:not(.brand-slogan){border-radius:12px;width:58px!important;height:58px!important}.brand-slogan{color:var(--ink);letter-spacing:-.02em;font-size:16px;font-weight:700;line-height:1.05;display:block}.site-nav{align-items:flex-start!important}.site-nav .nav-actions{align-self:center}.site-footer .brand-slogan{color:var(--cream)}.auth-page,.portal-page,.admin-page{background:var(--paper);color:var(--ink)}.auth-card,.class-form,.student-class-card{background:var(--cream);border-color:#d8ded8}.button-primary{background:var(--coral)}.button-primary:hover{background:#d96749}@media (width<=760px){.site-nav{grid-template-columns:minmax(0,1fr) auto;gap:14px 10px;align-items:start!important;padding:18px 0 16px!important;display:grid!important}.site-nav .brand-mark{align-items:flex-start;gap:7px}.site-nav .brand-mark img{width:96px!important;height:66px!important}.site-nav .brand-mark>span:not(.brand-slogan){width:62px!important;height:62px!important}.site-nav .brand-slogan{max-width:150px;font-size:17px}.site-nav .nav-actions{align-self:start;gap:6px}.site-nav .nav-actions .button{min-height:44px;padding:10px 14px!important;font-size:14px!important}.site-footer .brand-mark img{width:96px!important;height:66px!important}.site-footer .brand-slogan{font-size:18px}}.hero-art{background:#26342f!important}.hero-art:after{display:none!important}.hero-art video{width:100%;height:100%;min-height:inherit;object-fit:cover;border-radius:inherit;display:block}.video-missing{min-height:inherit;color:#fffaf3;text-align:center;place-items:center;padding:24px;display:grid}.brand-mark img{width:52px!important;height:52px!important}@media (width<=760px){.brand-mark img{width:46px!important;height:46px!important}.hero-art video{min-height:300px}}@media (width>=761px){.hero h1{font-size:clamp(68px,8.6vw,116px)}}@media (width<=760px){.site-nav{flex-wrap:nowrap;gap:6px}.site-nav .brand-mark{min-width:132px}.site-nav .nav-links{flex:none;gap:3px;margin-left:auto;display:flex!important}.site-nav .header-social{place-items:center;width:25px;height:28px;font-size:0;display:grid}.site-nav .header-social svg{width:18px;height:18px}.site-nav .nav-actions{flex:none;gap:2px;margin-left:0;display:flex}.site-nav .nav-actions .button-text{padding:7px 5px;font-size:12px;display:inline-block}.site-nav .nav-actions .button-outline{padding:8px 9px;font-size:12px}}.site-nav{border-bottom:1px solid #d8ded8;max-width:none;background:0 0!important;width:min(1160px,100% - 64px)!important;min-height:0!important;padding:22px 0 18px!important}.site-nav .brand-mark{color:#26342f;gap:12px;font-size:15px}.site-nav .nav-actions{align-items:center;gap:10px;display:flex}.site-nav .nav-actions .button{letter-spacing:.01em;border-radius:999px;min-height:44px;padding:10px 20px!important;font-size:14px!important}.site-nav .nav-actions .button-text{color:#d96749;background:0 0;border:1px solid #e9b999}.site-nav .nav-actions .button-text:hover{background:#fff4eb}.site-nav .nav-actions .button-outline{color:#fffaf3;background:#26342f;border-color:#26342f}.site-nav .nav-actions .button-outline:hover{color:#fffaf3;background:#e77c5b;border-color:#e77c5b}@media (width<=760px){.site-nav{flex-wrap:nowrap;gap:12px;width:calc(100% - 32px)!important;padding:18px 0 16px!important;display:flex!important}.site-nav .brand-mark{flex:auto;gap:10px;min-width:0;font-size:14px}.site-nav .brand-mark img,.site-nav .brand-mark span{width:50px!important;height:50px!important}.site-nav .nav-actions{flex:none;gap:6px}.site-nav .nav-actions .button{min-height:42px;padding:9px 13px!important;font-size:13px!important}}.site-nav{background:#dce8df;width:100%;max-width:none;padding:22px max(32px,50vw - 580px)}.site-nav .nav-actions{margin-left:auto}.site-nav .brand-mark{padding:7px 0}.footer-contact{gap:18px;margin-top:24px;display:grid}.footer-contact>p{color:#f7d5c6;font-size:25px}.footer-socials{gap:16px;display:flex}.footer-social{color:#fffaf3;background:#ffffff10;border:1px solid #ffffff40;border-radius:16px;align-items:center;gap:16px;min-width:250px;padding:18px 20px;font-size:22px;font-weight:700;transition:transform .22s,background .22s,box-shadow .22s;display:flex;box-shadow:0 7px #17251f}.footer-social svg{color:#e77c5b;width:34px;height:34px}.footer-social.instagram-link svg{color:#e9b999}.footer-social b{color:#f7d5c6;margin-left:auto}.footer-social:hover,.footer-social:focus-visible{background:#ffffff1c;transform:translateY(-4px);box-shadow:0 11px #17251f}.footer-social:active{transform:translateY(2px);box-shadow:0 3px #17251f}@media (width<=760px){.site-nav{background:#dce8df;width:100%;padding:20px 16px 22px}.site-nav .brand-mark{min-width:0}.footer-socials{gap:14px;display:grid}.footer-social{width:100%;min-width:0;min-height:76px;padding:16px 18px;font-size:24px}.footer-social svg{width:38px;height:38px}}.site-nav{min-height:76px}.site-nav .brand-mark{gap:14px;font-size:16px}.site-nav .brand-mark img,.site-nav .brand-mark span{width:58px!important;height:58px!important}.site-nav .brand-mark strong{line-height:1}.site-nav .header-social{font-size:15px}.site-nav .header-social svg{width:21px;height:21px}.site-nav .nav-actions .button{font-size:15px}@media (width<=760px){.site-nav{grid-template-columns:1fr;gap:18px;padding:20px 0 24px;display:grid!important}.site-nav .brand-mark{gap:14px;min-width:0;font-size:18px}.site-nav .brand-mark img,.site-nav .brand-mark span{width:64px!important;height:64px!important}.site-nav .nav-links{justify-content:flex-start;gap:22px;margin:0;display:flex!important}.site-nav .header-social{gap:8px;width:auto;height:auto;font-size:17px;display:inline-flex}.site-nav .header-social svg{width:26px;height:26px}.site-nav .nav-actions{gap:10px;margin:0;display:flex}.site-nav .nav-actions .button-text,.site-nav .nav-actions .button-outline{padding:13px 22px;font-size:17px}.site-nav .nav-actions .button-text{border:1px solid #e9b999;border-radius:999px}}.landing-page{overflow-x:hidden}@media (width<=760px){.page-width{width:calc(100% - 32px)!important}.site-nav{gap:12px;padding:18px 0;display:flex}.brand-mark{flex-shrink:0;font-size:12px}.brand-mark span{width:32px;height:32px}.nav-links{gap:8px;margin-left:auto;display:flex!important}.header-social{font-size:0}.header-social svg{width:21px;height:21px}.nav-actions{margin-left:auto}.nav-actions .button-text{padding-inline:7px;display:inline-block}.button-small{padding:9px 13px}.hero{padding:54px 0 72px;grid-template-columns:none!important;display:block!important}.hero h1{max-width:310px;margin:16px 0 22px;font-size:clamp(58px,18vw,76px);line-height:.88}.hero-text{max-width:300px;font-size:16px;line-height:1.55}.hero-actions{align-items:center;gap:18px;margin-top:28px}.hero-actions .button-primary{max-width:150px;padding:14px 18px;line-height:1.25}.text-link{max-width:110px;line-height:1.35}.hero-art{border-radius:46% 46% 12px 12px;min-height:300px;margin-top:48px;width:100%!important}.sun-shape{width:80px;height:80px;top:28px;right:30px}.art-label{font-size:17px;bottom:24px;left:22px}.art-label strong{font-size:24px}.media-section{gap:0;padding:68px 0;grid-template-columns:none!important;display:block!important}.capacities-section{gap:0;grid-template-columns:none!important;padding:54px 0 0!important;display:block!important}.section-heading h2{line-height:.96;font-size:48px!important}.section-heading.compact{display:block!important}.media-frame{width:100%;min-height:280px;margin-top:30px}.media-frame img,.media-frame video,.media-placeholder{height:280px;min-height:280px}.media-upload{max-width:calc(100% - 24px);padding:9px 11px;bottom:12px;right:12px}.capacity-grid{margin-top:35px;grid-template-columns:1fr 1fr!important}.capacity{border:1px solid #cbd4ce;min-height:190px;padding:22px 16px 20px 14px}.capacity+.capacity{border-left:0;padding-left:16px}.capacity:first-child{background:#f6d9cb}.capacity:nth-child(2){background:#dce8df}.capacity:nth-child(3){background:#f1e0bd}.capacity:nth-child(4){background:#d9e5e8}.capacity h3{letter-spacing:-.05em;margin-top:34px;font-size:24px!important}.capacity p{max-width:150px;line-height:1.35;font-size:15px!important}.site-footer{color:#fffaf3;background:#26342f;border-top:0;width:100%!important;margin-top:0!important;padding:52px 16px!important;display:block!important}.site-footer .brand-mark{color:#fffaf3}.footer-motto{color:#f7d5c6;font-size:25px}.footer-contact{gap:16px;margin-top:42px;font-size:17px;display:grid}.footer-contact p{color:#f7d5c6;font-size:20px}.footer-contact a{color:#fffaf3}.capacity{transition:transform .3s,box-shadow .3s,border-color .3s;position:relative;overflow:hidden;transform:translateY(0)}.capacity:after{content:"";opacity:.16;border:1px solid;border-radius:50%;width:110px;height:110px;transition:transform .4s;position:absolute;bottom:-35px;right:-25px}.capacity:hover,.capacity:focus-within{border-color:#e77c5b;transform:translateY(-8px);box-shadow:0 16px 24px #26342f18}.capacity:hover:after,.capacity:focus-within:after{transform:scale(1.45)}.capacity-mark{color:#e77c5b;border:1px solid;border-radius:50%;place-items:center;width:40px;height:40px;font-size:22px;line-height:1;transition:transform .3s,background .3s;display:grid;position:absolute;top:18px;right:20px}.capacity:hover .capacity-mark,.capacity:focus-within .capacity-mark{background:#fffaf3aa;transform:rotate(18deg)scale(1.1)}.capacity-number{animation:.7s both capacity-rise;animation-delay:calc(var(--card-index) * 90ms);display:inline-block}.capacity h3{animation:.7s both capacity-rise;animation-delay:calc(80ms + var(--card-index) * 90ms)}.capacity p{animation:.7s both capacity-rise;animation-delay:calc(.14s + var(--card-index) * 90ms)}.social-link{border:1px solid #ffffff40;border-radius:14px;align-items:center;gap:14px;min-width:220px;padding:16px 18px;font-size:20px;font-weight:700;transition:transform .2s,background .2s,box-shadow .2s;display:flex;box-shadow:0 8px #17251f;color:#fffaf3!important}.social-link:hover,.social-link:focus-visible{background:#ffffff16;transform:translateY(-4px);box-shadow:0 12px #17251f}.social-link:active{transform:translateY(2px);box-shadow:0 4px #17251f}.social-icon{color:#fffaf3;background:#e77c5b;border-radius:12px;place-items:center;width:42px;height:42px;font-size:29px;line-height:1;display:grid}.social-icon svg{width:25px;height:25px}.instagram-link .social-icon{color:#26342f;background:#e9b999}.social-link b{color:#f7d5c6;margin-left:auto;font-size:18px}@keyframes capacity-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=760px){.capacity-mark{width:34px;height:34px;font-size:19px;top:14px;right:14px}.capacity{min-height:205px}.capacity h3{margin-top:42px;font-size:25px!important}.capacity p{font-size:16px!important}.social-link{width:100%;min-width:0;padding:17px 16px;font-size:22px}.social-icon{width:48px;height:48px;font-size:32px}}@media (prefers-reduced-motion:reduce){.capacity,.capacity:after,.capacity-mark,.social-link,.capacity-number,.capacity h3,.capacity p{transition:none;animation:none}}@media (width<=760px){.capacities-section{padding:58px 16px 0!important}.capacities-section .section-heading h2{font-size:43px!important}.capacity-grid{gap:10px;margin-top:28px;grid-template-columns:1fr!important;display:grid!important}.capacity{border-radius:18px;grid-template-rows:auto auto;grid-template-columns:46px 1fr;display:grid;box-shadow:0 5px #26342f18;border:0!important;min-height:0!important;padding:20px 18px!important}.capacity:after{bottom:-55px;right:-35px}.capacity-number{color:#e77c5b;grid-area:1/1/span 2;align-self:start;font-size:16px;font-weight:700}.capacity-mark{color:#e77c5b;background:#fffaf3aa;border:0;width:32px;height:32px;font-size:14px;font-weight:700;top:14px;right:16px}.capacity h3{grid-area:1/2;padding-right:38px;line-height:1.05;margin:0!important;font-size:27px!important}.capacity p{grid-area:2/2;max-width:210px;margin-top:7px;line-height:1.3;font-size:16px!important}.site-footer{padding:42px 20px!important}.footer-motto{margin-top:18px;font-size:27px}.footer-contact{gap:12px;margin-top:28px}.footer-contact p{margin-bottom:4px;font-size:25px}.social-link{border-radius:16px;min-height:66px;padding:10px 14px;font-size:21px}.social-icon{border-radius:11px;width:44px;height:44px;font-size:17px;font-weight:800}.social-icon svg{width:26px;height:26px}}}.student-class-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.student-class-card{background:#fffaf3;border-radius:14px;overflow:hidden}.student-thumbnail{background:#c9d9cf;width:100%;height:190px;display:block;position:relative;overflow:hidden}.student-thumbnail img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.student-thumbnail:hover img{transform:scale(1.04)}.thumbnail-number{color:#fffaf3;font-size:12px;font-weight:700;position:absolute;top:16px;left:16px}.play-button{color:#e77c5b;background:#fffaf3;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;bottom:16px;right:17px}.student-class-info{padding:18px}.student-class-info>p{color:#e77c5b;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.student-class-info h3{letter-spacing:-.04em;min-height:49px;margin:9px 0 13px;font-size:19px}.student-class-info>div{gap:7px;display:flex}.student-class-info>div span,.player-details>span{color:#68736e;background:#eaf0eb;border-radius:999px;padding:5px 9px;font-size:10px}.watch-link{color:#26342f;background:0 0;margin-top:16px;padding:0;font-size:12px;font-weight:700}.class-count{color:#68736e;font-size:11px}.player-overlay{z-index:20;background:#26342fcc;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.player-modal{background:#fffaf3;border-radius:16px;width:min(780px,100%);position:relative;overflow:hidden}.player-modal>video{background:#17211d;width:100%;max-height:65vh;display:block}.player-placeholder{text-align:center;background:linear-gradient(135deg,#b6cfbf,#edb69e);place-content:center;justify-items:center;min-height:350px;display:grid}.player-placeholder span{color:#e77c5b;background:#fffaf3;border-radius:50%;place-items:center;width:55px;height:55px;font-size:13px;font-weight:700;display:grid}.player-placeholder p{margin-top:18px;font-weight:700}.player-placeholder small{color:#68736e;margin-top:6px}.player-close{z-index:1;color:#fffaf3;background:#26342fcc;border-radius:50%;width:32px;height:32px;font-size:22px;line-height:1;position:absolute;top:13px;right:13px}.player-details{padding:22px 25px 26px}.player-details p{color:#e77c5b;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.player-details h2{letter-spacing:-.05em;margin:8px 0 14px;font-size:28px}html,body,#root{min-height:100%;margin:0}*{box-sizing:border-box}body{color:#26342f;background:#f5f1eb;font-family:DM Sans,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;border:0}.app-shell{min-height:100vh;overflow:hidden}.brand-mark img{object-fit:cover;border-radius:50%;width:35px;height:35px}.header-social{color:#68736e;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.header-social svg{color:#e77c5b;width:16px;height:16px}.header-social:hover{color:#e77c5b}.presentation-link{justify-content:center;padding:30px 0 70px;display:flex}.site-footer.page-width{margin-top:0}@media (width<=760px){.page-width{width:min(100% - 38px,540px)}.nav-links{display:none}.site-nav{padding:20px 0}.hero{padding:58px 0 65px;display:block}.hero h1{font-size:68px}.hero-art{min-height:340px;margin-top:48px}.media-section,.capacities-section{padding:70px 0;display:block}.media-frame{min-height:300px;margin-top:35px}.media-frame img,.media-frame video,.media-placeholder{height:300px;min-height:300px}.section-heading.compact{display:block}.capacity-grid{grid-template-columns:repeat(2,1fr);margin-top:35px}.capacity+.capacity{padding-left:14px}.capacity{min-height:170px;padding-right:14px}.capacity h3{margin-top:25px}.site-footer{margin-top:30px;padding-bottom:40px;display:block}.footer-contact{flex-wrap:wrap;margin-top:35px}.footer-contact p{width:100%}.auth-card{padding:32px 25px}.back-button{left:19px}.portal-welcome{padding:60px 0;display:block}.welcome-badge{margin-top:35px}.class-grid{grid-template-columns:1fr}.class-visual{min-height:145px}.next-step{padding:28px;display:block}.next-step .button{margin-top:25px}.admin-intro{padding:55px 0;display:block}.admin-stat{margin-top:30px}.admin-layout{grid-template-columns:1fr;gap:45px}.admin-header-actions>span{display:none}.form-row{grid-template-columns:1fr}}.page-width{width:min(1160px,100% - 64px);margin:0 auto}.landing-page{background:#f5f1eb}.site-nav{justify-content:space-between;align-items:center;padding:26px 0;display:flex}.brand-mark{color:#26342f;letter-spacing:-.02em;align-items:center;gap:10px;font-size:13px;line-height:.95;display:flex}.brand-mark span,.auth-brand span{color:#fffaf3;background:#e77c5b;border-radius:50%;place-items:center;width:35px;height:35px;font-size:11px;font-weight:700;display:grid}.brand-mark strong{font-weight:700}.nav-links{color:#68736e;gap:32px;font-size:13px;display:flex}.nav-links a:hover,.footer-contact a:hover{color:#e77c5b}.button{border-radius:999px;padding:15px 22px;font-size:13px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-small{padding:10px 17px}.button-outline{color:#26342f;background:0 0;border:1px solid #adbbb4}.button-primary{color:#fffaf3;background:#e77c5b}.button-dark{color:#fffaf3;background:#26342f}.screen-transition{animation:.42s cubic-bezier(.22,1,.36,1) both screen-enter}.button,.nav-links a,.text-link,.brand-mark,.portal-user button,.watch-link,.media-controls button,.media-upload{transition:transform .2s cubic-bezier(.22,1,.36,1),background-color .2s,color .2s,border-color .2s,box-shadow .2s,opacity .2s}.button:hover,.media-upload:hover{transform:translateY(-2px)scale(1.015)}.button:active,.media-upload:active,.media-controls button:active{transform:translateY(1px)scale(.975)}.button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:4px;outline:3px solid #e9b999}label:has(input:focus-visible){outline-offset:4px;outline:3px solid #e9b999}.button:disabled{cursor:wait;opacity:.55;transform:none}.button-primary:hover{background:#d96749;box-shadow:0 8px 18px #e77c5b40}.button-outline:hover{color:#e77c5b;background:#fffaf3;border-color:#e77c5b}.button-text:hover,.text-link:hover,.nav-links a:hover{color:#d96749}.text-link:hover{transform:translate(4px)}.hero-copy,.section-heading,.hero-art{animation:.7s cubic-bezier(.22,1,.36,1) both content-rise}.hero-art{animation-delay:.12s}.media-frame{transition:box-shadow .35s,transform .35s cubic-bezier(.22,1,.36,1)}.media-frame:hover{transform:translateY(-4px);box-shadow:0 18px 36px #26342f18}.capacity-grid>.capacity,.student-class-grid>.student-class-card{animation:.6s cubic-bezier(.22,1,.36,1) both card-enter;animation-delay:calc(var(--card-index,0) * 80ms)}.student-class-card{transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s}.student-class-card:hover{transform:translateY(-6px);box-shadow:0 16px 28px #26342f1c}.student-thumbnail:focus-visible{outline-offset:-4px}.student-thumbnail:hover .play-button{transform:scale(1.08);box-shadow:0 8px 18px #26342f25}.play-button{transition:transform .22s,box-shadow .22s}.nav-links a:hover{transform:translateY(-1px)}.brand-mark:hover span{transform:rotate(-8deg)scale(1.06)}.brand-mark span{transition:transform .25s cubic-bezier(.22,1,.36,1)}.media-controls button:hover{background:#e77c5b;transform:scale(1.08)}.social-link:focus-visible{outline-color:#f7d5c6}.skeleton{background:linear-gradient(100deg,#e6ebe7 20%,#f8faf8 42%,#e6ebe7 62%) 0 0/220% 100%;border-radius:10px;animation:1.3s ease-in-out infinite skeleton-shimmer;display:block}.skeleton-eyebrow{width:110px;height:12px;margin-bottom:24px}.skeleton-title{width:80%;height:48px;margin-bottom:18px}.skeleton-line{width:100%;height:14px;margin-top:12px}.skeleton-line.short{width:65%}.animated-metric{min-width:1ch;display:inline-block}.capacity:hover,.capacity:focus-within{transform:translateY(-6px)!important;box-shadow:0 14px 24px #26342f22!important}.student-class-grid>.student-class-card:nth-child(2){animation-delay:80ms}.student-class-grid>.student-class-card:nth-child(3){animation-delay:.16s}@keyframes screen-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes content-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes card-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes skeleton-shimmer{to{background-position:-220% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.eyebrow{color:#e77c5b;letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:700}h1,h2,h3,p{margin:0}h1 em,h2 em{color:#e77c5b;letter-spacing:-.05em;font-family:Playfair Display,serif;font-weight:600}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding:82px 0 105px;display:grid}.hero h1{color:#26342f;letter-spacing:-.075em;margin:18px 0 24px;font-size:clamp(58px,8vw,104px);line-height:.91}.hero-text{color:#68736e;max-width:420px;font-size:17px;line-height:1.6}.hero-actions{align-items:center;gap:24px;margin-top:34px;display:flex}.text-link{color:#26342f;font-size:13px;font-weight:700}.hero-art{background:linear-gradient(145deg,#c9d9cf,#e9b999);border-radius:48% 48% 8px 8px;min-height:490px;position:relative;overflow:hidden}.hero-art:after{mix-blend-mode:multiply;content:"";opacity:.68;background:url(https://images.unsplash.com/photo-1518611012118-696072aa579a?auto=format&fit=crop&w=900&q=85) 50%/cover;position:absolute;inset:0}.sun-shape{background:#f2c28b;border-radius:50%;width:120px;height:120px;position:absolute;top:45px;right:62px}.art-label,.art-number{z-index:1;color:#fffaf3;position:absolute}.art-label{font-size:21px;line-height:1.15;bottom:38px;left:34px}.art-label strong{font-family:Playfair Display,serif;font-size:29px;font-style:italic}.art-number{letter-spacing:.1em;font-size:11px;font-weight:700;top:22px;left:28px}.media-section,.capacities-section{grid-template-columns:.75fr 1.25fr;align-items:center;gap:90px;padding:105px 0;display:grid}.section-heading h2{letter-spacing:-.07em;margin:14px 0 20px;font-size:clamp(38px,5vw,64px);line-height:.98}.section-heading>p:last-child{color:#68736e;max-width:330px;line-height:1.55}.media-frame{background:#d8e2dc;border-radius:22px;min-height:410px;position:relative;overflow:hidden}.media-frame img{object-fit:cover;width:100%;height:410px}.media-placeholder{color:#26342f;background:linear-gradient(125deg,#c8d7cc 0%,#f4c5a8 100%);place-content:center;justify-items:center;min-height:410px;display:grid}.media-placeholder p{margin-top:18px;font-size:20px;font-weight:700}.media-placeholder small{color:#68736e;margin-top:7px}.play-icon{color:#e77c5b;background:#fffaf3;border-radius:50%;place-items:center;width:58px;height:58px;padding-left:3px;font-size:17px;display:grid}.media-upload{color:#26342f;cursor:pointer;background:#fffaf3;border-radius:999px;padding:10px 14px;font-size:11px;font-weight:700;position:absolute;bottom:18px;right:18px}.media-upload input{display:none}.media-controls{color:#fffaf3;align-items:center;gap:9px;font-size:11px;display:flex;position:absolute;bottom:17px;left:18px}.media-controls button{color:#fffaf3;background:#26342f;border-radius:50%;width:28px;height:28px}.capacities-section{padding-top:50px;display:block}.section-heading.compact{justify-content:space-between;align-items:end;display:flex}.capacity-grid{border-top:1px solid #cbd4ce;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:65px;display:grid}.capacity{border-bottom:1px solid #cbd4ce;min-height:205px;padding:24px 20px 20px 0}.capacity+.capacity{border-left:1px solid #cbd4ce;padding-left:20px}.capacity span{color:#e77c5b;font-size:12px;font-weight:700}.capacity h3{margin:40px 0 10px;font-size:20px}.capacity p{color:#68736e;font-size:13px;line-height:1.5}.site-footer{border-top:1px solid #cbd4ce;justify-content:space-between;align-items:end;margin-top:90px;padding:55px 0 60px;display:flex}.footer-motto{color:#68736e;margin-top:22px;font-family:Playfair Display,serif;font-size:19px;font-style:italic}.footer-contact{color:#e77c5b;align-items:center;gap:22px;font-size:13px;font-weight:700;display:flex}.footer-contact p{color:#68736e;margin-right:10px;font-weight:400}.auth-page{background:radial-gradient(circle at 85% 15%,#f3c3a2 0,#0000 25%),#f5f1eb;place-items:center;min-height:100vh;padding:30px;display:grid}.back-button{color:#68736e;background:0 0;font-size:13px;position:fixed;top:28px;left:32px}.auth-card{background:#fffaf3;border:1px solid #d9dfda;border-radius:22px;width:min(100%,430px);padding:45px;box-shadow:0 20px 60px #26342f10}.auth-brand{align-items:center;gap:10px;margin-bottom:65px;font-size:13px;line-height:.95;display:flex}.auth-brand p{font-weight:500}.auth-card h1{letter-spacing:-.07em;margin:14px 0 13px;font-size:42px}.auth-intro{color:#68736e;line-height:1.55}.auth-card form{gap:18px;margin-top:30px;display:grid}.auth-card label{color:#26342f;font-size:12px;font-weight:700}.form-input{color:#26342f;background:0 0;border:1px solid #cbd4ce;border-radius:9px;outline:none;width:100%;margin-top:8px;padding:14px;display:block}.form-input:focus{border-color:#e77c5b}.full-button{width:100%;margin-top:5px}.help-link{color:#e77c5b;background:0 0;margin:20px auto 0;font-size:16px;font-weight:700;display:block}.demo-note{color:#99a39d;text-align:center;margin-top:32px;font-size:11px}.form-error{color:#bd4d39;font-size:12px}.portal-page{background:#f5f1eb;min-height:100vh}.portal-header{border-bottom:1px solid #d8e0da;justify-content:space-between;align-items:center;padding:24px 0;display:flex}.portal-user{color:#68736e;align-items:center;gap:22px;font-size:13px;display:flex}.portal-user button,.see-all{color:#e77c5b;background:0 0;font-size:12px;font-weight:700}.portal-welcome{justify-content:space-between;align-items:center;padding:85px 0 80px;display:flex}.portal-welcome h1{letter-spacing:-.08em;margin:14px 0 18px;font-size:clamp(50px,7vw,80px);line-height:.92}.portal-welcome p:not(.eyebrow){color:#68736e;max-width:400px;line-height:1.55}.welcome-badge{text-align:center;background:#c9d9cf;border-radius:50%;place-content:center;min-width:175px;min-height:175px;display:grid}.welcome-badge span,.welcome-badge small{color:#68736e;font-size:11px}.welcome-badge strong{letter-spacing:-.06em;margin:9px 0 3px;font-size:27px}.portal-content{padding-bottom:80px}.portal-title{justify-content:space-between;align-items:end;margin-bottom:25px;display:flex}.portal-title h2{letter-spacing:-.05em;margin-top:10px;font-size:30px}.class-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.class-card{background:#fffaf3;border-radius:14px;overflow:hidden}.class-visual{justify-content:space-between;min-height:175px;padding:18px;display:flex}.peach .class-visual{background:#edb69e}.sage .class-visual{background:#b6cfbf}.blue .class-visual{background:#b7cad1}.class-visual span{color:#fffaf3;font-size:12px;font-weight:700}.class-visual button{color:#e77c5b;background:#fffaf3;border-radius:50%;align-self:end;width:42px;height:42px}.class-info{padding:18px}.class-info p{color:#e77c5b;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.class-info h3{letter-spacing:-.04em;min-height:50px;margin:9px 0 15px;font-size:19px}.class-info button{color:#26342f;background:0 0;padding:0;font-size:12px;font-weight:700}.next-step{color:#fffaf3;background:#26342f;border-radius:15px;justify-content:space-between;align-items:center;gap:30px;margin-top:75px;padding:35px 40px;display:flex}.next-step h2{letter-spacing:-.05em;margin:10px 0 8px;font-size:28px}.next-step p:not(.eyebrow){color:#bfcac2;font-size:13px}.nav-actions{align-items:center;gap:8px;display:flex}.button-text{color:#e77c5b;background:0 0}.teacher-entry{color:#26342f;background:0 0;margin:24px auto 0;font-size:12px;font-weight:700;display:block}.admin-page{background:#f5f1eb;min-height:100vh}.admin-header{border-bottom:1px solid #d8e0da;justify-content:space-between;align-items:center;padding:24px 0;display:flex}.admin-brand{text-align:left;background:0 0;border:0}.admin-header-actions{color:#68736e;align-items:center;gap:25px;font-size:12px;display:flex}.admin-header-actions button{color:#e77c5b;background:0 0;font-weight:700}.admin-intro{justify-content:space-between;align-items:end;padding:75px 0 65px;display:flex}.admin-intro h1{letter-spacing:-.08em;margin:14px 0 18px;font-size:clamp(48px,6vw,76px);line-height:.92}.admin-intro p:not(.eyebrow){color:#68736e;max-width:470px;line-height:1.55}.admin-stat{text-align:center;background:#e9b999;border-radius:50%;place-content:center;width:145px;height:145px;display:grid}.admin-stat strong{letter-spacing:-.08em;font-size:42px}.admin-stat span{color:#68736e;font-size:11px;line-height:1.1}.admin-layout{grid-template-columns:minmax(320px,.85fr) minmax(400px,1.15fr);gap:70px;padding-bottom:90px;display:grid}.class-form{background:#fffaf3;border-radius:16px;align-content:start;gap:18px;padding:30px;display:grid}.form-heading,.list-heading{justify-content:space-between;align-items:start;margin-bottom:12px;display:flex}.form-heading h2,.list-heading h2{letter-spacing:-.06em;margin-top:8px;font-size:28px}.form-step{color:#e77c5b;font-size:12px;font-weight:700}.class-form label{color:#26342f;font-size:12px;font-weight:700}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.video-drop{cursor:pointer;text-align:center;background:#fff4eb;border:1px dashed #e77c5b;border-radius:10px;gap:7px;padding:25px 18px;display:grid;color:#e77c5b!important}.video-drop span{color:#68736e;font-size:11px;font-weight:400}.video-drop input{display:none}.form-success{color:#498068;font-size:11px;line-height:1.4}.list-heading{border-bottom:1px solid #cbd4ce;align-items:end;padding-bottom:15px}.list-heading>span{color:#68736e;font-size:11px}.admin-class{border-bottom:1px solid #d8e0da;grid-template-columns:74px 1fr auto;align-items:center;gap:15px;padding:16px 0;display:grid}.admin-class-thumb{color:#fffaf3;background:#c9d9cf;border-radius:8px;place-items:center;width:74px;height:60px;font-size:12px;font-weight:700;display:grid;overflow:hidden}.admin-class-thumb video{object-fit:cover;width:100%;height:100%}.admin-class p{color:#e77c5b;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.admin-class h3{letter-spacing:-.04em;margin:6px 0;font-size:17px}.admin-class small{color:#99a39d;font-size:11px}.admin-class>button{color:#68736e;letter-spacing:2px;background:0 0}.admin-class-thumb img{object-fit:cover;width:100%;height:100%}.legal-page{min-height:100vh;padding:90px 0}.legal-card{background:#fffaf3;border-radius:18px;max-width:760px;margin:0 auto;padding:clamp(28px,6vw,56px);box-shadow:0 20px 50px #26342f12}.legal-card h1{letter-spacing:-.07em;margin:14px 0;font-size:clamp(38px,6vw,62px)}.legal-card h2{margin:34px 0 10px;font-size:22px}.legal-card p{color:#68736e;line-height:1.65}.legal-card a{color:#e77c5b;font-weight:700}.legal-back{position:absolute}.footer-legal{color:#68736e;text-underline-offset:3px;font-size:12px;text-decoration:underline}.player-modal>iframe{aspect-ratio:16/9;background:#17211d;border:0;width:100%;display:block}
