/* Fresh implementation for Mayo Music School. System fonts; no external dependencies. */
:root{--black:#151515;--white:#fff;--fog:#f2f1ed;--gray:#686868;--rule:#d7d7d2}*{box-sizing:border-box}body{margin:0;color:var(--black);background:var(--white);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.08}h1{font-size:clamp(48px,5.2vw,82px)}h2{font-size:clamp(36px,4vw,58px)}h3{font-size:22px;line-height:1.3}p+p{margin-top:20px}em{font-weight:400}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.mast{min-height:112px;width:min(1280px,calc(100% - 64px));margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:12px 0}.mast img{width:130px;height:auto}.mast nav{display:flex;gap:34px;align-items:center}.mast nav a{text-decoration:none;font-size:14px;padding:12px 0}.mast nav a:hover{text-decoration:underline}.mast nav a:last-child{border-bottom:1px solid}.skip{position:fixed;left:16px;top:-90px;background:white;color:black;padding:12px;z-index:9}.skip:focus{top:12px}:focus-visible{outline:3px solid #9d7040;outline-offset:5px}.intro{display:grid;grid-template-columns:1.05fr 1fr;background:var(--black);color:white;min-height:610px}.intro-text{padding:72px 48px 64px max(32px,calc((100vw - 1180px)/2));align-self:center}.eyebrow,.tiny{font-size:11px;letter-spacing:.15em;font-weight:700}.eyebrow{margin-bottom:25px}.intro .eyebrow{color:#c5c5be}.intro h1{max-width:680px}.lede{font-size:18px;color:#ddd;margin-top:28px}.cta{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font:600 14px Arial,sans-serif;min-height:56px;padding:18px 24px;border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background .15s}.light{background:white;color:#151515}.dark{background:#151515;color:white}.cta:hover{background:#deded7;color:#151515}.intro .cta{margin-top:32px}.intro-note{font-size:12px;color:#b8b8b3;margin-top:22px}.stage{position:relative;min-height:610px;overflow:hidden}.stage img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:35% 60%;filter:grayscale(100%)}.stage figcaption{position:absolute;bottom:24px;left:24px;background:#151515d9;padding:8px 14px;font-size:11px;letter-spacing:.03em}.facts{display:flex;justify-content:space-between;padding:25px 0;border-bottom:1px solid var(--rule);font-size:13px}.facts b{font-size:11px;color:#777;margin-right:20px}.section{padding-top:100px;padding-bottom:100px;scroll-margin-top:24px}.section-top{display:grid;grid-template-columns:1.2fr 1fr;column-gap:100px;align-items:end}.section-top .eyebrow{grid-column:1/-1}.section-top>p:last-child{color:#565656;max-width:460px}.instruments{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px;border-top:1px solid var(--black);border-bottom:1px solid var(--rule)}.instruments article{padding:32px 32px 36px 0}.instruments article+article{border-left:1px solid var(--rule);padding-left:32px}.instruments h3{font-family:Georgia,serif;font-weight:400;font-size:44px;margin-top:26px}.level{font-size:13px;margin-top:5px;font-weight:bold}.instruments p:last-child{font-size:15px;color:#626262;margin-top:22px}.lesson-bottom{display:flex;align-items:center;justify-content:space-between;gap:70px;margin-top:36px}.lesson-bottom>div{max-width:680px}.lesson-bottom p{font-size:15px;color:#626262;margin-top:12px}.line-link{display:inline-flex;gap:18px;align-items:center;font-size:14px;font-weight:600;padding:14px 0;border-bottom:1px solid;white-space:normal;text-decoration:none}.path{background:var(--fog);padding:76px 0}.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:48px;padding:0;margin:42px 0 0}.steps li{border-top:1px solid #b6b6ae;padding-top:20px}.steps span{font-size:11px;color:#6e6e67}.steps h3{margin-top:25px;margin-bottom:12px}.steps p{font-size:15px;color:#626262}.biography{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center}.portrait{background:var(--fog);padding:20px 20px 0}.portrait img{width:100%;height:auto}.big-copy{font-family:Georgia,serif;font-size:28px;line-height:1.35;margin-top:28px;margin-bottom:26px}.biography p:not(.eyebrow):not(.big-copy){font-size:16px;color:#555}.biography .line-link{margin-top:22px}.contact{background:var(--black);color:white;padding:90px 0;scroll-margin-top:0}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.contact h2{margin-bottom:26px}.contact .quiet{color:#b9b9b4;font-size:14px;max-width:350px}.email{display:inline-block;font-size:14px;margin-top:30px;overflow-wrap:anywhere}.pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:13px;margin-bottom:8px}label span{color:#b9b9b4;font-size:11px}input,textarea{display:block;width:100%;border:1px solid #777;background:#222;color:white;border-radius:0;padding:13px;font:16px Arial,sans-serif;margin-bottom:22px}textarea{resize:vertical;min-height:130px}input:focus,textarea:focus{border-color:white}textarea::placeholder{color:#aaa}.form-note{font-size:12px;color:#bbb;margin-bottom:23px}.contact button{width:100%}#feedback{font-size:14px;margin-top:18px}.privacy{display:inline-block;font-size:11px;color:#bbb;margin-top:15px}.foot{display:flex;gap:28px;align-items:center;justify-content:space-between;padding:32px 0;font-size:11px;flex-wrap:wrap}.wordmark{font-family:Georgia,serif;font-size:20px;text-decoration:none}.reading{padding-top:70px;padding-bottom:80px}.reading h1{max-width:900px}.opening{font-size:21px;color:#626262;max-width:760px;margin-top:30px}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:65px}.approach-grid article{border-top:1px solid;padding-top:24px}.approach-grid h2{font-size:32px;margin:25px 0 18px}.approach-grid p{font-size:16px;color:#626262}.compact{padding-bottom:0}.topics{display:grid;grid-template-columns:1fr 1fr;padding:0;list-style:none;margin:30px 0}.topics li{border-bottom:1px solid var(--rule);padding:14px 10px 14px 0}.compact .cta{margin-top:28px}.narrow{max-width:800px}.narrow h2{font-size:30px;margin:38px 0 16px}.narrow a{overflow-wrap:anywhere}
@media(max-width:900px){.intro-text{padding:45px 30px}.intro,.stage{min-height:530px}.intro h1{font-size:54px}.section-top,.biography,.contact-grid{gap:40px}.section{padding-top:70px;padding-bottom:70px}.steps{gap:25px}.lesson-bottom{gap:30px}.approach-grid{gap:24px}}
@media(max-width:620px){.wrap,.mast{width:calc(100% - 40px)}.mast{min-height:100px;gap:12px;flex-wrap:wrap;justify-content:center;padding-bottom:16px}.mast img{width:105px}.mast nav{gap:24px;width:100%;justify-content:center}.mast nav a{font-size:12px;padding:5px 0}.intro{grid-template-columns:1fr}.intro-text{padding:44px 24px}.intro h1{font-size:52px}.intro .eyebrow{font-size:9px}.lede{font-size:16px}.stage{min-height:360px}.stage img{object-position:50% 56%}.facts{gap:8px;font-size:11px}.facts b{display:block;margin:0 0 4px}.section-top,.biography,.contact-grid{grid-template-columns:1fr;gap:24px}.section-top h2{margin-bottom:8px}.section-top .eyebrow{margin-bottom:0}.instruments{grid-template-columns:1fr;margin-top:35px}.instruments article,.instruments article+article{padding:25px 0;border-left:0}.instruments article+article{border-top:1px solid var(--rule)}.instruments h3{margin-top:12px}.lesson-bottom{display:block}.lesson-bottom .line-link{margin-top:15px}.steps,.approach-grid{grid-template-columns:1fr;gap:30px}.path{padding:55px 0}.steps h3{margin-top:12px}.biography{gap:35px}.portrait{max-width:430px}.contact{padding:60px 0}.contact-grid{gap:40px}.pair{grid-template-columns:1fr;gap:0}.foot{gap:14px;align-items:flex-start;flex-direction:column}.reading{padding-top:45px}.topics{grid-template-columns:1fr}.reading h1{font-size:46px}.approach-grid{margin-top:40px}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media print{.mast nav,.contact, .cta{display:none}.intro{background:white;color:black;min-height:auto}.stage{display:none}.intro{display:block}.intro-text{padding:20px}.intro .lede{color:black}.section{padding:25px 0}.foot{border-top:1px solid}}

/* Accommodate the restored original copy. */
.intro h1{font-size:clamp(42px,4.7vw,70px)}.lesson-bottom>div{flex:1}.biography h2+p{margin-top:28px}.start-note{margin-top:24px;max-width:660px}.steps{grid-template-columns:repeat(4,1fr)}@media(max-width:900px){.steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.steps{grid-template-columns:1fr}.intro h1{font-size:46px}.lesson-bottom>div+div{margin-top:30px}}
/* Lesson information: stronger contrast and a clear numbered rhythm. */
.lesson-bottom{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start;margin-top:48px}.lesson-bottom>div:first-child{background:#151515;color:white;padding:36px}.lesson-bottom>div:first-child .eyebrow{color:#c6c6be;margin:0 0 24px}.lesson-bottom>div:first-child h3{font:400 clamp(44px,5vw,64px)/1.08 Georgia,serif;letter-spacing:-.035em}.lesson-bottom>div:first-child p:nth-of-type(2){font:400 36px/1.3 Georgia,serif;color:white;border-top:1px solid #666;padding-top:24px;margin-top:28px}.lesson-bottom>div:first-child p:last-child{color:#d0d0ca;font-size:15px;line-height:1.75}.lesson-bottom>div:last-child>h3{font:400 30px/1.2 Georgia,serif;margin:0 0 20px}.topics{display:block;counter-reset:lesson;list-style:none;margin:0 0 22px;padding:0}.topics li{counter-increment:lesson;display:grid;grid-template-columns:30px 1fr;gap:14px;border-bottom:1px solid #d7d7d2;padding:18px 0;font-size:16px;line-height:1.5}.topics li:before{content:counter(lesson,decimal-leading-zero);font:12px/2 monospace;color:#777}.topics li:first-child{border-top:1px solid #151515}.lesson-bottom .line-link{font-size:14px;line-height:1.5;padding:12px 0}.reading .topics{max-width:760px;margin-top:28px}@media(max-width:620px){.lesson-bottom{grid-template-columns:1fr;gap:36px}.lesson-bottom>div:first-child{padding:28px}.lesson-bottom>div+div{margin-top:0}.lesson-bottom>div:first-child h3{font-size:52px}.topics li{font-size:16px;padding:16px 0;grid-template-columns:25px 1fr}}

/* Studio photo behind live format text. */
.lesson-bottom>div:first-child{background-image:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,.58)),url("assets/studio-lesson.webp");background-size:cover;background-position:center 62%}.lesson-bottom>div:first-child .eyebrow,.lesson-bottom>div:first-child p:last-child{color:#fff;text-shadow:0 1px 3px #0008}

/* Readability adjustment: modest increases to small text. */
.eyebrow,.tiny{font-size:14px;letter-spacing:.11em}.mast nav a{font-size:16px}.facts{font-size:15px}.facts b,.steps span{font-size:14px}.cta,.line-link,.lesson-bottom .line-link{font-size:16px}.level{font-size:15px}.stage figcaption,.form-note,.privacy,.foot{font-size:14px}label{font-size:15px}label span{font-size:14px}.email{font-size:16px}.contact .quiet{font-size:16px}.instruments p:last-child,.lesson-bottom p,.steps p{font-size:17px}.lesson-bottom>div:first-child p:last-child{font-size:17px}.biography p:not(.eyebrow):not(.big-copy),.approach-grid p{font-size:18px}.topics li{font-size:18px}.topics li:before{font-size:14px}.audience{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;margin-top:64px;padding:30px;background:#f2f1ed;border-top:1px solid #d7d7d2;border-bottom:1px solid #d7d7d2}.audience .eyebrow{margin-bottom:12px}.audience h2{font-size:36px}.audience p:last-child{margin-top:10px;font-size:17px;color:#555}.audience dl{margin:0}.audience dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:14px 0}.audience dl>div+div{border-top:1px solid #ccc}.audience dt{font-size:18px;font-weight:600}.audience dd{margin:0;font-size:16px;text-align:right;color:#555}@media(max-width:620px){.mast nav{gap:20px}.mast nav a{font-size:15px}.intro .eyebrow{font-size:13px}.facts{font-size:14px}.topics li{font-size:18px}.audience{grid-template-columns:1fr;gap:16px;padding:24px;margin-top:45px}.audience h2{font-size:32px}.audience dt{font-size:17px}.audience dd{font-size:16px}.foot{font-size:14px}}

/* Restore the photo panel typography while retaining larger text elsewhere. */
.lesson-bottom>div:first-child .eyebrow{font-size:11px;letter-spacing:.15em}.lesson-bottom>div:first-child p:last-child{font-size:15px}.lesson-bottom>div:first-child h3{font-size:clamp(44px,5vw,64px)}.lesson-bottom>div:first-child p:nth-of-type(2){font-size:36px}.brady-quote{margin:28px 0 0;padding:4px 0 4px 24px;border-left:2px solid #151515;max-width:760px}.brady-quote p{font:italic 24px/1.55 Georgia,serif;color:#555}.brady-quote footer{font:600 15px/1.5 Arial,sans-serif;margin-top:14px;color:#151515}@media(max-width:620px){.lesson-bottom>div:first-child h3{font-size:52px}.brady-quote p{font-size:21px}}

/* Approved frequently asked questions, with native accessible disclosure controls. */
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;border-top:1px solid #d7d7d2}.faq h2{font-size:clamp(34px,3.4vw,48px)}.faq details{border-bottom:1px solid #d7d7d2}.faq details:first-child{border-top:1px solid #151515}.faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 0;font-size:18px;font-weight:600;line-height:1.45}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:24px;font-weight:400;flex-shrink:0}.faq details[open] summary:after{content:'−'}.faq details p{font-size:17px;line-height:1.75;color:#555;margin:0;padding:0 30px 24px 0}@media(max-width:620px){.faq{grid-template-columns:1fr;gap:28px}.faq summary{font-size:17px;padding:20px 0}.faq details p{padding-right:0}}

/* Comfortable phone navigation targets; preserve existing typefaces. */
@media(max-width:620px){.mast nav a{min-height:44px;display:inline-flex;align-items:center}.privacy{min-height:44px;display:inline-flex;align-items:center}}

/* Keep the Lessons label and title together, aligned with the introduction. */
.section-top{align-items:start}.section-top>.lesson-heading .eyebrow{margin-bottom:20px}.section-top>p:last-child{margin-top:0}@media(max-width:620px){.section-top>.lesson-heading .eyebrow{margin-bottom:16px}.section-top>.lesson-heading h2{margin-bottom:0}}

/* Full-width lesson introduction above instrument cards. */
#lessons>.section-top{display:block}#lessons>.section-top>p:last-child{max-width:none;margin:0;font-size:clamp(18px,1.9vw,23px);line-height:1.7;color:#444}#lessons>.instruments{margin-top:36px}@media(max-width:620px){#lessons>.section-top>p:last-child{font-size:18px;line-height:1.75}#lessons>.instruments{margin-top:28px}}

/* Approved connected lesson panel: introduction and instruments share one surface. */
#lessons{padding-top:0}.lesson-overview{background:#f2f1ed;padding:38px 32px 0}.lesson-overview .section-top>p:last-child{font-family:Georgia,'Times New Roman',serif;font-size:clamp(21px,2.15vw,29px);line-height:1.55;color:#151515}.lesson-overview .instruments{margin-top:30px;border-top:1px solid #151515;border-bottom:0}.lesson-overview .instruments article{padding-top:28px;padding-bottom:30px}.lesson-overview .level{font-size:16px;font-weight:400}.lesson-overview .instruments h3{margin-top:22px}.lesson-overview .instruments p:last-child{margin-top:8px;color:#333}@media(max-width:620px){.lesson-overview{padding:26px 22px 0}.lesson-overview .section-top>p:last-child{font-size:22px;line-height:1.55}.lesson-overview .instruments{margin-top:24px}.lesson-overview .instruments article{padding-top:22px;padding-bottom:24px}.lesson-overview .instruments h3{margin-top:10px}}

.lesson-overview .section-top{display:block}
.lesson-overview .section-top>p:last-child{max-width:none;width:100%;font-size:22px;line-height:1.6}
.lesson-bottom>div:first-child .eyebrow{font-size:14px;letter-spacing:.11em}
#faq>div:first-child>.eyebrow,.path>.wrap>.eyebrow{font-size:16px}
.lesson-bottom>div:first-child .eyebrow:after,#faq>div:first-child>.eyebrow:after,.path>.wrap>.eyebrow:after{content:'';display:block;width:48px;border-top:1px solid currentColor;margin-top:12px}
@media(max-width:620px){.lesson-overview .section-top>p:last-child{font-size:20px}}

/* Approved studio photo card; crop both edges to keep the rolled sheet out of view. */
.faq-photo{position:relative;isolation:isolate;overflow:hidden;min-height:580px;padding:36px;color:#fff;background:#151515}
.faq-photo:before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,.55)),url("assets/faq-studio.webp");background-size:cover;background-position:center;background-repeat:no-repeat;transform:scale(1.2)}
.faq-photo .eyebrow{color:#fff}.faq-photo h2{font-size:clamp(34px,3.4vw,48px);letter-spacing:-.045em;text-shadow:0 1px 3px #0006}
@media(max-width:900px){.faq-photo{padding:28px;min-height:540px}}
@media(max-width:620px){.faq-photo{min-height:480px;padding:28px}.faq-photo h2{font-size:40px}.faq-photo:before{background-size:cover}}
