/* Shared foundations; section-owned rules live in modules/. */
:root {--paper: #f8f6f0;
  --white: #fffdf8;
  --green: #283f32;
  --ink: #283d31;
  --muted: #646e63;
  --body-ink: #505d53;
  --line: #d9ded3;
  --sage: #ecefe5;
  --accent: #806449;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans: 'DM Sans', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
  --gutter: clamp(24px, 5.3vw, 80px);
  --page-width: 1440px;
  --section-space: clamp(64px, 7vw, 104px);
  --font-display: clamp(48px, 5.4vw, 78px);
  --font-section: clamp(36px, 3.7vw, 52px);
  --font-card: clamp(25px, 2.3vw, 32px);
  --font-hero: clamp(64px, 7.1vw, 104px);
  --heading-leading: 1.13;
  --heading-tracking: -.015em;
  --card-leading: 1.22;
  --body-leading: 1.8;
  --reading-leading: 1.9;
  --body-tracking: .002em;
  --label-tracking: .12em;
  --font-label: 11px;}
html[lang='zh'] {--serif: 'Songti SC', 'STSong', 'Noto Serif CJK SC', 'Cormorant Garamond', Georgia, serif;
  --sans: 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Noto Sans CJK SC', 'DM Sans', sans-serif;
  --font-display: clamp(36px, 3.8vw, 56px);
  --font-section: clamp(30px, 2.75vw, 40px);
  --font-card: clamp(23px, 1.95vw, 29px);
  --font-hero: clamp(56px, 5.8vw, 84px);
  --heading-leading: 1.32;
  --heading-tracking: .025em;
  --card-leading: 1.4;
  --body-leading: 1.85;
  --reading-leading: 1.95;
  --body-tracking: .015em;
  --label-tracking: .08em;}
html {scroll-padding-top: 116px;}
body, html[lang='zh'] body {font-family: var(--sans);
  font-size: 15px;
  line-height: var(--body-leading);
  letter-spacing: var(--body-tracking);
  font-kerning: normal;
  -webkit-font-smoothing: antialiased;}
h1, h2, h3, html[lang='zh'] h1, html[lang='zh'] h2, html[lang='zh'] h3 {font-family: var(--serif);
  font-weight: 500;
  line-height: var(--heading-leading);
  letter-spacing: var(--heading-tracking);
  text-wrap: balance;}
html[lang='de'] :is(h1, h2, h3) {hyphens: auto; overflow-wrap: anywhere;}
html[lang='zh'] :is(h1, h2, h3, .ed-product-subtitle) em {font-style: normal;
  font-weight: inherit;}
p {color: var(--body-ink);}
.section {width: 100%;
  max-width: var(--page-width);
  padding: var(--section-space) var(--gutter);}
.eyebrow, html[lang='zh'] .eyebrow,
:is(.ed-for-you, .ed-origin, .ed-maker, .ed-enquiry, .ed-terroirs, .v11-region-panel, .v11-atlas-article) .eyebrow {font: 500 var(--font-label)/1.6 var(--sans);
  letter-spacing: var(--label-tracking);}
.eyebrow {color: var(--muted);}
html[lang='zh'] .eyebrow {letter-spacing: var(--label-tracking);}
.v11-heading, .ed-heading {max-width: 960px; margin-bottom: 52px;}
.v11-heading h1, .ed-heading h1, .ed-partners-hero h1, .page-heading h1,
.commerce-heading h1, .v11-compass-layout aside h1 {font: 500 var(--font-display)/var(--heading-leading) var(--serif);
  letter-spacing: var(--heading-tracking);
  margin: 20px 0 24px;
  max-width: 19ch;
  text-wrap: balance;}
html[lang='zh'] :is(.v11-heading, .ed-heading, .commerce-heading, .page-heading) h1 {max-width: 16em;}
.v11-heading > p:last-child:not(.eyebrow), .ed-heading .page-lead,
.v11-compass-layout aside > p:not(.eyebrow) {max-width: 620px;
  margin: 20px 0 0;
  font-size: 16px;
  line-height: var(--reading-leading);
  color: var(--body-ink);}
.ed-heading .eyebrow {margin-bottom: 0;}
.v11-intro h2, .v11-section-head h2, .v11-origin h2,
.v11-founders h2, .v11-compass-invite h2, .v11-newsletter h2,
.ed-section-title h2, .ed-character h2, .ed-section-intro h2,
.ed-origin h2, .ed-maker h2, .ed-chapter h2, .ed-faq h2,
.ed-terroir-card h2, .ed-enquiry h2, .ed-name-story h2,
.v11-why h2, .v11-place-maker h2, .v11-founder-text h2,
.v11-discovery-layout h2, .v11-region-panel h2,
.v11-atlas-article h2, .v11-question h2, .ed-event-hero h1, .ed-event-hero h2,
.event-detail h1, .v11-maker-list h2, .order-message {font: 500 var(--font-section)/var(--heading-leading) var(--serif);
  letter-spacing: var(--heading-tracking);
  margin: 18px 0 24px;}
.product-card h3, .v11-event-card h3, .v11-event-invite h3,
.v11-main-film h3, .v11-video-card h3, .ed-event-card h3,
.v11-partner-categories a, .v11-hub h2, .v11-hub-entries h2,
.ed-partner-routes h2, .cart-row h2, .v11-entry-grid a,
.v11-match-reasons h3, .ed-faq h3 {font: 500 var(--font-card)/var(--heading-leading) var(--serif);
  letter-spacing: var(--heading-tracking);}
.v11-section-head {align-items: flex-end;
  gap: 40px;
  margin-bottom: 38px;}
.v11-section-head h2 {margin: 12px 0 0; max-width: 22ch;}
html[lang='zh'] .v11-section-head h2 {max-width: 20em;}
.ed-prose, .ed-chapter .ed-prose, .content-prose p {font-size: 16px;
  line-height: var(--reading-leading);
  color: var(--body-ink);}
.ed-prose p + p {margin-top: 24px;}
.button {min-height: 52px;
  padding: 16px 25px;
  gap: 32px;
  font: 500 13px/1.5 var(--sans);
  letter-spacing: .02em;
  border-radius: 0;
  transition: background .2s, color .2s;}
