/* Larger supporting text; headline sizes and media dimensions stay unchanged. */
body{font-size:1.125rem}
.eyebrow,.small-label,.brand,.button,.menu-toggle,.about-signature p,.about-signature span,
.section-note,.video-description>p,.video-choice-copy>span,.choice-indicator,.video-social,
.instagram-preview p,.file-meta,.press-preview>span,.contact-quick,
.copy-button,.contact-detail,.copy-status,.site-footer,.reel-dialog-note{font-size:1rem}
.brand-sub,.video-choice-copy>span.video-platform,.site-footer p,.site-footer p span{font-size:.875rem}
nav a{font-size:1.125rem}
.social-text,.poster-label,.video-choice-copy strong,.press-detail,.contact-panel>p,
.dialog-content p,.dialog-content textarea{font-size:1.125rem}
.press-intro{font-size:1.25rem}
.section-subtitle{font-size:1.375rem}
.hero-heading .eyebrow,.hero-heading .instruments,.hero-booking .hero-contacts,
.hero .button,.hero-booking .social-caption,.hero .home-details .small-label,
.hero .venue-line>.small-label,.hero .venue-line p{font-size:1.125rem}
.hero-heading .hero-description{font-size:clamp(1.25rem,2svh,1.5rem)}
.hero-booking .hero-summary{font-size:clamp(1.1875rem,1.8svh,1.3125rem)}
.hero-booking .hero-social{font-size:1.25rem}
.hero .home-details p+p{font-size:clamp(1.125rem,1.8svh,1.25rem)}
.hero .reel-caption .small-label{font-size:1rem}
@media(min-width:1101px) and (max-height:800px){
 .hero-heading .hero-description{font-size:1.1875rem}
 .hero-booking .hero-summary{font-size:1.1875rem}
}
@media(max-width:1100px){
 .hero-heading .hero-description{font-size:1.25rem}
 .hero-booking .hero-summary{font-size:1.1875rem}
}
@media(min-width:761px) and (max-width:850px){nav{gap:12px}.brand{font-size:.9375rem}}
@media(max-width:760px){
 .brand{font-size:.875rem;min-width:0}
 .brand-sub{font-size:.875rem;overflow-wrap:normal}
 .brand>span{min-width:0}
 .instagram-preview .button{font-size:1rem}
 .hero-booking .hero-social>span{min-width:0}
 .hero-booking .hero-social .social-caption{overflow-wrap:normal}
}
/* Save spacing, rather than shrinking type, where a desktop window is short. */
@media(min-width:1101px) and (max-width:1250px) and (max-height:800px),
      (min-width:1101px) and (max-height:720px){
 .hero{padding-block:8px;gap:4px}
 .hero-heading .eyebrow{margin-bottom:4px}
 .hero-heading .hero-description,.hero-heading .instruments{margin-top:4px}
 .hero-booking{margin-top:6px}
 .hero-booking .actions{margin-top:6px}
 .hero-booking .hero-contacts,.hero-booking .hero-social{margin-top:4px}
 .hero-booking .hero-social{padding-block:4px}
 .hero .home-details{padding-top:4px}
}

/* Home booking block: one clear action and a matching Instagram card. */
#home .hero-booking .hero-summary{font-size:clamp(1.25rem,1.9svh,1.375rem);line-height:1.5}
#home .hero-booking .actions{width:min(100%,360px);margin-top:16px}
#home .hero-booking .actions .button{width:100%;min-height:52px;padding:13px 20px;font-size:1.25rem}
#home .hero-booking .hero-social{width:min(100%,360px);margin-top:14px;padding:12px 16px;font-size:1.25rem}

/* Contact fields and buttons retain the flyer palette and generous touch areas. */
#contact .contact-panel h3{line-height:1.35}
#contact-form{display:grid;gap:9px;min-width:0}
#contact-form>label{font-size:1.125rem;font-weight:600;margin-top:10px}
#contact-form>label:first-child{margin-top:0}
#contact-form>input,#contact-form>textarea{display:block;width:100%;min-width:0;background:#111c30;color:var(--cream);border:1px solid rgba(229,174,107,.5);border-radius:3px;padding:12px 14px;font:inherit;line-height:1.5}
#contact-form>input{min-height:50px}
#contact-form>textarea{min-height:160px;resize:vertical}
#contact-form>input:focus-visible,#contact-form>textarea:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
#contact-submit{margin-top:9px;min-height:50px}
#contact-submit:disabled{opacity:.65;cursor:not-allowed}
#contact .form-status{font-size:1rem;line-height:1.5;color:var(--muted);margin:5px 0 0}
#contact .form-status:empty{display:none}
.contact-honeypot{display:none}
#contact .instagram-button{display:flex;align-items:center;justify-content:center;gap:12px;min-height:50px;white-space:normal}
#contact .instagram-button svg{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.7}
#contact .instagram-button svg .filled{fill:currentColor;stroke:none}
#contact .instagram-button>span{min-width:0;overflow-wrap:anywhere}
#contact .contact-instagram-option>h4{font-size:1.125rem;font-weight:600;line-height:1.5;margin-bottom:12px}
#contact .contact-email-option{margin-top:28px;padding-top:26px;border-top:1px solid var(--line)}
#contact .contact-email-option>h4{font-family:var(--serif);font-size:1.5rem;font-weight:400;line-height:1.35;margin-bottom:18px}

/* Footer Instagram icon matches the existing social links. */
.site-footer .footer-instagram{display:inline-flex;align-items:center;gap:8px}
.footer-instagram svg{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.7}
.footer-instagram svg .filled{fill:currentColor;stroke:none}
