:root{--green:#133f33;--ink:#182d26;--muted:#637068;--line:#d7ded9;--paper:#f8f9f7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b59149;outline-offset:5px}header{min-height:100px;padding:18px 5.5%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}.brand{font:42px/1 Georgia,serif;letter-spacing:7px;text-decoration:none}.brand span{display:block;font:10px/2.4 Arial,sans-serif;letter-spacing:1.7px}nav{display:flex;align-items:center;gap:34px;font-size:14px}nav a{text-decoration:none}nav a:hover{text-decoration:underline}.nav-contact{border:1px solid var(--green);padding:10px 24px}.menu{display:none}.hero{position:relative;display:grid;grid-template-columns:47% 53%;background:#f8f8f8;padding:80px 5.5% 0;overflow:hidden}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.3px;margin:0 0 25px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12;margin:0 0 28px;letter-spacing:-1.8px}h1{font-size:clamp(44px,4.6vw,76px)}h2{font-size:clamp(38px,4vw,60px)}h3{font-size:30px;letter-spacing:-.6px}em{font-weight:400;color:#658274}.hero-copy{position:relative;z-index:1;padding:0 0 50px}.hero-copy>p:not(.eyebrow){max-width:395px;color:var(--muted);margin:26px 0}.button{display:inline-block;border:1px solid var(--green);background:var(--green);color:#fff;padding:15px 22px;text-decoration:none;font-size:14px;line-height:1.5}.button:hover{background:#245744}.textlink{display:inline-block;text-underline-offset:6px;font-size:14px}.hero-copy>.textlink{display:block;margin-top:22px}.hero-image{margin:0 -10% 0 -6%;display:flex;flex-direction:column;justify-content:center}.hero-image img{width:100%;mix-blend-mode:multiply}.hero-image figcaption{font-size:10px;letter-spacing:1.4px;text-align:center;margin:10px 8% 25px}.hero-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding:19px 0;display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px}.section{padding:95px 8%;scroll-margin-top:10px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%}.intro p:not(.eyebrow){color:var(--muted)}.lead{font-size:21px;line-height:1.55;color:var(--ink)!important}.timeline{background:var(--green);color:#fff;padding-top:55px;padding-bottom:60px}.years{display:flex;justify-content:space-between;border-bottom:1px solid #ffffff40}.years button{background:none;border:0;border-bottom:3px solid transparent;color:#b7c9bd;padding:14px 2px;font-family:Georgia,serif;font-size:24px}.years button.active{color:white;border-bottom-color:#d2b677}.milestone{display:grid;grid-template-columns:1fr 2fr;gap:8%;padding-top:40px;align-items:center;min-height:200px}.milestone>span{font:clamp(60px,8vw,110px)/1 Georgia,serif;color:#c4d1c8}.milestone h3{margin-bottom:15px}.milestone p{max-width:650px;color:#d1ded5;margin:0}.section-head{display:flex;justify-content:space-between;gap:10%;align-items:flex-end;margin-bottom:36px}.section-head>p{max-width:390px;color:var(--muted)}.instrument-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:30px}.instrument-grid figure{margin:0;background:var(--paper)}.instrument-grid figure img{width:100%;height:350px;object-fit:contain;mix-blend-mode:multiply}.instrument-grid figcaption{padding:25px 30px}.instrument-grid figcaption span{font-size:11px;letter-spacing:2px}.instrument-grid h3{margin:15px 0}.instrument-grid p{color:var(--muted)}.museum{padding:48px;background:#e9eeea;display:flex;flex-direction:column;align-items:flex-start}.museum h3{font-size:52px;margin:25px 0}.museum .button{margin-top:auto}.museum small{font-size:12px;color:var(--muted);margin-top:15px}.archive{background:var(--green);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:10%}.archive .lead{color:#fff!important}.archive p{color:#d2ded6}.price{display:flex;gap:24px;border-top:1px solid #ffffff44;margin-top:30px;padding-top:25px;align-items:center}.price strong{font:42px Georgia,serif;white-space:nowrap}.price span{font-size:12px}.archive-card{background:white;color:var(--ink);padding:35px}.archive-card p{color:var(--muted)}ol{padding-left:25px}li{padding:0 0 15px 10px}li p{font-size:14px;margin:6px 0}.fine{font-size:12px;line-height:1.7}.archive-card .button{width:100%}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:9%}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:17px;padding-right:15px}details p{color:var(--muted);font-size:15px}.contact{background:#edf1ed}.contacts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;margin-top:45px}.contacts span{display:block;font-size:11px;letter-spacing:1.6px;margin-bottom:12px}.contacts a{font:clamp(19px,2vw,28px) Georgia,serif;text-decoration:none}footer{padding:45px 5.5%;display:flex;justify-content:space-between;gap:35px;align-items:center}footer p{font-size:13px}footer>div:last-child{display:flex;gap:15px;flex-wrap:wrap;font-size:12px;max-width:230px}footer>div:last-child span{width:100%;color:var(--muted)}dialog{border:0;padding:40px;width:min(610px,calc(100% - 24px));max-height:90vh;color:var(--ink)}dialog::backdrop{background:#10271fe0}dialog h2{font-size:37px}.close{float:right;border:0;background:none;font-size:30px;line-height:1}label{display:block;font-size:14px;margin-bottom:16px}input,select,textarea{display:block;width:100%;border:1px solid #b8c6bc;padding:10px;background:#fff;color:var(--ink);margin-top:5px;border-radius:0}textarea{resize:vertical}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.skip{position:absolute;top:-100px;z-index:30;background:white;padding:15px}.skip:focus{top:0}#mail-status{font-size:14px}@media(min-width:1500px){main,header,footer{max-width:1800px;margin:auto}}@media(max-width:800px){header{min-height:82px;padding:15px 6%}.brand{font-size:32px}.brand span{font-size:9px}.menu{display:block;background:none;border:1px solid var(--line);padding:8px 14px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:25px 6%;border-bottom:1px solid var(--line);align-items:flex-start}nav.open{display:flex;flex-direction:column;gap:18px}.hero{grid-template-columns:1fr;padding:45px 6% 0}.hero-copy{padding-bottom:0}h1{font-size:50px}.hero-image{margin:25px -3% 0}.hero-image img{max-height:410px;object-fit:contain}.hero-image figcaption{font-size:9px}.hero-bottom{font-size:9px;gap:15px}.section{padding:60px 6%}.intro,.archive,.faq{grid-template-columns:1fr;gap:28px}.milestone{grid-template-columns:1fr;gap:25px}.milestone>span{font-size:70px}.years button{font-size:19px}.section-head{display:block}.instrument-grid{grid-template-columns:1fr}.museum{padding:35px}.museum h3{font-size:45px}.museum .button{margin-top:20px}.instrument-grid figure img{height:280px}.contacts{grid-template-columns:1fr;gap:30px}footer{align-items:flex-start;flex-direction:column;padding:40px 6%}.archive-card{padding:26px}.price{align-items:flex-start}dialog{padding:25px}dialog h2{font-size:30px}.fields{grid-template-columns:1fr;gap:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* AvantGarde Bk BT is preferred when installed. A licensed webfont can replace the local sources. */
@font-face{font-family:"IBACH AvantGarde";src:local("AvantGarde Bk BT"),local("AvantGarde BkBT"),local("AvantGardeITCbyBT-Book"),local("AvantGardeBT-Book");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBACH Gothic Fallback";src:url("assets/fonts/URWGothic-Book.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBACH Gothic Fallback";src:url("assets/fonts/URWGothic-Demi.otf") format("opentype");font-weight:600 900;font-style:normal;font-display:swap}
:root{--font:"IBACH AvantGarde","AvantGarde Bk BT","AvantGarde BkBT","IBACH Gothic Fallback","Century Gothic",Arial,sans-serif}
body,button,input,select,textarea,h1,h2,h3,.brand,.brand span,.eyebrow,.price strong,.contacts a{font-family:var(--font)}
h1,h2,h3{letter-spacing:-.045em;line-height:1.18}h1{font-size:clamp(42px,4.1vw,68px)}h2{font-size:clamp(36px,3.7vw,56px)}em{font-style:normal}.brand{font-weight:400}.eyebrow{letter-spacing:.16em}.hero-copy>p:not(.eyebrow){max-width:440px}body{line-height:1.7}.hero-image figcaption{font-size:12px}.hero-bottom{font-size:12px}.timeline{padding-top:75px;padding-bottom:75px}.history-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:9%;align-items:end;margin-bottom:35px}.history-heading>p{color:#d2ded6;max-width:440px}.history-heading h2{margin-bottom:0}.history-filters{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid #ffffff40;padding-top:25px}.history-filters button{border:1px solid #ffffff55;color:#fff;background:transparent;padding:10px 16px;font-size:14px;line-height:1.6}.history-filters button.active,.history-filters button:hover{background:#fff;color:var(--green)}.history-count{color:#d2ded6;font-size:14px;margin:20px 0 30px}.history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 7%}.history-card{min-width:0;border-top:1px solid #ffffff44;padding-top:20px}.history-card[hidden]{display:none}.history-date{font-size:32px;line-height:1.25;letter-spacing:-.03em;margin-bottom:20px;color:#e5e8dc}.history-card figure{margin:0 0 22px}.history-image{width:100%;background:#ebede7;position:relative;padding:14px;border:0;display:block;color:#173e31}.history-image img{width:100%;height:310px;object-fit:contain;display:block}.history-image span{position:absolute;bottom:14px;right:14px;background:#fff;padding:5px 10px;font-size:12px;opacity:0;transition:opacity .15s}.history-image:hover span,.history-image:focus-visible span{opacity:1}.history-card figcaption{font-size:12px;line-height:1.6;color:#c7d7cd;margin-top:10px}.history-card h3{font-size:27px;line-height:1.3;margin:0 0 15px}.history-card>p{font-size:16px;color:#e0e8e1;margin:0}.history-today{margin-top:65px;padding-top:35px;border-top:1px solid #ffffff50;display:grid;grid-template-columns:1fr 3fr;gap:30px}.history-today>span{font-size:26px}.history-today h3{font-size:28px;margin-bottom:15px}.history-today p{color:#d2ded6}.photo-dialog{width:min(1100px,calc(100% - 28px));padding:20px;background:#f8f9f7}.photo-dialog figure{margin:0}.photo-dialog img{display:block;max-height:72vh;max-width:100%;width:auto;height:auto;margin:auto;object-fit:contain}.photo-dialog figcaption{padding-top:16px;font-size:14px;line-height:1.6}.photo-close{display:block;margin:0 0 16px auto;background:none;border:1px solid #abb7ae;padding:8px 14px;font-size:14px;color:var(--ink)}
@media(max-width:800px){.history-heading{grid-template-columns:1fr;gap:12px}.history-heading>p{max-width:none}.history-grid{gap:45px 25px}.history-image img{height:220px}.history-card h3{font-size:23px}.history-filters button{font-size:13px;padding:8px 12px}.history-today{grid-template-columns:1fr;gap:15px}.history-image span{opacity:1}.hero-image figcaption{font-size:12px}.hero-bottom{font-size:11px}}
@media(max-width:560px){.history-grid{grid-template-columns:1fr}.history-image img{height:280px}.history-card h3{font-size:26px}.history-heading h2{font-size:35px}.hero h1{font-size:42px}.photo-dialog{padding:15px}.photo-dialog img{max-height:65vh}}
@media(prefers-reduced-motion:reduce){.history-image span{transition:none}}

@media(min-width:801px) and (max-width:1050px){header{gap:20px}.brand{font-size:33px;letter-spacing:5px}nav{gap:20px;font-size:13px}.nav-contact{padding:9px 15px}}

/* Full historical captions and the alternating chronology from the reference. */
.timeline{background:#f0f2f0;color:var(--ink)}.history-heading>p,.history-count{color:var(--muted)}.history-filters{border-color:var(--line)}.history-filters button{color:var(--green);border-color:#b7c8bf}.history-filters button.active,.history-filters button:hover{color:white;background:var(--green)}.history-grid{display:block;position:relative;padding:10px 0}.history-grid::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:#bccfc4}.history-card{position:relative;width:46%;margin:0 0 32px;padding:26px;background:#fff;border-top:0;border-bottom:3px solid var(--green)}.history-card.history-right{margin-left:54%}.history-card::after{content:"";position:absolute;top:25px;right:calc(-8.69565% - 11px);width:18px;height:18px;background:var(--green);border:4px solid #fff;border-radius:50%}.history-card.history-right::after{right:auto;left:calc(-8.69565% - 11px)}.history-card h3{font-size:26px;line-height:1.3;margin:0 0 20px}.history-card figure{margin:0 0 18px}.history-card figcaption{color:var(--muted)}.history-card>p{color:#3e4b43;font-size:16px}.history-card .history-image{padding:0;background:#f5f5f2}.history-card .history-image img{height:260px}.history-today{border-color:var(--line)}.history-today p{color:var(--muted)}
.piano-intro{display:block}.piano-intro>figure{display:grid;grid-template-columns:1fr 1fr;align-items:center}.special-models{margin-top:80px;padding-top:50px;border-top:1px solid var(--line)}.special-models>h3{font-size:clamp(32px,3.2vw,46px)}.models-context{max-width:950px;margin-bottom:40px;color:var(--muted)}.models-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 28px}.model-card figure{margin:0 0 22px}.model-card .history-image{padding:0;background:#f4f5f2}.model-card .history-image img{height:230px}.model-card h4{font:400 24px/1.3 var(--font);letter-spacing:-.035em;margin:0 0 16px}.model-card p{font-size:15px;line-height:1.75;color:var(--muted)}.organ{background:#edf1ed}.organ-layout{display:grid;grid-template-columns:.85fr 1.4fr;gap:7%;align-items:start}.organ-layout figure{margin:0}.organ-layout .history-image{background:white;padding:18px}.organ-layout .history-image img{height:auto;max-height:610px;object-fit:contain}.organ-layout figcaption{font-size:13px;color:var(--muted);margin-top:12px}.organ-layout p{margin:0 0 22px}.organ-heading h2{font-size:clamp(34px,3.7vw,54px)}
@media(max-width:1050px){.models-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-card{padding:20px}.history-card h3{font-size:23px}}
@media(max-width:800px){.history-grid{padding-left:25px}.history-grid::before{left:0}.history-card,.history-card.history-right{width:100%;margin-left:0;margin-bottom:28px;padding:24px}.history-card::after,.history-card.history-right::after{left:-37px;right:auto}.history-card h3{font-size:25px}.piano-intro>figure{grid-template-columns:1fr}.organ-layout{grid-template-columns:1fr}.organ-layout figure{max-width:420px;margin:0 auto 25px}.special-models{margin-top:55px;padding-top:35px}}
@media(max-width:560px){.models-grid{grid-template-columns:1fr;gap:35px}.model-card .history-image img{height:auto;max-height:340px}.history-card{padding:18px}.history-card .history-image img{height:235px}.history-card>p{font-size:15px}}

.special-model-teaser{padding:35px;background:#e9eeea;display:flex;flex-direction:column;align-items:flex-start}.special-model-teaser h3{font-size:clamp(30px,3vw,46px);line-height:1.18;margin:0 0 22px}.special-model-teaser>img{width:100%;height:210px;object-fit:contain;mix-blend-mode:multiply}.special-model-teaser>p:not(.eyebrow){font-size:16px;color:var(--muted)}.special-model-teaser .button{margin-top:auto}.featured-instruments>figure{display:flex;flex-direction:column;justify-content:center}.special-models{scroll-margin-top:115px}@media(max-width:800px){.special-model-teaser{padding:28px}.special-model-teaser>img{height:230px}.special-models{scroll-margin-top:95px}}

header .brand-logo{display:block;flex:0 0 auto;line-height:0;letter-spacing:0}header .brand-logo img{display:block;width:108px;height:auto;object-fit:contain}html{scroll-padding-top:135px}@media(max-width:800px){header .brand-logo img{width:82px}html{scroll-padding-top:110px}}

/* Align the introductory copy with the special-model card below. */
.instruments>.section-head{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:end}.instruments>.section-head>p{max-width:none;width:100%;margin:0 0 28px}@media(max-width:800px){.instruments>.section-head{grid-template-columns:1fr;gap:0}.instruments>.section-head>p{margin:0 0 16px}}

.privacy-note{margin-top:30px;padding:24px;background:#edf1ed;border-left:3px solid var(--green)}.privacy-note h3{font-size:21px;line-height:1.35;margin-bottom:12px;letter-spacing:-.025em}.privacy-note p{font-size:15px;line-height:1.75;margin:0;color:var(--muted)}.history-card .history-image[data-photo="/assets/history/23.webp"]{padding:24px 0 0}.history-card .history-image[data-photo="/assets/history/23.webp"] img{height:auto;max-height:340px;object-fit:contain;object-position:center top}

/* Both language editions share the same layout and images. */
header{gap:26px}header nav{margin-left:auto;gap:24px}.language-switch{display:flex;align-items:center;gap:9px;flex:0 0 auto;font:14px/1.5 var(--font);letter-spacing:.04em}.language-switch a{text-decoration:none;padding:7px 2px;color:var(--muted)}.language-switch a[aria-current="page"]{color:var(--green);border-bottom:2px solid var(--green)}.language-switch span{color:#89978d}html[lang="en"] .hero .button{max-width:100%}html[lang="en"] .brand span{letter-spacing:1px}
@media(min-width:801px) and (max-width:1150px){header{padding-left:4%;padding-right:4%;gap:18px}header nav{gap:14px;font-size:13px}.nav-contact{padding:9px 14px}.language-switch{gap:6px}}
@media(max-width:900px){header .menu{display:block;background:none;border:1px solid var(--line);padding:8px 14px;order:3}header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:25px 6%;border-bottom:1px solid var(--line);align-items:flex-start;margin:0}header nav.open{display:flex;flex-direction:column;gap:18px}.language-switch{margin-left:auto;order:2}header{gap:16px}}
@media(max-width:380px){header{gap:12px;padding-left:5%;padding-right:5%}header .brand-logo img{width:72px}.language-switch{gap:5px}header .menu{padding:8px 10px}}
