:root{--teal:#307280;--teal-dark:#194a51;--sand:#e7d8ce;--taupe:#a58e86;--brown:#665951;--ink:#303434;--white:#fff;--max:1140px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font:400 17px/1.65 Roboto,Arial,sans-serif}h1,h2,h3{margin:0 0 1rem;font-family:Alice,Georgia,serif;font-weight:400;line-height:1.15}h1{font-size:clamp(2.7rem,6vw,4.5rem)}h2{font-size:clamp(2.3rem,5vw,3.8rem)}h3{font-size:2rem}a{color:inherit}.wrap{width:min(calc(100% - 2rem),var(--max));margin-inline:auto}.section{padding:5rem 0}.skip-link{color:#000;z-index:100;background:#fff;padding:.7rem;position:absolute;top:0;left:-999px}.skip-link:focus{left:0}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.site-header{background:var(--teal);padding:.7rem 0}.brand{width:min(calc(100% - 2rem),var(--max));color:#fff;align-items:center;gap:1rem;margin:auto;text-decoration:none;display:flex}.brand img{object-fit:contain;width:42px;height:68px}.brand span{font:400 clamp(2rem,4vw,3.4rem)/1 Bilbo Swash Caps,cursive}.hero{color:#fff;text-align:center;background:url(/assets/hero.jpg) 50%/cover no-repeat;place-items:center;min-height:74vh;display:grid;position:relative;overflow:hidden}.hero__video{pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero__video iframe{border:0;width:100vw;min-width:177.78vh;height:56.25vw;min-height:100vh;position:absolute;top:50%;left:50%;translate:-50% -50%}.hero__overlay,.performances__overlay{background:#00000091;position:absolute;inset:0}.hero__content{padding:5rem 0;position:relative}.hero h1{text-shadow:0 4px 18px #000}.hero p{margin:.65rem;font:400 clamp(1.8rem,4vw,3rem)/1.15 Alice,serif}.button{background:var(--teal);color:#fff;cursor:pointer;border:0;border-radius:2px;justify-content:center;align-items:center;gap:.5rem;padding:1rem 1.7rem;font:600 1.05rem Roboto,sans-serif;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.button:hover,.button:focus-visible{background:#28636f;transform:translateY(-2px)}.button--light{color:var(--teal);background:#fff;margin-top:2rem}.lessons{max-width:850px}.lesson-card{background:var(--sand);text-align:center;border:5px groove #e1cdcda8;padding:3rem;box-shadow:0 8px 28px -9px #000}.lesson-options{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.lesson-icon{color:var(--teal);font-size:4.5rem;line-height:1;display:block}.performances{color:#fff;text-align:center;background:url(/assets/music-notes.jpg) 50%/cover no-repeat fixed;position:relative}.performances__content{position:relative}.video-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin:2.5rem 0;display:grid}.video-card{aspect-ratio:16/9;background:#111;display:block;position:relative;overflow:hidden;box-shadow:0 5px 18px #0008}.video-card img{object-fit:cover;width:100%;height:100%;transition:transform .25s}.video-card:hover img{transform:scale(1.03)}.play{color:#fff;background:#c00;border-radius:12px;place-items:center;width:68px;height:48px;padding-left:4px;font-size:1.4rem;display:grid;position:absolute;inset:50% auto auto 50%;translate:-50% -50%}.about{background:var(--teal-dark);color:#fff}.about h2{text-align:center}.about__grid{grid-template-columns:1.2fr .8fr;align-items:center;gap:4rem;display:grid}.about__grid img{object-fit:cover;object-position:center 25%;width:min(100%,420px);max-height:620px;margin:auto;display:block;box-shadow:0 12px 30px #0005}.contact{max-width:850px}.contact h2{text-align:center;color:var(--teal)}.contact h2 span{font-size:.72em;display:block}.contact-form{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.field{gap:.25rem;display:grid}.full,fieldset{grid-column:1/-1}label,legend{font-weight:500}.field input,.field textarea{width:100%;font:inherit;background:#fafafa;border:1px solid #c8c8c8;border-radius:2px;padding:.8rem}.field input:focus,.field textarea:focus{outline:2px solid var(--teal);outline-offset:1px;background:#fff}fieldset{border:0;gap:1.5rem;padding:.5rem 0;display:flex}fieldset legend{margin-bottom:.35rem}.honeypot{position:absolute;left:-9999px}.turnstile-wrap{justify-content:center;padding:.25rem 0;display:flex}.turnstile-wrap--preview{opacity:0;pointer-events:none;position:absolute!important}.form-status{text-align:center;min-height:1.5em;margin:0}.contact-form button:disabled{opacity:.6;cursor:wait}footer{color:#fff}.footer-main{background:var(--taupe);padding:3.5rem 0}.footer-grid{grid-template-columns:1fr 1.3fr;gap:5rem;display:grid}.footer-grid h2{font-size:2rem}.socials{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.socials a,.socials span{border:1px solid #fff;padding:.55rem .8rem;text-decoration:none}.footer-bottom{background:var(--brown);text-align:center;padding:1rem}.video-modal{background:#000;border:0;width:min(900px,100% - 2rem);padding:0}.video-modal::backdrop{background:#000c}.video-modal__close{color:#fff;cursor:pointer;background:0 0;border:0;font-size:2.2rem;position:absolute;top:-45px;right:0}.video-frame{aspect-ratio:16/9}.video-frame iframe{border:0;width:100%;height:100%}@media (width<=720px){.section{padding:3.5rem 0}.hero{min-height:72vh}.hero__video{display:none}.lesson-card{padding:2rem 1rem}.lesson-options,.video-grid,.about__grid,.contact-form,.footer-grid{grid-template-columns:1fr}.about__grid,.footer-grid{gap:2rem}.performances{background-attachment:scroll}.field,.full,fieldset{grid-column:1}.brand span{font-size:1.9rem}.brand img{width:35px;height:56px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}.hero__video{display:none}.performances{background-attachment:scroll}}
