/* DAO DANANG v2.0.12 — STEP 2 / MOBILE CONTENT DENSITY
   Scope: mobile typography, section rhythm and page-card density only.
   Header/footer shell from STEP 1 remains separate. */

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

  body.dao-site {
    color: #f2eee9;
  }

  .dao-section {
    padding-block: var(--dao-mobile-section);
  }

  .dao-section-title {
    margin-bottom: 28px;
    font-size: clamp(30px, 8.4vw, 36px);
    line-height: 1.08;
  }

  .dao-section-note,
  .dao-heading-row > p,
  .dao-intro__copy > p:not(.dao-kicker),
  .dao-faq-preview__grid > div:first-child > p:not(.dao-kicker) {
    color: #aaa49f;
  }

  /* HOME — reduce oversized text and long vertical runs. */
  .dao-hero__inner {
    min-height: 555px;
    padding-top: 92px;
    padding-bottom: 42px;
  }

  .dao-hero h1,
  .dao-lang-ko .dao-hero h1,
  .dao-lang-ja .dao-hero h1,
  .dao-lang-zh-cn .dao-hero h1,
  .dao-lang-zh-hk .dao-hero h1,
  .dao-lang-zh-tw .dao-hero h1,
  .dao-lang-ru .dao-hero h1,
  .dao-lang-hi .dao-hero h1,
  .dao-lang-ar .dao-hero h1,
  .dao-lang-th .dao-hero h1 {
    font-size: clamp(36px, 10.4vw, 44px);
    line-height: 1.02;
    margin-bottom: 16px;
  }

  .dao-hero__lead {
    max-width: 95%;
    margin-bottom: 20px;
    font-size: 13px;
    line-height: 1.7;
  }

  .dao-hero__actions {
    margin-bottom: 16px;
  }

  .dao-trustbar {
    margin-bottom: 10px;
  }

  .dao-trustitem {
    min-height: 72px;
    padding: 11px 10px;
  }

  .dao-intro {
    padding-top: 48px;
  }

  .dao-intro__grid {
    gap: 24px;
  }

  .dao-intro__media {
    min-height: 270px;
  }

  .dao-intro h2,
  .dao-heading-row h2,
  .dao-faq-preview h2 {
    font-size: clamp(30px, 8.6vw, 34px);
    line-height: 1.09;
  }

  .dao-heading-row {
    gap: 8px;
    margin-bottom: 24px;
  }

  .dao-service-grid {
    gap: 10px;
  }

  .dao-service-card {
    flex-basis: min(78vw, 310px);
    min-height: 360px;
    padding: 24px 19px 18px;
  }

  .dao-service-card__top {
    min-height: 86px;
  }

  .dao-service-card h3 {
    margin-top: 14px;
    font-size: 15px;
  }

  .dao-price-row {
    padding: 13px 0;
  }

  .dao-how {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  .dao-how-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dao-how-grid > div {
    min-height: 138px;
    padding: 18px 15px;
    border-right: 1px solid var(--dao-line);
  }

  .dao-how-grid > div:nth-child(2n) {
    border-right: 0;
  }

  .dao-how-grid b {
    font-size: 28px;
  }

  .dao-how-grid strong {
    margin-top: 8px;
    font-size: 10px;
    line-height: 1.4;
  }

  .dao-how-grid span {
    margin-top: 6px;
    font-size: 9px;
    line-height: 1.5;
  }

  .dao-location-card {
    min-height: 325px;
  }

  .dao-location-card h3 {
    font-size: 31px;
  }

  .dao-faq-preview__grid {
    gap: 24px;
  }

  .dao-faq-list summary {
    padding: 17px 2px;
    font-size: 17px;
  }

  .dao-final-cta {
    min-height: 320px;
  }

  .dao-final-cta h2 {
    font-size: clamp(31px, 8.5vw, 36px);
  }

  /* PRICES — keep hierarchy, remove the oversized card/hero feel. */
  .dao-prices-hero {
    min-height: 520px;
  }

  .dao-prices-hero__inner {
    padding-top: 68px;
    padding-bottom: 30px;
  }

  .dao-prices-hero h1 {
    font-size: clamp(35px, 9.6vw, 40px) !important;
    line-height: 1.05;
    margin-bottom: 18px;
  }

  .dao-prices-hero__copy > p:not(.dao-kicker) {
    margin-bottom: 22px;
    font-size: 13px;
    line-height: 1.7;
  }

  .dao-prices-hero__facts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 24px;
  }

  .dao-prices-hero__facts div {
    min-width: 0;
    padding: 12px 10px;
    border-right: 1px solid var(--dao-line);
    border-bottom: 0;
  }

  .dao-prices-hero__facts div:last-child {
    border-right: 0;
  }

  .dao-prices-hero__facts strong {
    font-size: 9px;
    line-height: 1.35;
    letter-spacing: .035em;
  }

  .dao-prices-hero__facts span {
    font-size: 9px;
    line-height: 1.4;
  }

  .dao-prices-heading {
    margin-bottom: 24px;
  }

  .dao-prices-heading h2 {
    font-size: clamp(30px, 8.6vw, 34px) !important;
  }

  .dao-prices-grid {
    gap: 10px;
  }

  .dao-price-card__head {
    padding: 22px 18px 18px;
  }

  .dao-price-card__mark {
    margin-bottom: 9px;
    font-size: 16px;
  }

  .dao-price-card h3 {
    margin-bottom: 8px;
    font-size: 16px;
    line-height: 1.35;
  }

  .dao-price-card__head p {
    font-size: 11px;
    line-height: 1.6;
  }

  .dao-price-card__rows {
    padding: 7px 18px;
  }

  .dao-price-card__row {
    padding: 13px 0;
  }

  .dao-price-card__row span {
    font-size: 11px;
  }

  .dao-price-card__row strong {
    font-size: 19px;
  }

  .dao-price-card__book {
    min-height: 46px;
    margin: 8px 18px 18px;
  }

  .dao-price-notice {
    margin-top: 16px;
  }

  .dao-price-notice div {
    padding: 16px 17px;
  }

  .dao-price-notice p {
    margin-top: 4px;
    font-size: 11px;
  }

  .dao-prices-split {
    padding: 54px 0;
  }

  .dao-prices-split figure {
    min-height: 250px;
  }

  .dao-prices-split__copy {
    padding: 28px 19px;
  }

  .dao-prices-split h2,
  .dao-price-cta h2 {
    font-size: clamp(30px, 8.6vw, 34px);
  }

  .dao-price-cta {
    min-height: 280px;
  }

  /* THERAPISTS — keep the 2-column gallery, compact the copy and facts. */
  .dao-therapists-hero {
    min-height: 510px;
  }

  .dao-therapists-hero__inner {
    padding-top: 70px;
    padding-bottom: 30px;
  }

  .dao-therapists-hero h1 {
    font-size: clamp(36px, 9.8vw, 40px) !important;
    line-height: 1.04;
    margin-bottom: 18px;
  }

  .dao-therapists-hero__copy > p:not(.dao-kicker) {
    margin-bottom: 22px;
    font-size: 13px;
    line-height: 1.7;
  }

  .dao-therapists-hero__facts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 24px;
  }

  .dao-therapists-hero__facts div {
    min-width: 0;
    padding: 12px 10px;
    border-right: 1px solid var(--dao-line);
    border-bottom: 0;
  }

  .dao-therapists-hero__facts div:last-child {
    border-right: 0;
  }

  .dao-therapists-hero__facts strong {
    font-size: 9px;
    line-height: 1.35;
    letter-spacing: .035em;
  }

  .dao-therapists-hero__facts span {
    font-size: 9px;
    line-height: 1.4;
  }

  .dao-therapist-gallery-head {
    margin-bottom: 22px;
  }

  .dao-therapist-gallery-head h2 {
    font-size: clamp(30px, 8.5vw, 34px);
  }

  .dao-therapist-gallery-head > p {
    font-size: 12px;
    line-height: 1.65;
  }

  .dao-therapist-masonry {
    grid-auto-rows: 82px;
    gap: 6px;
  }

  .dao-therapist-gallery-cta {
    margin-top: 14px;
    padding: 20px 17px;
  }

  .dao-therapist-gallery-cta h2 {
    font-size: 27px;
  }

  .dao-therapist-info {
    padding-bottom: 54px;
  }

  .dao-therapist-info__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dao-therapist-info__grid > div {
    min-width: 0;
    padding: 17px 15px;
    border-right: 1px solid var(--dao-line);
    border-bottom: 1px solid var(--dao-line);
  }

  .dao-therapist-info__grid > div:nth-child(2n) {
    border-right: 0;
  }

  .dao-therapist-info span {
    margin-bottom: 5px;
    font-size: 21px;
  }

  .dao-therapist-info strong {
    font-size: 11px;
  }

  .dao-therapist-info p {
    margin-top: 5px;
    font-size: 10px;
    line-height: 1.5;
  }

  /* HOI AN — turn long stacked location/step lists into concise 2-column grids. */
  .dao-hoian-hero {
    min-height: 500px;
  }

  .dao-hoian-hero__inner {
    padding-top: 68px;
  }

  .dao-hoian-hero h1 {
    font-size: clamp(35px, 9.6vw, 40px) !important;
    line-height: 1.04;
    margin-bottom: 18px;
  }

  .dao-hoian-hero__inner > p:not(.dao-kicker) {
    margin-bottom: 22px;
    font-size: 13px;
    line-height: 1.7;
  }

  .dao-hoian-intro__copy {
    padding: 27px 19px;
  }

  .dao-hoian-intro h2,
  .dao-hoian-locations h2,
  .dao-hoian-cta h2 {
    font-size: clamp(30px, 8.6vw, 34px);
  }

  .dao-hoian-intro figure {
    min-height: 250px;
  }

  .dao-hoian-location-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .dao-hoian-location-grid article {
    min-height: 150px;
    padding: 17px 14px;
  }

  .dao-hoian-location-grid article:before {
    margin-bottom: 12px;
  }

  .dao-hoian-location-grid strong {
    font-size: 17px;
    line-height: 1.25;
  }

  .dao-hoian-location-grid p {
    margin-top: 8px;
    font-size: 10px;
    line-height: 1.55;
  }

  .dao-hoian-steps {
    padding-bottom: 54px;
  }

  .dao-hoian-steps > .dao-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dao-hoian-steps .dao-container > div {
    min-width: 0;
    padding: 17px 14px;
    border-right: 1px solid var(--dao-line);
    border-bottom: 1px solid var(--dao-line);
  }

  .dao-hoian-steps .dao-container > div:nth-child(2n) {
    border-right: 0;
  }

  .dao-hoian-steps b {
    font-size: 22px;
  }

  .dao-hoian-steps strong {
    font-size: 10px;
  }

  .dao-hoian-steps span {
    font-size: 9px;
    line-height: 1.5;
  }

  .dao-hoian-cta {
    min-height: 280px;
  }

  /* FAQ — same premium hierarchy with less vertical waste. */
  .dao-faq-hero {
    min-height: 400px;
  }

  .dao-faq-hero__inner {
    padding-top: 70px;
  }

  .dao-faq-hero h1 {
    font-size: clamp(35px, 9.6vw, 40px) !important;
    line-height: 1.04;
    margin-bottom: 18px;
  }

  .dao-faq-hero p:not(.dao-kicker) {
    font-size: 13px;
    line-height: 1.7;
  }

  .dao-faq-main__grid {
    gap: 22px;
  }

  .dao-faq-main h2 {
    font-size: clamp(30px, 8.6vw, 34px);
  }

  .dao-faq-main__grid > div:first-child > p:not(.dao-kicker) {
    margin-bottom: 20px;
  }

  .dao-faq-accordion summary {
    padding: 17px 14px;
    gap: 10px;
    font-size: 16px;
    line-height: 1.4;
  }

  .dao-faq-accordion summary span {
    width: 26px;
    height: 26px;
    flex-basis: 26px;
    font-size: 15px;
  }

  .dao-faq-accordion details p {
    padding: 0 14px 18px;
    font-size: 12px;
    line-height: 1.7;
  }

  /* Korean long-copy blocks follow the same compact rhythm. */
  .dao-ko-guide__head {
    margin-bottom: 26px;
  }

  .dao-ko-guide__head h2,
  .dao-ko-price-guide h2 {
    font-size: 31px;
  }

  .dao-ko-guide__grid {
    gap: 9px;
  }

  .dao-ko-guide__grid article {
    padding: 20px 17px;
  }
}

@media (max-width: 380px) {
  .dao-hero h1,
  .dao-prices-hero h1,
  .dao-therapists-hero h1,
  .dao-hoian-hero h1,
  .dao-faq-hero h1 {
    font-size: 34px !important;
  }

  .dao-prices-hero__facts strong,
  .dao-therapists-hero__facts strong {
    font-size: 8px;
  }

  .dao-prices-hero__facts span,
  .dao-therapists-hero__facts span {
    font-size: 8px;
  }
}
