:root{--paper:#f6f3ec;--ink:#302c27;--muted:#736c61;--accent:#82704e;--line:#dcd6c9;--dark:#292d27}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #aa8851;outline-offset:7px}::selection{background:#ded0b7}.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}.header{height:126px;display:flex;align-items:center;justify-content:space-between}.brand img{display:block;width:198px;height:auto}.header nav{display:flex;align-items:center;gap:48px;font-size:13px}.location{color:var(--muted)}.nav-contact{border-bottom:1px solid var(--ink);padding:11px 0;display:flex;gap:32px}.hero{display:grid;grid-template-columns:.85fr 1.25fr;gap:38px;align-items:center;padding-top:24px;padding-bottom:64px}.hero-copy{padding-block:36px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.1px;line-height:1.6;margin:0 0 30px}.hero .eyebrow{display:flex;align-items:center;gap:11px}.eyebrow>span{width:20px;height:1px;background:var(--accent)}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;margin:0;letter-spacing:-2px}h1{font-size:clamp(48px,4.7vw,70px);line-height:1.12}h1 em,h2 em{font-weight:400;color:var(--accent)}.intro{font-size:17px;line-height:1.7;margin:28px 0}.button{display:inline-flex;align-items:center;gap:42px;padding:18px 23px;background:var(--dark);color:#fff;font-size:13px;transition:background .2s,transform .2s}.button:hover{background:#41483b;transform:translateY(-2px)}.button span{font-size:19px}.hero-note{margin:23px 0 0;font-size:11px;color:var(--muted)}.hero-visual{margin:0;min-width:0}.hero-visual picture{display:block;overflow:hidden;border-radius:160px 160px 3px 3px;background:#e8dfd0}.hero-visual img{display:block;width:100%;height:auto;aspect-ratio:1/1.02;object-fit:cover;object-position:57% center}.hero-visual figcaption{display:flex;justify-content:space-between;gap:14px;padding-top:16px;color:var(--muted);font-size:10px;letter-spacing:.5px}.hero-visual figcaption span:first-child{letter-spacing:1.5px;font-size:9px}.invitation{border-top:1px solid var(--line);padding-block:48px 54px;display:grid;grid-template-columns:.85fr 1.1fr .15fr;gap:38px;align-items:start}.invitation>.eyebrow{margin-top:9px}.invitation h2{font-size:32px;letter-spacing:-.9px}.invitation p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.85;max-width:490px;margin:16px 0 0}.music-mark{font-family:Georgia,serif;font-size:65px;color:#b7a988;line-height:1;text-align:right}.contact{background:var(--dark);color:var(--paper)}.contact-inner{padding-block:64px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.contact .eyebrow{color:#c9b795;margin-bottom:22px}.contact h2{font-size:53px;line-height:1.1}.contact h2 em{color:#d0bd96}.contact-copy>p:last-child{color:#c0c2b8;font-size:13px;line-height:1.85;margin:24px 0 0}.contact-links>a{display:flex;justify-content:space-between;align-items:center;padding:25px 0;border-bottom:1px solid #55594f;transition:color .2s}.contact-links>a:hover{color:#d0bd96}.contact-label{display:block;font-size:9px;letter-spacing:1.8px;color:#c0c2b8;margin-bottom:10px}.contact-value{font-size:clamp(18px,2vw,27px);font-weight:300}.arrow{font-size:26px;color:#d0bd96}.contact-links>p{font-size:11px;color:#c0c2b8;margin-top:25px}.contact-links>p span{margin-inline:10px}.footer{display:flex;align-items:center;gap:40px;padding-block:32px}.footer img{width:143px;height:auto;display:block}.footer>div{margin-left:auto}.footer p{font-size:10px;line-height:1.6;color:var(--muted);margin:2px 0}.footer .disclosure{font-size:9px;margin-top:7px}.back-top{margin-left:20px;border:1px solid var(--line);width:38px;height:38px;display:grid;place-items:center}.skip-link{position:absolute;top:-80px;left:20px;padding:12px;background:var(--dark);color:white;z-index:10}.skip-link:focus{top:15px}@media(min-width:1600px){.hero-visual img{aspect-ratio:1.13}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero{gap:24px;grid-template-columns:1fr 1.15fr}h1{font-size:49px}.hero-visual img{aspect-ratio:.85}.hero-visual picture{border-radius:110px 110px 3px 3px}.hero-visual figcaption{flex-direction:column;gap:5px}.eyebrow{font-size:9px;letter-spacing:1.5px}.contact-inner{gap:40px}.invitation{grid-template-columns:.8fr 1.2fr;gap:24px}.music-mark{display:none}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.header{height:98px}.brand img{width:160px}.header nav{gap:0}.location{display:none}.nav-contact{gap:20px;font-size:12px}.hero{grid-template-columns:1fr;gap:32px;padding-top:20px;padding-bottom:38px}.hero-copy{padding:15px 0 0}.hero .eyebrow{margin-bottom:23px}h1{font-size:clamp(43px,10.4vw,65px);letter-spacing:-1.8px}h1 br:nth-of-type(2){display:none}h1 em{display:block}.intro{font-size:16px;margin:23px 0}.hero-note{margin-top:18px}.hero-visual picture{border-radius:110px 110px 3px 3px}.hero-visual img{aspect-ratio:1.08;object-position:57% center}.hero-visual figcaption{flex-direction:row;font-size:9px}.hero-visual figcaption span:first-child{font-size:8px;letter-spacing:.8px}.invitation{grid-template-columns:1fr;gap:12px;padding-block:31px 38px}.invitation>.eyebrow{margin:0}.invitation h2{font-size:29px}.invitation p:not(.eyebrow){font-size:14px;margin-top:12px}.contact-inner{grid-template-columns:1fr;gap:22px;padding-block:42px}.contact h2{font-size:45px}.contact-copy>p:last-child{margin-top:20px}.contact-value{font-size:23px}.contact-links>a{padding-block:22px}.footer{flex-wrap:wrap;gap:23px;padding-block:28px}.footer>div{order:3;flex-basis:100%;margin:0}.back-top{margin-left:auto}.footer img{width:135px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Preserve the complete instrument and its natural proportions at every screen size. */
.hero-visual img{aspect-ratio:1.3;object-fit:cover;object-position:57% center}.hero-visual picture{border-radius:110px 110px 3px 3px}@media(max-width:1000px) and (min-width:701px){.hero{grid-template-columns:1fr 1.2fr}.hero-visual picture{border-radius:70px 70px 3px 3px}}@media(max-width:700px){.hero-visual picture{border-radius:80px 80px 3px 3px}}

