@font-face{font-family:Playfair;src:url('assets/PlayfairDisplay-400.ttf')}@font-face{font-family:Playfair;src:url('assets/PlayfairDisplay-600.ttf');font-weight:600}
:root{--navy:#202d46;--gold:#bea260;--ink:#292c30;--cream:#f4f2ed}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;color:var(--ink);background:white;font:16px/1.7 Arial,Helvetica,sans-serif}a{color:inherit}a:focus-visible{outline:3px solid #c0973f;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Playfair,Georgia,serif;font-weight:400;color:var(--navy);line-height:1.3}h2{font-size:30px;margin-bottom:22px}h3{font-size:25px}p+p{margin-top:18px}.announcement{text-align:center;background:var(--gold);color:#172237;font-size:12px;padding:8px 16px;letter-spacing:.2px}header{max-width:1120px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:24px 28px}.brand img{width:275px;display:block}.header-call{text-decoration:none;text-align:right;font-size:11px;letter-spacing:1px;text-transform:uppercase}.header-call strong{display:block;font-size:19px;letter-spacing:.5px}.era{text-align:center;color:#8a7138;font-size:14px;letter-spacing:2px;padding:14px 20px;border-top:1px solid #eee}.hero{background:var(--navy);color:white;text-align:center;padding:37px 20px 46px;position:relative}h1{color:white;font-size:46px;line-height:1.25;margin-bottom:27px}h1 span{display:block}.eyebrow{font-size:12px;letter-spacing:1.5px;font-weight:500;color:#8a7138}.hero .eyebrow{color:#d7be81;margin-bottom:10px}.hero-date{font:30px/1.45 Playfair,Georgia,serif}.public-date{font-size:16px;margin-top:8px}.button{display:inline-block;background:var(--gold);color:#18253d;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.65px;line-height:1.5;padding:17px 24px;text-align:center;transition:background .2s}.button:hover{background:#d3ba7b}.hero-button{position:relative;margin:25px 0 -70px;transform:translateY(13px)}.benefit{text-align:center;padding:42px 20px 22px}.benefit h2{font:600 clamp(17px,2vw,25px)/1.4 Playfair,Georgia,serif;margin-bottom:11px}.benefit p{font-size:10px;letter-spacing:1.4px;color:#6b6e74}nav{background:var(--gold);display:flex;justify-content:center;gap:65px;padding:15px 20px}nav a{font-size:10px;font-weight:700;text-decoration:none;letter-spacing:.7px}nav a:hover{text-decoration:underline}.layout{max-width:1100px;display:grid;grid-template-columns:minmax(0,1fr) 295px;gap:48px;margin:0 auto;padding:28px 28px 70px}.main-column>section{padding:35px 0}.main-column h2{text-align:center}.piano-group{display:flex;justify-content:center;align-items:center;padding:0 12px}.piano-group img{width:33.333%;max-width:210px;display:block}.intro{padding-top:10px!important}.main-column p{font-size:15px;line-height:1.85}.event{border-top:1px solid #ddd7c8}.event-row{padding:0 0 27px}.event-row h3{margin:8px 0 12px}.event-row .eyebrow{font-size:11px}.text-link{color:var(--navy);font-size:14px;text-underline-offset:5px}.nso{border-top:2px solid var(--gold);border-bottom:1px solid #dcd6c8;background:var(--cream);padding:30px 24px!important;text-align:center;margin:14px 0 15px}.nso h2{font-size:28px;margin:9px 0 16px}.nso p:not(.eyebrow){font-size:13px;letter-spacing:-.2px}.nso a{display:inline-block;margin-top:16px;font-size:13px;text-underline-offset:5px}.inventory>div{border-bottom:1px solid #e5e1d8;padding:20px 0}.inventory h3{font-size:22px;margin-bottom:5px}.inventory p{font-size:14px}.small{font-size:12px!important;line-height:1.6!important}.main-column .small{margin-top:18px;color:#636363}aside{padding-top:6px}.appointment-box{background:var(--cream);padding:28px 25px;text-align:center;border-top:3px solid var(--gold)}.appointment-box h2{font-size:25px;margin:10px 0 20px}.appointment-box p{font-size:13px;line-height:1.8}.appointment-box .eyebrow{font-size:10px}.appointment-dates{font-weight:700;color:var(--navy)}hr{border:0;border-top:1px solid #d7d0bd;width:45px;margin:23px auto}.appointment-box .button{margin:23px 0 12px;width:100%}.phone{display:block;text-decoration:none;font-size:22px;color:var(--navy)}.appointment-box .small{margin-top:10px;color:#6c6c6c}.aside-location{border-top:1px solid #d7d0bd;margin-top:28px;padding-top:25px}.aside-location p+p{margin-top:8px}.aside-location .text-link{display:block;margin-top:16px}.store{width:100%;margin-top:28px;display:block}.image-caption{font-size:11px;text-align:center;color:#666;margin-top:7px}.legacy{background:var(--cream);padding:66px 28px}.legacy-inner{max-width:1000px;margin:auto;text-align:center}.legacy h2{font-size:36px;margin:12px 0 25px}.legacy-inner>p:not(.eyebrow){max-width:800px;margin-left:auto;margin-right:auto}.memories{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:35px 0}figure{margin:0}figure img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}figcaption{font-size:11px;color:#636363;margin-top:9px}.signed{font:26px Playfair,Georgia,serif;margin-top:26px!important}.legacy .small{margin-top:7px;color:#666}.closing{padding:55px 20px;text-align:center;background:var(--navy);color:white}.closing h2{color:white;font-size:34px;margin-bottom:12px}.closing .button{margin-top:25px}footer{text-align:center;padding:38px 20px;color:#626262;font-size:12px}footer img{width:260px;margin-bottom:22px}footer p+p{margin-top:5px}footer small{display:block;margin-top:22px;font-size:10px}footer span{margin:0 12px}
@media(min-width:1100px){.nso p:not(.eyebrow){white-space:nowrap;font-size:12px}}
@media(max-width:800px){nav{gap:25px}.layout{grid-template-columns:minmax(0,1fr) 260px;gap:24px;padding:24px 22px 50px}.appointment-box{padding:24px 18px}h1{font-size:39px}.hero-date{font-size:25px}.main-column h2{font-size:26px}}
@media(max-width:620px){.announcement{font-size:10px;padding:8px 20px}header{padding:20px}.brand img{width:200px}.header-call{font-size:8px;letter-spacing:0}.header-call strong{font-size:13px}.era{font-size:11px;letter-spacing:1.5px}h1{font-size:clamp(27px,7vw,40px);margin-bottom:26px}.hero{padding-top:30px}.hero .eyebrow{font-size:10px}.hero-date{font-size:23px;max-width:340px;margin:auto}.public-date{font-size:12px}.hero-button{font-size:10px}.benefit{padding:42px 14px 24px}.benefit h2{font-size:clamp(10px,2.75vw,17px);white-space:nowrap;font-family:Arial,Helvetica,sans-serif;font-weight:700}.benefit p{font-size:8px;letter-spacing:.5px}nav{gap:0;justify-content:space-around;padding:15px 8px}nav a{font-size:8px;letter-spacing:0}.layout{display:flex;flex-direction:column;padding:18px 24px 45px;gap:25px}.main-column>section{padding:28px 0}.piano-group{padding:0}.main-column p{font-size:14px}.nso p:not(.eyebrow){font-size:13px}.appointment-box{padding:28px}.appointment-box h2{font-size:30px}.store{max-height:270px;object-fit:cover}.legacy{padding:45px 24px}.legacy h2{font-size:29px}.legacy p{font-size:14px}.memories{grid-template-columns:1fr;gap:24px}.closing h2{font-size:29px}.closing p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Readability pass and Daynes-style appointment form. */
body{font-size:18px;line-height:1.75}.announcement{font-size:14px}.header-call{font-size:12px}.header-call strong{font-size:21px}.era{font-size:15px}.eyebrow{font-size:14px}.hero .eyebrow{font-size:14px}.public-date{font-size:18px}.button{font-size:13px;padding:17px 22px}.benefit h2{font-size:26px}.benefit p{font-size:13px;letter-spacing:.9px}nav{gap:45px}nav a{font-size:13px;letter-spacing:.4px}.layout{max-width:1200px;grid-template-columns:minmax(0,1fr) 360px;gap:44px;padding-left:28px;padding-right:28px}.main-column p{font-size:18px;line-height:1.8}.main-column h2{font-size:32px}.event-row .eyebrow{font-size:13px}.event-row h3{font-size:27px}.text-link{font-size:16px}.nso h2{font-size:30px}.nso p:not(.eyebrow){font-size:16px;white-space:normal;letter-spacing:0}.nso a{font-size:16px}.inventory h3{font-size:25px}.inventory p{font-size:17px}.small{font-size:14px!important}.appointment-box{background:#f1f1f1;padding:28px 26px;border-top:3px solid var(--gold)}.appointment-box h2{font-size:28px;line-height:1.35;margin:0 0 12px}.appointment-box p{font-size:16px;line-height:1.6}.appointment-box .appointment-dates{font-family:Playfair,Georgia,serif;font-weight:400;font-size:22px;line-height:1.4}.appointment-intro{margin:22px 0 24px}.appointment-box form{text-align:left}.appointment-box .required-note{font-size:14px;margin-bottom:16px;color:#565656}.name-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{margin-bottom:19px;min-width:0}.field label{display:block;font-size:16px;font-weight:700;line-height:1.45;margin-bottom:8px;color:#2d3035}.field label span,.required-note span{color:#a0382e}input,select,textarea{display:block;width:100%;min-width:0;max-width:100%;font:16px/1.4 Arial,Helvetica,sans-serif;color:#292c30;background:#fff;border:1px solid #b6b6b6;border-radius:0;padding:11px 10px;min-height:48px}textarea{min-height:126px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--navy);outline-offset:2px;border-color:var(--navy)}.appointment-box .form-instruction{font-size:16px;color:#775d21;margin:5px 0 21px}.appointment-box .form-check{font-size:14px;line-height:1.6;text-align:center;margin-top:0}.appointment-box .form-preview-note{font-size:14px;color:#555;padding-top:15px;margin-top:15px;border-top:1px solid #d5d1c7}.appointment-box button{border:0;cursor:pointer;min-height:50px;margin:20px 0 0;width:100%;font-size:12px}.appointment-box button:focus-visible{outline:3px solid var(--navy);outline-offset:4px}.form-result{padding:16px;border:1px solid #b6a477;margin-top:18px;background:#fff}.appointment-box .form-result p{font-size:14px;overflow-wrap:anywhere}.form-result p+p{margin-top:10px}.phone-option{border-top:1px solid #d5d1c7;padding-top:20px;margin-top:22px}.phone{font-size:24px}.aside-location{text-align:center;font-size:16px}.image-caption,figcaption{font-size:14px;color:#555}.legacy-inner>p{font-size:18px}.legacy .eyebrow{font-size:14px}.closing p{font-size:18px}footer{font-size:15px}footer small{font-size:13px}
@media(max-width:1000px){.layout{grid-template-columns:minmax(0,1fr) 335px;gap:28px;padding-left:24px;padding-right:24px}.appointment-box{padding:25px 20px}.benefit h2{font-size:23px}nav{gap:30px}nav a{font-size:12px}.main-column h2{font-size:29px}.nso h2{font-size:27px}}
@media(max-width:760px){header{padding:20px}.brand img{width:210px}.header-call{font-size:10px}.header-call strong{font-size:17px}.announcement{font-size:12px}.era{font-size:13px}.hero .eyebrow{font-size:12px}.public-date{font-size:16px}.hero-date{font-size:26px}.hero-button{font-size:12px}.benefit{padding:42px 22px 25px}.benefit h2{font:600 22px/1.45 Playfair,Georgia,serif;white-space:normal;max-width:560px;margin-left:auto;margin-right:auto}.benefit p{font-size:12px;line-height:1.7}.layout{display:flex;flex-direction:column;padding:24px 24px 45px;gap:28px}.main-column{display:contents}.piano-group{order:0}.intro{order:1}aside{order:2}.event{order:3}.nso{order:4}#pianos{order:5}.layout section{padding:25px 0}.main-column p{font-size:18px}.main-column h2{font-size:30px}.appointment-box{max-width:540px;margin:auto;padding:28px}.appointment-box h2{font-size:29px}.appointment-box .appointment-dates{font-size:23px}.store{max-height:300px;object-fit:cover;max-width:540px;margin-left:auto;margin-right:auto}.nso p:not(.eyebrow){font-size:16px}.legacy-inner>p{font-size:18px}.legacy .eyebrow{font-size:13px}.legacy h2{font-size:30px}.closing h2{font-size:30px}.closing p{font-size:18px}nav{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;padding:10px 16px;text-align:center}nav a{font-size:12px;min-height:40px;display:flex;align-items:center;justify-content:center}.button{font-size:12px}.small{font-size:14px!important}}
@media(max-width:390px){.brand img{width:180px}.header-call strong{font-size:15px}.header-call{font-size:9px}header{padding:18px 16px}.layout{padding-left:18px;padding-right:18px}.appointment-box{padding:26px 20px}.name-fields{gap:12px}.field label{font-size:16px}.benefit h2{font-size:21px}.hero-date{font-size:24px}}
/* Preserve the wording and sequence from David's annotated Daynes proof. */
.event>p+.event-row{padding-top:24px;margin-top:8px}.schedule-line{color:var(--navy)}.schedule-line a{white-space:nowrap;text-underline-offset:4px}.legacy .signoff{margin-top:26px}.legacy .signed{margin-top:12px!important}.closing-phone{margin-top:22px;font-size:17px!important}.closing-phone a{white-space:nowrap;text-underline-offset:4px}

/* Final editorial spacing and responsive line-break refinements. */
h1,h2,h3,.hero-date,.public-date,.benefit p{text-wrap:balance}
.main-column p,.legacy-inner>p{text-wrap:pretty}
.hero{padding:36px 24px 34px}
.hero-button{margin:26px 0 0;transform:none}
.benefit{padding:30px 24px 26px}
.layout{padding-top:34px;column-gap:48px}
.main-column>section{padding:38px 0}
.main-column h2{line-height:1.32;margin-bottom:24px}
.main-column p{line-height:1.75}
.main-column p+p{margin-top:20px}
.private-sale-dates{color:var(--navy)}
.nso{margin:5px 0 14px;padding:32px 25px!important}
.nso h2{margin:12px 0 18px}
.nso p:not(.eyebrow){line-height:1.7}
.appointment-box{padding-top:30px;padding-bottom:26px}
.appointment-box .form-preview-note{font-size:14px;line-height:1.55;padding:13px 14px;margin:0 0 22px;border:1px solid #d8c99f;background:#faf7ee;color:#45423b}
.form-preview-note a{white-space:nowrap;text-underline-offset:3px}
.appointment-box .required-note{margin-top:0}
.appointment-box .appointment-intro{margin-bottom:22px}
.field{margin-bottom:21px}
.appointment-box .button{font-size:13px;letter-spacing:.5px}
.legacy-inner>p:not(.eyebrow){max-width:780px;line-height:1.8}
.legacy .signoff{margin-top:32px}
@media(max-width:1000px){.layout{column-gap:30px}}
@media(max-width:760px){.hero{padding:30px 20px}.hero-button{margin-top:24px}.benefit{padding:28px 22px}.layout{padding-top:24px;gap:25px}.main-column>section{padding:24px 0}.main-column h2{font-size:29px}.hero-date{max-width:420px}.hero-button{max-width:100%}.appointment-box{padding:28px}.nso h2{font-size:27px}.nso{padding:29px 20px!important}.legacy-inner>p:not(.eyebrow){text-align:left}.legacy-inner .signoff,.legacy-inner .signed,.legacy-inner .small{text-align:center!important}}
@media(max-width:390px){.appointment-box{padding:25px 20px}.hero .button{font-size:11px;padding:17px 18px}.name-fields{grid-template-columns:1fr}.main-column h2{font-size:27px}.nso h2{font-size:26px}}

@media(max-width:760px){.benefit h2 span{display:block}}

/* Live Wufoo form: preserve the Daynes-style column and responsive sizing. */
.appointment-box .appointment-help{font-size:16px;line-height:1.6;margin-top:14px}
.wufoo-embed{width:100%;min-width:0;text-align:left}
.wufoo-embed iframe{display:block;width:100%;max-width:100%;border:0}
.appointment-box .embed-fallback{padding:20px 0;font-size:16px}
.appointment-box .form-direct-link{font-size:14px;margin-top:14px;line-height:1.5}
.form-direct-link a{text-underline-offset:3px}

/* Final legibility and spacing review, October 22. */
.announcement{font-size:14px;line-height:1.5;padding:10px 20px}
.header-call{font-size:13px;line-height:1.5}
.header-call strong{font-size:22px}
.hero .eyebrow{font-size:14px}
.button,.hero-button,.appointment-box .button{font-size:14px;letter-spacing:.4px;min-height:48px}
.benefit p{font-size:14px;color:#565b63;line-height:1.6}
nav a{font-size:14px;min-height:32px;display:flex;align-items:center;justify-content:center}
nav{gap:38px}
.event-row .eyebrow,.legacy .eyebrow{font-size:14px}
.image-caption,figcaption{font-size:15px;line-height:1.55}
.appointment-box{padding:28px 24px}
.appointment-box h2{margin-bottom:14px}
.appointment-box .appointment-help{margin:16px 0 24px}
.appointment-box .form-direct-link{font-size:15px;line-height:1.6}
.appointment-box .phone-option{margin-top:22px}
.store-frame{margin:30px auto 0;width:100%;max-width:540px;aspect-ratio:16/10;overflow:hidden;background:var(--cream)}
.store-frame .store{display:block;width:100%;height:100%;max-height:none;max-width:none;margin:0;object-fit:cover;object-position:59% 43%;transform:scale(1.12);transform-origin:59% 43%}
.aside-location{margin-top:25px;padding-top:24px}
footer{font-size:16px;line-height:1.7}
footer small{font-size:14px;line-height:1.6}
@media(max-width:1000px){nav{gap:22px}.layout{column-gap:28px}.appointment-box{padding:26px 20px}}
@media(max-width:760px){
  .announcement{font-size:14px;padding:10px 18px}
  .era{font-size:14px;letter-spacing:1px}
  .header-call{font-size:12px;letter-spacing:.3px}
  .header-call strong{font-size:19px}
  .hero .eyebrow{font-size:14px;line-height:1.6}
  .hero .button{font-size:14px;max-width:100%;padding:17px 18px}
  .hero-date{font-size:25px;line-height:1.45}
  .public-date{font-size:17px;line-height:1.65}
  .benefit h2{font-size:23px;line-height:1.45}
  .benefit p{font-size:14px;letter-spacing:.4px}
  nav{gap:4px 10px;padding:10px 16px}
  nav a{font-size:14px;min-height:44px}
  .layout{gap:28px;padding-bottom:48px}
  .appointment-box{padding:26px 22px}
  .appointment-box h2{font-size:30px}
  .main-column h2{font-size:29px;margin-bottom:20px}
  .nso h2{font-size:27px}
  .legacy .eyebrow{font-size:14px}
  .legacy{padding-top:48px;padding-bottom:48px}
  .closing{padding-top:45px;padding-bottom:45px}
}
@media(max-width:390px){
  header{padding:18px 16px;gap:12px}
  .brand img{width:176px}
  .header-call{font-size:11px;letter-spacing:0}
  .header-call strong{font-size:17px;white-space:nowrap}
  .appointment-box{padding:25px 20px}
  .benefit h2{font-size:22px}
  .main-column h2{font-size:28px}
}
@media(max-width:350px){header{gap:8px}.brand img{width:150px}.header-call strong{font-size:16px}.header-call{font-size:11px}.layout{padding-left:16px;padding-right:16px}nav a{font-size:13px}}

.announcement,.era{text-wrap:balance}
.main-column .nso .eyebrow{font-size:14px}
@media(max-width:390px){.header-call{font-size:12px}}
@media(max-width:350px){header{flex-direction:column;gap:12px;padding:18px 14px}.brand img{width:210px}.header-call{text-align:center;font-size:14px}.header-call strong{font-size:20px}nav a{font-size:14px}}

/* Daynes reference comparison: retain our typefaces and readable body copy. */
h1{font-size:54px;line-height:1.2}
.era{font-size:18px;letter-spacing:1.5px;padding:16px 20px}
.hero .eyebrow{font-size:16px}
.hero-date{font-size:34px}
.benefit h2{font-size:28px}
nav a{font-size:16px}
.main-column h2{font-size:36px}
.main-column .nso h2{font-size:30px}
.sale-terms,.piano-inventory{font-size:18px;line-height:1.75;margin:22px 0 0;padding-left:24px}
.sale-terms li,.piano-inventory li{padding-left:4px;margin-bottom:12px}
.sale-terms li::marker,.piano-inventory li::marker{color:#8a7138}
.piano-inventory{margin-bottom:24px}
@media(max-width:1000px){h1{font-size:48px}.main-column h2{font-size:32px}.benefit h2{font-size:25px}}
@media(max-width:760px){h1{font-size:clamp(29px,6.5vw,42px)}.era{font-size:15px;letter-spacing:1px;padding:14px 18px}.hero .eyebrow{font-size:14px}.hero-date{font-size:26px}.benefit h2{font-size:23px}nav a{font-size:14px}.main-column h2{font-size:30px}.main-column .nso h2{font-size:27px}.sale-terms,.piano-inventory{padding-left:22px}}
@media(max-width:390px){.main-column h2{font-size:28px}.benefit h2{font-size:22px}}

/* Wider page and appointment panel, with space for full-size Wufoo fields. */
header{max-width:1360px}
.layout{max-width:1360px;grid-template-columns:minmax(0,1fr) clamp(400px,34vw,460px);column-gap:48px}
.appointment-box{padding:30px 20px 28px}
.appointment-box .appointment-help{max-width:420px;margin:16px auto 14px}
.appointment-box .public-sale-note{font-size:16px;line-height:1.6;margin:0 auto 20px;color:var(--navy)}
.legacy-inner{max-width:1120px}
@media(max-width:1200px) and (min-width:1001px){.layout{column-gap:36px}}
@media(max-width:1000px){
  .layout{display:flex;flex-direction:column;max-width:800px;gap:28px;padding-left:24px;padding-right:24px}
  .main-column{display:contents}
  .piano-group{order:0}.intro{order:1}aside{order:2}.event{order:3}.nso{order:4}#pianos{order:5}
  .appointment-box{max-width:640px;margin:auto;padding:30px 20px 28px}
  .store-frame{max-width:640px}
}
@media(max-width:620px){
  .layout{padding-left:16px;padding-right:16px}
  .appointment-box{padding:26px 10px}
  .appointment-box h2,.appointment-box .appointment-dates,.appointment-box .appointment-help,.appointment-box .public-sale-note{margin-left:8px;margin-right:8px}
  .appointment-box h2{font-size:29px}
}

/* Decorative signature typography, paired with the accessible printed name. */
@font-face{font-family:DavidSignature;src:url('assets/MrsSaintDelafield-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
.legacy .signature-mark{font:400 clamp(46px,5.2vw,52px)/1.3 DavidSignature,cursive;color:var(--navy);margin:4px auto 2px;padding:0 18px;max-width:100%;white-space:nowrap;text-align:center}
.legacy .signed{font:600 18px/1.5 Arial,Helvetica,sans-serif;color:var(--navy);margin-top:2px!important}
.legacy .signed+.small{font-size:16px!important;margin-top:4px;line-height:1.6!important}

/* Distinct touch targets for the mobile section links. */
nav a{text-transform:uppercase}
@media(max-width:760px){
  nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px}
  nav a{background:#faf8f2;border:1px solid rgba(32,45,70,.4);border-radius:2px;min-height:54px;padding:12px 8px;color:var(--navy);font-size:14px;font-weight:700;line-height:1.35;text-transform:none;text-decoration:none;letter-spacing:0;text-align:center}
  nav a:hover,nav a:active{background:var(--navy);color:white;border-color:var(--navy);text-decoration:none}
  nav a:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
}
/* Display the approved wider photo without applying another crop. */
.store-frame{aspect-ratio:1585/992}
.store-frame .store{object-fit:contain;object-position:center;transform:none}

/* Match the supplied Daynes launch reference, with DC dates and typography. */
.hero{padding:42px 24px 70px}
.hero h1{font-size:clamp(42px,4.05vw,56px);line-height:1.25;margin:0 auto 14px;max-width:1320px}
.hero h1 span{display:inline}
.hero .eyebrow{font-size:21px;letter-spacing:.6px;margin:0 0 4px}
.hero-date{font-size:42px;line-height:1.35;margin-top:0}
.public-date{font-size:21px;line-height:1.5;margin-top:8px}
.hero .hero-button{position:absolute;left:50%;bottom:0;transform:translate(-50%,50%);margin:0;width:max-content;max-width:calc(100% - 40px);padding:16px 24px;z-index:1}
.benefit{padding:40px 24px 30px}
.benefit h2{display:inline-block;font:400 36px/1.3 Playfair,Georgia,serif;border-bottom:1px solid var(--gold);padding-bottom:3px;margin:0 auto 10px;white-space:normal}
.benefit p{font-size:16px;font-weight:400;letter-spacing:.25px;color:var(--navy);line-height:1.7}
.benefit p span{white-space:nowrap;display:inline-block}
@media(max-width:1100px){
  .hero h1{font-size:44px;max-width:900px}
  .hero h1 span{display:block}
  .hero-date{font-size:36px}
}
@media(max-width:760px){
  .hero{padding:30px 20px 60px}
  .hero h1{font-size:clamp(29px,6.5vw,42px);margin-bottom:20px}
  .hero .eyebrow{font-size:14px;line-height:1.6;margin-bottom:7px;letter-spacing:.6px}
  .hero-date{font-size:26px;line-height:1.4;max-width:420px}
  .public-date{font-size:17px;line-height:1.6}
  .hero .hero-button{font-size:14px;padding:15px 18px;line-height:1.5}
  .benefit{padding:52px 20px 27px}
  .benefit h2{font:400 30px/1.35 Playfair,Georgia,serif;margin-bottom:12px}
  .benefit p{font-size:16px;letter-spacing:.2px;max-width:520px;margin:auto}
}
@media(max-width:350px){.benefit h2{font-size:28px}}

/* Compact only the mobile opening; retain the desktop composition. */
.hero-button .cta-mobile{display:none}
@media(max-width:760px){
  .announcement{display:none}
  header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:14px 16px}
  .brand img{width:100%;max-width:190px}
  .header-call{font-size:12px;line-height:1.4;letter-spacing:0;text-align:right}
  .header-call strong{font-size:18px;white-space:nowrap}
  .era{font-size:14px;line-height:1.45;letter-spacing:.6px;padding:10px 16px}
  .hero{padding:24px 16px 44px}
  .hero h1{line-height:1.2;margin-bottom:14px}
  .hero .eyebrow{line-height:1.45;margin-bottom:6px;letter-spacing:.2px}
  .hero-date{line-height:1.3}
  .public-date{line-height:1.45;margin-top:8px}
  .hero .hero-button{padding:14px 18px;max-width:calc(100% - 32px);min-height:49px}
  .hero-button .cta-desktop{display:none}
  .hero-button .cta-mobile{display:inline}
  .benefit{padding:40px 16px 22px}
  .benefit h2{margin-bottom:9px}
  .benefit p{font-size:16px;line-height:1.55}
  nav{gap:8px;padding:12px 16px}
  .layout{padding-top:18px;gap:20px}
}
@media(max-width:350px){
  header{gap:10px;padding:12px}
  .header-call strong{font-size:16px}
}

/* Keep public-sale details clear at every screen size. */
.public-dates{margin-top:12px}
.public-dates .public-date{margin-top:4px}
.brand img,footer img{height:auto}

/* Match the Crown Jewel photo to the neighboring square piano images. */
.piano-group .ziricote-piano{height:auto;aspect-ratio:1;object-fit:cover;object-position:60% 50%}
