/* Obi Pal v215.2p — mobile launch alignment
   Safe mobile-only polish before public launch. */

@media (max-width: 860px){
  html,body{overflow-x:hidden;}
  body{min-width:0;}
  .shell{padding-left:14px;padding-right:14px;}
  .topbar{z-index:80;}
  .nav{min-height:64px;gap:10px;}
  .brand span{font-size:14px;}
  .brand img{width:34px;height:34px;border-radius:11px;}
  .nav-actions{gap:6px;}
  .lang button{padding:6px 8px;}
  .btn,.chip,.actions button{min-height:44px;}
  .hero{padding:22px 0 18px;gap:16px;}
  .hero-copy{padding:22px;border-radius:24px;}
  .hero h1{font-size:clamp(34px,12vw,48px);line-height:1;}
  .hero p{font-size:16px;line-height:1.55;}
  .hero-actions{gap:9px;margin-top:18px;}
  .hero-actions .btn{flex:1 1 190px;text-align:center;justify-content:center;}
  .carousel{min-height:300px;border-radius:24px;}
  .section{padding:22px 0;}
  .section-head{align-items:flex-start;flex-direction:column;gap:10px;}
  .section h2{font-size:26px;}
  .grid{gap:14px;}
  .card-img{height:170px;}
  .body{padding:16px;}
  .meta{gap:7px;}
  .pill{font-size:12px;padding:7px 9px;}
  .price{font-size:22px;}
  .resultbar{align-items:flex-start;flex-direction:column;gap:6px;}
  .panel{width:100%;padding:18px 14px calc(28px + env(safe-area-inset-bottom));max-height:100dvh;overflow:auto;}
  .mobile-panel{width:100%;}
  .modal{padding:12px;}
  .modal-card{max-height:92dvh;border-radius:22px;}
  .modal-card img{max-height:52vh;}
  .toast{left:14px;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));transform:none;text-align:center;border-radius:18px;}
}

@media (max-width: 430px){
  .shell{padding-left:12px;padding-right:12px;}
  .brand span{display:none;}
  .hero-copy{padding:18px;}
  .hero h1{font-size:34px;}
  .btn{padding:10px 12px;}
  .carousel{min-height:260px;}
  .card-img{height:155px;}
  .panel{padding-left:12px;padding-right:12px;}
}
/* v215.2q mobile card repaint guard */
@media (max-width: 860px){
  .unit,.project{contain:paint;backface-visibility:hidden;transform:translateZ(0);}
  .card-img,.card-img img{backface-visibility:hidden;transform:translateZ(0);}
  .card-img img{display:block;}
  #unitGrid2 button,#unitGrid2 .btn,#unitGrid2 .chip{-webkit-tap-highlight-color:transparent;touch-action:manipulation;}
}
@media (hover:none) and (pointer:coarse){
  .btn:hover{box-shadow:none;border-color:var(--line);}
}