/* LINH DAN HOMEPAGE V24.3.8 — premium customer-experience polish
   Isolated override layer: mobile density, review browsing, rendering cost and touch UX. */
.hp243-page main{overflow:clip}
.hp243 .hp241-actions a,
.hp243-page .ldh-mobile-actions a,
.hp243-page .ldh-mobile-actions button{touch-action:manipulation}

@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .hp243 .hp241-card:hover,
  .hp243 .hp241-space:hover,
  .hp243 .hp241-album:hover{transform:translateY(-3px)}
  .hp243 .hp241-space,
  .hp243 .hp241-album{transition:transform .22s ease}
}

@media(max-width:640px){
  .hp243-page main{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
  .hp243 .hp241-card figure{aspect-ratio:16/10}
  .hp243 .hp241-card>div{padding:22px 20px}
  .hp243 .hp241-card h3{font-size:21px}
  .hp243 .hp241-services{gap:14px}

  .hp243 .hp241-review-track{
    display:flex;
    gap:12px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    padding:2px 20px 10px;
    margin-left:-20px;
    margin-right:-20px;
  }
  .hp243 .hp241-review-track::-webkit-scrollbar{display:none}
  .hp243 .hp241-review-track blockquote{
    flex:0 0 min(86vw,390px);
    scroll-snap-align:start;
  }
  .hp243 .hp241-faq details p{padding-right:0}
  .hp243 .hp241-faq aside{padding:22px}
}

@media(max-width:380px){
  .hp243 .hp241-section{padding-left:16px;padding-right:16px}
  .hp243 .hp241-hero>div{padding-left:18px;padding-right:18px}
  .hp243 .hp241-hero h1{font-size:clamp(34px,10.5vw,44px)}
}

/* V24.3.12 — close inherited V24.2 layout/contrast leaks. */
.hp243 .hp241-card{display:block;min-height:0}
.hp243 .hp241-card figure{min-height:0;aspect-ratio:4/5}
.hp243 .hp241-spaces{color:var(--hp243-ink)}
.hp243 .hp241-spaces>header h2{color:var(--hp243-ink)}
.hp243 .hp241-spaces .ldh-kicker{color:var(--hp243-accent)}
.hp243 .hp241-space h3{color:var(--hp243-ink)}
.hp243 .hp241-space strong{color:var(--hp243-accent)}
.hp243 .hp241-space p{color:var(--hp243-muted)}
.hp243 .hp241-space a{color:var(--hp243-ink)}
