/* Mobile booking and centered gallery refinements */
html,body{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none}
body{position:relative;touch-action:pan-y pinch-zoom}
main,header,footer,section{max-width:100%}
img,video,svg{max-width:100%}
.booking{max-width:none;max-height:none;overflow:hidden}
.booking form{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.tattoo-track{scroll-padding-inline:calc((100% - min(390px,78vw))/2)}
.tattoo-card{scroll-snap-align:center}
@media(max-width:700px){
  .nav{width:100%;max-width:100vw;padding-left:1rem;padding-right:1rem}
  .nav .brand{min-width:0}.nav .brand span:last-child{white-space:nowrap}
  .lang-switch{flex-shrink:0}
  .hero,.section,.final-cta,footer{width:100%;overflow-x:clip}
  .hero-content,.section-head,.studio,.faq,.steps{min-width:0;max-width:100%}
  .hero h1,.section h2,.final-cta h2,.booking h2{overflow-wrap:anywhere}
  .hero-actions{max-width:100%}.hero-actions .btn{max-width:100%}
  .seal{right:12px}
  .booking{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;margin:0;border:0}
  .modal-top{position:sticky;top:0;z-index:5;height:68px;padding:.75rem 1rem;background:#0c0c12}
  .modal-top .brand-mark{width:34px;height:34px}
  .progress{position:sticky;top:68px;z-index:5;background:#0c0c12;padding:0 1rem}
  .booking form{height:calc(100dvh - 71px);padding:1.35rem 1rem calc(2rem + env(safe-area-inset-bottom));overflow-y:auto}
  .booking h2{font-size:clamp(2rem,10vw,3rem);line-height:.9;margin:.75rem 0 1rem}
  .booking .kicker{font-size:.68rem}
  .booking label{font-size:.82rem;margin:.9rem 0}
  .booking input,.booking select,.booking textarea{font-size:16px;min-height:50px;padding:.8rem .85rem}
  .booking textarea{min-height:92px}
  .booking .btn{min-height:52px;width:100%}
  .form-actions{gap:1rem;padding-bottom:.5rem}.form-actions .btn{width:auto;flex:1}
  .selected-design{position:relative;padding:.65rem}.selected-design img{width:64px;height:64px}.selected-design .clear-design{font-size:.75rem}
  .upload-drop{min-height:130px}.upload-preview img{width:62px;height:62px}
  .deposit{margin:1.2rem 0}.deposit strong{font-size:1.65rem}
  .work{overflow:hidden}
  .catalog-tools{margin-bottom:1rem}
  .tattoo-track{width:calc(100% + 12vw);max-width:none;margin-left:-6vw;padding:0 6vw 1rem;scroll-padding-inline:6vw;gap:1rem;overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom}
  .tattoo-card{flex:0 0 88vw;max-width:390px}
  .tattoo-card img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
  .tattoo-info{padding:1rem}.tattoo-info h3{font-size:1.25rem}
  .catalog-arrows button{width:48px;height:48px}
}
@media(max-width:380px){
  .booking form{padding-left:.8rem;padding-right:.8rem}
  .booking h2{font-size:1.95rem}
  .tattoo-card{flex-basis:90vw}
  .catalog-count b{font-size:1.75rem}
}
