/* =========================================================
   EcoSapa Tour Pages v0.35.3 — LOCKED TOUR TYPOGRAPHY SYSTEM
   Source of truth: the approved Cruise/Tour reading rhythm.
   This file is intentionally loaded after every Tour stylesheet.
   New destination catalogues inherit it automatically via the
   generic .ecotravel-tour-shell-resolver body class.
   ========================================================= */

body.ecotravel-tour-shell-resolver{
  --et-type-font:Roboto,"Helvetica Neue",Arial,sans-serif;
  --et-type-h1:34px;
  --et-type-h2:27px;
  --et-type-h3:20px;
  --et-type-h4:17px;
  --et-type-body:16px;
  --et-type-support:14.5px;
  --et-type-small:12px;
  --et-type-button:15px;
  --et-type-heading:#4a5c6c;
  --et-type-strong:#596a79;
  --et-type-copy:#5c6d7b;
  --et-type-muted:#87929a;
  font-family:var(--et-type-font)!important;
  color:var(--et-type-copy)!important;
  font-size:var(--et-type-body)!important;
  line-height:1.64!important;
  font-weight:400!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* One font family everywhere on Tour surfaces. Icon-only pseudo-elements are untouched. */
body.ecotravel-tour-shell-resolver :where(
  button,input,select,textarea,label,a,p,li,td,th,summary,
  h1,h2,h3,h4,h5,h6,strong,b,small
){font-family:var(--et-type-font)!important}

/* Generic content section hierarchy: future destination blocks inherit this automatically. */
body.ecotravel-tour-shell-resolver .es-content-section .es-section-heading h2,
body.ecotravel-tour-shell-resolver .es-content-section>h2,
body.ecotravel-tour-shell-resolver .es-results-head h2{
  color:var(--et-type-heading)!important;
  font-size:var(--et-type-h2)!important;
  line-height:1.25!important;
  font-weight:800!important;
  letter-spacing:-.018em!important;
}
body.ecotravel-tour-shell-resolver .es-content-section h3{
  color:var(--et-type-heading)!important;
  font-size:var(--et-type-h3)!important;
  line-height:1.32!important;
  font-weight:800!important;
  letter-spacing:-.012em!important;
}
body.ecotravel-tour-shell-resolver .es-content-section h4{
  color:var(--et-type-heading)!important;
  font-size:var(--et-type-h4)!important;
  line-height:1.4!important;
  font-weight:700!important;
}
body.ecotravel-tour-shell-resolver .es-content-section .es-section-heading p,
body.ecotravel-tour-shell-resolver .es-content-section>p,
body.ecotravel-tour-shell-resolver .es-content-section .es-taxseo__fact p,
body.ecotravel-tour-shell-resolver .es-results-head p{
  color:var(--et-type-copy)!important;
  font-size:var(--et-type-body)!important;
  line-height:1.64!important;
  font-weight:400!important;
}
body.ecotravel-tour-shell-resolver .es-content-section strong,
body.ecotravel-tour-shell-resolver .es-content-section b{
  color:var(--et-type-strong)!important;
}
body.ecotravel-tour-shell-resolver .es-content-section .es-section-kicker,
body.ecotravel-tour-shell-resolver .es-content-section .es-sales-kicker{
  font-size:var(--et-type-small)!important;
  line-height:1.15!important;
  font-weight:800!important;
}

/* Ha Giang planning + FAQ are not allowed to invent a smaller type scale. */
body.ecotravel-tour-shell-resolver .es-hagiang-planning .es-section-heading p,
body.ecotravel-tour-shell-resolver .es-hagiang-faq .es-section-heading p,
body.ecotravel-tour-shell-resolver .es-hagiang-planning .es-guide-card p,
body.ecotravel-tour-shell-resolver .es-hagiang-faq .es-faq-card p{
  font-size:var(--et-type-body)!important;
  line-height:1.64!important;
  color:var(--et-type-copy)!important;
}
body.ecotravel-tour-shell-resolver .es-hagiang-planning .es-guide-card h3,
body.ecotravel-tour-shell-resolver .es-hagiang-faq .es-faq-card h3{
  font-size:18px!important;
  line-height:1.36!important;
  font-weight:800!important;
  color:var(--et-type-heading)!important;
}

/* Sales/advisor copy: same reading size as surrounding archive copy. */
body.ecotravel-tour-shell-resolver .es-sales-copy p,
body.ecotravel-tour-shell-resolver .es-sales-copy .es-manager,
body.ecotravel-tour-shell-resolver .es-sales-copy .es-manager strong{
  font-size:var(--et-type-body)!important;
  line-height:1.6!important;
}
body.ecotravel-tour-shell-resolver .es-sales-copy h2{
  font-size:var(--et-type-h2)!important;
  line-height:1.25!important;
  color:var(--et-type-heading)!important;
  font-weight:800!important;
}
body.ecotravel-tour-shell-resolver .es-sales-phone,
body.ecotravel-tour-shell-resolver .es-sales-button{
  font-size:var(--et-type-button)!important;
  line-height:1.3!important;
  font-weight:800!important;
}

/* Booking modal follows the same hierarchy instead of another mini type system. */
body.ecotravel-tour-shell-resolver .es-booking-subtitle,
body.ecotravel-tour-shell-resolver .es-booking-trip{
  font-size:var(--et-type-body)!important;
  line-height:1.58!important;
}
body.ecotravel-tour-shell-resolver .es-booking-expert strong{
  font-size:15.5px!important;
  line-height:1.4!important;
}
body.ecotravel-tour-shell-resolver .es-booking-expert small,
body.ecotravel-tour-shell-resolver .es-booking-help{
  font-size:var(--et-type-support)!important;
  line-height:1.45!important;
}
body.ecotravel-tour-shell-resolver .es-form-field label{
  font-size:15px!important;
  line-height:1.35!important;
}
body.ecotravel-tour-shell-resolver .es-form-field input,
body.ecotravel-tour-shell-resolver .es-form-field select,
body.ecotravel-tour-shell-resolver .es-form-field textarea{
  font-size:16px!important;
  line-height:1.45!important;
}

/* Single-tour normal reading copy stays on the same 16px rhythm. */
body.ecotravel-tour-shell-resolver.single-trip .es-server-shell p,
body.ecotravel-tour-shell-resolver.single-trip .es-server-shell li,
body.ecotravel-tour-shell-resolver.single-trip .es-bp-shell p,
body.ecotravel-tour-shell-resolver.single-trip .es-bp-shell li,
body.ecotravel-tour-shell-resolver.single-trip .es-bp-hard-day-body,
body.ecotravel-tour-shell-resolver.single-trip .es-bp-hard-intro{
  font-size:var(--et-type-body)!important;
  line-height:1.64!important;
  color:var(--et-type-copy)!important;
}

/* Compact advisor remains compact geometrically, but no 12px reading copy. */
body.ecotravel-tour-shell-resolver.single-trip .es-hg-advisor-cta__copy p{
  font-size:var(--et-type-support)!important;
  line-height:1.5!important;
}
body.ecotravel-tour-shell-resolver.single-trip .es-hg-advisor-cta__copy h3{
  font-size:18px!important;
  line-height:1.3!important;
}
body.ecotravel-tour-shell-resolver.single-trip .es-hg-advisor-cta__button{
  font-size:var(--et-type-button)!important;
}

/* Do not shrink normal reading copy on phones. Only headings step down. */
@media(max-width:700px){
  body.ecotravel-tour-shell-resolver{--et-type-h1:30px;--et-type-h2:24px;--et-type-h3:18px;--et-type-h4:17px}
  body.ecotravel-tour-shell-resolver .es-content-section .es-section-heading p,
  body.ecotravel-tour-shell-resolver .es-content-section .es-taxseo__fact p,
  body.ecotravel-tour-shell-resolver .es-hagiang-planning .es-guide-card p,
  body.ecotravel-tour-shell-resolver .es-hagiang-faq .es-faq-card p,
  body.ecotravel-tour-shell-resolver .es-sales-copy p{
    font-size:16px!important;
  }
  body.ecotravel-tour-shell-resolver .es-hagiang-planning .es-guide-card h3,
  body.ecotravel-tour-shell-resolver .es-hagiang-faq .es-faq-card h3{
    font-size:17.5px!important;
  }
}
