@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url("fonts/dm-sans-latin.woff2") format("woff2")}
@font-face{font-family:"Libre Caslon Display";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/libre-caslon-display-latin.woff2") format("woff2")}

:root{color-scheme:light;--paper:#f7f5ee;--white:#fffefa;--ink:#193b33;--muted:#626b62;--green:#173c34;--deep:#112e28;--gold:#e6b564;--line:#d9dcd1;--sage:#e9ede4;--serif:"Libre Caslon Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--gutter:clamp(22px,5.5vw,86px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:116px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}
body,button,input,select,textarea{font-family:var(--sans)}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit;cursor:pointer}
button:disabled{cursor:default;opacity:.6}
button{touch-action:manipulation}
img{display:block;max-width:100%;height:auto}
figure,p,h1,h2,h3,dl,dd{margin:0}
p+p{margin-top:18px}
fieldset{min-width:0}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #ac762d;outline-offset:5px}
[hidden]{display:none!important}
::selection{background:var(--gold);color:var(--deep)}
.container{width:min(1440px,100%);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:105px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;left:16px;top:-100px;z-index:200;background:var(--gold);padding:12px 20px;color:var(--deep)}
.skip-link:focus{top:12px}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:1.8px;line-height:1.5;text-transform:uppercase;display:flex;gap:10px;align-items:center}
.little-star{font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1;color:#a77e3c}
.section-label{margin-bottom:24px}

h1,h2,h3{font-family:var(--serif);font-weight:400}
h1{font-size:clamp(62px,7.5vw,110px);line-height:.98;letter-spacing:-3px}
h1 em,h2 em{font-style:normal;color:#907040}
h2{font-size:clamp(44px,4.5vw,65px);line-height:1.04;letter-spacing:-1.2px}
.button{min-height:52px;display:inline-flex;justify-content:center;align-items:center;gap:25px;border:1px solid transparent;padding:14px 24px;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap;transition:background .2s,transform .2s}
.button>span{font-size:21px;font-weight:400;line-height:1}
.button:hover{transform:translateY(-2px)}
.button--green{background:var(--green);color:var(--white)}
.button--green:hover{background:#27584b}
.button--gold{background:var(--gold);color:var(--deep)}
.button--gold:hover{background:#f3c780}
.button--small{min-height:43px;font-size:12px;padding:11px 17px;gap:20px}
.text-link{border:0;background:none;padding:0 0 5px;border-bottom:1px solid currentColor;display:inline-flex;gap:28px;align-items:center;font-size:13px;font-weight:600;line-height:1.6;width:fit-content}
.text-link>span{font-size:21px;font-weight:400;line-height:1}
.text-link:hover{color:#a16f30}
.site-header{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}
.header-inner{height:100px;width:min(1600px,100%);padding-inline:clamp(22px,4vw,64px);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:13px;flex-shrink:0}
.brand-logo,.facebook-logo{display:block;flex-shrink:0}
.brand img{width:62px;height:62px;border-radius:50%;background:transparent}
.brand>span{font-size:13px;line-height:1.6;font-weight:600;letter-spacing:1.15px}
.brand small{display:block;font-size:11px;letter-spacing:4px;font-weight:400}
.primary-navigation{display:flex;gap:27px;align-items:center}
.primary-navigation>a{font-size:12px;font-weight:500;white-space:nowrap}
.primary-navigation>a:not(.button):hover,.primary-navigation>[aria-current="page"]{color:#957139}
.primary-navigation>.button{font-weight:600}
.facebook-nav{padding:8px;margin-left:-8px;margin-right:-8px}
.facebook-nav svg{width:20px;height:20px;fill:currentColor;display:block}
.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:1fr 1.04fr;gap:40px;align-items:center;padding-top:66px;padding-bottom:65px;position:relative}
.hero-copy{padding-block:17px}
.hero .eyebrow{margin-bottom:27px;font-size:10px;letter-spacing:1.6px}
.hero h1{position:relative;z-index:1}
.hero h1 em{display:block}
.hero-description{font-size:15px;line-height:1.9;color:var(--muted);max-width:360px;margin-top:27px}
.hero-actions{display:flex;align-items:center;gap:24px;margin-top:31px;flex-wrap:wrap}
.hero-actions .button{padding-inline:21px;font-size:12px;gap:24px}
.hero-actions .text-link{font-size:12px;gap:14px}
.hero-discover{display:flex;align-items:center;gap:12px;width:fit-content;font-size:10px;letter-spacing:.5px;color:var(--muted);margin-top:39px}
.hero-discover>span{border:1px solid #cdd2c6;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font-size:17px;color:var(--ink)}
.hero-image{position:relative;align-self:stretch;min-height:535px;overflow:hidden;background:var(--green);border-radius:140px 2px 2px 2px}
.hero-image>img{height:100%;width:100%;object-fit:cover;object-position:45% center;position:absolute;inset:0}
.hero-image::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(9,29,19,.8));pointer-events:none}
.hero-image figcaption{position:absolute;inset:auto 28px 26px;z-index:2;color:#fff;display:flex;flex-direction:column;gap:11px}
.hero-image figcaption>span:first-child{font-family:var(--serif);font-size:34px;line-height:1.1;max-width:270px}
.hero-image figcaption>span:last-child{font-size:9px;letter-spacing:1.8px;display:flex;justify-content:space-between;align-items:center}
.hero-image figcaption>span:last-child span{font-size:20px;line-height:1}
.hero-image-label{position:absolute;z-index:2;right:20px;top:23px;color:white;font-size:9px;line-height:1.5;letter-spacing:1.6px;border-top:1px solid #ffffffaa;padding-top:8px;text-shadow:0 1px 3px #000}
.practice-strip{background:var(--green);color:var(--paper)}
.practice-strip-inner{display:grid;grid-template-columns:1.2fr .7fr .8fr 1.4fr;padding-block:25px;align-items:center;gap:22px}
.practice-strip-inner>div:first-child{display:flex;align-items:center;gap:17px}
.strip-icon{font-size:37px;line-height:1;font-weight:400;color:var(--gold)}
.practice-strip-inner>div:not(:first-child),.practice-strip-inner>a{padding-left:25px;border-left:1px solid #ffffff24}
.practice-strip strong{font-size:13px;font-weight:500;display:block;line-height:1.5}
.practice-strip p>span{display:block;font-size:10px;margin-top:4px;color:#bdcec0}
.practice-strip a strong{display:flex;justify-content:space-between;gap:8px}
.practice-strip a:hover{color:var(--gold)}
.story-section{display:grid;grid-template-columns:1fr 1fr;gap:90px}
.story-section h2{font-size:clamp(44px,4.3vw,62px)}
.story-copy{padding-top:3px}
.story-copy .lead{font-size:19px;line-height:1.6;color:var(--ink)}
.story-copy p:not(.lead){color:var(--muted);font-size:13px;line-height:1.9}
.band-leaders{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid var(--line);padding-top:24px;margin-top:28px}
.band-leaders span{display:block;font-size:9px;font-weight:500;letter-spacing:1.3px;color:var(--muted);margin-bottom:5px}
.band-leaders strong{font-size:14px;font-weight:500}
.join-section{background:var(--green);color:var(--paper);padding-block:85px}
.join-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}
.join-image{padding-right:10px}
.field-image-crop{display:block;position:relative;width:100%;aspect-ratio:486/302;overflow:hidden;background:#57734c}
.field-image-crop>img{width:131.2758%;max-width:none;height:auto;position:absolute;inset:0 auto auto 0}
.join-image .field-image-crop{aspect-ratio:.97;border-radius:2px 2px 95px 2px}
.join-image .field-image-crop>img{height:100%;width:auto;max-width:none;transform:translateX(-11%)}
.join-image figcaption{font-size:11px;color:#cfdbcc;letter-spacing:.3px;display:flex;align-items:center;gap:13px;margin-top:22px}
.join-image .little-star{color:var(--gold)}
.join-copy .section-label{color:#d1ddce}
.join-copy h2{font-size:clamp(48px,4.9vw,70px)}
.join-copy h2 em{color:var(--gold)}
.join-copy>p:not(.eyebrow):not(.join-note){font-size:13px;color:#c7d5c8;line-height:1.9;max-width:430px;margin-top:23px}
.join-details{margin-top:27px;margin-bottom:30px}
.join-details>div{display:grid;grid-template-columns:110px 1fr;gap:17px;padding-block:13px;border-top:1px solid #ffffff22}
.join-details dt{font-size:11px;font-weight:600;padding-top:1px}
.join-details dd{font-size:11px;line-height:1.8;color:#c7d5c8}
.join-note{font-size:10px;color:#c7d5c8;margin-top:17px!important}
.section-heading{display:flex;justify-content:space-between;gap:45px;align-items:flex-end;margin-bottom:43px}
.section-heading-aside{max-width:333px;padding-bottom:4px}
.section-heading-aside>p{font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:20px}
.lesson-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px}
.lesson-card{display:flex;flex-direction:column;text-align:left;background:transparent;padding:0;border:0;border-bottom:1px solid var(--line);width:100%;min-width:0}
.lesson-thumbnail{width:100%;aspect-ratio:16/9;position:relative;display:block;overflow:hidden;background:#193b33}
.lesson-thumbnail video{width:100%;height:100%;object-fit:cover;pointer-events:none;display:block;transition:transform .4s}
.lesson-thumbnail::after{content:"";position:absolute;inset:0;background:rgba(0,16,7,.12);pointer-events:none;transition:background .2s}
.play-mark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:49px;height:49px;background:#fffdf3ed;color:var(--green);border-radius:50%;z-index:1;transition:background .2s,scale .2s}
.play-mark svg{width:16px;height:16px;margin-left:3px;fill:currentColor}
.lesson-card:hover .play-mark{background:var(--gold);scale:1.06}
.lesson-card:hover .lesson-thumbnail video{transform:scale(1.035)}
.lesson-card:hover .lesson-thumbnail::after{background:transparent}
.lesson-card-body{padding:19px 2px 17px;display:flex;flex-direction:column;flex:1;width:100%}
.lesson-category{font-size:9px;color:#83703f;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:7px}
.lesson-card-title{font-family:var(--sans);font-size:16px;font-weight:500;line-height:1.5;margin-bottom:15px}
.lesson-card-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:10px;color:var(--muted);margin-top:auto}
.lesson-card-footer>span:last-child{font-size:20px;color:var(--ink);line-height:1}
.lesson-footnote{margin-top:36px;display:flex;gap:12px;align-items:center;justify-content:center;color:var(--muted);font-size:11px}
.lesson-footnote>span{font-size:22px;color:#a77e3c}
.gallery-section{padding-block:85px;background:var(--deep);color:var(--paper)}
.gallery-section .eyebrow{color:#c4d0bf}
.gallery-section .text-link{font-size:11px;color:var(--gold);margin-bottom:7px}
.gallery-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:28px}
.gallery-item{padding:0;background:none;border:0;color:inherit;position:relative;text-align:left;overflow:hidden;width:100%;aspect-ratio:1.45}
.gallery-item>img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gallery-item>.field-image-crop{height:100%;aspect-ratio:auto}
.gallery-item .field-image-crop>img{height:100%;width:auto;max-width:none;transform:translateX(-5%);transition:transform .5s}
.gallery-item::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#071f17d9);pointer-events:none}
.gallery-item:hover>img{transform:scale(1.035)}
.gallery-item:hover .field-image-crop>img{transform:translateX(-5%) scale(1.035)}
.gallery-caption{position:absolute;z-index:1;inset:auto 24px 21px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-family:var(--serif);font-size:28px;line-height:1.25}
.gallery-caption small{display:block;font-family:var(--sans);font-size:10px;margin-top:7px;color:#dce3d8;line-height:1.6}
.gallery-enlarge{border:1px solid #ffffff70;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;flex-shrink:0;font-family:var(--sans);font-size:23px}
.updates-section{background:var(--sage)}
.updates-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}
.updates-copy{max-width:385px}
.updates-copy h2{font-size:clamp(60px,6vw,87px);margin-bottom:27px}
.updates-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted)}
.updates-copy .button{margin-top:30px;font-size:12px;gap:22px}
.facebook-card{background:var(--white);border:1px solid #d6dccf;max-width:502px;min-width:0;box-shadow:0 10px 35px #1a3c3309}
.facebook-card-heading{display:flex;gap:13px;align-items:center;padding:19px 20px;border-bottom:1px solid #e2e6db}
.facebook-card-heading img{width:42px;height:42px;border-radius:50%}
.facebook-card-heading strong{font-size:12px;font-weight:600;display:block}
.facebook-card-heading>div>span{display:block;font-size:10px;color:var(--muted);margin-top:1px}
.facebook-letter{font-family:Arial,sans-serif;font-weight:700;font-size:30px;color:#1877f2;margin-left:auto;line-height:1}
.facebook-feed{height:440px;background:var(--white);overflow:hidden}
.facebook-cover{position:relative;height:100%;display:flex;align-items:flex-end;padding:32px;isolation:isolate;color:var(--white);background:var(--green)}
.facebook-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.facebook-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(#102c2055,#0c281de8);z-index:-1}
.facebook-cover .eyebrow{font-size:9px;color:#ede9c9;letter-spacing:1.5px}
.facebook-cover h3{font-size:57px;line-height:1.03;margin-top:14px;margin-bottom:24px}
.facebook-cover .button{font-size:11px;min-height:45px;padding:12px 17px}
.facebook-cover p{font-size:9px;color:#dce2d4;margin-top:12px}
.facebook-feed iframe{width:100%;height:440px;border:0;display:block;background:var(--white)}
.facebook-fallback{padding:15px 19px;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:9px;line-height:1.7;border-top:1px solid #e2e6db;color:var(--muted)}
.facebook-fallback a{color:var(--ink);font-weight:600;white-space:nowrap}
.facebook-fallback a:hover{text-decoration:underline}
.facebook-noscript{padding:15px;font-size:12px}
.contact-section{display:grid;grid-template-columns:1fr 1.13fr;gap:90px}
.contact-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.9;max-width:340px;margin-top:24px}
.contact-copy h2{font-size:clamp(50px,5vw,72px)}
.contact-email{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:14px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-top:28px;max-width:350px}
.contact-email>span{font-size:22px}
.contact-email:hover{color:#956a2f}
.contact-people{max-width:350px;margin-top:7px}
.contact-people>a{display:flex;gap:15px;justify-content:space-between;align-items:center;padding-block:17px;border-bottom:1px solid var(--line);font-size:12px;line-height:1.4}
.contact-people small{display:block;font-size:8px;letter-spacing:1.2px;color:var(--muted);margin-top:5px}
.contact-people strong{font-size:12px;white-space:nowrap;font-weight:500}
.contact-people strong>span{margin-left:12px;font-size:18px}
.contact-people>a:hover strong{color:#956a2f}
.contact-copy>.contact-footnote{font-size:11px!important}
.contact-footnote a{border-bottom:1px solid #b8c2b1}
.contact-form-panel{min-width:0;padding-top:2px}
.contact-switch{border:0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:3px;background:#e9ece2;padding:4px;margin:0 0 29px}
.contact-switch label{position:relative;cursor:pointer;min-width:0}
.contact-switch input{position:absolute;opacity:0;width:1px;height:1px}
.contact-switch label>span{display:block;font-size:11px;font-weight:500;text-align:center;padding:11px 7px;border:1px solid transparent;white-space:nowrap}
.contact-switch input:checked+span{background:var(--paper);border-color:#dbe0d2;box-shadow:0 1px 2px #00000005}
.contact-switch input:focus-visible+span{outline:2px solid #ac762d;outline-offset:0}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}
.form-field{display:flex;flex-direction:column;min-width:0;gap:7px}
.form-field>label{font-size:11px;font-weight:500}
.form-field label>span{color:#8a6b35}
.form-field .optional{font-size:9px;color:var(--muted);font-weight:400}
.form-field input,.form-field select,.form-field textarea{border:1px solid #d6dace;border-radius:0;color:var(--ink);background:#fffefa;min-height:46px;width:100%;padding:11px 12px;font-size:11px;line-height:1.7;box-shadow:none}
.form-field input::placeholder,.form-field textarea::placeholder{color:#7d8276;opacity:1}
.form-field textarea{resize:vertical;min-height:114px}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#527762;outline:2px solid #b8c5ae;outline-offset:1px}
.form-field select{padding-right:25px;cursor:pointer}
.form-field--full{grid-column:1/-1}
.form-bottom{margin-top:24px;display:flex;gap:20px;align-items:center;justify-content:space-between}
.form-bottom>p{font-size:9px;color:var(--muted);line-height:1.8}
.form-bottom .button{font-size:12px;gap:30px}
.enquiry-preview{border:1px solid var(--line);padding:32px;background:var(--sage)}
.preview-symbol{display:grid;place-items:center;border:1px solid #b6c8af;border-radius:50%;width:44px;height:44px;font-size:25px;margin-bottom:26px}
.enquiry-preview h3{font-size:43px;line-height:1.05;margin-top:12px}
.enquiry-preview>p:not(.eyebrow){font-size:12px;color:var(--muted);margin-top:20px}
.enquiry-preview dl{font-size:12px;margin-top:23px;border-top:1px solid #cbd4c3;padding-top:13px;overflow-wrap:anywhere}
.enquiry-preview dt{font-weight:600;margin-top:10px}
.enquiry-preview dd{color:var(--muted);white-space:pre-wrap}
.enquiry-preview .text-link{margin-top:26px}
.site-footer{background:var(--deep);color:var(--paper)}
.footer-tartan{height:11px;background-color:#315449;background-image:repeating-linear-gradient(90deg,transparent 0 27px,#0c262c 27px 38px,transparent 38px 47px,#aa935055 47px 49px,transparent 49px 77px),repeating-linear-gradient(0deg,transparent 0 5px,#0c262c66 5px 8px);border-top:1px solid #376453;border-bottom:1px solid #4a6553}
.footer-main{padding-block:48px 33px;display:grid;grid-template-columns:1.3fr 1fr .9fr;gap:45px;align-items:center}
.brand--footer img{width:70px;height:70px}
.brand--footer>span{font-size:12px}
.brand--footer small{font-size:10px}
.footer-main>p{font-family:var(--serif);font-size:27px;line-height:1.15;color:#dbe2d2}
.footer-links{display:flex;flex-direction:column;gap:10px}
.footer-links>a{display:flex;align-items:center;justify-content:space-between;font-size:11px;line-height:1.5}
.footer-links a>span{color:var(--gold);font-size:18px}
.footer-links>a:hover{color:var(--gold)}
.footer-thanks{font-size:9px;color:#b6c8ba;padding-bottom:32px}
.footer-bottom{border-top:1px solid #ffffff1c;padding-block:19px;display:flex;gap:20px;justify-content:space-between;align-items:center;color:#a9bfb0;font-size:9px}
.concept-label{border:1px solid #4e6b57;padding:3px 8px;color:#ccd8c6;font-size:8px;letter-spacing:.6px;text-transform:uppercase}
.has-dialog{overflow:hidden}
dialog{color:var(--paper);background:var(--deep);padding:0;border:1px solid #496356;width:calc(100% - 36px);max-width:900px;max-height:90dvh;box-shadow:0 24px 100px #0005}
dialog::backdrop{background:#041c16d6;backdrop-filter:blur(5px)}
.dialog-top{display:flex;align-items:center;justify-content:space-between;padding:9px 18px;gap:20px}
.dialog-top>span{font-size:9px;letter-spacing:1.3px;color:#cfdbc9;line-height:1.5}
.dialog-top>span>span{margin-inline:9px;color:#748f79}
.icon-button{display:inline-grid;place-items:center;flex-shrink:0;border:1px solid #ffffff36;color:var(--paper);background:transparent;width:36px;height:36px;font-size:24px;line-height:1;padding:0}
.icon-button:hover{background:var(--gold);color:var(--deep);border-color:var(--gold)}
.media-dialog>video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#0b201b}
.player-description{padding:23px 28px 28px}
.player-description .eyebrow{color:var(--gold);font-size:9px}
.player-description>h2{font-size:36px;line-height:1.15;margin-top:6px;letter-spacing:-.3px}
.player-credit{font-size:11px;color:#bdcfbd;margin-top:9px}
.player-preview-note{display:flex;align-items:center;justify-content:flex-end;gap:25px;border-top:1px solid #ffffff26;margin-top:21px;padding-top:20px}
.player-preview-note p{font-size:10px;color:#bfceb9;max-width:365px;line-height:1.8}
.player-preview-note strong{display:block;font-weight:500;color:var(--paper)}
.player-preview-note .button{min-height:43px;font-size:10px;padding:12px 15px;gap:15px}
.gallery-dialog{max-width:1030px}
.gallery-dialog figure>img{width:100%;height:63dvh;object-fit:contain;background:#0b201b}
.gallery-dialog figcaption{padding:20px 25px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.gallery-dialog h2{font-size:32px;letter-spacing:0}
.gallery-dialog figcaption p{font-size:11px;color:#c5d4bd;margin-top:6px}
.gallery-controls{display:flex;align-items:center;gap:16px}
.gallery-controls>span{font-size:11px;white-space:nowrap;min-width:30px;text-align:center}
.gallery-controls .icon-button{font-size:21px}

/* The lesson library uses the same typography, masthead and player. */
.library-intro{padding-block:37px 57px}
.breadcrumb{display:inline-flex;align-items:center;gap:12px;font-size:11px;color:var(--muted);margin-bottom:38px}
.breadcrumb>span{font-size:19px}
.breadcrumb:hover{color:var(--ink)}
.library-intro-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:70px;align-items:center}
.library-intro h1{font-size:clamp(56px,6.5vw,92px);margin-top:25px}
.library-intro h1 em{display:inline}
.library-intro-layout>div>p:not(.eyebrow){max-width:520px;color:var(--muted);font-size:14px;margin-top:24px;line-height:1.9}
.practice-note{padding:29px 31px 31px;background:var(--green);color:var(--paper);border-radius:1px 1px 55px 1px}
.practice-note>.little-star{font-size:35px;display:block;color:var(--gold);margin-bottom:20px}
.practice-note .eyebrow{font-size:8px;color:#d1d9c4;letter-spacing:1.5px}
.practice-note h2{font-size:40px;margin-top:12px;letter-spacing:-.4px}
.practice-note>p:not(.eyebrow){color:#c1d1bf;font-size:11px;line-height:1.9;margin-top:16px}
.practice-note .text-link{font-size:10px;color:var(--gold);gap:17px;margin-top:22px}
.library-section{padding-bottom:90px}
.library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:28px;border-top:1px solid var(--line)}
.library-toolbar>h2{font-family:var(--sans);font-weight:500;font-size:19px;letter-spacing:-.3px}
.lesson-search{display:flex;align-items:center;gap:12px;border:1px solid #cfd6c7;background:var(--white);padding:11px 13px;width:330px;min-width:0}
.lesson-search svg{width:19px;height:19px;flex-shrink:0}
.lesson-search:focus-within{outline:2px solid #b8c5ae;outline-offset:2px;border-color:#527762}
.lesson-search input{outline:none;border:0;background:transparent;min-width:0;width:100%;font-size:11px;color:var(--ink);padding:0;line-height:1.7;-webkit-appearance:none;appearance:none}
.lesson-search input::-webkit-search-cancel-button{-webkit-appearance:none}
.lesson-search input::placeholder{color:var(--muted)}
.clear-search{padding:0;border:0;background:none;font-size:21px;line-height:1;color:var(--muted);min-width:22px;min-height:22px}
.lesson-filters{display:flex;gap:8px;flex-wrap:wrap;padding-block:24px;border-bottom:1px solid var(--line)}
.filter-button{border:1px solid #cfd5c8;background:transparent;font-size:11px;padding:9px 15px;min-height:39px;white-space:nowrap;line-height:1.6}
.filter-button>span{font-size:9px;padding:1px 5px;background:#ffffff30;border:1px solid #ffffff38;margin-left:8px}
.filter-button[aria-pressed="true"]{background:var(--green);color:var(--paper);border-color:var(--green)}
.filter-button:hover:not([aria-pressed="true"]){background:var(--sage)}
.library-status{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-block:23px;color:var(--muted);font-size:11px}
.library-status>span{font-size:8px;letter-spacing:1.4px}
.lesson-empty{text-align:center;padding:65px 15px}
.lesson-empty>span{display:block;font-size:50px;color:#937649;line-height:1;margin-bottom:18px}
.lesson-empty>h3{font-size:36px;line-height:1.1}
.lesson-empty>p{font-size:13px;color:var(--muted);margin-block:17px 25px}
.library-concept-note{border-top:1px solid var(--line);padding-top:23px;margin-top:38px;font-size:10px;color:var(--muted);text-align:center}
.library-join{background:var(--green);padding-block:60px;color:var(--paper)}
.library-join>.container{display:grid;grid-template-columns:1.5fr 1fr;gap:55px;align-items:center}
.library-join h2{font-size:49px;line-height:1.1;margin-top:15px}
.library-join .eyebrow{color:#cfdbc9;font-size:10px}
.library-join p:not(.eyebrow){font-size:13px;line-height:1.9;color:#c1d2be;max-width:315px}
.library-join .button{margin-top:23px}

/* Follow the OS/browser preference, including changes while the page is open. */
@media(prefers-color-scheme:dark){
  :root{color-scheme:dark;--paper:#15241f;--white:#1b2e27;--ink:#edf0e6;--muted:#afbbb0;--deep:#0c1a16;--line:#3d4d41;--sage:#1c3028}
  h1 em,h2 em{color:var(--gold)}
  .little-star,.lesson-category{color:#d4b276}
  .button--green{background:#c6dbc0;color:#162c22}
  .button--green:hover{background:#e0ebd8}
  .filter-button[aria-pressed="true"]{background:#c6dbc0;color:#162c22;border-color:#c6dbc0}
  .text-link:hover,.primary-navigation>a:not(.button):hover,.primary-navigation>[aria-current="page"]{color:var(--gold)}
  .menu-toggle,.lesson-search,.filter-button{border-color:#53634f}
  .hero-discover>span{border-color:#53634f}
  .practice-strip,.join-section,.gallery-section,.practice-note,.library-join,.site-footer,dialog{color:#edf0e6}
  .band-leaders span{color:var(--muted)}
  .contact-switch{background:#101e19}
  .contact-switch input:checked+span{border-color:#586c50;box-shadow:none}
  .form-field input,.form-field select,.form-field textarea{background:var(--white);border-color:#53634f;color:var(--ink)}
  .form-field input::placeholder,.form-field textarea::placeholder{color:#a2afa3}
  .form-field label>span{color:#d4b276}
  .form-field .optional{color:var(--muted)}
  .form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#c6dbc0;outline-color:#718a67}
  .facebook-card{border-color:var(--line);box-shadow:none}
  .facebook-card-heading,.facebook-fallback,.enquiry-preview dl{border-color:var(--line)}
  .preview-symbol{border-color:#718368}
  .contact-email:hover,.contact-people>a:hover strong{color:var(--gold)}
  .contact-footnote a{border-color:#718368}
  .player-preview-note .button--gold{color:#10251b}
  :focus-visible{outline-color:var(--gold)}
}

@media(min-width:1450px){.hero{gap:65px}.hero-image{min-height:610px}.hero h1{font-size:115px}.hero-description{font-size:16px;max-width:400px}.hero-actions{margin-top:35px}.hero-discover{margin-top:45px}.primary-navigation{gap:34px}.primary-navigation>a{font-size:13px}.brand>span{font-size:14px}.hero .eyebrow{font-size:11px}}
@media(max-width:1150px){.primary-navigation{gap:18px}.primary-navigation>a{font-size:11px}.brand>span{font-size:11px}.brand small{font-size:9px}.brand img{width:54px;height:54px}.header-inner{height:88px;gap:17px}.header-inner .button{gap:12px;padding:10px 12px}.hero{gap:30px;padding-top:49px;padding-bottom:49px}.hero-image{min-height:490px}.hero-actions{gap:18px}.hero-actions .button{font-size:10px;padding-inline:15px;gap:15px}.hero-actions .text-link{font-size:11px}.story-section{gap:55px}.join-layout{gap:50px}.updates-layout{gap:65px}.contact-section{gap:50px}.contact-email{font-size:12px}.section{padding-block:85px}.footer-main{gap:30px}}
@media(max-width:950px){.menu-toggle{display:flex;align-items:center;gap:10px;background:none;border:1px solid #cbd2c4;padding:9px 12px;min-height:42px;font-size:11px}.menu-lines{position:relative;display:block;width:17px;height:12px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.menu-lines::after{content:"";width:17px;height:1px;background:var(--ink);position:absolute;left:0;top:5px}.menu-toggle[aria-expanded="true"] .menu-lines{border:0;transform:rotate(45deg);height:1px;background:var(--ink)}.menu-toggle[aria-expanded="true"] .menu-lines::after{top:0;transform:rotate(90deg)}.primary-navigation{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:22px var(--gutter) 27px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #102c1c10;gap:0;align-items:stretch}.primary-navigation.is-open{display:flex;flex-direction:column}.primary-navigation>a:not(.button){font-size:14px;padding:13px 0;border-bottom:1px solid var(--line)}.primary-navigation .facebook-nav{margin:0;padding:13px 0}.primary-navigation .button{margin-top:20px;width:fit-content;min-height:46px;font-size:12px;padding-inline:20px}.hero h1{font-size:clamp(60px,8.8vw,80px);letter-spacing:-2px}.hero-description{font-size:13px}.hero .eyebrow{font-size:8px;letter-spacing:1.25px;gap:6px}.hero-image{min-height:475px;border-top-left-radius:100px}.hero-image figcaption{inset:auto 22px 23px}.hero-image figcaption>span:first-child{font-size:30px}.hero-image figcaption>span:last-child{font-size:7px}.hero-image-label{font-size:7px;right:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.hero-actions .button{font-size:11px}.hero-discover{margin-top:26px}.practice-strip-inner{grid-template-columns:1fr .7fr .7fr;gap:19px;padding-block:21px}.practice-strip-inner>a{grid-column:1/-1;border-left:0;padding:15px 0 0!important;border-top:1px solid #ffffff25;display:flex;justify-content:center}.practice-strip-inner>a p{display:flex;align-items:center;gap:20px}.practice-strip p>span{font-size:9px}.practice-strip strong{font-size:11px}.practice-strip-inner>a strong{gap:20px}.practice-strip-inner>a p>span{margin:0}.story-section{gap:35px}.story-copy .lead{font-size:16px}.story-copy p:not(.lead){font-size:12px}.story-section h2{font-size:42px}.join-layout{gap:35px}.join-image{padding:0}.join-copy h2{font-size:51px}.join-copy .eyebrow{font-size:9px}.join-copy>p:not(.eyebrow):not(.join-note){font-size:12px}.join-details>div{grid-template-columns:85px 1fr;gap:10px}.join-details dt,.join-details dd{font-size:10px}.join-note{font-size:9px}.join-image figcaption{font-size:9px;gap:9px}.section-heading-aside{max-width:280px}.section-heading-aside>p{font-size:12px}.lesson-grid{gap:30px 18px}.lesson-card-title{font-size:13px}.lesson-category{font-size:8px;letter-spacing:.9px}.lesson-card-footer{font-size:8px}.play-mark{width:41px;height:41px}.updates-layout{gap:40px}.updates-copy .button{font-size:10px;padding-inline:15px;gap:15px}.updates-copy>p:not(.eyebrow){font-size:12px}.facebook-card-heading{padding:15px 12px;gap:10px}.facebook-card-heading strong{font-size:10px}.facebook-card-heading>div>span{font-size:9px}.facebook-card-heading img{width:35px;height:35px}.facebook-cover{padding:24px}.facebook-cover h3{font-size:47px}.facebook-fallback{font-size:8px;padding-inline:12px}.contact-section{grid-template-columns:.95fr 1.1fr;gap:35px}.contact-copy h2{font-size:49px}.contact-copy>p:not(.eyebrow){font-size:12px}.contact-email{font-size:11px}.contact-people>a{font-size:11px;gap:10px}.contact-people strong{font-size:10px}.contact-people strong>span{margin-left:6px}.contact-switch label>span{font-size:9px;padding-inline:4px}.form-grid{gap:17px 12px}.form-field>label{font-size:10px}.form-field input,.form-field select,.form-field textarea{font-size:10px;padding-inline:10px}.form-bottom{align-items:flex-start;flex-direction:column-reverse;gap:13px}.footer-main{grid-template-columns:1.25fr .9fr;gap:30px}.footer-main>p{display:none}.footer-links{max-width:250px;margin-left:auto;width:100%}.library-intro-layout{gap:40px}.library-intro h1{font-size:62px}.practice-note{padding:25px}.practice-note h2{font-size:35px}}
@media(max-width:680px){:root{--gutter:24px}html{scroll-padding-top:97px}.header-inner{height:83px;padding-inline:20px}.brand{gap:10px}.brand img{width:51px;height:51px}.brand>span{font-size:10px;letter-spacing:1.05px}.brand small{font-size:8px;letter-spacing:3.6px}.menu-toggle{font-size:10px;padding:8px 10px;gap:8px;min-height:38px}.hero{display:flex;flex-direction:column;gap:30px;align-items:stretch;padding-top:42px;padding-bottom:36px}.hero-copy{padding:0}.hero .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:24px}.hero h1{font-size:clamp(64px,14.5vw,94px);letter-spacing:-1.8px;line-height:.96}.hero-description{font-size:13px;line-height:1.85;margin-top:23px;max-width:330px}.hero-actions{flex-direction:row;align-items:center;gap:20px;margin-top:26px}.hero-actions .button{min-height:48px;font-size:10px;padding:12px 14px;gap:14px}.hero-actions .text-link{font-size:10px;gap:10px}.hero-discover{display:none}.hero-image{min-height:370px;aspect-ratio:1.17;border-top-left-radius:90px}.hero-image figcaption>span:first-child{font-size:34px;max-width:300px}.hero-image figcaption>span:last-child{font-size:8px}.hero-image-label{font-size:8px;right:20px;top:21px}.practice-strip-inner{gap:15px 0;grid-template-columns:1fr 1fr;padding-block:22px}.practice-strip-inner>div:first-child{grid-column:1/-1;justify-content:flex-start;padding-bottom:13px;border-bottom:1px solid #ffffff24}.strip-icon{font-size:30px}.practice-strip strong{font-size:12px}.practice-strip-inner>div:not(:first-child){border:0;padding:0}.practice-strip-inner>div:nth-child(3){border-left:1px solid #ffffff25;padding-left:27px}.practice-strip-inner>div:nth-child(2){padding-left:46px}.practice-strip-inner>a{justify-content:flex-start;padding-top:14px!important}.practice-strip-inner>a p{align-items:flex-start;flex-direction:column;gap:2px}.practice-strip-inner>a p>span{font-size:10px}.practice-strip-inner>a strong{gap:25px}.section{padding-block:65px}.section-label{margin-bottom:22px;font-size:9px;letter-spacing:1.5px}h2{font-size:49px;letter-spacing:-.7px}.story-section{display:block}.story-section h2{font-size:49px}.story-copy{padding-top:26px}.story-copy .lead{font-size:17px}.story-copy p:not(.lead){font-size:12px;line-height:1.9}.band-leaders{margin-top:24px;padding-top:20px}.band-leaders strong{font-size:13px}.band-leaders span{font-size:8px}.join-section{padding-block:50px}.join-layout{display:flex;flex-direction:column-reverse;align-items:stretch;gap:38px}.join-copy h2{font-size:61px}.join-copy>p:not(.eyebrow):not(.join-note){font-size:12px;max-width:100%}.join-details>div{grid-template-columns:95px 1fr;gap:16px}.join-details dt,.join-details dd{font-size:11px}.join-note{font-size:9px}.join-image .field-image-crop{aspect-ratio:1.3;border-bottom-right-radius:65px}.join-image .field-image-crop>img{height:100%;width:auto;transform:translateX(-4%)}.join-image figcaption{font-size:10px;margin-top:18px}.section-heading{align-items:flex-start;flex-direction:column;gap:24px;margin-bottom:30px}.section-heading-aside{max-width:100%}.section-heading-aside>p{margin-bottom:15px;font-size:12px}.section-heading h2{font-size:51px}.text-link{font-size:12px;gap:22px}.lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 16px}.lesson-card-title{font-size:12px;line-height:1.55;margin-bottom:12px}.lesson-card-body{padding:13px 0}.lesson-category{font-size:7px;letter-spacing:.7px;margin-bottom:5px}.lesson-card-footer{font-size:8px}.lesson-card-footer>span:last-child{font-size:17px}.play-mark{width:35px;height:35px}.play-mark svg{width:12px;height:12px;margin-left:2px}.lesson-footnote{font-size:9px;gap:9px;margin-top:28px}.gallery-section{padding-block:55px}.gallery-section .section-heading{gap:24px}.gallery-section .text-link{font-size:11px}.gallery-grid{grid-template-columns:1fr;gap:20px}.gallery-item{aspect-ratio:1.35}.gallery-caption{font-size:30px;inset:auto 23px 23px}.gallery-caption small{font-size:10px}.updates-layout{display:block}.updates-copy{max-width:100%}.updates-copy h2{font-size:72px;margin-bottom:24px}.updates-copy>p:not(.eyebrow){font-size:13px;max-width:345px}.updates-copy .button{font-size:11px;margin-top:25px;min-height:48px}.facebook-card{margin:35px auto 0;max-width:502px}.facebook-card-heading{padding:17px;gap:12px}.facebook-card-heading img{width:40px;height:40px}.facebook-card-heading strong{font-size:12px}.facebook-feed{height:410px}.facebook-feed iframe{height:410px}.facebook-cover{padding:28px}.facebook-cover h3{font-size:57px}.facebook-cover .eyebrow{font-size:8px}.facebook-cover .button{font-size:11px}.facebook-fallback{padding:15px;font-size:8px}.contact-section{display:flex;flex-direction:column;gap:37px}.contact-copy h2{font-size:58px}.contact-copy>p:not(.eyebrow){font-size:13px;max-width:100%}.contact-email{font-size:13px;max-width:100%}.contact-people{max-width:100%}.contact-people>a{font-size:12px;padding-block:17px}.contact-people strong{font-size:12px}.contact-copy>.contact-footnote{font-size:11px!important}.contact-switch label>span{font-size:10px;padding-block:12px}.form-grid{gap:18px 14px}.form-field>label{font-size:10px}.form-field input,.form-field select,.form-field textarea{font-size:11px;min-height:47px;padding-inline:11px}.form-field .optional{font-size:8px}.form-bottom{flex-direction:row;align-items:center;gap:14px}.form-bottom>p{font-size:8px}.form-bottom .button{font-size:11px;gap:20px;padding-inline:18px}.footer-main{grid-template-columns:1fr;gap:28px;padding-block:33px 28px}.brand--footer img{width:65px;height:65px}.brand--footer>span{font-size:12px}.brand--footer small{font-size:10px}.footer-links{margin:0;max-width:none;gap:15px}.footer-links>a{font-size:11px}.footer-thanks{font-size:9px;padding-bottom:25px;line-height:1.9}.footer-bottom{flex-wrap:wrap;gap:12px;font-size:8px;padding-block:18px}.footer-bottom>span:nth-child(2){display:none}.concept-label{font-size:7px}.dialog-top{padding:8px 12px}.dialog-top>span{font-size:7px;letter-spacing:.9px}.dialog-top>span>span{margin-inline:4px}.icon-button{width:32px;height:32px;font-size:23px}.player-description{padding:20px}.player-description>h2{font-size:29px}.player-credit{font-size:9px}.player-preview-note{align-items:flex-start;flex-direction:column;gap:18px;margin-top:18px;padding-top:17px}.player-preview-note p{font-size:10px}.player-preview-note .button{font-size:10px;min-height:42px}.gallery-dialog figure>img{height:auto;max-height:60dvh}.gallery-dialog figcaption{padding:17px;gap:20px;align-items:flex-start;flex-direction:column}.gallery-dialog h2{font-size:30px}.gallery-controls{width:100%;justify-content:space-between}.gallery-dialog figcaption p{font-size:10px}.library-intro{padding-top:24px;padding-bottom:34px}.breadcrumb{font-size:10px;margin-bottom:29px}.library-intro-layout{display:block}.library-intro .eyebrow{font-size:8px;letter-spacing:1px;gap:7px}.library-intro h1{font-size:68px;letter-spacing:-1.6px;line-height:.99;margin-top:20px}.library-intro-layout>div>p:not(.eyebrow){font-size:12px;margin-top:22px}.practice-note{display:none}.library-toolbar{flex-direction:column;align-items:stretch;gap:19px;padding-top:25px}.library-toolbar>h2{font-size:18px}.lesson-search{width:100%;padding:13px}.lesson-search input{font-size:12px}.lesson-filters{gap:8px;padding-block:20px}.filter-button{font-size:10px;padding:8px 12px;min-height:36px}.filter-button>span{font-size:8px;margin-left:5px}.library-status{font-size:10px;margin-block:19px}.library-status>span{font-size:7px;letter-spacing:.7px}.library-section{padding-bottom:55px}.library-concept-note{font-size:9px;line-height:1.9;margin-top:30px}.library-join{padding-block:43px}.library-join>.container{display:block}.library-join h2{font-size:43px}.library-join .eyebrow{font-size:9px}.library-join p:not(.eyebrow){font-size:12px;margin-top:22px}.library-join .button{font-size:11px;min-height:46px}}
@media(max-width:370px){:root{--gutter:19px}.header-inner{padding-inline:15px}.brand>span{font-size:9px;letter-spacing:.9px}.brand small{letter-spacing:3.1px;font-size:8px}.brand img{width:47px;height:47px}.menu-toggle{font-size:9px;gap:7px;padding-inline:8px}.hero h1{font-size:63px}.hero-actions{gap:16px;flex-wrap:wrap}.hero-actions .button{font-size:9px;gap:13px;padding-inline:12px}.hero-actions .text-link{font-size:9px;gap:7px}.hero-image{min-height:340px}.hero-image figcaption>span:first-child{font-size:30px}.hero .eyebrow{font-size:8px;letter-spacing:1.1px}.lesson-grid{gap:23px 12px}.lesson-card-title{font-size:11px}.lesson-card-footer{font-size:7px}.contact-email{font-size:12px}.form-bottom{flex-direction:column-reverse;align-items:flex-start}.library-intro h1{font-size:61px}.filter-button{font-size:9px;padding-inline:11px}.form-grid{column-gap:10px}.contact-switch label>span{font-size:9px}.facebook-cover{padding:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
