/* AVA mobile refinements: navigation, content width, type scale and touch targets */
@media (max-width: 980px) {
  #ava-unified-header .ava-uh-nav {
    max-height: calc(100vh - 72px);
    max-height: calc(100dvh - 72px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px));
  }
  #ava-unified-header .ava-uh-toggle {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid #d8e1eb;
    border-radius: 9px;
    background: #fff;
    color: #05264f;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }
  #ava-unified-header .ava-uh-nav > a,
  #ava-unified-header .ava-uh-drop-trigger {
    min-height: 46px;
    display: flex;
    align-items: center;
    line-height: 1.35;
    white-space: normal;
  }
  #ava-unified-header .ava-uh-nav > a { padding: 12px 0; }
  #ava-unified-header .ava-uh-training-col > a { min-height: 42px; display: flex; align-items: center; }
  #ava-unified-header .ava-uh-training-menu { max-height: 56vh; overflow-y: auto; }
}

@media (max-width: 760px) {
  html, body { max-width: 100%; overflow-x: clip; }
  body { font-size: 16px; line-height: 1.6; }
  .shell, .header-inner, .quote-shell, .news-article-shell,
  .ava-universal-footer__shell { width: calc(100% - 32px); }
  .section { padding-block: 58px; }
  .section-heading { margin-bottom: 30px; }
  h1 { font-size: clamp(2.45rem, 11.5vw, 4rem); line-height: 1.03; }
  h2 { font-size: clamp(1.9rem, 8.5vw, 2.8rem); line-height: 1.08; }
  h3 { font-size: clamp(1.3rem, 6vw, 1.7rem); line-height: 1.18; }
  .button-row { gap: 10px; }
  .button-row .button, .cta-band__inner .button,
  .quote-actions .quote-submit { width: 100%; min-height: 48px; }
  .home-hero { min-height: min(700px, calc(100svh - 72px)); min-height: min(700px, calc(100dvh - 72px)); }
  .home-hero__content { padding: 124px 0 48px; }
  .home-hero h1 { font-size: clamp(2.65rem, 12.5vw, 4.35rem); line-height: 1.02; }
  .home-hero p { font-size: 1rem; line-height: 1.58; }
  .page-hero__grid { padding-block: 52px; gap: 30px; }
  .page-hero__media { width: 100%; max-width: 100%; }
  .pillar-cards, .service-grid, .service-grid--three, .industry-grid,
  .trustmark-grid, .insight-grid, .standards-grid, .split-heading,
  .content-grid, .form-row, .practice-programs,
  .principle-grid, .process-grid, .trustmark-program-group > div,
  .accreditation-recognition__grid { grid-template-columns: minmax(0, 1fr) !important; }
  .pillar-card, .service-card, .trustmark-card, .trustmark-program-group article { min-width: 0; }
  .pillar-card__content, .service-card, .trustmark-program-group article { padding: 22px; }
  .trustmark-program-group article img { width: min(100%, 260px); height: auto; justify-self: center; }
  .map-frame, .map-frame iframe { width: 100%; max-width: 100%; }
  .form-row > *, .content-grid > *, .split-heading > * { min-width: 0; }
  input, select, textarea { max-width: 100%; font-size: 16px; }
  .quote-hero { padding: 48px 0 38px; }
  .quote-hero__grid { gap: 24px; }
  .quote-section { padding: 20px; border-radius: 14px; }
  .quote-section__head { flex-direction: column; gap: 8px; }
  .quote-service-note { margin-top: 0; font-size: .88rem; }
  .ava-universal-footer { margin: 8px; padding: 36px 20px 22px; border-radius: 26px; }
  .ava-universal-footer__grid { grid-template-columns: minmax(0, 1fr); gap: 24px; padding-bottom: 28px; }
  .ava-universal-footer__brand { max-width: none; }
  .ava-universal-footer__column { gap: 10px; }
  .ava-universal-footer__column a { min-height: 28px; display: inline-flex; align-items: center; }
  .ava-universal-footer__bottom { grid-template-columns: 1fr; gap: 14px; }
  .ava-universal-footer__bottom nav { justify-content: flex-start; gap: 12px 18px; }
}

@media (max-width: 420px) {
  #ava-unified-header .ava-uh-shell { width: calc(100% - 24px); }
  #ava-unified-header .ava-uh-brand img { width: 92px; height: 58px; }
  .shell, .header-inner, .quote-shell, .news-article-shell { width: calc(100% - 28px); }
  .home-hero__content { padding-bottom: 38px; }
  .hero-kicker, .eyebrow { font-size: .66rem; letter-spacing: .11em; }
  .ava-universal-footer__wordmark strong { font-size: 24px; }
}


/* Replace the Hospitality TrustMark tick with the requested hospitality-service icon. */
.trustmark-card--hospitality .trustmark-card__icon svg{display:none!important}
.trustmark-card--hospitality .trustmark-card__icon::before{content:"";display:block;width:30px;height:30px;background:url("/images/trustmark-hospitality-service-icon.png") center/contain no-repeat}