.button:hover {transform: none;}
.button-dark:hover {background: #405949;}
.button > span[aria-hidden='true'] {font-size: 20px;}
.v11-link, .text-link, .ed-purchase-links .text-link {font: 500 13px/1.6 var(--sans);
  letter-spacing: .01em;
  gap: 24px;
  border-color: #9fa99b;
  padding: 10px 0;
  min-height: 42px;
  transition: color .2s, border-color .2s;}
.text-link:hover {gap: 24px;}
.v11-link:hover, .text-link:hover {border-color: var(--ink);}
.v11-link > span[aria-hidden='true'] {font-size: 18px;}
.text-link > span[aria-hidden='true'] {font-size: 20px;}
.button > [data-site-copy], .v11-link > [data-site-copy],
.text-link > [data-site-copy], .v11-media-meta > [data-site-copy],
.v11-footer-grid a > [data-site-copy] {font: inherit;
  letter-spacing: inherit;
  color: inherit;}
.ed-breadcrumb .text-link > [data-site-copy] {display: inline;}
:is(a, button, input, select, textarea, summary):focus-visible {outline: 2px solid var(--accent);
  outline-offset: 4px;}
.demo-banner {display: grid;
  grid-template-columns: 140px minmax(0, 1fr) 140px;
  align-items: center;
  gap: 12px;
  min-height: 36px;
  background: #edf0e8;
  color: #5b675a;
  border-bottom: 1px solid #e1e5dc;
  font: 400 10.5px/1.6 var(--sans);
  letter-spacing: .035em;
  padding: 4px var(--gutter);}
.demo-banner-copy {grid-column: 2; min-width: 0; text-align: center;}
.demo-admin-link {grid-column: 3;
  justify-self: end;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 28px;
  padding: 3px 10px;
  border: 1px solid #cbd3c5;
  color: var(--green);
  background: var(--paper);
  font: 500 10px/1.5 var(--sans);
  letter-spacing: .01em;
  white-space: nowrap;}
.demo-admin-link:hover {background: var(--green); color: var(--paper); border-color: var(--green);}
@media (max-width: 1000px) {
.demo-banner {grid-template-columns: minmax(0, 1fr) auto;}
.demo-banner-copy {grid-column: 1;}
.demo-admin-link {grid-column: 2;}
}
.v11-header {position: sticky;
  top: 0;
  height: 92px;
  padding: 0 var(--gutter);
  gap: 24px;
  background: var(--paper);
  border-bottom: 1px solid #283f3214;}
.v11-header .brand {width: 206px; min-width: 206px; gap: 12px;}
.v11-header .brand img:not(.v11-mark) {width: 164px;}
.v11-header .brand .v11-mark {width: 28px; height: 31px;}
.v11-header .desktop-nav, html[lang='zh'] .v11-header .desktop-nav {gap: clamp(12px, 1.4vw, 23px);
  margin: 0 auto;}
.v11-nav-group {padding: 30px 0; gap: 4px; font-size: 15px; white-space: nowrap;}
.v11-nav-group > a {padding: 5px 0;}
.v11-nav-group > a[aria-current] {box-shadow: 0 1px 0 var(--ink);}
.v11-nav-more {padding: 8px 2px; display: flex; align-items: center;}
.v11-nav-more svg {width: 11px; height: 11px;}
.v11-dropdown {width: 255px;
  padding: 24px;
  left: -24px;
  background: var(--white);
  border-color: var(--line);
  box-shadow: 0 16px 32px #283f3210;}
.v11-dropdown .v11-link {font-size: 15px; min-height: 38px; border-bottom: 0; padding: 5px 0;}
.v11-nav-group:hover .v11-dropdown, .v11-nav-group:focus-within .v11-dropdown,
.v11-nav-group.open .v11-dropdown {gap: 8px;}
.v11-header .header-actions {gap: 16px; flex-shrink: 0;}
.v11-account-link {display: inline-flex; align-items: center; min-height: 40px;}
.v11-account-link svg {width: 23px; height: 23px;}
.v11-header .header-actions select, html[lang='zh'] .header-actions select {width: 49px;
  min-width: 49px;
  max-width: none;
  padding: 8px 0;
  font-size: 12px;}
.bag-button {gap: 7px; font-size: 11px; min-height: 40px;}
.bag-button svg {width: 23px; height: 23px;}
.v11-header .menu-button {display: none; min-width: 24px;}
.v11-header .mobile-nav {top: 100%;
  max-height: calc(100dvh - 80px);
  overflow-y: auto;
  padding: 12px var(--gutter) 24px;}
.v11-header .mobile-nav details {padding: 14px 0;}
.v11-header .mobile-nav summary {font-family: var(--sans); font-size: 17px; font-weight: 500;}
.v11-header .mobile-nav details a {display: flex;
  width: 100%;
  font-size: 14px;
  padding: 10px 0;
  min-height: 44px;
  border-bottom: 0;}
.v11-header .mobile-nav details[open] summary {margin-bottom: 12px;}
.v11-hero {height: clamp(570px, 48vw, 700px); min-height: 570px; max-height: none;}
.v11-hero-shade {background: linear-gradient(90deg, #15291f83 0%, #15291f13 74%),
    linear-gradient(0deg, #11251a80, transparent 58%);}
.v11-hero-copy {top: 50%; transform: translateY(-50%); left: var(--gutter); max-width: 80%;}
.v11-hero-copy .eyebrow {color: #f9faf1; font-size: 11px; letter-spacing: .18em;}
.v11-hero-copy h1 {font: 500 var(--font-hero)/1.1 var(--serif);
  letter-spacing: var(--heading-tracking);
  margin: 24px 0 36px;}
.v11-hero-copy h1 em {font-weight: 400;}
html[lang='zh'] .v11-hero-copy h1 {line-height: 1.25; letter-spacing: var(--heading-tracking);}
.v11-hero-actions {gap: 30px;}
.v11-hero-actions .v11-light {color: var(--white); border-color: #f8f6f076;}
.v11-hero-foot {left: var(--gutter); right: var(--gutter); bottom: 30px; font-size: 10px; letter-spacing: .14em;}
.v11-intro {grid-template-columns: 1.25fr 1fr; gap: 28px 10%; padding-block: 88px;}
.v11-intro > .eyebrow {grid-column: 1/-1; margin: 0;}
.v11-intro > .eyebrow, html[lang='zh'] .v11-intro > .eyebrow {font-size: calc(var(--font-label) + 3px);}
.v11-intro h2 {margin: 0; max-width: 18ch;}
html[lang='zh'] .v11-intro h2 {max-width: 12em;}
.v11-intro > div {padding-top: 4px;}
.v11-intro p:not(.eyebrow) {font-size: 15px; line-height: var(--reading-leading);}
.v11-intro .v11-link {margin-top: 16px;}
.v11-collection {border-top: 0; padding-top: 28px;}
.product-grid {grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px 32px;}
.product-card {min-width: 0;}
.product-picture {aspect-ratio: 1/1.03; background: #edeee6;}
.product-picture img {width: 100%; height: 100%; transition: transform .55s ease;}
.product-picture:hover img {transform: scale(1.035);}
.product-category {font: 500 10px/1.5 var(--sans);
  letter-spacing: .1em;
  bottom: 20px;
  left: 20px;
  background: #f8f6f0e8;
  padding: 5px 9px;}
.picture-arrow {bottom: 18px; right: 18px; background: #f8f6f0d9;}
.product-card-title {margin-top: 23px; gap: 15px; align-items: center;}
.product-card h3 {margin: 0; line-height: var(--card-leading); letter-spacing: var(--heading-tracking); overflow-wrap: normal;}
.tea-chinese {font-size: 12px; letter-spacing: .08em; padding-top: 0;}
html[lang='zh'] .tea-chinese {display: none;}
.product-card > p {margin-top: 12px; font-size: 13px; line-height: 1.75; min-height: 0;}
.product-bottom {margin-top: 19px; padding-top: 12px; align-items: center; font-size: 13px; gap: 12px;}
.product-bottom .price, html[lang='zh'] .price {font: 500 13px/1.6 var(--sans); color: var(--ink); font-variant-numeric: tabular-nums;}
.small-save {border: 1px solid var(--line); width: 36px; height: 36px; font-size: 22px; transition: background .2s;}
.v11-origin {max-width: calc(var(--page-width) - 2 * var(--gutter));
  width: calc(100% - 2 * var(--gutter));
  margin: var(--section-space) auto 0;
  grid-template-columns: 1.22fr 1fr;
  background: transparent;
  gap: 7%;
  align-items: center;}
.v11-origin figure {aspect-ratio: 5/4;}
.v11-origin > div {padding: 10px 0;}
.v11-origin > div > p:not(.eyebrow), .v11-founders p:not(.eyebrow) {font-size: 15px; line-height: var(--reading-leading);}
.v11-origin-links {gap: 22px; margin-top: 26px;}
.v11-tables {padding-bottom: 24px;}
.v11-partners {border-top: 0; padding-top: 28px;}
.v11-partner-categories {grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px;}
.v11-partner-categories a {padding: 24px 0; border-top: 1px solid var(--line); border-bottom: 0;}
.v11-collection-links {gap: 12px 28px; padding: 0 0 26px;}
.ed-shop .filters button, .results-count {font-size: 12px;}
.ed-breadcrumb {font-size: 12px; margin-bottom: 30px; gap: 12px;}
.ed-breadcrumb .text-link {font-size: 12px; min-height: 30px;}
.ed-product .purchase-box .form-note, .stock-caption {font-size: 11px; line-height: 1.8;}
.ed-jump-nav {gap: 38px; padding: 22px 0; margin-top: 66px; font-size: 13px;}
.ed-section-intro > p:last-child, .ed-brew-card > p:last-child {font-size: 14px; line-height: 1.9;}
.ed-origin p:not(.eyebrow), .ed-maker p:not(.eyebrow), .ed-terroir-card p:not(.eyebrow) {font-size: 15px; line-height: var(--reading-leading);}
.ed-reading-links {gap: 20px 30px;}
.ed-related {padding-top: 72px;}
.ed-article-cover img {height: auto; max-height: 620px; aspect-ratio: 16/9;}
.ed-article-cover.ed-poster {padding: 32px; background: var(--sage);}
.ed-article-cover.ed-poster img {aspect-ratio: auto; height: 580px;}
.ed-article-intro {max-width: 720px; margin: 60px auto;}
.ed-chapter {padding: 58px 0;}
.ed-chapter h2 {max-width: 23ch;}
.ed-chapter.has-image {gap: 9%;}
.ed-chapter img {height: auto; aspect-ratio: 5/4;}
.ed-photo-essay {gap: 28px; margin: 48px 0;}
.ed-photo-essay img {height: auto; aspect-ratio: 4/3;}
.ed-photo-essay figcaption {font-size: 12px; line-height: 1.75; padding-top: 14px;}
.ed-video-link {padding: 28px 32px; background: var(--sage);}
.ed-video-link a {font-size: 15px;}
.v11-discovery-layout {gap: 9%; align-items: center;}
.v11-discovery-layout img {height: auto; aspect-ratio: 5/4;}
.ed-faq {padding: 72px 0; gap: 10%;}
.ed-faq > div:first-child {top: 125px;}
.ed-faq h3 {margin: 34px 0 15px;}
.ed-faq summary {font-size: 14px; line-height: 1.8; padding: 6px 0;}
.ed-faq .ed-prose {font-size: 14px;}
.ed-faq.ed-faq-expanded {display: block; padding: 64px 0 72px;}
.ed-faq.ed-faq-expanded > .ed-faq-intro {position: static;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 48px;
  margin: 0 0 48px;}
.ed-faq-intro > .eyebrow {grid-column: 1 / -1; margin: 0;}
.ed-faq-expanded .ed-faq-intro h2 {max-width: 18ch; margin: 0;}
html[lang='zh'] .ed-faq-expanded .ed-faq-intro h2 {max-width: 14em;}
.ed-faq-intro > p:last-child {align-self: end; margin: 0; font-size: 15px;}
.ed-faq-columns {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px;}
.ed-faq-group {min-width: 0;}
.ed-faq-expanded .ed-faq-group h3 {font-size: 28px;
  margin: 0;
  padding: 0 0 22px;
  border-bottom: 1px solid var(--green);}
html[lang='zh'] .ed-faq-expanded .ed-faq-group h3 {font-size: 25px;}
.ed-faq-item {padding: 24px 0 26px; border-bottom: 1px solid var(--line);}
.ed-faq-item h4 {margin: 0 0 12px;
  font: 500 15px/1.7 var(--sans);
  letter-spacing: 0;
  color: var(--ink);
  overflow-wrap: anywhere;}
.ed-faq-expanded .ed-faq-item .ed-prose {padding: 0; font-size: 14px; line-height: 1.9; overflow-wrap: anywhere;}
.ed-faq-item .ed-prose p {margin: 0;}
.ed-faq-item .ed-prose p + p {margin-top: 12px;}
@media (min-width: 701px) and (max-width: 1000px) {
.ed-faq-columns {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 32px;}
.ed-faq-group:last-child {grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px;}
.ed-faq-group:last-child h3 {grid-column: 1 / -1;}
}
@media (max-width: 700px) {
.ed-faq.ed-faq-expanded {padding: 44px 0;}
.ed-faq.ed-faq-expanded > .ed-faq-intro {display: block; margin-bottom: 32px;}
.ed-faq-expanded .ed-faq-intro h2 {margin: 14px 0 18px;}
.ed-faq-intro > p:last-child {font-size: 14px;}
.ed-faq-columns {grid-template-columns: 1fr; gap: 38px;}
.ed-faq-expanded .ed-faq-group h3 {padding-bottom: 16px; font-size: 27px;}
html[lang='zh'] .ed-faq-expanded .ed-faq-group h3 {font-size: 24px;}
.ed-faq-item {padding: 20px 0 22px;}
}
.v11-faq-page [hidden] {display: none !important;}
.v11-faq-tools {padding: 28px 0; border-top: 1px solid var(--line); margin-bottom: 38px;}
#v11-faq-search-form {max-width: 560px;}
#v11-faq-search-form label {display: block; margin-bottom: 10px; font: 500 13px/1.7 var(--sans); color: var(--ink);}
#v11-faq-search {width: 100%; min-height: 48px; border: 1px solid #aab59f; background: var(--white); padding: 12px 16px; font: 400 16px/1.5 var(--sans); color: var(--ink); border-radius: 0;}
.v11-faq-filters {display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0 16px;}
.v11-faq-filters button {min-height: 44px; border: 1px solid var(--line); background: transparent; padding: 10px 16px; font: 500 13px/1.5 var(--sans); color: var(--ink);}
.v11-faq-filters button[aria-pressed='true'] {background: var(--green); border-color: var(--green); color: var(--paper);}
.v11-faq-count {margin: 0; font: 400 12px/1.7 var(--sans); color: var(--muted);}
.v11-faq-page .v11-faq-content {padding: 0;}
.v11-faq-page[data-faq-filter]:not([data-faq-filter='all']) .ed-faq-columns {grid-template-columns: minmax(0, 760px);}
.v11-faq-page[data-faq-filter]:not([data-faq-filter='all']) .ed-faq-group:last-child {display: block; grid-column: auto;}
.v11-faq-empty {padding: 36px 0; margin: 0; font-size: 15px;}
.v11-faq-contact {display: flex; align-items: center; flex-wrap: wrap; gap: 18px 32px; padding-top: 32px; margin-top: 48px; border-top: 1px solid var(--line);}
.v11-faq-contact > p {margin: 0; font-size: 15px;}
@media (max-width: 700px) {
.v11-faq-tools {padding: 24px 0; margin-bottom: 32px;}
.v11-faq-filters {gap: 8px;}
.v11-faq-filters button {font-size: 12px; padding-inline: 12px;}
.v11-faq-contact {margin-top: 32px;}
}
.event-detail-grid {gap: 8%;}
.event-meta {gap: 24px;}
.event-meta h3 {font-size: var(--font-card);}
.event-meta p:not(.eyebrow), .programme {font-size: 14px;}
.v11-small, .v11-match-reasons p {font-size: 12px; line-height: 1.85;}
.v11-atlas-article > section > p, .ed-article-intro .ed-prose,
.ed-chapter .ed-prose {max-width: 68ch;}
html[lang='zh'] :is(.v11-atlas-article > section > p, .ed-article-intro .ed-prose, .ed-chapter .ed-prose) {max-width: 40em;}
.purchase-box > label, .purchase-row label {font-size: 12px;}
.purchase-box select, .purchase-row input {background: var(--white); font-size: 14px; padding: 13px 14px; border-color: #bcc6b5;}
.purchase-row label {width: 78px;}
.v11-account {max-width: 1080px;}
.v11-member-login, .v11-member-profile {max-width: 650px; padding: 38px 40px; background: var(--white); border: 1px solid var(--line);}
.v11-account form {gap: 22px; margin: 26px 0;}
.v11-account form label:not(.check-label), #enquiry-form label, .commerce-form label {font-size: 13px; line-height: 1.7;}
.v11-account input:not([type='checkbox']), .commerce-form input, .commerce-form select {font: 400 15px/1.6 var(--sans);
  min-height: 50px;
  background: var(--white);
  padding: 13px 14px;
  border: 1px solid #bbc5b4;}
#enquiry-form input, #enquiry-form select, #enquiry-form textarea {font-size: 15px; line-height: 1.7; padding: 12px 0; border-color: #aab59f;}
#enquiry-form .check-label, .check-label, .newsletter .check-label {font-size: 12px !important; line-height: 1.85;}
.form-note {font-size: 11px; line-height: 1.85;}
.v11-preview-code {background: var(--sage); padding: 20px;}
.v11-member-profile h2 {font-size: var(--font-card); margin: 36px 0 22px;}
.commerce-page {padding-top: 64px;}
.commerce-heading {margin-bottom: 42px;}
.checkout-steps {font-size: 12px; line-height: 1.9;}
.commerce-grid {grid-template-columns: 1.25fr 1fr; gap: 7%;}
.cart-row {grid-template-columns: 96px minmax(0, 1fr) 85px; gap: 24px; padding: 28px 0;}
.cart-row img {width: 96px; height: 112px;}
.cart-row h2 {margin: 5px 0 13px;}
.cart-row p, .cart-row-end label {font-size: 12px; line-height: 1.8;}
.cart-summary, .order-summary {padding: 34px; background: var(--sage); border: 1px solid #e1e5d9;}
.cart-summary h2, html[lang='zh'] .cart-summary h2 {font: 500 43px/1.2 var(--sans); letter-spacing: -.01em; font-variant-numeric: tabular-nums;}
.cart-summary p {font-size: 14px; line-height: 1.9;}
.cart-summary small, .summary-item small {font-size: 11px; line-height: 1.8;}
.summary-item, .money-lines > div {font-size: 13px; line-height: 1.8;}
.money-lines .grand-total {font-size: 20px;}
.money-lines dd {font-variant-numeric: tabular-nums;}
.subtle-button {font-size: 12px;}
.narrow-flow > p, .order-message + p, .address-review p {font-size: 15px; line-height: 1.9;}
.address-review h2 {font-size: var(--font-card);}
.order-topline, .order-status > div, .tracking-box, .order-key {font-size: 13px;}
.status-pill {border-radius: 0; padding: 6px 12px; font-size: 11px; letter-spacing: .02em;}
.flow-error {font-size: 13px; line-height: 1.8; padding: 16px;}
.order-key, .tracking-box {background: var(--sage); padding: 24px;}
.utility-links {font-size: 12px; gap: 22px;}
.empty-bag > p {font-size: 15px;}
.selection-dialog {background: var(--paper);}
.selection-dialog h2 {font-size: var(--font-section);}
.selection-note, .selection-item button {font-size: 12px;}
.selection-item h3 {font-size: var(--font-card);}
.selection-item .eyebrow {font-size: 10px;}
.selection-item .purchase-box {margin: 20px 0;}
.v11-newsletter {display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 10%;
  align-items: center;
  padding: 64px max(var(--gutter), calc((100vw - var(--page-width)) / 2 + var(--gutter)));
  background: #e9ede1;
  border-block: 1px solid #dfe5d4;}
.v11-newsletter h2 {margin: 13px 0 20px;}
.newsletter.v11-newsletter > div > p:not(.eyebrow) {font-size: 14px; line-height: var(--reading-leading);}
.v11-newsletter .eyebrow {font: 500 11px/1.6 var(--sans); letter-spacing: var(--label-tracking);}
.newsletter-input {border-color: #8a9980;}
.newsletter-input input {font-size: 16px; padding: 15px 0;}
.newsletter-input button {width: 48px; min-height: 48px; font-size: 24px;}
.v11-footer {max-width: var(--page-width); margin: auto; padding: 58px var(--gutter) 26px;}
/* Keep the wide closing panels, with content on the same left edge as the hero. */
html[data-page='home'] :is(.v11-newsletter, .v11-footer) {max-width: 1440px;
  padding-inline: max(var(--gutter), calc((min(100%, 1440px) - var(--page-width)) / 2 + var(--gutter)));}
.v11-footer-grid {grid-template-columns: 1.9fr 1fr 1.2fr; gap: 40px;}
.v11-footer-grid > div {gap: 6px; font-size: 13px;}
.v11-footer-grid .eyebrow {font-size: 10px; margin-bottom: 12px;}
.v11-footer-grid a {font-size: 13px; padding: 4px 0; min-height: 30px;}
.v11-footer-grid a > span[aria-hidden='true'] {display: none;}
.v11-footer-brand {gap: 12px; margin: 0 0 14px;}
.v11-footer-brand img:first-child {width: 30px;}
.v11-footer-brand img:last-child {width: 171px;}
.v11-footer-grid > div:first-child > p {max-width: 270px; line-height: 1.9;}
.v11-footer-bottom {margin-top: 48px; padding-top: 23px; gap: 20px; font-size: 11px; color: var(--muted);}
.v11-footer-tools {display: flex; flex-wrap: wrap; align-items: center; gap: 22px;}
.v11-footer-tools a:hover {text-decoration: underline; text-underline-offset: 4px;}
@media (max-width: 1200px) {
.v11-header {gap: 18px; padding-inline: 32px;}
.v11-header .brand {width: 178px; min-width: 178px; gap: 10px;}
.v11-header .brand img:not(.v11-mark) {width: 141px;}
.v11-header .desktop-nav, html[lang='zh'] .v11-header .desktop-nav {gap: 12px;}
.v11-nav-group {font-size: 14px;}
.v11-header .header-actions {gap: 12px;}
}
@media (max-width: 1100px) {
.v11-header .desktop-nav, html[lang='zh'] .v11-header .desktop-nav {display: none;}
.v11-header .menu-button {display: flex;}
.v11-header .brand {width: auto; flex: 1;}
.v11-footer-grid {gap: 25px;}
.v11-partner-categories {grid-template-columns: 1fr 1fr; gap: 0 30px;}
}
@media (max-width: 800px) {
:root {--gutter: 32px; --section-space: 64px;}
.v11-header {height: 80px;}
.v11-intro {gap: 26px 7%; padding-block: 64px;}
.v11-origin, .v11-founders {gap: 6%;}
.v11-footer-grid {grid-template-columns: 1fr 1fr; gap: 28px;}
.v11-footer-grid > div:first-child {grid-column: 1/-1;}
.cart-row {grid-template-columns: 75px minmax(0, 1fr) 68px; gap: 14px;}
.cart-row img {width: 75px; height: 96px;}
.cart-summary, .order-summary {padding: 25px;}
.ed-jump-nav {gap: 25px;}
}
@media (max-width: 700px) {
:root {--gutter: 24px;
    --section-space: 54px;
    --font-display: clamp(43px, 11vw, 56px);
    --font-section: 36px;
    --font-card: 28px;
    --font-hero: clamp(57px, 14vw, 78px);}
html[lang='zh'] {--font-display: clamp(32px, 8.8vw, 40px);
    --font-section: 29px;
    --font-card: 23px;
    --font-hero: clamp(51px, 13vw, 68px);}
:root {--font-label: 10px;}
html {scroll-padding-top: 95px;}
body, html[lang='zh'] body {font-size: 14px;}
.demo-banner {font-size: 9px; padding: 6px 20px; letter-spacing: .01em; gap: 10px;}
.demo-banner-copy {text-align: left;}
.demo-admin-link {min-height: 36px; padding: 6px 9px;}
.v11-header {height: 76px; padding-inline: 20px; gap: 12px;}
.v11-header .brand {gap: 8px; min-width: 150px;}
.v11-header .brand img:not(.v11-mark) {width: 127px;}
.v11-header .brand .v11-mark {width: 24px; height: 27px;}
.v11-header .header-actions {gap: 12px;}
.v11-header .header-actions select, html[lang='zh'] .header-actions select {width: 46px; min-width: 46px; font-size: 11px;}
.v11-account-link svg {width: 21px; height: 21px;}
.bag-button {gap: 4px; font-size: 10px;}
.bag-button svg {width: 21px; height: 21px;}
.v11-heading, .ed-heading {margin-bottom: 34px;}
.v11-heading h1, .ed-heading h1, .ed-partners-hero h1,
  .commerce-heading h1, .v11-compass-layout aside h1 {margin: 16px 0 20px;}
.v11-heading > p:last-child:not(.eyebrow), .ed-heading .page-lead,
  .v11-compass-layout aside > p:not(.eyebrow) {font-size: 14px; line-height: 1.9;}
.eyebrow, html[lang='zh'] .eyebrow, .v11-newsletter .eyebrow {font-size: 10px;}
.v11-section-head {display: block; margin-bottom: 30px;}
.v11-section-head h2 {margin-top: 12px;}
.v11-section-head > .v11-link {margin-top: 14px;}
.v11-hero {height: 555px; min-height: 0;}
.v11-hero-copy {left: var(--gutter); max-width: calc(100% - 2 * var(--gutter)); top: 47%;}
.v11-hero-copy .eyebrow {font-size: 10px; letter-spacing: .12em;}
.v11-hero-copy h1 {margin: 24px 0 33px;}
html[lang='zh'] .v11-hero-copy h1 {letter-spacing: var(--heading-tracking);}
.v11-hero-actions {gap: 17px;}
.v11-hero-actions .button {font-size: 12px; padding: 14px 18px; min-height: 48px; gap: 23px;}
.v11-hero-actions > .v11-link {font-size: 12px; gap: 13px;}
.v11-hero-foot {left: var(--gutter); right: var(--gutter); bottom: 25px; font-size: 8px;}
.v11-intro {display: block; padding-block: 56px;}
.v11-intro h2 {margin: 24px 0; max-width: 18ch;}
html[lang='zh'] .v11-intro h2 {max-width: 11em;}
.v11-intro > div {padding: 0; margin: 0;}
.v11-intro p:not(.eyebrow) {font-size: 14px;}
.v11-collection {padding-top: 10px;}
.product-grid, .v11-collection .product-grid {grid-template-columns: 1fr; gap: 37px;}
.product-picture {aspect-ratio: 1/1.02;}
.product-card-title {margin-top: 20px;}
.product-card h3 {font-size: var(--font-card);}
.product-card > p {font-size: 13px; margin-top: 11px;}
.product-bottom {margin-top: 15px; padding-top: 12px;}
.product-category {font-size: 10px; bottom: 18px; left: 18px;}
.tea-chinese {display: block; font-size: 11px;}
.v11-origin {display: block; margin-top: 54px;}
.v11-origin figure {aspect-ratio: 5/4;}
.v11-origin > div {padding: 30px 0 0;}
.v11-origin-links {gap: 20px; margin-top: 22px;}
.v11-partners {padding-top: 18px;}
.v11-partner-categories {grid-template-columns: 1fr 1fr; gap: 0 23px;}
.v11-partner-categories a {font-size: 26px; padding: 19px 0; gap: 12px;}
.v11-collection-links {gap: 8px 24px; padding-bottom: 22px;}
.ed-jump-nav {margin-top: 38px; gap: 18px 23px; padding: 18px 0; font-size: 12px;}
.ed-prose, .ed-chapter .ed-prose, .content-prose p {font-size: 14px;}
.ed-section-intro {margin-bottom: 30px;}
.ed-section-intro > p:last-child, .ed-brew-card > p:last-child {font-size: 13px;}
.ed-reading-links {gap: 15px;}
.ed-related {padding-top: 48px;}
.ed-article-cover img {aspect-ratio: 5/4; height: auto;}
.ed-article-cover.ed-poster {padding: 24px;}
.ed-article-cover.ed-poster img {height: auto; max-height: 500px;}
.ed-article-intro {margin: 38px auto;}
.ed-chapter, .ed-chapter.has-image {display: block; padding: 38px 0;}
.ed-chapter.has-image figure {margin-top: 28px;}
.ed-chapter img {height: auto;}
.ed-photo-essay {grid-template-columns: 1fr; gap: 25px;}
.ed-photo-essay img, .ed-photo-essay figure:nth-child(2) img {height: auto; aspect-ratio: 5/4;}
.v11-discovery-layout {grid-template-columns: 1fr; gap: 28px;}
.v11-discovery-layout img {height: auto;}
.ed-faq {display: block; padding: 45px 0;}
.ed-faq > div:first-child {position: static; margin-bottom: 32px;}
.ed-faq h2, .ed-enquiry h2 {font-size: var(--font-section);}
.event-detail-grid {display: block;}
.event-detail h1 {font-size: var(--font-display); margin-top: 32px;}
.event-meta p:not(.eyebrow), .programme {font-size: 13px;}
.v11-member-login, .v11-member-profile {padding: 27px;}
.v11-account input:not([type='checkbox']), .commerce-form input, .commerce-form select,
  #enquiry-form input, #enquiry-form select, #enquiry-form textarea,
  .purchase-box select, .purchase-row input {font-size: 16px;}
.commerce-page {padding-top: 44px;}
.commerce-grid {grid-template-columns: 1fr; gap: 35px;}
.cart-row {grid-template-columns: 67px minmax(0, 1fr) 64px; gap: 13px;}
.cart-row img {width: 67px; height: 90px;}
.cart-row h2 {font-size: calc(var(--font-card) * .9);}
.cart-row p, .cart-row-end label {font-size: 11px;}
.cart-summary h2 {font-size: 36px;}
.order-topline {flex-direction: column; align-items: start;}
.order-message {font-size: var(--font-section);}
.two-fields {grid-template-columns: 1fr 1fr; gap: 16px;}
.v11-newsletter {display: block; padding: 46px var(--gutter);}
.v11-newsletter h2 {font-size: var(--font-section);}
.v11-newsletter form {margin-top: 28px;}
.v11-footer {padding: 44px var(--gutter) 24px;}
.v11-footer-grid {grid-template-columns: 1fr 1fr; gap: 28px;}
.v11-footer-grid > div:first-child {grid-column: 1/-1;}
.v11-footer-bottom {flex-wrap: wrap; gap: 18px; font-size: 10px;}
.v11-footer-tools {gap: 20px;}
.v11-footer-bottom > a {margin-left: auto;}
}
@media (max-width: 370px) {
.v11-footer-grid {grid-template-columns: 1fr;}
:root {--gutter: 20px;}
.v11-header {padding-inline: 16px; gap: 8px;}
.v11-header .brand {min-width: 124px; gap: 7px;}
.v11-header .brand img:not(.v11-mark) {width: 102px;}
.v11-header .brand .v11-mark {width: 22px;}
.v11-header .header-actions {gap: 9px;}
.bag-button span {display: none;}
.v11-hero-actions {display: flex; flex-wrap: wrap; gap: 15px;}
.v11-hero-actions > .v11-link {margin-top: 0;}
.v11-partner-categories {grid-template-columns: 1fr;}
.two-fields {grid-template-columns: 1fr;}
}
@media (prefers-reduced-motion: reduce) {
html {scroll-behavior: auto;}
*, *::before, *::after {animation: none !important; transition: none !important;}
}
.v11-play-symbol {display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid var(--line); border-radius: 50%; margin-bottom: 28px; font-size: 23px;}
.v11-notes-list {margin-top: 64px;}
.v11-related-knowledge {border-top: 1px solid var(--line); margin-top: 64px; padding-top: 48px;}
.v11-related-knowledge > a {margin: 0 28px 18px 0;}
.ed-chapter[id], #tea-why {scroll-margin-top: 130px;}
@media(max-width:640px) {
.v11-related-knowledge {padding-top: 32px; margin-top: 44px;}
}
.v11-tab-count {font: 400 10px/1 var(--sans); color: #86907e;}
.v11-people-grid {grid-template-columns: repeat(2,minmax(0,1fr));}
.v11-demo-note {display: inline-block; font: 400 11px/1.6 var(--sans); color: var(--muted); margin: 10px 0 18px;}
html[data-editing="browse"] .v11-editable {outline: none; cursor: inherit;}
html[data-editing="true"] [data-site-copy]:hover {outline: 1px dashed #7c8e68; outline-offset: 3px; background: #dce6cb55; cursor: pointer;}
#main:focus {outline: none;}
.v11-support-header {height: 80px; gap: 24px;}
.v11-support-header .brand {flex: 0 0 auto; width: 206px;}
.v11-support-header-label {margin-right: auto; padding-left: 24px; border-left: 1px solid var(--line); font-size: 12px; color: var(--muted);}
.v11-support-return {display: inline-flex; align-items: center; gap: 16px; min-height: 44px; font-size: 13px; white-space: nowrap;}
.v11-support-return:hover {text-decoration: underline; text-underline-offset: 5px;}
.v11-support-container {max-width: var(--page-width); padding: 32px var(--gutter) 80px; margin: auto;}
.v11-support-breadcrumb {display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; margin-bottom: 44px; font-size: 12px; line-height: 1.7; color: var(--muted);}
.v11-support-breadcrumb a {padding: 8px 0;}
.v11-support-breadcrumb a:hover {text-decoration: underline; text-underline-offset: 4px;}
.v11-support-breadcrumb [aria-current] {color: var(--ink);}
.v11-support-layout {display: grid; grid-template-columns: 200px minmax(0,1fr); gap: clamp(40px,5vw,80px); align-items: start;}
.v11-support-sidebar {position: sticky; top: 112px;}
.v11-support-sidebar > .eyebrow {margin: 0 0 20px;}
.v11-support-sidebar nav {display: grid; gap: 4px;}
.v11-support-sidebar a {display: flex; justify-content: space-between; align-items: center; gap: 14px; min-height: 48px; padding: 12px 14px; border: 1px solid transparent; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere;}
html[lang='de'] .v11-support-sidebar a {hyphens: auto;}
.v11-support-sidebar a > span[aria-hidden] {flex-shrink: 0;}
.v11-support-sidebar a:hover {border-color: var(--line);}
.v11-support-sidebar a[aria-current] {background: var(--sage); border-color: var(--line); font-weight: 500;}
.v11-support-content {min-width: 0;}
.v11-support-content > .section {padding: 0; margin: 0;}
.v11-support-content .v11-heading {margin: 0 0 38px;}
.v11-support-content .v11-heading > .eyebrow {display: none;}
.v11-support-content .v11-heading h1 {margin: 0 0 20px; font-size: clamp(42px,4.2vw,60px); max-width: 24ch;}
html[lang='zh'] .v11-support-content .v11-heading h1 {font-size: clamp(32px,3.1vw,44px);}
.v11-support-content .v11-heading > p:last-child {font-size: 15px; margin: 0; max-width: 650px;}
.v11-support-content .v11-faq-tools {padding-top: 26px; margin-bottom: 32px;}
.v11-support-content .ed-faq-group:last-child {display: block; grid-column: auto;}
.v11-support-content .ed-faq-columns {grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px;}
.v11-support-content .ed-faq-group h3 {font-size: 27px;}
html[lang='zh'] .v11-support-content .ed-faq-group h3 {font-size: 22px;}
.v11-support-content .v11-faq-page[data-faq-filter]:not([data-faq-filter='all']) .ed-faq-columns {grid-template-columns: minmax(0,760px);}
.v11-support-prose {max-width: 780px; padding: 32px 0; border-bottom: 1px solid var(--line);}
.v11-support-prose h2 {font: 500 30px/1.3 var(--serif); margin: 0 0 16px;}
html[lang='zh'] .v11-support-prose h2 {font-size: 24px; line-height: 1.5;}
.v11-support-prose p {font-size: 14px; line-height: var(--reading-leading); margin: 0;}
.v11-support-note {background: var(--sage); border-left: 2px solid #9ca993; padding: 16px 20px; font-size: 12px; line-height: 1.8; margin: 0; max-width: 780px;}
.v11-shipping-table {margin-top: 26px;}
.v11-shipping-table table {width: 100%; table-layout: fixed; border-collapse: collapse; font-size: 13px; text-align: left;}
.v11-shipping-table th, .v11-shipping-table td {padding: 16px 12px; border-bottom: 1px solid var(--line); overflow-wrap: anywhere;}
.v11-shipping-table thead th {font-size: 12px; font-weight: 500; background: var(--sage); line-height: 1.65;}
.v11-shipping-table tbody th {font-weight: 400;}
.v11-shipping-table td {font-family: var(--sans); font-variant-numeric: tabular-nums;}
.v11-support-actions {display: flex; flex-wrap: wrap; gap: 24px 36px; margin-top: 32px;}
.v11-support-contact #enquiry-form .check-label {display: flex; flex-direction: row; align-items: flex-start; gap: 12px;}
.v11-support-contact #enquiry-form .check-label input {flex: 0 0 18px; width: 18px; height: 18px; min-height: 18px; margin: 4px 0 0;}
.v11-footer-grid a[aria-current] {font-weight: 500; text-decoration: underline; text-underline-offset: 5px;}
html[data-page='pages'] .v11-footer {border-top: 1px solid var(--line);}
@media(max-width:1100px) {
.v11-support-content .ed-faq-columns {grid-template-columns: repeat(2,minmax(0,1fr));}
.v11-support-content .ed-faq-group:last-child {grid-column: 1/-1;}
}
@media(max-width:1000px) {
.v11-support-header-label {display: none;}
.v11-support-header .brand {margin-right: auto; flex: 0 0 auto;}
.v11-support-layout {grid-template-columns: 1fr; gap: 36px;}
.v11-support-sidebar {position: static;}
.v11-support-sidebar > .eyebrow {margin-bottom: 12px;}
.v11-support-sidebar nav {display: flex; flex-wrap: wrap; gap: 8px;}
.v11-support-sidebar a {border-color: var(--line); gap: 24px;}
.v11-support-breadcrumb {margin-bottom: 24px;}
}
@media(max-width:600px) {
.v11-support-header {height: auto; display: grid; grid-template-columns: minmax(0,1fr) auto; padding: 14px 20px 10px; gap: 8px 16px;}
.v11-support-header .brand {width: auto; min-width: 0; margin: 0;}
.v11-support-header .header-actions {justify-self: end;}
.v11-support-return {grid-column: 1/-1; min-height: 36px; font-size: 12px; justify-self: start;}
.v11-support-container {padding-top: 20px; padding-bottom: 48px;}
.v11-support-breadcrumb {font-size: 11px; gap: 4px 8px; margin-bottom: 22px;}
.v11-support-sidebar nav {display: grid; grid-template-columns: repeat(2,minmax(0,1fr));}
.v11-support-sidebar a {padding: 10px 12px; gap: 8px; font-size: 12px;}
.v11-support-layout {gap: 30px;}
.v11-support-content .v11-heading {margin-bottom: 30px;}
.v11-support-content .v11-heading h1 {font-size: 40px;}
html[lang='zh'] .v11-support-content .v11-heading h1 {font-size: 32px;}
.v11-support-content .v11-heading > p:last-child {font-size: 14px;}
.v11-support-content .ed-faq-columns {grid-template-columns: 1fr; gap: 32px;}
.v11-support-content .ed-faq-group:last-child {grid-column: auto;}
.v11-support-prose {padding: 26px 0;}
.v11-support-note {padding: 14px 16px;}
.v11-shipping-table th, .v11-shipping-table td {padding: 14px 8px; font-size: 12px;}
.v11-shipping-table thead th {font-size: 11px;}
}
.ed-enquiry-simple #enquiry-form :is(input[type='text'],input[type='email'],input[type='tel'],textarea) {display: block; width: 100%; border: 1px solid var(--line); background: var(--white); border-radius: 0; padding: 13px 16px; margin: 10px 0 0; min-height: 52px; font: 400 16px/1.65 var(--sans); letter-spacing: var(--body-tracking); color: var(--ink);}

/* Homepage: the signature box, a few teas, their place and the tasting ritual. */
.v11-home-hero{height:clamp(440px,38vw,550px);min-height:0}
/* Match the centered .section content edge below while the image stays full width. */
.v11-home-hero .v11-hero-copy{left:max(var(--gutter),calc((100% - var(--page-width)) / 2 + var(--gutter)));max-width:calc(100% - 2 * var(--gutter))}
.v11-home-hero .v11-hero-copy h1{font-size:clamp(52px,6.2vw,86px);margin:20px 0}
.v11-home-hero-description{color:var(--white);font-size:15px;max-width:40em;margin:0 0 26px}
.v11-home-section{padding-block:clamp(46px,5vw,68px)}
.v11-home-section h2{font-size:clamp(30px,3.1vw,44px);line-height:1.25}
html[lang='zh'] .v11-home-section h2{font-size:clamp(28px,2.65vw,38px);line-height:1.4}
.v11-home-selection{padding-top:12px;padding-bottom:24px}
.v11-home-selection .v11-section-head{align-items:end;margin-bottom:28px;gap:24px}
.v11-home-selection .v11-section-head h2{margin:10px 0 0}
.v11-home-selection .product-grid{gap:30px}
.v11-home-selection .product-picture{aspect-ratio:1.35}
.v11-home-selection .product-card-title{margin-top:18px}
.v11-home-selection .product-card>p{margin-block:8px}
.v11-home-selection .product-bottom{margin-top:12px}
.v11-home-compass{padding-block:0 48px}
.v11-home-compass>div{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:20px}
.v11-home-compass p{font-size:14px;margin:0}
.v11-home-compass .v11-link{font-size:13px;gap:18px}
.v11-home-origin{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:center;gap:clamp(28px,4vw,58px);background:var(--sage)}
.v11-home-origin figure{margin:0;min-width:0}
.v11-home-origin figure>img{display:block;width:100%;aspect-ratio:1.3;object-fit:cover}
.v11-home-origin figcaption{font-size:12px;color:var(--muted);margin-top:10px}
.v11-home-origin h2{margin:12px 0 22px}
.v11-home-origin p:not(.eyebrow){font-size:14px;line-height:1.85;margin:14px 0}
.v11-home-origin-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px;margin-top:24px}
.v11-home-origin-actions .v11-link{font-size:13px;gap:18px}
@media(max-width:760px){
 .v11-home-hero{height:455px}
 .v11-home-hero .v11-hero-copy{top:50%}
 .v11-home-hero .v11-hero-copy h1{font-size:52px;margin:18px 0}
 .v11-home-hero-description{font-size:14px;max-width:28em;margin-bottom:22px}
 .v11-home-section{padding-block:40px}
 .v11-home-selection{padding-top:0;padding-bottom:22px}
 .v11-home-selection .v11-section-head{display:block;margin-bottom:24px}
 .v11-home-selection .v11-section-head>.v11-link{margin-top:18px;font-size:13px}
 .v11-home-selection .product-grid{gap:28px 18px}
 .v11-home-compass{padding-bottom:34px}
 .v11-home-compass>div{align-items:start;flex-direction:column;gap:8px}
 .v11-home-origin{grid-template-columns:1fr;gap:28px}
 .v11-home-origin figure>img{aspect-ratio:1.5}
 .v11-home-origin h2{max-width:21ch}
}
@media(max-width:540px){
 .v11-home-hero{height:435px}
 .v11-home-hero .v11-hero-copy h1{font-size:46px}
 .v11-home-hero .v11-hero-actions{gap:16px}
 .v11-home-hero .v11-hero-actions .button{padding-inline:14px;gap:14px}
 .v11-home-selection .product-grid{grid-template-columns:1fr;gap:24px}
 .v11-home-selection .product-card{display:grid;grid-template-columns:100px minmax(0,1fr);grid-template-areas:'photo title' 'photo notes' 'photo price';gap:5px 18px;align-items:start}
 .v11-home-selection .product-picture{grid-area:photo;aspect-ratio:1;margin:0}
 .v11-home-selection .product-card-title{grid-area:title;margin:0}
 .v11-home-selection .product-card h3{font-size:24px;line-height:1.3}
 .v11-home-selection .product-card>p{grid-area:notes;font-size:12px;margin:0}
 .v11-home-selection .product-bottom{grid-area:price;margin:4px 0 0;padding-top:8px;gap:8px;font-size:11px}
 .v11-home-selection .product-bottom .price{font-size:12px}
 .v11-home-selection .product-category,.v11-home-selection .picture-arrow,.v11-home-selection .tea-chinese{display:none}
 .v11-home-selection .small-save{width:30px;height:30px;font-size:19px}
}
@media(max-width:360px){
 .v11-home-hero .v11-hero-copy h1{font-size:40px}
 .v11-home-hero .v11-hero-actions{gap:10px}
 .v11-home-selection .product-card{grid-template-columns:82px minmax(0,1fr);column-gap:14px}
 .v11-home-selection .product-card h3{font-size:22px}
}

/* Homepage atlas: two continuous sections between the hero and the first stop. */
.v11-home-atlas{max-width:var(--page-width);margin-inline:auto}
.v11-home-map{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:clamp(24px,4vw,56px);align-items:center;padding-block:clamp(48px,5vw,76px)}
.v11-home-map-copy{min-width:0;padding-bottom:24px}
.v11-home-map-copy h2{margin:12px 0 22px}
.v11-home-map-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;max-width:28em;margin:0}
.v11-home-map-copy .v11-link{margin-top:26px;font-size:13px;gap:20px}
.v11-home-map-figure{min-width:0;margin:0}
.v11-home-map-canvas{position:relative;width:100%;aspect-ratio:8/5}
.v11-home-map-canvas>img{display:block;width:100%;height:100%;object-fit:contain}
.v11-home-map-pin{position:absolute;display:grid;place-items:center;width:26px;height:26px;transform:translate(-50%,-50%);color:var(--ink);border-radius:50%}
.v11-home-map-dot{width:7px;height:7px;border-radius:50%;background:var(--muted);border:1px solid var(--white)}
.v11-home-map-pin.is-origin{width:44px;height:44px;z-index:1}
.v11-home-map-pin.is-origin .v11-home-map-dot{width:11px;height:11px;background:var(--ink);box-shadow:0 0 0 5px #283d3112}
.v11-home-map-label{position:absolute;right:calc(50% + 13px);top:50%;transform:translateY(-50%);white-space:nowrap;background:var(--paper);padding:4px 7px;font-size:11px;line-height:1.5}
.v11-home-map-places{margin-top:22px;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:baseline;gap:12px 20px;flex-wrap:wrap;font-size:11px;color:var(--muted)}
.v11-home-map-places>div{display:flex;flex-wrap:wrap;gap:4px 22px}
.v11-home-map-places a{display:inline-flex;align-items:center;gap:6px;min-height:32px;color:var(--ink);font-size:12px}
.v11-home-map-places a:hover,.v11-home-map-places a:focus-visible{text-decoration:underline;text-underline-offset:5px}
.v11-home-regions{background:var(--sage)}
.v11-home-regions-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:36px}
.v11-home-regions-heading h2{margin:10px 0 0}
.v11-home-regions-heading>p{max-width:32em;font-size:13px;line-height:1.85;margin:0}
.v11-home-regions-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(22px,3.5vw,50px)}
.v11-home-regions-grid article{min-width:0}
.v11-home-regions-grid img{display:block;width:160px;height:122px;max-width:100%;object-fit:contain;object-position:left center;margin-bottom:24px}
.v11-home-regions-grid h3,html[lang='zh'] .v11-home-regions-grid h3{font:500 23px/1.35 var(--serif);margin:0 0 12px;letter-spacing:0}
.v11-home-regions-grid p{font-size:13px;line-height:1.8;margin:0}
.v11-home-passport{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:48px}
.v11-home-passport .db-home-label{margin-bottom:12px}
.v11-home-passport .db-home-experience h2{margin:0 0 28px;max-width:17ch}
.v11-home-map a:focus-visible,.v11-home-regions a:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
@media(max-width:980px){
 .v11-home-map{grid-template-columns:minmax(0,.75fr) minmax(0,1.4fr);gap:24px}
 .v11-home-regions-grid{gap:24px}
 .v11-home-regions-grid h3{font-size:21px}
}
@media(max-width:760px){
 .v11-home-map{grid-template-columns:1fr;padding-block:40px;gap:24px}
 .v11-home-map-copy{padding-bottom:0}
 .v11-home-map-copy h2{margin:10px 0 16px}
 .v11-home-map-copy>p:not(.eyebrow){max-width:36em}
 .v11-home-map-copy .v11-link{margin-top:18px}
 .v11-home-map-figure{width:100%;max-width:640px;justify-self:center}
 .v11-home-map-label{font-size:10px;padding:3px 5px;right:calc(50% + 9px)}
 .v11-home-map-places{margin-top:14px;gap:4px 18px}
 .v11-home-map-places>div{gap:0 18px}
 .v11-home-map-places a{min-height:40px}
 .v11-home-regions-heading{display:block;margin-bottom:28px}
 .v11-home-regions-heading>p{margin-top:16px}
 .v11-home-regions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
 .v11-home-regions-grid img{height:108px;margin-bottom:18px}
 .v11-home-passport{margin-bottom:40px}
}
@media(max-width:480px){
 .v11-home-regions-grid{grid-template-columns:1fr;gap:24px}
 .v11-home-regions-grid article{display:grid;grid-template-columns:88px minmax(0,1fr);gap:20px;align-items:center}
 .v11-home-regions-grid img{width:88px;height:84px;margin:0;object-position:center}
 .v11-home-regions-grid h3,html[lang='zh'] .v11-home-regions-grid h3{font-size:22px;margin-bottom:6px}
 .v11-home-regions-grid p{font-size:12px}
 .v11-home-map-places>span{flex-basis:100%}
 .v11-home-map-places>div{column-gap:17px}
 .v11-home-passport .db-home-experience h2{max-width:16ch}
}

.v11-home-brand-intro{max-width:740px;margin:32px auto 0;text-align:left}
.v11-home-brand-intro p:last-child{margin-bottom:0}

/* Centered homepage composition; preserve the hero and standalone column layouts. */
.v11-home-module > .section{max-width:var(--page-width);padding-block:clamp(44px,4.5vw,64px)}
.v11-home-module > .section > .v11-home-module-heading{max-width:none;margin:0 0 36px;text-align:center}
.v11-home-module > .section > .v11-home-module-heading .v11-home-module-title{font:500 var(--font-display)/var(--heading-leading) var(--serif);letter-spacing:var(--heading-tracking);margin:14px 0 0;max-width:100%;text-align:center;overflow-wrap:anywhere}
.v11-home-module > .section > .v11-home-module-heading > .v11-home-module-title:first-child{margin-top:0}
.v11-home-module > .section > .v11-home-module-heading :is(.eyebrow,.ed-breadcrumb){margin:0}
.v11-home-module > .section > .v11-home-module-heading > p:not(.eyebrow){margin:18px auto 0;max-width:44em;text-align:center;font:400 16px/1.9 var(--sans)}
#home-discovery .ed-breadcrumb{justify-content:center}
#home-films .v11-media-heading{display:block}
#home-films .v11-media-tabs{justify-content:center}
#home-films .v11-main-film{margin-inline:auto}
.v11-home-module > .about-blog > .about-blog-photo,
.v11-home-module > .about-blog > .about-blog-photo img,
.v11-home-module > .about-blog > .v11-home-brand-intro{margin-inline:auto}
.v11-home-module > .about-blog > .about-blog-photo figcaption{text-align:center}
#home-brand-story > .section{padding-bottom:40px}
#home-partners > .section{padding-top:40px}
.v11-home-module > .ed-partners-simple .ed-inquiry-shortcuts{justify-content:center;margin:0 0 32px}
.v11-home-module > .ed-partners-simple .enquiry-section.ed-enquiry-simple{max-width:760px;margin-inline:auto;text-align:left}
@media(max-width:700px){
 .v11-home-module > .section{padding-block:40px}
 .v11-home-module > .section > .v11-home-module-heading{margin-bottom:28px}
 .v11-home-module > .section > .v11-home-module-heading .v11-home-module-title{margin-top:12px}
 .v11-home-module > .section > .v11-home-module-heading > p:not(.eyebrow){font-size:14px;margin-top:16px}
 #home-brand-story > .section{padding-bottom:24px}
 #home-partners > .section{padding-top:24px}
}

/* Shared desktop reading scale: fit laptop height without shrinking body text. */
@media (min-width: 701px) {
 :root {--page-width: 1280px; --gutter: clamp(24px, 4.4vw, 64px); --section-space: clamp(40px, 4vw, 58px); --font-display: clamp(42px, 4.2vw, 60px); --font-section: clamp(30px, 3vw, 42px); --font-card: clamp(23px, 2vw, 28px); --font-hero: clamp(56px, 5.2vw, 76px); --media-feature-max: clamp(320px, 56svh, 460px); --media-card-max: min(280px, 36svh);}
 html[lang='zh'] {--font-display: clamp(34px, 3.2vw, 44px); --font-section: clamp(28px, 2.4vw, 34px); --font-card: clamp(22px, 1.8vw, 26px); --font-hero: clamp(48px, 4.5vw, 64px);}
 html {scroll-padding-top: 100px;}
 .site-header.v11-header {height: 76px;}
 .v11-nav-group {padding-block: 18px;}
 .v11-heading, .ed-heading {margin-bottom: 32px;}
 .v11-heading h1, .ed-heading h1, .page-heading h1, .commerce-heading h1 {margin: 14px 0 18px;}
 .v11-section-head {margin-bottom: 28px;}
 .ed-breadcrumb {margin-bottom: 22px;}
 .product-grid {gap: 32px 24px;}
 .product-picture {aspect-ratio: 3/2; max-height: var(--media-card-max);}
 .product-picture > img {object-fit: contain;}
 .product-card-title {margin-top: 16px;}
 .v11-hero {height: clamp(400px, 62svh, 540px); min-height: 0;}
 .v11-home-hero .v11-hero-copy h1 {font-size: var(--font-hero);}
 .v11-home-section {padding-block: 44px;}
 .v11-home-section h2, html[lang='zh'] .v11-home-section h2 {font-size: var(--font-section);}
 .v11-home-map-figure {width: 100%; max-width: min(720px, 96svh); justify-self: center;}
 .v11-home-origin figure > img {max-height: var(--media-feature-max);}
 .ed-article-cover img, .ed-article-cover.ed-poster img, .ed-photo-essay img {display: block; width: auto; max-width: 100%; height: auto; max-height: var(--media-feature-max); aspect-ratio: auto; object-fit: contain; margin-inline: auto;}
 .ed-article-intro {margin-block: 40px;}
 .ed-chapter {padding-block: 40px;}
 .ed-chapter img {max-height: var(--media-feature-max); object-fit: cover;}
 .ed-photo-essay {margin-block: 32px;}
 .v11-newsletter {padding-block: 44px;}
}

/* The wordmark's wide SVG needs this width to match the symbol's visible height. */
.v11-header .brand {width:auto;min-width:0;flex:0 0 auto;}
.v11-header .brand img:not(.v11-mark) {width:258px;}
@media(max-width:1100px) {
 .v11-header:not(.v11-support-header) .brand {flex:1;}
}
@media(max-width:700px) {
 .v11-header .brand img:not(.v11-mark) {width:220px;}
 .v11-beta {font-size:9px;}
}
@media(max-width:520px) {
 .v11-header {height:auto;min-height:102px;display:flex;flex-wrap:wrap;row-gap:6px;padding-block:10px;}
 .v11-header .brand,.v11-header:not(.v11-support-header) .brand {flex:1 0 100%;margin:0;}
 .v11-header .header-actions {margin-left:auto;}
 .v11-support-header .header-actions {order:2;}
 .v11-support-return {order:1;}
}
@media(max-width:370px) {
 .v11-header .brand img:not(.v11-mark) {width:200px;}
}
