@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@1,500;1,600&display=swap');
:root{--paper:#faf8f3;--ink:#292e28;--muted:#6d7068;--orange:#b7472a;--line:#dddfd4;--serif:'Playfair Display',Georgia,serif;--sans:'Be Vietnam Pro',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.7 var(--sans)}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,summary,select{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b7472a;outline-offset:5px}.wrap{width:min(1240px,calc(100% - 100px));margin:auto}.header{height:103px;width:min(1340px,calc(100% - 80px));margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:28px}.brand{display:flex;align-items:center;gap:10px}.brand svg{width:42px;color:var(--orange)}.brand>span{font-size:20px;line-height:1.1;letter-spacing:2px;font-weight:800}.brand small{display:block;font-size:8px;letter-spacing:1.7px;margin-top:7px;font-weight:600}.header nav{display:flex;gap:32px;font-size:12px}.header nav a:hover,.text-link:hover{color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--orange);color:white;padding:16px 23px;border:1px solid var(--orange);font-size:12px;font-weight:600;border-radius:5px;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#943b24;transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.button.small{padding:12px 18px;font-size:11px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center;padding-top:69px;padding-bottom:66px}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:600;line-height:1.7;margin:0 0 24px}.tiny-star{font-size:21px;vertical-align:middle;color:var(--orange);margin-right:10px}h1,h2,h3,p{margin-top:0}h1{font-weight:500;font-size:clamp(40px,4.4vw,65px);letter-spacing:-2.8px;line-height:1.23;margin-bottom:24px}em{font-family:var(--serif);font-weight:500;color:var(--orange);letter-spacing:-1.1px}.intro{font-size:17px;font-weight:600;margin-bottom:12px}.hero-description{font-size:13px;line-height:1.95;color:var(--muted);max-width:430px}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:30px}.text-link{font-size:11px;font-weight:600;display:inline-flex;gap:16px;align-items:center}.hero-foot{display:flex;align-items:center;gap:15px;margin-top:45px;color:var(--muted);font-size:10px}.mini-wave{display:flex;gap:3px;height:25px;align-items:center}.mini-wave i{width:2px;height:10px;background:#9b9f8b}.mini-wave i:nth-child(2n){height:21px}.mini-wave i:nth-child(3n){height:15px}.hero-visual{position:relative;padding:8px 0 0}.picture-frame{height:470px;position:relative;border-radius:140px 5px 5px 5px;overflow:hidden;background:#e8e1d4}.picture-frame img{width:100%;height:100%;object-fit:cover;display:block}.image-note{position:absolute;bottom:13px;left:15px;color:white;background:#252b24a6;padding:4px 9px;font-size:9px;border-radius:3px}.picture-caption{display:flex;justify-content:space-between;font-size:8px;font-weight:500;letter-spacing:1.3px;padding:16px 0 0;color:var(--muted)}.round-stamp{width:112px;height:112px;background:#ede9d5;border:5px solid var(--paper);border-radius:50%;position:absolute;left:-39px;bottom:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-12deg);color:#525c43;box-shadow:0 4px 10px #2221}.round-stamp span{font-size:7px;letter-spacing:1px}.round-stamp strong{font:italic 26px var(--serif);padding:4px 0}.ribbon{border-block:1px solid var(--line);overflow:hidden;padding:16px 0}.ribbon>div{white-space:nowrap;display:flex;justify-content:center;align-items:center;gap:32px;font-size:10px;letter-spacing:2px;color:#68705f}.ribbon span{font-size:21px;color:var(--orange)}.section{padding-top:90px;padding-bottom:90px}h2{font-size:clamp(30px,3.1vw,44px);font-weight:500;line-height:1.35;letter-spacing:-1.5px;margin-bottom:20px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.section-heading .eyebrow{margin-bottom:15px}.section-heading>p{font-size:12px;color:var(--muted);line-height:1.9;margin-bottom:25px}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.course-card{border:1px solid #ddd8cd;border-radius:7px;padding:24px;text-align:left;cursor:pointer;display:flex;flex-direction:column;background:#eee9dd;transition:transform .2s,box-shadow .2s}.course-card:hover{transform:translateY(-6px);box-shadow:0 10px 22px #313a2512}.course-card.acoustic{background:#f2e4d7;border-color:#e3d3c2}.course-card.electric{background:#e8ecdf;border-color:#d7ddcb}.course-top{display:flex;justify-content:space-between;gap:8px;font-size:8px;letter-spacing:1px;color:#6f715f}.course-top>span:first-child{font-size:12px}.instrument-art{height:201px;display:flex;align-items:center;justify-content:center}.instrument-art svg{width:100%;height:100%;max-width:320px}.course-card h3{font-size:26px;letter-spacing:-1px;font-weight:500;margin:4px 0 10px}.course-card>p{font-size:12px;line-height:1.9;color:#5a6056;max-width:270px;margin-bottom:25px}.course-link{border-top:1px solid #393d2520;padding-top:16px;font-size:11px;display:flex;align-items:center;justify-content:space-between;margin-top:auto}.course-link>span{font-size:20px}.about-section{background:#f0eee5;padding:74px 0}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.about-art{background:#e7e3d4;position:relative;min-height:370px;border-radius:4px;padding:46px 40px;overflow:hidden}.about-art>p{font-size:39px;font-weight:500;line-height:1.4;letter-spacing:-1px;position:relative;z-index:1}.about-art em{font-size:46px}.art-signature{font-size:11px;color:#5c6850}.staff-lines{position:absolute;right:-30px;bottom:40px;width:240px;height:92px;transform:rotate(-18deg);background:repeating-linear-gradient(transparent 0 16px,#8c95774d 16px 18px)}.staff-lines span{font:100px Georgia;color:#83906c;position:absolute;right:90px;top:-41px}.little-star{position:absolute;right:28px;top:28px;width:63px;color:var(--orange)}.about-copy>p:not(.eyebrow){font-size:13px;line-height:1.95;color:var(--muted);margin-bottom:17px}.about-copy .text-link{margin-top:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line);padding-top:32px}.steps article>span{font-size:13px;color:var(--orange)}.steps h3{font-weight:500;font-size:19px;margin:21px 0 12px;letter-spacing:-.5px}.steps p{font-size:12px;color:var(--muted);line-height:1.95;max-width:300px}.faq-section{display:grid;grid-template-columns:.85fr 1.2fr;gap:80px;border-top:1px solid var(--line);padding-top:70px;padding-bottom:90px}.faq-section .eyebrow{font-size:9px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;font-weight:500;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary span{font-size:22px;font-weight:400;color:var(--orange)}details[open] summary span{transform:rotate(45deg)}details p{color:var(--muted);font-size:12px;line-height:1.95;padding-right:25px;padding-bottom:8px}.contact-section{padding:70px 0;background:#f0e6d9;border-top:1px solid #e9dccb}.contact-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:start}.contact-layout>div>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.95}.contact-details{display:flex;gap:60px;margin-top:36px}.contact-details span{font-size:8px;letter-spacing:1.4px}.contact-details p{font-size:12px;margin-top:8px;color:var(--muted)}.interest-panel{background:var(--paper);padding:26px;border:1px solid #dfd9cb;border-radius:6px}.interest-panel label{display:block;font-size:11px;margin:0 0 8px;font-weight:500}.interest-panel select,.interest-panel textarea{display:block;width:100%;border:1px solid #d4d5c9;background:#fffdf7;color:var(--ink);border-radius:4px;padding:12px;font-size:12px;margin-bottom:18px}.interest-panel textarea{resize:vertical;line-height:1.8;min-height:112px}.copy-button{width:100%;font-size:11px}.panel-note{font-size:9px!important;color:var(--muted);margin:12px 0 0!important}.status{font-size:10px!important;margin:5px 0 0!important;color:#4d6d43!important}.status:empty{display:none}footer{display:flex;justify-content:space-between;align-items:center;padding:30px 0;font-size:10px;color:var(--muted);gap:20px}.footer-name{font-weight:600;color:var(--ink)}dialog{border:1px solid #d4d3c4;border-radius:12px;padding:40px;max-width:560px;width:calc(100% - 36px);background:var(--paper);color:var(--ink);box-shadow:0 15px 80px #252b2430}dialog::backdrop{background:#1a211bc2;backdrop-filter:blur(3px)}dialog h2{font-size:40px}dialog h3{font-size:14px;font-weight:600;margin-top:26px}dialog>p:not(.eyebrow){font-size:13px;color:var(--muted)}dialog ul{padding-left:20px;font-size:13px;line-height:2}.dialog-note{font-size:10px!important;border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.close-dialog{position:absolute;top:10px;right:15px;background:none;border:0;font-size:30px;cursor:pointer}.skip{position:fixed;left:10px;top:-100px;background:var(--ink);color:white;padding:10px;z-index:20}.skip:focus{top:10px}body.modal-open{overflow:hidden}@media(min-width:1500px){.hero{padding-top:85px;padding-bottom:85px}.picture-frame{height:510px}}@media(max-width:1050px){.wrap{width:calc(100% - 60px)}.header{width:calc(100% - 60px)}.header nav{gap:20px;font-size:10px}.hero{gap:30px}h1{font-size:45px;letter-spacing:-2px}.hero-actions{flex-wrap:wrap;gap:18px}.picture-frame{height:435px}.about-layout{gap:45px}.contact-layout{gap:45px}.course-card{padding:18px}.course-top{font-size:7px}.faq-section{gap:40px}.contact-details{gap:30px}}@media(max-width:740px){html{scroll-padding-top:25px}.wrap,.header{width:calc(100% - 36px)}.header{height:85px;gap:10px}.header nav{display:none}.brand>span{font-size:16px}.brand small{font-size:7px;letter-spacing:1.1px}.brand svg{width:34px}.button.small{padding:11px 12px;font-size:10px;gap:15px}.hero{grid-template-columns:1fr;padding:42px 0 36px;gap:33px}.hero-copy>.eyebrow{font-size:8px;margin-bottom:21px}h1{font-size:46px;line-height:1.25;letter-spacing:-2px}.intro{font-size:15px}.hero-description{font-size:12px;max-width:460px}.hero-actions{gap:20px;margin-top:24px}.hero-actions .button{font-size:11px;padding:15px 17px;gap:20px}.text-link{font-size:10px}.hero-foot{margin-top:25px;font-size:9px}.hero-visual{margin-left:14px}.picture-frame{height:350px;border-radius:105px 4px 4px 4px}.round-stamp{left:-22px;width:90px;height:90px;bottom:0}.round-stamp strong{font-size:22px}.round-stamp span{font-size:6px}.picture-caption{font-size:7px;justify-content:end;gap:20px}.ribbon>div{font-size:8px;gap:24px}.ribbon{padding:12px 0}.section{padding:55px 0}h2{font-size:32px;letter-spacing:-1px}.section-heading{display:block;margin-bottom:24px}.section-heading>p{font-size:11px;line-height:1.9}.eyebrow{font-size:8px;margin-bottom:16px}.course-grid{grid-template-columns:1fr;gap:15px}.course-card{padding:22px}.course-top{font-size:8px}.instrument-art{height:195px}.course-card h3{font-size:26px}.course-card>p{max-width:100%;font-size:12px}.about-section{padding:44px 0}.about-layout{grid-template-columns:1fr;gap:35px}.about-art{min-height:320px;padding:32px}.about-art>p{font-size:35px}.about-art em{font-size:41px}.about-copy>p:not(.eyebrow){font-size:12px}.steps{grid-template-columns:1fr;gap:24px;padding-top:24px}.steps article{display:grid;grid-template-columns:40px 1fr;column-gap:12px}.steps article>span{grid-row:1/3;margin-top:4px}.steps h3{margin:0 0 8px;font-size:17px}.steps p{max-width:100%;margin-bottom:0}.faq-section{grid-template-columns:1fr;gap:12px;padding-top:45px;padding-bottom:55px}.faq-section .eyebrow{font-size:8px}summary{font-size:11px;padding:19px 0}.contact-section{padding:45px 0}.contact-layout{grid-template-columns:1fr;gap:26px}.contact-details{margin-top:24px;gap:35px}.contact-layout>div>p:not(.eyebrow){font-size:11px}.interest-panel{padding:20px}footer{flex-wrap:wrap;gap:10px;padding:24px 0;font-size:9px}.footer-name{width:100%;font-size:11px}footer>a:last-child{margin-left:auto}dialog{padding:30px 24px}dialog h2{font-size:34px}dialog .button{gap:14px;font-size:11px}dialog ul{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
