/* Touch layouts only. Desktop composition remains unchanged above 1024px. */
@media(max-width:1024px){
  .btn,.menu,.form-options label,.privacy-check{min-height:44px}
  .inquiry-form :is(input:not([type=radio]):not([type=checkbox]):not([type=file]),select,textarea){font-size:16px;max-width:100%;box-sizing:border-box}
  .inquiry-form :is(input,select,textarea){scroll-margin-block:100px}
  .form-field>label,.form-field>legend{line-height:1.7}
  .form-help,.form-result,.review-list dd{overflow-wrap:anywhere}
  .inquiry-form .privacy-check{align-items:flex-start}
  .nav.open{max-height:65svh;overflow-y:auto;overscroll-behavior:contain}
  .page-en .form-review{scroll-margin-top:24px}
  .page-en .form-result{padding:20px;line-height:1.8}
  .sales-jump-label,.store-jump-label{overflow-wrap:anywhere}
}
@media(min-width:701px) and (max-width:1024px){
  .section{padding-top:60px;padding-bottom:60px}
  .wrap{padding-left:32px;padding-right:32px}
  .choose-grid,.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
  .english-craft-heading{gap:28px}
  .english-craft-grid{gap:32px}
  .chapter-bar>.wrap{flex-wrap:wrap;gap:12px 24px}
  .chapter-bar h2{font-size:29px}
  .care-evidence{gap:20px}
  .care-evidence h3{font-size:21px}
  .inquiry-form{padding:30px}
  .form-columns{gap:20px}
  .form-review .actions>.btn{flex:1;min-width:180px}
  .page-sales .sales-jump,.page-store .store-jump{grid-template-columns:repeat(2,minmax(0,1fr))}
  .koto-movie,.koto-care{padding:30px;gap:30px}
  .english-work-film{padding:30px;gap:30px}
}
@media(min-width:701px) and (max-width:900px){
  .lineup-story,.first-instrument,.koto-intro,.koto-movie,.koto-care,.english-work-film,.english-culture .split,.english-craft-heading,.page-en #visit .split{grid-template-columns:minmax(0,1fr);gap:28px}
  .koto-movie figure,.koto-care .care-koto-player{max-width:300px}
  .english-work-film .inline-work-player{max-width:340px;width:100%;justify-self:center}
  .page-en #visit .photo{height:380px}
  .page-en #visit .actions{display:flex;flex-wrap:wrap}
  .care-evidence{grid-template-columns:minmax(0,1fr);gap:36px}
  .care-evidence img{max-height:430px;object-fit:cover}
  .buyback-assurance .buyback-points{grid-template-columns:minmax(0,1fr)}
  .buyback-assurance .buyback-points article{padding:22px 0;border-left:0;border-top:1px solid #e3dadb}
  .buyback-assurance .buyback-points article:first-child{border-top:0;padding-top:0}
  .buyback-assurance .buyback-points article:last-child{padding-bottom:0}
}
@media(max-width:700px){
  .inquiry-form{padding:24px 18px}
  .form-columns{grid-template-columns:minmax(0,1fr);gap:0}
  .form-field input[type=file]{padding:10px;font-size:12px;max-width:100%}
  .form-field input[type=file]::file-selector-button{min-height:44px;max-width:100%;white-space:normal}
  .inquiry-form .btn{width:100%;min-height:50px;white-space:normal}
  .page-en .contact-heading{margin-bottom:26px}
  .page-en .contact-heading h2{font-size:clamp(26px,7.4vw,32px);line-height:1.4}
  .pending-en{display:inline-block;margin-left:4px}
  .page-en .form-review h3{font-size:22px}
  .page-en .form-review .actions{display:grid;grid-template-columns:1fr;gap:12px}
  .review-list>div{padding:14px 0}
}
@media(max-width:360px){
  .inquiry-form{padding:22px 14px}
  .page-sales .sales-jump>a,.page-store .store-jump>a{padding:14px 10px;grid-template-columns:minmax(0,1fr) 24px;gap:10px 4px}
  .page-sales .sales-jump-label,.page-store .store-jump-label{font-size:12px}
  .field-status{margin-left:6px}
}

@media(min-width:701px) and (max-width:1000px){
  .nav.open{gap:12px;flex-wrap:wrap}
  .nav.open a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px}
}
