/* Final layout corrections for the wide desktop reference. */
.hero h1 { color: #fff !important; }
.hero h1 em { color: #cbed3d !important; }
.intro-section > :not(.ghost-letter) { position: relative; z-index: 1; }
.intro-section .ghost-letter { z-index: 0; pointer-events: none; opacity: .65; }

@media (min-width: 600px) {
  .services > .wrap {
    width: 83% !important;
    max-width: 1700px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .services .service-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .services .service-grid article,
  .services .service-grid article:not(:first-child) {
    min-width: 0;
  }
}

/* Mobile hero: keep every action and the capacity statistic in normal flow. */
@media (max-width: 800px) {
  .hero {
    height: auto !important;
    min-height: 100svh !important;
  }

  .hero-content {
    padding-top: 24vh !important;
    padding-bottom: 46px !important;
  }

  .hero h1 {
    font-size: clamp(58px, 17vw, 86px) !important;
    line-height: .88 !important;
  }

  .hero-actions {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 18px !important;
  }

  .hero .button { padding: 22px 26px; }

  .hero .capacity {
    position: static !important;
    margin: 42px 0 0 !important;
    justify-content: flex-start !important;
  }
}

/* 07 / Our network — warehouse reference composition. */
#network { display: block !important; background: #fff; }
#network .network-ticker { min-height: 56px; background: linear-gradient(105deg, #d4eb62, #dbed76); display: grid; grid-template-columns: 1.25fr 1fr 1fr 1.1fr 2.4fr; align-items: center; padding: 0 6.4%; color: #002b21; font: 700 10px/1.4 'DM Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .3em; }
#network .network-ticker span { position: relative; padding: 0 20px; text-align: center; }
#network .network-ticker span:first-child { padding-left: 0; text-align: left; }
#network .network-ticker span::after { content: ''; position: absolute; right: 0; top: 0; height: 14px; width: 1px; background: #617c42; }
#network .network-ticker b { text-align: right; padding-left: 24px; }
#network .network-v2-main { display: grid; grid-template-columns: 51.1% 48.9%; }
#network .network-v2-photo { position: relative; min-height: 540px; background: linear-gradient(90deg, #001e25db 0%, #00262b96 32%, #00302522 65%, transparent 100%), linear-gradient(0deg, #00433066, transparent 55%), url('assets/warehouse-hero.png') center center / cover no-repeat; }
#network .photo-copy { position: relative; min-height: 540px; padding: 54px 10.4% 33px; display: flex; flex-direction: column; align-items: flex-start; color: #fff; }
#network .photo-copy small { font: 500 10px/1.8 'DM Sans', Arial, sans-serif; letter-spacing: .32em; text-transform: uppercase; }
#network .photo-copy i { width: 32px; height: 2px; background: #d5e64e; margin: 16px 0 43px; }
#network .photo-copy h2 { font: italic 500 clamp(42px, 2.9vw, 56px)/.96 Georgia, serif; letter-spacing: -.04em; }
#network .photo-copy h2 em { color: #93b73e; }
#network .photo-copy > b { margin-top: auto; padding-top: 50px; font: 500 16px Georgia, serif; text-transform: uppercase; }
#network .photo-copy > span { margin-top: 8px; font: 500 8px 'DM Sans', Arial, sans-serif; letter-spacing: .3em; text-transform: uppercase; }
#network .network-v2-copy { min-width: 0; padding: 43px 2.9vw 36px 6.9vw; }
#network .network-v2-copy .eyebrow { margin: 0; color: #003c2b; font: 800 10px/1.5 'DM Sans', Arial, sans-serif; letter-spacing: .3em; }
#network .network-v2-copy .eyebrow span { display: inline; width: auto; height: auto; margin: 0; background: none; color: #8ab694; vertical-align: baseline; }
#network .network-v2-copy h2 { margin: 29px 0 24px; font: 500 clamp(36px, 3.2vw, 62px)/.94 Georgia, serif; letter-spacing: -.045em; }
#network .network-v2-copy h2 em { color: #00964b; }
#network .network-v2-copy > p:last-of-type { color: #535b5e; font: 15px/1.6 Arial, sans-serif; margin: 0; }
#network .network-features { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid #d1dad4; margin-top: 23px; padding-top: 20px; }
#network .network-features article { position: relative; min-width: 0; padding: 0 21px; display: flex; flex-direction: column; gap: 7px; }
#network .network-features article:first-child { padding-left: 0; }
#network .network-features article:last-child { padding-right: 0; }
#network .network-features article + article::before { content: ''; position: absolute; left: 0; top: 16px; bottom: 4px; width: 1px; background: #d1dad4; }
#network svg { width: 43px; height: 43px; flex-shrink: 0; color: #073e2d; }
#network .network-features b { margin-top: 5px; color: #002c22; font: 800 10px/1.35 'DM Sans', Arial, sans-serif; letter-spacing: .15em; text-transform: uppercase; }
#network .network-features span { color: #535b5e; font: 13px/1.4 Arial, sans-serif; }
#network .network-difference { display: grid; grid-template-columns: .75fr 2.3fr repeat(4, 1fr); align-items: start; gap: 0; padding: 50px 5.3% 35px; min-height: 205px; background: linear-gradient(110deg, #002b20, #00271e); color: #fff; }
#network .network-difference-label { align-self: start; padding: 0 20px 0 0; }
#network .network-difference-label small { font: 700 10px/1.8 'DM Sans', Arial, sans-serif; letter-spacing: .3em; text-transform: uppercase; }
#network .network-difference-label::after { content: ''; display: block; width: 32px; height: 2px; margin-top: 15px; background: #d6e84c; }
#network .network-difference h2 { margin: 0; padding-right: 35px; font: 500 clamp(32px, 2.85vw, 54px)/1.02 Georgia, serif; letter-spacing: -.045em; }
#network .network-difference h2 em { color: #00964b; }
#network .network-difference article { min-width: 0; min-height: 103px; padding: 0 0 0 2.5vw; border-left: 1px solid #577567; display: flex; flex-direction: column; }
#network .network-difference article > b { color: #d4e54e; font: 500 34px/.95 Georgia, serif; letter-spacing: -.03em; white-space: nowrap; }
#network .network-difference article > small { color: #fff; margin-top: 13px; font: 700 10px/1.5 'DM Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .18em; }
#network .network-difference article > span { color: #d7e1db; margin-top: 4px; font: 15px/1.45 Arial, sans-serif; }
#network .network-difference article:last-child > span { color: #9ab5a7; }
#network .network-difference svg { color: #d4e54e; width: 47px; height: 33px; }
#network .network-footer { background: #082f26; padding: 20px 5.3%; display: flex; align-items: center; gap: 36px; color: #fff; font: 500 9px/1.6 'DM Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .3em; }
#network .network-footer i { flex: 1; height: 1px; background: #668578; }
@media (min-width: 801px) and (max-width: 1300px) {
  #network .network-v2-copy { padding: 36px 3vw; }
  #network .network-features { grid-template-columns: 1fr 1fr; row-gap: 22px; }
  #network .network-features article:nth-child(3) { padding-left: 0; }
  #network .network-features article:nth-child(3)::before { display: none; }
  #network .network-v2-photo, #network .photo-copy { min-height: 100%; }
  #network .network-difference { grid-template-columns: .8fr 2fr 1fr 1fr; gap: 24px 0; }
  #network .network-difference article:nth-of-type(3) { grid-column: 3; }
  #network .network-difference h2 { font-size: 34px; }
  #network .network-difference article { padding-left: 20px; }
  #network .network-footer { gap: 20px; letter-spacing: .15em; }
}
@media (max-width: 800px) {
  #network .network-ticker { grid-template-columns: 1.5fr 1fr; min-height: 52px; padding: 0 6%; font-size: 9px; letter-spacing: .2em; }
  #network .network-ticker span:nth-of-type(n+3), #network .network-ticker b, #network .network-ticker span:nth-child(2)::after { display: none; }
  #network .network-v2-main { grid-template-columns: 1fr; }
  #network .network-v2-photo { min-height: 520px; background-position: 58% center; }
  #network .photo-copy { min-height: 520px; padding: 40px 8% 32px; }
  #network .photo-copy h2 { font-size: 46px; }
  #network .photo-copy i { margin-bottom: 32px; }
  #network .network-v2-copy { padding: 40px 7%; }
  #network .network-v2-copy h2 { font-size: clamp(32px, 7.6vw, 52px); }
  #network .network-features { grid-template-columns: 1fr 1fr; row-gap: 28px; }
  #network .network-features article { padding: 0 16px; }
  #network .network-features article:nth-child(3) { padding-left: 0; }
  #network .network-features article:nth-child(3)::before { display: none; }
  #network .network-difference { grid-template-columns: 1fr 1fr; padding: 36px 7%; gap: 26px 0; }
  #network .network-difference-label, #network .network-difference h2 { grid-column: 1 / -1; }
  #network .network-difference h2 { font-size: clamp(32px, 8vw, 48px); padding: 0; }
  #network .network-difference article { padding: 0 12px 0 18px; }
  #network .network-difference article:nth-of-type(odd) { border: 0; padding-left: 0; }
  #network .network-difference article > b { font-size: 30px; }
  #network .network-footer { flex-direction: column; align-items: flex-start; gap: 14px; padding: 22px 7%; font-size: 8px; letter-spacing: .2em; }
  #network .network-footer i { flex: none; width: 100%; }
}
/* Managing director section — reference-two composition. */
.director { grid-template-columns: minmax(250px, 16%) 1fr !important; min-height: 0 !important; }
.director .director-aside { padding: 30px 36px !important; align-items: center !important; }
.director-aside .section-number { align-self: flex-start; }
.director-monogram { margin-top: 60px !important; width: 138px !important; height: 138px !important; font-size: 40px !important; }
.director-aside > b { align-self: center; margin-top: 28px !important; }
.director-aside blockquote { margin: auto 0 75px; color: #71817b; text-align: center; font: italic 23px/1.15 'Playfair Display', Georgia, serif; }
.director-v2 { padding: 28px 7.5% 34px !important; }
.director-v2 h2 { font-size: clamp(54px, 5vw, 98px) !important; line-height: .87 !important; margin: 27px 0 27px !important; }
.director-v2 .two-copy { max-width: 1120px; gap: 8% !important; }
.director-v2 .two-copy p { margin: 0; }
.director-v2 .quote-line { max-width: 1120px; margin: 24px 0 28px !important; font-size: 14px; }
.director-v2 .principle { padding: 30px 46px !important; gap: 38px !important; max-width: 1200px; }
.director-v2 .principle h3 { font-size: 31px !important; line-height: 1.02; margin-top: 19px !important; }
.director-v2 .principle p { margin: 14px 0 0; font-size: 13px; }
.director-v2 .values { max-width: 1200px; }
.director-v2 .values span { padding: 17px 28px !important; }
.director-v2 .values b { margin-top: 12px !important; font-size: 21px !important; }
.director-v2 .values small { display: block; color: #667770; font-size: 11px; line-height: 1.35; margin-top: 5px; }
.director-signature { border-top: 1px solid #c2c8c0; max-width: 1200px; margin-top: 25px; padding-top: 18px; display: flex; align-items: center; gap: 28px; }
.director-signature em { color: var(--green); font: italic 34px 'Playfair Display', Georgia, serif; }
.director-signature span { font: 700 9px 'DM Mono', monospace; letter-spacing: .11em; text-transform: uppercase; }
@media (max-width: 800px) {
  .director { grid-template-columns: 1fr !important; }
  .director .director-aside { padding: 45px 6% !important; align-items: flex-start !important; }
  .director-monogram { margin: 28px 0 0 !important; }
  .director-aside > b { align-self: flex-start; }
  .director-aside blockquote { display: none; }
  .director-v2 { padding: 46px 6% !important; }
  .director-v2 h2 { font-size: clamp(47px, 12vw, 65px) !important; }
  .director-v2 .principle { padding: 28px !important; }
  .director-v2 .values { grid-template-columns: 1fr 1fr; }
  .director-signature { flex-direction: column; align-items: flex-start; gap: 8px; }
}

/* 09 / Managing director: supplied reference layout. */
#director { position: relative; isolation: isolate; overflow: hidden; background: #fff; grid-template-columns: 16vw minmax(0, 1fr) !important; padding: 28px 16.7vw 20px 0; }
#director::after { content: 'P'; position: absolute; z-index: -1; right: -12px; bottom: -90px; color: #f0f1e8; font: 360px/1 Georgia, serif; pointer-events: none; }
#director .director-aside { padding: 0 4.6vw 0 3.7vw !important; border-right: 1px solid #d0d8d3; align-items: center !important; }
#director .section-number { margin: 0; width: 170px; font: 700 10px/1.6 'DM Sans', Arial, sans-serif; letter-spacing: .2em; }
#director .director-monogram { flex-shrink: 0; margin-top: 62px !important; width: 138px !important; height: 138px !important; background: radial-gradient(circle at 40% 35%, #064b36, #003525); color: #d3e748; font: 44px Georgia, serif !important; }
#director .director-aside > b { white-space: nowrap; margin-top: 20px !important; color: #00713d; font: 700 10px 'DM Sans', Arial, sans-serif; letter-spacing: .18em; }
#director .director-aside > b::after { content: ''; display: block; width: 60px; height: 2px; background: #00713d; margin: 15px auto 0; }
#director .director-aside blockquote { margin: 56px 0 0; color: #819087; text-transform: uppercase; font: italic 22px/1.2 Georgia, serif; }
#director .director-v2 { min-width: 0; padding: 0 0 0 5.9vw !important; }
#director .eyebrow { margin: 0; color: #00733c; font: 800 11px/1.5 'DM Sans', Arial, sans-serif; letter-spacing: .24em; }
#director h2 { margin: 18px 0 26px !important; font: 500 clamp(44px, 4.15vw, 76px)/.88 Georgia, serif !important; letter-spacing: -.035em; }
#director h2 em { color: #006c46; }
#director .two-copy { max-width: none; grid-template-columns: 1fr 1fr; gap: 6% !important; color: #556460; font: 14px/1.52 Arial, sans-serif; }
#director .quote-line { max-width: none; margin: 22px 0 21px !important; padding: 3px 20px 3px 24px; border-left: 4px solid #a5d52b; color: #425953; font: 14px/1.52 Arial, sans-serif; }
#director .principle, #director .values, #director .director-signature { margin-left: -5vw; max-width: none; }
#director .principle { grid-template-columns: 1.3fr 1fr 1fr; align-items: center; gap: 40px !important; padding: 26px 38px 22px 5vw !important; background: linear-gradient(110deg, #003c2a, #00402d); }
#director .principle small { color: #d3e748; font: 700 11px 'DM Sans', Arial, sans-serif; letter-spacing: .2em; }
#director .principle h3 { margin: 14px 0 0 !important; font: 500 clamp(23px, 1.8vw, 33px)/.98 Georgia, serif !important; letter-spacing: -.03em; }
#director .principle h3 em { color: #d3e748; }
#director .principle p { margin: 18px 0 0; color: #f0f5f1; font: 15px/1.4 Arial, sans-serif; }
#director .principle p:last-child { padding-left: 40px; border-left: 1px solid #689181; }
#director .values { background: #ffffffd9; border: 1px solid #d0d8d3; border-top: 0; }
#director .values span { padding: 14px 28px 20px !important; border-right: 1px solid #d0d8d3; color: #269666; font: 700 10px 'DM Sans', Arial, sans-serif; letter-spacing: .16em; }
#director .values span:last-child { border-right: 0; }
#director .values b { margin-top: 6px !important; font: 23px Georgia, serif !important; letter-spacing: -.04em; }
#director .values small { margin-top: 6px; color: #586963; font: 14px/1.35 Arial, sans-serif; letter-spacing: 0; }
#director .director-signature { margin-top: 26px; padding-top: 15px; gap: 30px; border-color: #d0d8d3; }
#director .director-signature em { color: #006d43; font: italic 36px Georgia, serif; }
#director .director-signature span { font: 800 9px/1.6 'DM Sans', Arial, sans-serif; letter-spacing: .2em; }
@media (min-width: 801px) and (max-width: 1200px) {
  #director { padding-right: 5vw; grid-template-columns: 20vw minmax(0, 1fr) !important; }
  #director .director-aside { padding: 0 2vw !important; }
  #director .section-number { width: auto; }
  #director .principle { gap: 22px !important; padding-right: 24px !important; }
  #director .principle p:last-child { padding-left: 22px; }
  #director .values span { padding: 14px !important; }
}
@media (max-width: 800px) {
  #director { padding: 36px 6%; grid-template-columns: 1fr !important; }
  #director .director-aside { padding: 0 0 30px !important; border-right: 0; border-bottom: 1px solid #d0d8d3; align-items: flex-start !important; }
  #director .section-number { width: auto; }
  #director .director-monogram { margin-top: 26px !important; width: 100px !important; height: 100px !important; font-size: 34px !important; }
  #director .director-aside > b::after { margin-left: 0; }
  #director .director-v2 { padding: 30px 0 0 !important; }
  #director h2 { font-size: clamp(35px, 8.5vw, 62px) !important; line-height: 1 !important; }
  #director .two-copy { grid-template-columns: 1fr; gap: 18px !important; }
  #director .principle, #director .values, #director .director-signature { margin-left: 0; }
  #director .principle { grid-template-columns: 1fr; padding: 26px !important; gap: 20px !important; }
  #director .principle h3 { font-size: 29px !important; }
  #director .principle p { margin: 0; }
  #director .principle p:last-child { border-left: 0; border-top: 1px solid #689181; padding: 18px 0 0; }
  #director .values { grid-template-columns: 1fr 1fr; }
  #director .values span { padding: 16px !important; border-bottom: 1px solid #d0d8d3; }
  #director .values span:nth-child(even) { border-right: 0; }
  #director .values b { font-size: 21px !important; }
  #director .director-signature em { font-size: 32px; }
}




/* Exact image assets and photo treatments from the client's sample site. */
.hero-shade { background: linear-gradient(90deg, rgba(2,23,16,.94) 0%, rgba(3,34,24,.82) 40%, rgba(4,27,20,.18) 73%, rgba(2,20,15,.35)), linear-gradient(0deg, rgba(2,20,15,.75), transparent 45%); }
.tea-image { background: linear-gradient(transparent, rgba(6,27,21,.333)), url('assets/tea-heritage.png') center / cover; }
.tea-comparison figure { background: linear-gradient(90deg, rgba(6,27,21,.733), rgba(6,27,21,.19)), url('assets/tea-textures.png') center / cover; }
.nav .brand img { display: block; width: 158px; height: 82px; object-fit: contain; filter: drop-shadow(0 5px 14px #0008); }
.footer .brand img { display: block; width: 130px; height: 82px; object-fit: contain; filter: drop-shadow(0 4px 12px #0008); }
@media (max-width: 800px) { .nav .brand img { width: 110px; height: 76px; } }

/* Give the hero actions breathing room before the next section. */
.hero { height: auto; min-height: max(690px, 100svh); }
.hero-content { padding-bottom: 100px; }
@media (max-width: 800px) {
  .hero-content { padding-bottom: 80px !important; }
}
