@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--red:#800020;--ink:#090909;--paper:#fff;--gold:#c7a875;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit}a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}img{max-width:100%}.wrap{width:min(1220px,calc(100% - 100px));margin-inline:auto}
.skip{position:absolute;left:-999px;top:5px;z-index:10;background:white;padding:10px}.skip:focus{left:5px}
.masthead{background:#080808;color:white;border-bottom:1px solid #272727}.navrow{height:112px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{display:block;flex:0 0 auto}.brand img{display:block;width:290px;height:auto}
nav{display:flex;align-items:center;gap:clamp(18px,2.7vw,42px)}nav a{font-size:11px;text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-weight:700;white-space:nowrap}nav a:hover{color:var(--gold)}nav .nav-contact{padding-bottom:8px;border-bottom:1px solid var(--gold)}nav .nav-contact span{margin-left:8px;color:var(--gold)}
.hero{background:#050505;color:white;min-height:710px;position:relative;overflow:hidden;isolation:isolate}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,#060606 0%,rgba(0,0,0,.97) 22%,rgba(0,0,0,.57) 58%,rgba(0,0,0,.1) 100%),url('assets/piano-hands-temp.jpg') center 48%/cover no-repeat;z-index:-2}.hero-noise{position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,#050505 100%);z-index:-1}
.hero-layout{display:flex;align-items:center;justify-content:space-between;min-height:645px;padding-top:40px;padding-bottom:45px}.hero-copy{max-width:820px}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:700;text-transform:uppercase;margin:0 0 29px}.hero-eyebrow{color:#e8d5b7}.gold-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--gold);vertical-align:2px;margin-right:10px}
h1,h2,h3,blockquote{font-family:var(--serif);font-weight:400;line-height:1.13}h1{font-size:clamp(70px,8vw,118px);letter-spacing:-.052em;margin:0 0 35px}h1 em,h2 em{font-weight:400}h1 em{color:var(--gold)}.hero-period{color:var(--red)}.hero-welcome{max-width:600px;font-size:19px;line-height:1.8;margin:0 0 38px;color:#f4f4f4}
.link-button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-weight:700;font-size:11px;padding:17px 23px;transition:transform .2s,background .2s}.link-button:hover{transform:translateY(-3px)}.link-button.light{background:#fff;color:#080808}.link-button.dark{background:#070707;color:white}.link-button span{font-size:18px;font-weight:400}
.hero-side{writing-mode:vertical-rl;display:flex;gap:18px;font-family:var(--serif);font-style:italic;font-size:20px;color:#e2d2bb;opacity:.95;align-self:center;margin-right:3px}.hero-bottom{display:flex;justify-content:space-between;gap:20px;padding:0 0 24px;font-size:10px;letter-spacing:.19em;font-weight:700;color:#b6b0a9}
.intro{padding:130px 0 145px;background:white}.intro-heading{position:relative;margin-bottom:80px}.eyebrow.ink{color:#666}.red-square{display:inline-block;width:9px;height:9px;background:var(--red);margin-right:13px;vertical-align:1px}.intro h2{font-size:clamp(53px,6vw,91px);letter-spacing:-.055em;margin:0}.intro h2 i{color:var(--red);font-weight:400}.intro-aside{position:absolute;bottom:5px;right:0;width:235px;font-size:14px;line-height:1.75;color:#555;margin:0}
.lesson-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.lesson{border-top:3px solid var(--red);padding:27px 0 0;display:flex;flex-direction:column;align-items:flex-start}.lesson-index{font-size:11px;letter-spacing:.2em;font-weight:700;color:#555;display:flex;align-items:center;gap:15px;margin-bottom:28px}.lesson-rule{width:34px;height:1px;background:#b4b4b4}.lesson h3{font-size:clamp(43px,4.1vw,61px);letter-spacing:-.045em;margin:0 0 23px}.lesson p{max-width:450px;color:#454545;margin:0 0 35px;flex:1;font-size:17px}.text-link{text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:11px;text-decoration:none;border-bottom:1px solid var(--red);padding-bottom:9px}.text-link span{font-size:16px;margin-left:20px;color:var(--red)}.text-link:hover{color:var(--red)}
.interlude{background:var(--red);color:white;overflow:hidden}.interlude-layout{position:relative;min-height:345px;display:flex;align-items:center;gap:60px}.interlude-number{align-self:flex-start;margin-top:60px;font-size:10px;font-weight:700;letter-spacing:.19em;white-space:nowrap}.interlude p{font:400 clamp(38px,4.8vw,68px)/1.2 var(--serif);letter-spacing:-.04em;margin:0}.interlude p em{color:#efd9df}.interlude-mark{font:400 330px/1 var(--serif);position:absolute;right:0;top:-28px;color:rgba(255,255,255,.1)}
.philosophy{padding:155px 0}.philosophy-grid{display:grid;grid-template-columns:1fr .9fr;gap:clamp(70px,10vw,170px);align-items:center}.philosophy h2{font-size:clamp(47px,5vw,75px);letter-spacing:-.05em;margin:0}.philosophy h2 em{color:var(--red)}.philosophy-body{padding-top:75px}.philosophy-body>p{font-size:20px;line-height:1.95;margin:0}.philosophy-signature{margin-top:35px;padding-top:22px;border-top:1px solid #ccc;color:var(--red);font-family:var(--serif);font-style:italic;font-size:18px}
.success{background:#080808;color:white;padding:115px 0}.success-layout{display:grid;grid-template-columns:220px 1fr;gap:65px}.success-tag{font-size:11px;letter-spacing:.2em;color:var(--gold);font-weight:700;padding-top:13px}.success-tag span{display:block;font-size:32px;margin-top:22px;color:var(--red)}blockquote{font-size:clamp(38px,4.1vw,64px);letter-spacing:-.04em;margin:0}blockquote span{display:block;font-family:var(--sans);font-size:19px;letter-spacing:0;line-height:1.8;margin-top:32px;max-width:640px;color:#d9d9d9}
.beliefs{padding:145px 0 150px}.beliefs-top{margin-bottom:72px}.beliefs h2{font-size:clamp(39px,4.15vw,64px);letter-spacing:-.05em;margin:0;white-space:nowrap}.beliefs h2 em{color:var(--red)}.beliefs-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 90px}.belief{display:grid;grid-template-columns:50px 1fr;gap:16px;border-top:1px solid #b8b8b8;padding-top:25px}.belief-num{font-size:11px;letter-spacing:.14em;font-weight:700;color:var(--red);padding-top:9px}.belief h3{font-size:clamp(25px,2.35vw,34px);letter-spacing:-.025em;margin:0 0 15px}.belief p{margin:0 0 17px;color:#444;font-size:16px;line-height:1.85}.belief.wide{grid-column:1/-1;max-width:940px;margin-left:auto;border-top:3px solid var(--red);grid-template-columns:50px 1fr}.belief.wide p{max-width:750px}
.closing{background:var(--red);color:#fff;position:relative;overflow:hidden;padding:135px 0 145px}.closing-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:center;position:relative;z-index:1}.closing-eyebrow{color:#ead1d8}.closing h2{font-size:clamp(55px,5.7vw,86px);letter-spacing:-.055em;margin:0}.closing h2 em{color:#f1dce2}.closing-body p{font-size:18px;line-height:1.9;margin:0 0 35px}.closing-decoration{position:absolute;right:-20px;bottom:-105px;font:400 190px/1 var(--serif);color:rgba(255,255,255,.045);white-space:nowrap;pointer-events:none}.closing-decoration span{color:rgba(255,255,255,.035)}
.footer{background:#070707;color:#c6c6c6;padding:27px 0}.footer-row{display:flex;justify-content:space-between;gap:30px;font-size:12px;letter-spacing:.035em}.footer a{text-decoration:none;color:#fff}
@media(max-width:1050px){.wrap{width:min(100% - 64px,1220px)}.brand img{width:240px}nav{gap:17px}.intro-aside{position:static;margin-top:25px;width:330px}.lesson-grid{gap:45px}.success-layout{grid-template-columns:160px 1fr;gap:35px}.beliefs h2{white-space:normal}.closing-layout{gap:55px}}
@media(max-width:730px){.wrap{width:calc(100% - 40px)}.navrow{height:auto;min-height:100px;flex-direction:column;justify-content:center;padding:19px 0;gap:18px}.brand img{width:255px}nav{justify-content:center;flex-wrap:wrap;gap:12px 19px}nav a{font-size:10px}.hero{min-height:660px}.hero-photo{background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.65)),url('assets/piano-hands-temp.jpg') 62% center/cover no-repeat}.hero-layout{min-height:595px;padding:60px 0}.hero-side{display:none}.hero h1{font-size:clamp(56px,12vw,83px)}.hero-welcome{font-size:17px}.hero-bottom{font-size:9px}.hero-bottom span:last-child{display:none}.intro{padding:85px 0 95px}.intro h2{font-size:clamp(45px,9vw,68px)}.intro-heading{margin-bottom:55px}.lesson-grid{grid-template-columns:1fr;gap:65px}.lesson h3{font-size:51px}.interlude-layout{min-height:285px;display:block;padding-top:50px;padding-bottom:50px}.interlude-number{display:block;margin:0 0 25px}.interlude p{font-size:clamp(37px,8vw,55px)}.interlude-mark{font-size:230px;right:-20px;top:40px}.philosophy{padding:90px 0}.philosophy-grid{grid-template-columns:1fr;gap:30px}.philosophy h2{font-size:clamp(44px,9vw,67px)}.philosophy-body{padding:0}.philosophy-body>p{font-size:18px}.success{padding:90px 0}.success-layout{grid-template-columns:1fr;gap:30px}.success-tag span{display:none}blockquote{font-size:clamp(36px,8vw,52px)}blockquote span{font-size:17px}.beliefs{padding:90px 0}.beliefs h2{font-size:clamp(39px,7.5vw,58px)}.beliefs-grid{grid-template-columns:1fr;gap:38px}.belief.wide{grid-column:auto}.belief h3{font-size:29px}.closing{padding:95px 0 105px}.closing-layout{grid-template-columns:1fr;gap:35px}.closing h2{font-size:clamp(53px,10vw,75px)}.closing-body p{font-size:17px}.footer-row{flex-direction:column;gap:10px}.closing-decoration{font-size:100px;bottom:-35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
