/* The Yamaha reference pairs Play headings with Noto Sans body copy. */
@font-face{font-family:'Play';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/play-400.ttf') format('truetype')}
@font-face{font-family:'Play';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/play-700.ttf') format('truetype')}
@font-face{font-family:'Noto Sans';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/noto-sans-400.ttf') format('truetype')}
@font-face{font-family:'Noto Sans';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/noto-sans-700.ttf') format('truetype')}
h1,h2,h3,.eyebrow,nav,.button,.text-link,.card-link,.chapter-buttons button,.filters button{font-family:var(--display)}
h1,h2,h3{font-weight:700}
h2{font-size:38px;line-height:1.17;letter-spacing:-.035em}
.service-card h3{font-size:31px;font-weight:700;line-height:1.2;letter-spacing:-.025em}
.visit h2{font-size:38px;line-height:1.17}
.contact-band h2{font-size:35px;line-height:1.2}
dialog h2{font-size:33px;line-height:1.17}
.steps li>span{font-size:19px;font-weight:700}
.showroom-copy h1{font-size:clamp(44px,4.4vw,66px);line-height:1.08;letter-spacing:-.04em}
.showroom-copy>p{font-size:12px;max-width:325px}
.showroom-copy .eyebrow{font-family:var(--display)}
.bike-caption h2{font-size:36px;line-height:1.1;letter-spacing:-.035em}
.stage-word{font-size:clamp(110px,14vw,230px);font-weight:700;letter-spacing:-.04em;top:11%}
.showroom-actions .button{font-weight:700}
.branch h3{font-size:17px;letter-spacing:-.02em}
.steps h3{font-size:14px;line-height:1.5}
@media(max-width:1100px){.showroom-copy h1{font-size:clamp(41px,4.4vw,51px)}.showroom-copy>p{font-size:11px;max-width:275px}.service-card h3{font-size:29px}.contact-band h2{font-size:33px}}
@media(max-width:850px){.showroom-copy h1{font-size:clamp(36px,5.3vw,45px)}.showroom-copy>p{font-size:10px;max-width:250px}.showroom-copy .eyebrow{font-size:6px}.bike-caption h2{font-size:31px}.stage-word{font-size:14vw}h2,.visit h2{font-size:34px}.service-card h3{font-size:27px}.contact-band h2{font-size:29px}}
@media(max-width:600px){.showroom-copy h1{font-size:clamp(30px,8vw,42px);line-height:1.08;letter-spacing:-.035em;margin:17px 0 10px}.showroom-copy h1 br:nth-child(2){display:initial}.showroom-copy>p{font-size:10px;max-width:300px;line-height:1.65}.bike-stage{top:225px}.bike-caption h2{font-size:24px}.stage-word{font-size:22vw;top:8%}h2,.visit h2{font-size:30px;line-height:1.2}.service-card h3{font-size:27px;line-height:1.2}.contact-band h2{font-size:29px}.branch h3{font-size:15px}.steps h3{font-size:13px}.steps p{font-size:11px}.section-heading>p{font-size:12px}.service-card p{font-size:12px}.visit-intro>p{font-size:12px}dialog h2{font-size:29px}}
@media(max-width:380px){.showroom-copy h1{font-size:29px}.showroom-copy>p{font-size:9px}}
@media(max-height:740px) and (max-width:600px){.showroom-copy h1{font-size:30px}.showroom-copy>p{font-size:9px}.bike-stage{top:200px;bottom:90px;min-height:210px}}

/* Readable location details at desktop and mobile sizes. */
.locations .eyebrow{font-size:12px;letter-spacing:.12em}
.locations h2{font-size:46px;line-height:1.15}
.locations .section-heading>p{font-size:16px;line-height:1.8}
.locations .location-area{font-size:16px}
.locations .filters button{font-size:15px;min-height:44px;padding:10px 24px}
.locations .branch-note{font-size:14px;line-height:1.7;color:#65695f;padding:22px 0}
.locations .branch{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:24px;padding:32px 28px}
.locations .branch[hidden]{display:none}
.locations .branch-number{font-size:14px;color:#73766d;margin-top:4px}
.locations .branch-type{font-size:12px;letter-spacing:.1em}
.locations .branch h3{font-size:24px;line-height:1.3;margin:8px 0 10px}
.locations .branch p{font-size:16px;line-height:1.75;color:#63665f;margin-bottom:0}
.locations .branch .text-link{font-size:15px;line-height:1.5;min-height:44px;white-space:nowrap}
.locations .location-footnote{font-size:14px;line-height:1.8;color:#65695f;margin-top:22px}
.footer-brand .brand-divider{height:44px}
@media(max-width:850px){.locations .branch{gap:18px;padding:28px 24px}.locations .branch .text-link{font-size:14px}.locations .branch h3{font-size:22px}}
@media(max-width:600px){
  .locations h2{font-size:clamp(34px,7.5vw,42px)}
  .locations .section-heading>p{font-size:16px;margin-top:22px}
  .locations .eyebrow{font-size:11px}
  .locations .locations-toolbar{gap:22px}
  .locations .filters button{font-size:14px;padding:10px 12px}
  .locations .branch{grid-template-columns:24px minmax(0,1fr);column-gap:16px;row-gap:0;padding:26px 20px}
  .locations .branch-detail{min-width:0}
  .locations .branch h3{font-size:22px}
  .locations .branch .text-link{grid-column:2;margin-left:0;margin-top:18px;padding-top:16px;width:100%;white-space:normal}
  .locations .branch-note .status-dot{margin-top:8px}
  .footer-brand .brand-divider{height:38px}
}

.locations .branch-phone{display:inline-block;font-size:16px;line-height:1.6;font-weight:700;color:var(--red);margin-top:10px;padding:4px 0;text-underline-offset:3px}
.locations .branch-phone:hover{text-decoration:underline}
.inquiry-contact{font-size:13px;line-height:1.7;background:var(--paper);padding:12px 15px;margin-bottom:18px;color:#63665f}
.inquiry-contact strong{color:var(--ink);white-space:nowrap}
