/* DAO DANANG — MOBILE DELIVERY FINISH
   Final mobile-only presentation layer. No routing, SEO, data or messenger-link changes. */

@media (max-width:760px){
  :root{
    --dao-mobile-gutter:18px;
    --dao-mobile-section:50px;
  }

  body.dao-site{
    font-size:15.5px;
    line-height:1.72;
  }

  .dao-container{
    width:calc(100% - (var(--dao-mobile-gutter) * 2));
  }

  /* Header: slightly lighter framing and a little less visual weight. */
  .dao-header,
  .dao-header.is-scrolled{
    height:64px;
    border-bottom-color:rgba(255,255,255,.065);
  }
  .dao-brand img,
  .dao-header.is-scrolled .dao-brand img{
    width:144px;
    max-height:44px;
  }
  .dao-language__button,
  .dao-menu-toggle{
    height:44px;
    border-color:rgba(255,255,255,.12);
    background:rgba(12,12,13,.72);
  }
  .dao-menu-toggle{width:44px}

  /* HOME hero: remove dead vertical space, keep the image and CTA dominant. */
  .dao-home .dao-hero__inner{
    min-height:515px;
    padding-top:70px;
    padding-bottom:34px;
  }
  .dao-home .dao-hero__lead{
    max-width:100%;
    margin-bottom:22px;
    font-size:15px!important;
    line-height:1.72;
  }
  .dao-home .dao-hero__actions{
    gap:9px;
    margin-bottom:18px;
  }
  .dao-home .dao-hero__actions .dao-btn{
    min-height:56px;
    font-size:14px;
  }
  .dao-home .dao-hero__actions .dao-btn--ghost{
    min-height:52px;
    border-color:rgba(255,255,255,.14);
    background:rgba(9,9,10,.26);
  }

  /* Meta is information, not another row of buttons. */
  .dao-home .dao-hero__meta{
    align-items:center;
    gap:0;
  }
  .dao-home .dao-hero__meta span{
    display:inline-flex;
    align-items:center;
    padding:0;
    border:0;
    background:transparent;
    color:rgba(245,242,237,.68);
    font-size:10.5px;
    line-height:1.5;
    letter-spacing:.07em;
  }
  .dao-home .dao-hero__meta span+span::before{
    content:"·";
    margin:0 10px;
    color:rgba(189,146,91,.68);
  }

  /* Trust bar: retain structure without the boxed dashboard feel. */
  .dao-trustbar{
    border:0;
    gap:1px;
    background:rgba(255,255,255,.055);
    box-shadow:0 14px 34px rgba(0,0,0,.24);
  }
  .dao-trustitem{
    min-height:78px;
    padding:14px 13px;
    border:0!important;
    background:rgba(9,9,10,.985);
  }
  .dao-trustitem strong{
    font-size:11px;
    line-height:1.42;
    letter-spacing:.02em;
  }
  .dao-trustitem small{
    margin-top:3px;
    font-size:10px;
    line-height:1.5;
  }

  /* Mobile reading size: supporting copy should not feel like desktop fine print. */
  .dao-intro__copy>p:not(.dao-kicker),
  .dao-heading-row>p,
  .dao-heading-row--therapists p:not(.dao-kicker),
  .dao-faq-preview__grid>div:first-child>p:not(.dao-kicker),
  .dao-location-card p,
  .dao-final-cta p:not(.dao-kicker),
  .dao-prices-heading>p,
  .dao-prices-split__copy>p:not(.dao-kicker),
  .dao-price-cta p,
  .dao-therapist-gallery-head>p,
  .dao-booking-service p:not(.dao-kicker),
  .dao-hoian-intro__copy>p:not(.dao-kicker),
  .dao-faq-hero p:not(.dao-kicker),
  .dao-areas-hero__inner>p:not(.dao-kicker){
    font-size:14.5px!important;
    line-height:1.76!important;
  }

  .dao-feature-list span,
  .dao-prices-split li,
  .dao-hoian-intro__facts span,
  .dao-hoian-location-grid p,
  .dao-areas-grid p,
  .dao-areas-types__grid p,
  .dao-faq-accordion details p,
  .dao-faq-list details p{
    font-size:12.5px!important;
    line-height:1.7!important;
  }

  .dao-text-link{
    font-size:12px;
    letter-spacing:.07em;
  }

  /* Home course carousel: deliberate next-card peek + stronger text. */
  .dao-service-grid{
    gap:12px;
    scroll-padding-inline:0 14vw;
    overscroll-behavior-inline:contain;
  }
  .dao-service-card{
    flex-basis:min(84vw,340px);
    min-height:390px;
    border-color:rgba(189,146,91,.16);
    box-shadow:0 16px 38px rgba(0,0,0,.18);
  }
  .dao-service-card h3{
    font-size:16px;
    line-height:1.42;
  }
  .dao-price-row span{font-size:12px}
  .dao-price-row strong{font-size:18px}
  .dao-card-book{
    padding-top:15px;
    font-size:11px;
    letter-spacing:.065em;
  }
  .dao-price-note{
    font-size:11.5px;
    line-height:1.65;
  }

  /* Therapist imagery is a key trust asset: give it clean breathing room. */
  .dao-media-grid.dao-media-grid--profile-wall{
    gap:7px;
  }
  .dao-media-grid--profile-wall .dao-media-card{
    border-color:rgba(169,15,34,.28);
  }

  /* 4 STEP: keep the fast 2x2 scan, remove harsh divider lines and enlarge copy. */
  .dao-how-grid{
    gap:8px;
    border:0;
  }
  .dao-how-grid>div{
    min-height:152px;
    padding:19px 16px;
    border:0!important;
    background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
  }
  .dao-how-grid b{font-size:30px}
  .dao-how-grid strong{
    margin-top:9px;
    font-size:12.5px;
    line-height:1.45;
    letter-spacing:.025em;
  }
  .dao-how-grid span{
    margin-top:7px;
    color:rgba(245,242,237,.64);
    font-size:11.5px;
    line-height:1.58;
  }

  /* FAQ: comfortable tap targets with readable answer copy. */
  .dao-faq-list summary,
  .dao-faq-accordion summary{
    min-height:56px;
    font-size:17px;
    line-height:1.45;
  }

  /* Price / therapist fact rows: lighter separators, slightly larger facts. */
  .dao-prices-hero__facts,
  .dao-therapists-hero__facts{
    border-color:rgba(189,146,91,.14);
  }
  .dao-prices-hero__facts div,
  .dao-therapists-hero__facts div{
    border-color:rgba(255,255,255,.055);
  }
  .dao-prices-hero__facts strong,
  .dao-therapists-hero__facts strong{
    font-size:10px;
  }
  .dao-prices-hero__facts span,
  .dao-therapists-hero__facts span{
    font-size:10px;
  }
  .dao-price-card__head p{font-size:12.5px!important}
  .dao-price-card__row span{font-size:12px}
  .dao-price-notice p{font-size:12px}

  /* Magazine: editorial pages need the same mobile reading scale. */
  .dao-magazine-hero{
    padding:54px 0 42px;
  }
  .dao-magazine-hero h1,
  .dao-magazine-article__header h1{
    font-size:clamp(34px,9vw,39px)!important;
    line-height:1.10;
  }
  .dao-magazine-hero p:not(.dao-kicker),
  .dao-magazine-article__excerpt{
    font-size:14.5px!important;
    line-height:1.72;
  }
  .dao-magazine-card__body>p,
  .dao-magazine-aside>p:not(.dao-kicker){
    font-size:13px;
    line-height:1.7;
  }
  .dao-magazine-content{
    font-size:15.5px;
    line-height:1.84;
  }
  .dao-magazine-content p,
  .dao-magazine-content li{
    line-height:1.84;
  }

  /* Footer: compact but no longer visually weak. */
  .dao-footer{
    padding:34px 0 18px;
    border-top-color:rgba(255,255,255,.055);
  }
  .dao-footer__grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:22px 24px;
  }
  .dao-footer__grid>div:first-child{
    grid-column:1/-1;
    padding-bottom:16px;
    border-bottom:1px solid rgba(255,255,255,.055);
  }
  .dao-footer__grid>div:nth-child(4){grid-column:1/-1}
  .dao-footer img{width:156px}
  .dao-footer__brand p{
    max-width:340px;
    margin-top:10px;
    font-size:13px;
    line-height:1.65;
  }
  .dao-footer h2{
    margin-bottom:10px;
    font-size:11px;
    letter-spacing:.11em;
  }
  .dao-footer a,
  .dao-footer p{
    margin-bottom:6px;
    color:rgba(245,242,237,.60);
    font-size:13px;
    line-height:1.6;
  }
  .dao-footer__grid>div:nth-child(4) p{
    display:flex;
    flex-wrap:wrap;
    gap:5px 16px;
  }
  .dao-footer__grid>div:nth-child(4) p br{display:none}
  .dao-footer__bottom{
    margin-top:24px;
    padding-top:13px;
    font-size:10.5px;
  }

  /* Mobile bottom messenger: icon-first navigation, large touch zones, no dividers. */
  body{padding-bottom:calc(86px + env(safe-area-inset-bottom))}
  .dao-mobile-messengers{
    min-height:86px;
    padding:8px 12px calc(8px + env(safe-area-inset-bottom));
    border:0;
  }
  .dao-mobile-messengers>a{
    min-height:68px;
    border:0;
    border-radius:18px;
  }
  .dao-mobile-messengers>a::before{
    width:62px;
    height:62px;
    opacity:.44;
  }
  .dao-mobile-messengers__icon{
    width:52px;
    height:52px;
    border-radius:14px;
  }
  .dao-mobile-messengers__icon img{
    border-radius:13px;
  }
  .dao-mobile-messengers__label{display:none!important}

  /* Locale finishing based on the 10-language mobile audit. */
  body.dao-lang-ru h1{
    font-size:clamp(30px,8.1vw,35px)!important;
    line-height:1.13;
  }
  body.dao-lang-ru h2{
    font-size:clamp(27px,7.5vw,31px)!important;
    line-height:1.14;
  }

  body.dao-lang-th h1,
  body.dao-lang-hi h1{
    font-size:clamp(31px,8.4vw,36px)!important;
    line-height:1.28!important;
    letter-spacing:-.015em!important;
  }
  body.dao-lang-th h2,
  body.dao-lang-hi h2{
    line-height:1.30!important;
  }
  body.dao-lang-th h3,
  body.dao-lang-hi h3{
    line-height:1.34!important;
  }

  body.dao-lang-ar h1{
    font-size:clamp(31px,8.4vw,36px)!important;
    line-height:1.28!important;
    letter-spacing:0!important;
  }
  body.dao-lang-ar h2,
  body.dao-lang-ar h3{
    line-height:1.30!important;
    letter-spacing:0!important;
  }

  body.dao-lang-ko p,
  body.dao-lang-ja p,
  body.dao-lang-zh-cn p,
  body.dao-lang-zh-hk p,
  body.dao-lang-zh-tw p{
    word-break:keep-all;
  }

  /* RTL: copy stays RTL, branded messenger navigation stays in a fixed familiar order. */
  body.dao-lang-ar .dao-mobile-messengers{
    direction:ltr;
  }
  body.dao-lang-ar .dao-price-row strong,
  body.dao-lang-ar .dao-price-card__row strong,
  body.dao-lang-ar .dao-price-row span,
  body.dao-lang-ar .dao-price-card__row span{
    direction:ltr;
    unicode-bidi:isolate;
  }
  body.dao-lang-ar .dao-hero__actions .dao-btn span,
  body.dao-lang-ar .dao-card-book span,
  body.dao-lang-ar .dao-final-cta .dao-btn span,
  body.dao-lang-ar .dao-text-link b{
    display:inline-block;
    transform:rotate(180deg);
  }
}

