/* Nepal Hi Tea 6.1. Brand typography settings and resilient responsive diagrams. */
/* Origin: explicit dark-on-light / light-on-dark hierarchy. */
body.nht-reference.nht-origin-page .nht-origin-trail,
body.nht-reference.nht-origin-page .nht-origin-opening{background:#173f2d;color:var(--nht-v61-dark-text-color,#f0eee6)}
body.nht-reference.nht-origin-page .nht-origin-trail .nht-origin-trail-head h2,
body.nht-reference.nht-origin-page .nht-origin-trail .nht-origin-trail-head h3,
body.nht-reference.nht-origin-page .nht-origin-trail .nht-origin-trail-head>p,
body.nht-reference.nht-origin-page .nht-origin-trail .nht-origin-trail-head div,
body.nht-reference.nht-origin-page .nht-origin-opening h1,
body.nht-reference.nht-origin-page .nht-origin-opening h2{
  color:var(--nht-v61-dark-heading-color,#ffffff)!important;
  text-shadow:none!important;
}
body.nht-reference.nht-origin-page .nht-origin-trail .nht-origin-trail-head h2{
  font-size:clamp(30px,var(--nht-v61-heading-scale,44px),66px)!important;
  line-height:1.14!important;letter-spacing:-.014em;
}
body.nht-reference.nht-origin-page .nht-origin-trail .nht-origin-trail-head>p,
body.nht-reference.nht-origin-page .nht-origin-intro,
body.nht-reference.nht-origin-page .nht-origin-footnote{
  color:var(--nht-v61-dark-text-color,#f0eee6)!important;
  font-size:clamp(14px,var(--nht-v61-body-font-size,16px),20px)!important;
  line-height:var(--nht-v61-body-line-height,170%)!important;
}
body.nht-reference.nht-origin-page .nht-origin-trail .nht-origin-kicker,
body.nht-reference.nht-origin-page .nht-origin-opening .nht-origin-kicker{
  color:var(--nht-v61-gold-accent-color,#e1ba38)!important;
}
body.nht-reference.nht-origin-page .nht-origin-trail-board,
body.nht-reference.nht-origin-page .nht-origin-trail-board h3,
body.nht-reference.nht-origin-page .nht-origin-trail-board h4{
  color:var(--nht-v61-light-heading-color,#241e18)!important;
}
body.nht-reference.nht-origin-page .nht-origin-trail-board .nht-route-details>p:not(.nht-mini-label),
body.nht-reference.nht-origin-page .nht-origin-trail-board .nht-shops p{
  color:var(--nht-v61-light-text-color,#302c27)!important;
  font-size:clamp(12px,calc(var(--nht-v61-body-font-size,16px) - 2px),18px)!important;
  line-height:var(--nht-v61-body-line-height,170%)!important;
}
/* Replace fixed 980-wide SVG with a labelled, fully fluid comparison. */
body.nht-reference.nht-origin-page .nht-origin-altitude-card{width:100%;max-width:100%;overflow:visible;background:#faf8f4;padding:clamp(16px,2.5vw,30px);border:1px solid #dad2c5;border-radius:16px;box-sizing:border-box}
body.nht-reference.nht-origin-page .nht-v61-altitude-legend,
body.nht-reference.nht-origin-page .nht-v61-altitude-row{
  display:grid;grid-template-columns:minmax(175px,1.16fr) minmax(0,1.65fr) minmax(95px,.45fr);
  column-gap:clamp(14px,2.5vw,32px);align-items:center;min-width:0;
}
body.nht-reference.nht-origin-page .nht-v61-altitude-legend{
  padding-bottom:15px;border-bottom:1px solid #ded8cc;
  font:600 10px/1.5 'DM Mono',monospace;letter-spacing:.06em;color:#786b52;
}
body.nht-reference.nht-origin-page .nht-v61-altitude-row{min-height:68px;padding:12px 0;border-bottom:1px solid #e0dbd0}
body.nht-reference.nht-origin-page .nht-v61-altitude-row:last-of-type{border-bottom:0}
body.nht-reference.nht-origin-page .nht-v61-altitude-label{
  display:block;color:var(--nht-v61-elevation-label-color,#2e382f)!important;
  font:500 clamp(14px,calc(var(--nht-v61-body-font-size,16px) - 1px),19px)/1.35 'DM Sans',sans-serif;
  overflow-wrap:anywhere;
}
body.nht-reference.nht-origin-page .nht-v61-altitude-track{height:15px;min-width:0;background:#e6e7e0;border-radius:2px;overflow:hidden}
body.nht-reference.nht-origin-page .nht-v61-altitude-fill{display:block;height:100%;background:#94a59c;border-radius:2px}
body.nht-reference.nht-origin-page .nht-v61-altitude-row.is-garden .nht-v61-altitude-fill{background:var(--nht-v61-elevation-garden-bar-color,#d5b335)}
body.nht-reference.nht-origin-page .nht-v61-altitude-value{
  font:700 clamp(13px,1.15vw,17px)/1.35 'DM Sans',sans-serif;
  color:var(--nht-v61-elevation-label-color,#2e382f)!important;text-align:right;white-space:nowrap;
}
body.nht-reference.nht-origin-page .nht-v61-chart-note{color:#655d52;font:13px/1.55 'DM Sans',sans-serif;margin:18px 0 0}
body.nht-reference.nht-origin-page .nht-origin-elevation h2{color:var(--nht-v61-light-heading-color,#241e18)!important;font-size:clamp(30px,var(--nht-v61-heading-scale,44px),66px)!important}
/* Adjustable typographic roles on pages with light or deep-green backgrounds. */
body.nht-reference.nht-story-page .nht-story-opening p,
body.nht-reference.nht-community-page .nht-community-economy .nht-community-copy p,
body.nht-reference.nht-ts-page .nht-ts-card p,
body.nht-reference.nht-our-teas-page .nht-ot-card p,
body.nht-reference.nht-contact-page .nht-contact-section p{
  color:var(--nht-v61-light-text-color,#302c27)!important;
  font-size:var(--nht-v61-body-font-size,16px)!important;
  line-height:var(--nht-v61-body-line-height,170%)!important;
}
body.nht-reference.nht-our-teas-page .nht-ot-shell h2,
body.nht-reference.nht-community-page .nht-community-impact h2,
body.nht-reference.nht-contact-page .nht-contact-section h2{
  color:var(--nht-v61-light-heading-color,#241e18)!important;
  font-size:clamp(30px,var(--nht-v61-heading-scale,44px),66px)!important;
}
body.nht-reference.nht-product-page .nht-v59-product,
body.nht-reference.nht-product-page .nht-v59-faq{
  background:var(--nht-v61-product-background-color,#193b2c)!important;
}
body.nht-reference.nht-product-page .nht-v60-product-info h1{
  color:var(--nht-v61-dark-heading-color,#ffffff)!important;
  font-size:clamp(38px,calc(var(--nht-v61-product-heading-size,64px) * .90),86px)!important;
}
body.nht-reference.nht-product-page .nht-v60-product-info .nht-v59-product-tagline,
body.nht-reference.nht-product-page .nht-v59-info-row p,
body.nht-reference.nht-product-page .nht-v59-brewing>p,
body.nht-reference.nht-product-page .nht-v59-faq details p{
  color:var(--nht-v61-dark-text-color,#f0eee6)!important;
  font-size:var(--nht-v61-product-copy-size,15px)!important;
  line-height:var(--nht-v61-body-line-height,170%)!important;
}
body.nht-reference.nht-product-page .nht-v60-product-info .nht-v59-summary h2,
body.nht-reference.nht-product-page .nht-v59-faq h2{
  color:var(--nht-v61-dark-heading-color,#ffffff)!important;
}
body.nht-reference.nht-product-page .nht-v59-eyebrow,
body.nht-reference.nht-product-page .nht-v59-info-row h3,
body.nht-reference.nht-product-page .nht-v59-brewing h3,
body.nht-reference.nht-product-page .nht-v60-gallery-count{
  color:var(--nht-v61-gold-accent-color,#e1ba38)!important;
}
/* High-contrast visible mobile action and photo-first mobile ordering. */
body.nht-reference.nht-product-page .nht-v61-mobile-cart{display:none}
@media(max-width:950px){
  body.nht-reference.nht-product-page .nht-v60-product-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:24px}
  body.nht-reference.nht-product-page .nht-v60-gallery{grid-column:1!important;grid-row:1!important;position:static!important}
  body.nht-reference.nht-product-page .nht-v60-product-info{grid-column:1!important;grid-row:2!important}
  body.nht-reference.nht-product-page .nht-v60-gallery .nht-v59-gallery-slide img{height:clamp(290px,48vw,430px)}
}
@media(max-width:620px){
  body.nht-reference.nht-origin-page .nht-origin-altitude-card{padding:18px 12px}
  body.nht-reference.nht-origin-page .nht-v61-altitude-legend{display:none}
  body.nht-reference.nht-origin-page .nht-v61-altitude-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:14px 2px}
  body.nht-reference.nht-origin-page .nht-v61-altitude-label{grid-column:1;grid-row:1;font-size:14px!important}
  body.nht-reference.nht-origin-page .nht-v61-altitude-value{grid-column:2;grid-row:1;font-size:14px!important}
  body.nht-reference.nht-origin-page .nht-v61-altitude-track{grid-column:1 / -1;grid-row:2;height:12px}
  body.nht-reference.nht-origin-page .nht-v61-chart-note{font-size:12px}
  body.nht-reference.nht-origin-page .nht-origin-trail-head h2{font-size:clamp(30px,var(--nht-v61-heading-scale,44px),44px)!important}
  body.nht-reference.nht-product-page .nht-v60-product{padding-top:84px;padding-bottom:85px}
  body.nht-reference.nht-product-page .nht-v60-gallery .nht-v59-gallery-slide img{height:min(94vw,360px)}
  body.nht-reference.nht-product-page .nht-v60-product-info h1{font-size:clamp(38px,calc(var(--nht-v61-product-heading-size,64px) * .70),57px)!important}
  body.nht-reference.nht-product-page .nht-v61-mobile-cart{
    position:fixed;display:flex;align-items:center;justify-content:space-between;
    z-index:1000;bottom:calc(10px + env(safe-area-inset-bottom,0px));
    left:14px;right:14px;min-height:52px;padding:12px 19px;
    background:#e2ba39;color:#142d1f!important;border:2px solid #f5d66c;
    border-radius:8px;text-decoration:none!important;
    box-shadow:0 8px 26px rgba(0,0,0,.32);
    font:700 15px/1.2 'DM Sans',sans-serif;letter-spacing:.01em;
  }
  body.nht-reference.nht-product-page .nht-v61-mobile-cart:focus-visible{outline:3px solid #fff;outline-offset:2px}
  body.nht-reference.nht-product-page .nht-v61-mobile-cart span{font-size:18px}
  body.nht-reference.nht-product-page #add-to-cart{scroll-margin-top:110px}
  body.nht-reference.nht-product-page .nht-footer{padding-bottom:100px}
  body.nht-reference.nht-product-page .nht-v59-info-row{grid-template-columns:minmax(0,1fr);gap:4px}
  body.nht-reference.nht-product-page .nht-v60-buy .nht-request-purchase{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
  body.nht-reference.nht-product-page .nht-v60-buy .nht-request-purchase button.nht-request-add{font-size:13px!important}
}

/* Additional per-role text controls: header, buttons, captions and footer. */
body.nht-reference .nht-header .nht-toplinks a,
body.nht-reference .nht-header .nht-header-cta{
  font-size:var(--nht-v61-navigation-font-size,11px)!important;
}
body.nht-reference .nht-v59-eyebrow,
body.nht-reference .nht-origin-kicker,
body.nht-reference .nht-vn-kicker,
body.nht-reference .nht-mini-label{
  font-size:var(--nht-v61-small-label-size,11px)!important;
}
body.nht-reference button:not(.nht-menu-toggle):not(.nht-v60-gallery-dots button),
body.nht-reference .nht-v61-mobile-cart{
  font-size:var(--nht-v61-button-font-size,13px);
}
body.nht-reference .nht-footer p,
body.nht-reference .nht-footer a{
  font-size:var(--nht-v61-footer-font-size,13px)!important;
  color:var(--nht-v61-footer-text-color,#e5ebe3)!important;
}