@media (max-width:420px){
  .dao-home .dao-hero__inner{
    min-height:500px;
    padding-top:62px;
    padding-bottom:30px;
  }
  .dao-how-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .dao-how-grid>div{
    min-height:146px;
    padding:17px 13px;
  }
  .dao-mobile-messengers__icon{
    width:50px;
    height:50px;
  }
}

@media (max-width:360px){
  .dao-brand img,
  .dao-header.is-scrolled .dao-brand img{width:128px}
  .dao-home .dao-hero__lead{font-size:14px!important}
  .dao-how-grid strong{font-size:12px}
  .dao-how-grid span{font-size:11px}
  .dao-footer a,.dao-footer p{font-size:12.5px}
  .dao-mobile-messengers__icon{width:47px;height:47px}
}

@media (prefers-reduced-motion:reduce) and (max-width:760px){
  .dao-mobile-messengers>a::before,
  .dao-mobile-messengers__icon{animation:none!important}
}

/* ========================================================================
   THERAPISTS — MOBILE 3-COLUMN IRREGULAR MASONRY
   Keep the existing irregular 5/6/7-row rhythm; only change mobile columns
   from 2 to 3. 20 visible items naturally form an approx. 3 x 7 wall.
   ======================================================================== */
@media (max-width:760px){
  /* HOME: same dense irregular wall, just 3 columns on mobile. */
  .dao-media-grid.dao-media-grid--profile-wall{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-flow:dense!important;
    grid-auto-rows:34px!important;
    gap:4px!important;
  }
  .dao-media-grid--profile-wall .dao-media-card{
    aspect-ratio:auto!important;
    min-height:0!important;
    border-color:rgba(169,15,34,.32)!important;
  }
  .dao-media-grid--profile-wall .dao-media-card--1{grid-row:span 6!important}
  .dao-media-grid--profile-wall .dao-media-card--2{grid-row:span 5!important}
  .dao-media-grid--profile-wall .dao-media-card--3{grid-row:span 7!important}
  .dao-media-grid--profile-wall .dao-media-card--4{grid-row:span 6!important}
  .dao-media-grid--profile-wall .dao-media-card--5{grid-row:span 5!important}
  .dao-media-grid--profile-wall .dao-media-card--6{grid-row:span 7!important}
  .dao-media-grid--profile-wall .dao-media-card--7{grid-row:span 6!important}
  .dao-media-grid--profile-wall .dao-media-card img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center top!important;
  }

  /* THERAPISTS page: preserve the same staggered 5/6/7-row pattern. */
  .dao-therapist-mosaic{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-flow:dense!important;
    grid-auto-rows:36px!important;
    gap:4px!important;
  }
  .dao-therapist-tile{
    aspect-ratio:auto!important;
    min-height:0!important;
    border-color:rgba(169,15,34,.34)!important;
  }
  .dao-therapist-tile--1{grid-row:span 6!important}
  .dao-therapist-tile--2{grid-row:span 5!important}
  .dao-therapist-tile--3{grid-row:span 7!important}
  .dao-therapist-tile--4{grid-row:span 6!important}
  .dao-therapist-tile--5{grid-row:span 5!important}
  .dao-therapist-tile--6{grid-row:span 7!important}
  .dao-therapist-tile--7{grid-row:span 6!important}
  .dao-therapist-tile img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center top!important;
  }
}

@media (max-width:360px){
  .dao-media-grid.dao-media-grid--profile-wall{grid-auto-rows:31px!important}
  .dao-therapist-mosaic{grid-auto-rows:33px!important}
}
