@charset "UTF-8";
/* 依 2026/10/27 上傳版整合：保留頁面設定，B 主視覺延伸插畫選單集中於檔案末段。 */
.tea2026-page {
  --ink: #194d37;
  --green: #2b672d;
  --mint: #d7f5ee;
  --teal: #62b6a3;
  --tea-yellow: #bdc522;
  --paper: #f8f7eb;
  --line: #dce4ce;
  --muted: #647260;
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font: 16px/1.8 "Microsoft JhengHei", "PingFang TC", Arial, sans-serif;
  -webkit-text-size-adjust: 100%
}
.tea2026-page * {
  box-sizing: border-box
}
.tea2026-page [hidden] {
  display: none !important
}
.tea2026-page button, .tea2026-page a {
  -webkit-tap-highlight-color: transparent
}
.tea2026-page button {
  font: inherit;
  cursor: pointer
}
.tea2026-page a {
  color: inherit;
  text-decoration: none
}
.tea2026-page :focus-visible {
  outline: 3px solid #b49d25;
  outline-offset: 5px
}
.tea2026-page .skip-link {
  position: absolute;
  left: 20px;
  top: -100px;
  background: #fff;
  padding: 10px 20px;
  z-index: 20
}
.tea2026-page .skip-link:focus {
  top: 10px
}
.tea2026-page .hero {
  position: relative;
  overflow: hidden;
  background: var(--mint)
}
.tea2026-page .hero-desktop {
  display: block;
  width: 100%;
  height: auto
}
.tea2026-page .hero-mobile {
  display: none
}
.tea2026-page .hero-links {
  position: absolute;
  right: 5.5%;
  top: 7.3%;
  display: flex;
  gap: 7px;
  background: #c0e5d1;
  padding: 5px
}
.tea2026-page .hero-links a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  background: var(--ink);
  color: #fff;
  border-radius: 50%
}
.tea2026-page .hero-links a span:not(.fb-letter) {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%)
}
.tea2026-page .hero-links svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2
}
.tea2026-page .hero-links .fb-letter {
  font: 700 26px/1 Arial
}
.tea2026-page .tea-shell {
  max-width: 1120px;
  padding: 0 32px;
  margin: auto
}
.tea2026-page .activity-intro {
  text-align: center;
  padding: 35px 0 20px
}
.tea2026-page .small-label {
  display: block;
  font-size: 11px;
  letter-spacing: 2.3px;
  font-weight: 700;
  color: #658063
}
.tea2026-page .activity-intro p {
  font-size: 19px;
  margin: 3px 0 0;
  letter-spacing: 1px;
  font-weight: 700
}
.tea2026-page .section-heading {
  display: flex;
  gap: 17px;
  align-items: center;
  margin-bottom: 13px
}
.tea2026-page .section-number {
  align-self: stretch;
  display: flex;
  align-items: center;
  padding-right: 16px;
  border-right: 2px solid #c6ce83;
  font: 500 35px/1 Georgia, serif;
  color: #9baf41
}
.tea2026-page h2 {
  font-size: 29px;
  line-height: 1.5;
  margin: 3px 0 0;
  letter-spacing: 1px
}
.tea2026-page .section-lead {
  margin: 0 0 10px;
  font-size: 17px;
  color: #425e45
}
.tea2026-page .origin-note {
  font-size: 14px;
  color: var(--muted);
  margin: 0 0 24px
}
.tea2026-page .origin-list {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fffef8
}
.tea2026-page .origin-row {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  margin: 0;
  border-bottom: 1px solid var(--line)
}
.tea2026-page .origin-row:last-child {
  border-bottom: 0
}
.tea2026-page .origin-row h3 {
  display: flex;
  align-items: center;
  gap: 11px;
  font-size: 17px;
  margin: 0;
  padding: 21px 22px;
  background: #edf2df
}
.tea2026-page .origin-row p {
  font-size: 15px;
  margin: 0;
  padding: 18px 24px;
  line-height: 1.9
}
.tea2026-page .origin-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  flex: none;
  background: #5a9469
}
.tea2026-page .dot-taozhumiao {
  background: #E6D097;
}
.tea2026-page .dot-south {
  background: #C38366
}
.tea2026-page .dot-east {
  background: #71aeb2
}
.tea2026-page .dot-highland {
  background: #8d90a3
}
.tea2026-page .flavor-section {
  padding: 52px 0 45px
}
.tea2026-page .product-callout {
  margin-top: 26px;
  background: #e7efda;
  border-radius: 15px;
  padding: 24px 28px;
  display: flex;
  gap: 24px;
  align-items: center;
  justify-content: space-between
}
.tea2026-page .product-callout h3 {
  font-size: 20px;
  margin: 5px 0
}
.tea2026-page .product-callout p {
  font-size: 14px;
  margin: 0;
  color: #57704d
}
.tea2026-page .tea-button {
  display: inline-flex;
  gap: 26px;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  border: 0;
  border-radius: 30px;
  padding: 12px 24px;
  background: var(--ink);
  color: #fff;
  font-size: 15px
}
.tea2026-page .tea-button:hover {
  background: #326d40
}
.tea2026-page .upcoming {
  text-align: center;
  background: #edf2df;
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 75px 25px;
  margin: 0 0 55px
}
.tea2026-page .upcoming p {
  color: var(--muted)
}
.tea2026-page .text-button {
  background: none;
  border: 0;
  border-bottom: 1px solid #91a878;
  padding: 7px 0;
  color: var(--green)
}
.tea2026-page .tea-footer {
  text-align: center;
  padding: 30px 20px;
  background: var(--ink);
  color: #e6eedc
}
.tea2026-page .tea-footer a {
  font-size: 16px;
  font-weight: 700
}
.tea2026-page .tea-footer p {
  font-size: 11px;
  margin: 8px 0 0;
  opacity: .75
}
.tea2026-page #tea-region-demo {
  padding: 22px 0 0;
  color: var(--ink)
}
.tea2026-page #tea-region-demo > h2, .tea2026-page #tea-region-demo > .intro {
  display: none
}
.tea2026-page #tea-region-demo .region-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 22px
}
.tea2026-page #tea-region-demo .region-button {
  flex: 1;
  min-width: 120px;
  padding: 10px 12px;
  min-height: 46px;
  border: 1px solid #cbd8b9;
  border-radius: 7px;
  background: #fffef7;
  color: var(--ink);
  font-size: 15px
}
.tea2026-page #tea-region-demo .region-button:hover {
  background: #e7efdc
}
.tea2026-page #tea-region-demo .region-button[aria-pressed="true"] {
  background: var(--green);
  border-color: var(--green);
  color: #fff
}
.tea2026-page #tea-region-demo .layout {
  display: grid;
  grid-template-columns: 36% minmax(0, 1fr);
  gap: 40px;
  align-items: start
}
.tea2026-page #tea-region-demo .map-wrap {
  min-width: 0
}
.tea2026-page #tea-region-demo .map {
  display: block;
  width: 100%;
  height: auto;
  max-height: 510px;
  overflow: visible
}
.tea2026-page #tea-region-demo .map > image:first-of-type {
  filter: url(#tea-muted);
  opacity: 1
}
.tea2026-page #tea-region-demo .selected-map {
  filter: url(#tea-vivid);
  pointer-events: none
}
.tea2026-page #tea-region-demo .selected-map[data-active-region="highland"] {
  filter: url(#tea-highland-vivid)
}
.tea2026-page #tea-region-demo .land {
  fill: transparent;
  stroke: none;
  pointer-events: all;
  cursor: pointer
}
.tea2026-page #tea-region-demo .land:hover {
  fill: #ffffff0a
}
.tea2026-page #tea-region-demo .map-label, .tea2026-page #tea-region-demo .callout {
  display: none
}
.tea2026-page #tea-region-demo .selection-glow {
  fill: #fff7d9;
  fill-opacity: .04;
  stroke: #fffce9;
  stroke-width: 8;
  stroke-linejoin: round;
  stroke-opacity: .3;
  pointer-events: none;
  animation: tea-soft-glow 2.6s ease-in-out infinite
}
@keyframes tea-soft-glow {
  0%, 100% {
    fill-opacity: .015;
    stroke-opacity: .12;
    filter: drop-shadow(0 0 2px #fff4bd55)
  }
  50% {
    fill-opacity: .24;
    stroke-opacity: 1;
    filter: drop-shadow(0 0 13px #fff4bdf0) drop-shadow(0 0 24px #ffe8a088)
  }
}
.tea2026-page #tea-region-demo .note {
  font-size: 11px;
  color: #78806f;
  text-align: center;
  margin: 6px 0 0
}
.tea2026-page #tea-region-demo .info {
  background: #fffef8;
  border: 1px solid var(--line);
  border-radius: 16px;
  overflow: hidden
}
.tea2026-page #tea-region-demo .info-top {
  padding: 20px 26px;
  background: #e6eed9;
  border-bottom: 1px solid var(--line)
}
.tea2026-page #tea-region-demo .eyebrow {
  display: block;
  font-size: 11px;
  letter-spacing: 2px;
  color: #6e855c
}
.tea2026-page #tea-region-demo h3 {
  font-size: 25px;
  margin: 5px 0 0
}
.tea2026-page #tea-region-demo .info-body {
  padding: 22px 26px 24px
}
.tea2026-page #tea-region-demo h4 {
  font-size: 14px;
  color: #4d7047;
  margin: 0 0 8px
}
.tea2026-page #tea-region-demo .coverage {
  font-size: 15px;
  line-height: 1.95;
  margin: 0 0 22px
}
.tea2026-page #tea-region-demo .tea-row {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 14px;
  font-size: 15px;
  padding: 12px 0;
  border-bottom: 1px solid var(--line)
}
.tea2026-page #tea-region-demo .tea-row:last-child {
  border-bottom: 0;
  padding-bottom: 0
}
.tea2026-page #tea-region-demo .county {
  font-weight: 700;
  white-space: nowrap
}
.tea2026-page #tea-region-demo .highland-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px
}
.tea2026-page #tea-region-demo .highland-list span {
  font-size: 14px;
  background: #eaf0df;
  border-radius: 4px;
  padding: 5px 12px
}
.tea2026-page #tea-region-demo .mobile-hint {
  display: none
}
.tea2026-page #tea-region-demo dialog {
  padding: 0;
  border: 0;
  border-radius: 16px;
  background: #fffef8;
  color: var(--ink);
  width: min(92%, 620px);
  max-height: 86vh;
  overflow: auto;
  overscroll-behavior: contain;
  box-shadow: 0 18px 80px #163a3650
}
.tea2026-page #tea-region-demo dialog::backdrop {
  background: #173d31a3
}
.tea2026-page #tea-region-demo .dialog-bar {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #e6eed9;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 10px 16px;
  font-size: 14px
}
.tea2026-page #tea-region-demo .close {
  border: 1px solid #b8ccaa;
  background: #fffef8;
  color: var(--ink);
  min-height: 44px;
  padding: 7px 14px;
  border-radius: 7px;
  font: inherit
}
.tea2026-page #tea-region-demo dialog .info {
  border: 0;
  border-radius: 0
}
@media(max-width:1000px) {
  .tea2026-page #tea-region-demo .layout {
    gap: 25px;
    grid-template-columns: 35% minmax(0, 1fr)
  }
}
@media(max-width:760px) {
  .tea2026-page .hero-desktop {
    display: none
  }
  .tea2026-page .hero-mobile {
    display: block;
    text-align: center;
    padding: 45px 15px 0
  }
  .tea2026-page .hero-links {
    top: 12px;
    right: 12px;
    padding: 3px
  }
  .tea2026-page .hero-links a {
    width: 25px;
    height: 25px
  }
  .tea2026-page .mobile-expo {
    font-size: 14px;
    font-weight: 700;
    margin: 8px 0 3px
  }
  .tea2026-page .mobile-date {
    font-size: 13px;
    margin: 0
  }
  .tea2026-page .mobile-date span {
    display: block;
    font-size: 12px
  }
  .tea2026-page .hero-mobile h1 {
    font-size: clamp(38px, 9vw, 61px);
    font-weight: 900;
    letter-spacing: 3px;
    line-height: 1.2;
    margin: 23px 0 15px
  }
  .tea2026-page .mobile-tagline {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.8;
    margin: 0 0 16px
  }
  .tea2026-page .mobile-landscape {
    display: block;
    width: calc(100% + 30px);
    max-width: none;
    height: auto;
    margin: 0 -15px
  }
  .tea2026-page .tea-shell {
    padding: 0 18px
  }
  .tea2026-page .activity-intro {
    padding: 23px 0 15px
  }
  .tea2026-page .activity-intro p {
    font-size: 16px
  }
  .tea2026-page .small-label {
    font-size: 10px;
    letter-spacing: 1.5px
  }
  .tea2026-page .section-heading {
    gap: 12px
  }
  .tea2026-page .section-number {
    font-size: 28px;
    padding-right: 12px
  }
  .tea2026-page h2 {
    font-size: 23px
  }
  .tea2026-page .section-lead {
    font-size: 15px
  }
  .tea2026-page .origin-note {
    font-size: 13px;
    margin-bottom: 18px
  }
  .tea2026-page .origin-row {
    display: block
  }
  .tea2026-page .origin-row h3 {
    font-size: 16px;
    background: none;
    padding: 17px 18px 0
  }
  .tea2026-page .origin-row p {
    font-size: 14px;
    padding: 8px 18px 17px
  }
  .tea2026-page .flavor-section {
    padding: 35px 0 30px
  }
  .tea2026-page #tea-region-demo {
    padding-top: 14px
  }
  .tea2026-page #tea-region-demo .region-buttons {
    gap: 7px;
    margin-bottom: 15px
  }
  .tea2026-page #tea-region-demo .region-button {
    flex: 1 0 28%;
    min-width: 0;
    font-size: 14px;
    padding: 8px
  }
  .tea2026-page #tea-region-demo .layout {
    display: block
  }
  .tea2026-page #tea-region-demo .desktop-info {
    display: none
  }
  .tea2026-page #tea-region-demo .map-wrap {
    max-width: 270px;
    margin: auto
  }
  .tea2026-page #tea-region-demo .map {
    max-height: 410px
  }
  .tea2026-page #tea-region-demo .mobile-hint {
    display: block;
    text-align: center;
    font-size: 13px;
    margin: 12px 0 0;
    color: var(--muted)
  }
  .tea2026-page #tea-region-demo .info-body {
    padding: 20px
  }
  .tea2026-page #tea-region-demo .info-top {
    padding: 17px 20px
  }
  .tea2026-page #tea-region-demo .coverage, .tea2026-page #tea-region-demo .tea-row {
    font-size: 16px
  }
  .tea2026-page #tea-region-demo h3 {
    font-size: 23px
  }
  .tea2026-page .product-callout {
    display: block;
    padding: 22px 20px;
    margin-top: 22px
  }
  .tea2026-page .product-callout h3 {
    font-size: 18px
  }
  .tea2026-page .product-callout .tea-button {
    margin-top: 17px;
    width: 100%
  }
  .tea2026-page .upcoming {
    padding: 50px 18px;
    margin-bottom: 35px
  }
}
@media(prefers-reduced-motion:reduce) {
  .tea2026-page #tea-region-demo .selection-glow {
    animation: none;
    fill-opacity: .06;
    stroke-opacity: .65;
    filter: drop-shadow(0 0 7px #fff4bd99)
  }
}
.tea2026-page .hero-links {
  gap: 5px;
  padding: 6px 8px;
  background: #d7f5ee;
  border-radius: 24px
}
.tea2026-page .hero-links a {
  width: auto;
  height: 32px;
  gap: 6px;
  padding: 0 10px;
  border-radius: 18px;
  background: transparent;
  color: var(--ink);
  font: 700 11px/1 Arial, sans-serif;
  letter-spacing: .4px;
  transition: background .2s, color .2s
}
.tea2026-page .hero-links a span:not(.fb-letter) {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip-path: none
}
.tea2026-page .hero-links svg {
  width: 17px;
  height: 17px;
  flex: none
}
.tea2026-page .hero-links .fb-letter {
  font-size: 22px;
  width: 14px;
  text-align: center
}
.tea2026-page .hero-links a:hover {
  background: var(--ink);
  color: white
}
.tea2026-page .content-stage {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-color: var(--paper);
  background-image: radial-gradient(#b6bd971d .7px, transparent .8px);
  background-size: 7px 7px
}
.tea2026-page .content-stage:before, .tea2026-page .content-stage:after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none
}
/* 背景插圖沿頁面往下延續 */
.tea2026-page .content-stage:before {
  inset: 0;
  background-image:
    url("tea-branch.svg"),
    url("tea-branch.svg"),
    url("tea-leaves.svg"),
    url("tea-leaves.svg");

  background-repeat: repeat-y;

  background-size:
    230px 1100px,
    240px 1300px,
    125px 950px,
    145px 1200px;

  background-position:
    left -60px top -200px,
    right -65px top 350px,
    right 6% top -350px,
    left 3% top 280px;

  opacity: .72;
}
.tea2026-page .content-stage:after {
  left: 0;
  right: 0;
  bottom: 0;
  height: 430px;
  background: url("tea-terraces.svg") center bottom/100% 100% no-repeat;
  opacity: .75
}
.tea2026-page .tea-shell {
  position: relative
}
.tea2026-page .origin-section {
  position: relative
}
.tea2026-page .origin-section:before {
  content: "";
  position: absolute;
  right: 4px;
  top: -30px;
  width: 120px;
  height: 130px;
  background: url("tea-leaves.svg") center/contain no-repeat;
  opacity: .45;
  pointer-events: none;
  z-index: -1
}
.tea2026-page .origin-list, .tea2026-page #tea-region-demo .info {
  box-shadow: 0 6px 24px #48653606
}
.tea2026-page .tea-footer {
  position: relative
}
@media(min-width:1600px) {
  .tea2026-page .content-stage:before {
    background-position: left 3% top 155px, right 3% top 780px, right 13% top 38px, left 12% top 880px
  }
}
@media(max-width:760px) {
  .tea2026-page .hero-links {
    top: 10px;
    right: 10px;
    gap: 1px;
    padding: 3px 5px;
    background: #d7f5ee
  }
  .tea2026-page .hero-links a {
    width: auto;
    height: 28px;
    padding: 0 7px;
    gap: 4px;
    font-size: 10px;
    letter-spacing: .2px
  }
  .tea2026-page .hero-links svg {
    width: 14px;
    height: 14px
  }
  .tea2026-page .hero-links .fb-letter {
    font-size: 19px;
    width: 10px
  }
  .tea2026-page .content-stage:before {
    background-size: 160px 258px, 170px 274px, 70px 76px, 80px 86px;
    background-position: left -100px top 340px, right -110px top 1100px, right -5px top 20px, left -35px top 1600px;
    opacity: .45
  }
  .tea2026-page .content-stage:after {
    height: 310px;
    background-size: 100% 100%;
    opacity: .55
  }
  .tea2026-page .origin-section:before {
    width: 75px;
    height: 82px;
    top: -22px;
    right: -12px;
    opacity: .3
  }
}
.tea2026-page .hero-art, .tea2026-page .hero-art img {
  display: block;
  width: 100%;
  height: auto
}
.tea2026-page #panel-stamp .product-callout {
  text-align: left
}
.tea2026-page #activities {
  scroll-margin-top: 20px
}
.tea2026-page .content-stage {
  min-height: 100vh;
  min-height: 100svh
}
.tea2026-page .hero-links {
  gap: 10px;
  padding: 0;
  background: transparent;
  border-radius: 0
}
.tea2026-page .hero-links a {
  width: 52px;
  height: 52px;
  padding: 0;
  gap: 0;
  flex: 0 0 52px;
  background: var(--ink);
  color: #fff;
  border: 1px solid #ffffff80;
  border-radius: 50%;
  box-shadow: 0 3px 9px #194d371c;
  transition: background .18s, box-shadow .18s
}
.tea2026-page .hero-links a span:not(.fb-letter) {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap
}
.tea2026-page .hero-links svg {
  width: 26px;
  height: 26px;
  stroke-width: 1.9;
  flex: none
}
.tea2026-page .hero-links .fb-letter {
  display: block;
  width: auto;
  height: auto;
  margin: 0;
  position: static;
  font: 700 39px/1 Arial, sans-serif;
  transform: translateY(2px)
}
.tea2026-page .hero-links a:hover {
  background: #39733c;
  box-shadow: 0 4px 12px #194d3733
}
@media(max-width:760px) {
  .tea2026-page .hero-links {
    top: 10px;
    right: 12px;
    gap: 8px;
    padding: 0;
    background: transparent
  }
  .tea2026-page .hero-links a {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
    padding: 0
  }
  .tea2026-page .hero-links svg {
    width: 23px;
    height: 23px
  }
  .tea2026-page .hero-links .fb-letter {
    font-size: 34px;
    width: auto
  }
}
/* ===== 字級與閱讀性：桌機內文 18px，手機內文 17px ===== */
.tea2026-page {
  font-size: 18px
}
.tea2026-page .tea-shell {
  max-width: 1200px
}
.tea2026-page .small-label {
  font-size: 13px;
  letter-spacing: 1.7px
}
.tea2026-page .activity-intro {
  padding: 40px 0 26px
}
.tea2026-page .activity-intro p {
  font-size: 24px
}
.tea2026-page h2 {
  font-size: 34px;
  line-height: 1.45
}
.tea2026-page .section-lead {
  font-size: 20px
}
.tea2026-page .origin-note {
  font-size: 17px
}
.tea2026-page .origin-row {
  grid-template-columns: 180px minmax(0, 1fr)
}
.tea2026-page .origin-row h3 {
  font-size: 20px
}
.tea2026-page .origin-row p {
  font-size: 18px;
  line-height: 1.85
}
.tea2026-page .tea-button {
  font-size: 18px
}
.tea2026-page .product-callout h3 {
  font-size: 24px
}
.tea2026-page .product-callout p {
  font-size: 17px
}
.tea2026-page .upcoming p {
  font-size: 18px
}
.tea2026-page .tea-footer a {
  font-size: 18px
}
.tea2026-page .tea-footer p {
  font-size: 14px
}
.tea2026-page #tea-region-demo .region-button {
  font-size: 19px;
  min-height: 54px;
  padding: 11px 13px;
  font-weight: 700
}
.tea2026-page #tea-region-demo .eyebrow {
  font-size: 13px
}
.tea2026-page #tea-region-demo h3 {
  font-size: 29px
}
.tea2026-page #tea-region-demo h4 {
  font-size: 18px
}
.tea2026-page #tea-region-demo .coverage, .tea2026-page #tea-region-demo .tea-row {
  font-size: 18px;
  line-height: 1.85
}
.tea2026-page #tea-region-demo .county {
  min-width: 90px
}
.tea2026-page #tea-region-demo .highland-list {
  font-size: 18px
}
.tea2026-page #tea-region-demo .map-note, .tea2026-page #tea-region-demo .mobile-hint {
  font-size: 15px
}
.tea2026-page #tea-region-demo .close {
  font-size: 17px
}
@media(max-width:760px) {
  .tea2026-page {
    font-size: 17px
  }
  .tea2026-page .tea-shell {
    padding: 0 18px
  }
  .tea2026-page .activity-intro {
    padding: 28px 0 22px
  }
  .tea2026-page .activity-intro p {
    font-size: 21px;
    letter-spacing: .2px
  }
  .tea2026-page .small-label {
    font-size: 12px;
    letter-spacing: 1px
  }
  .tea2026-page h2 {
    font-size: 27px
  }
  .tea2026-page .section-lead {
    font-size: 18px
  }
  .tea2026-page .origin-note {
    font-size: 16px
  }
  .tea2026-page .origin-row {
    display: block
  }
  .tea2026-page .origin-row h3 {
    font-size: 20px
  }
  .tea2026-page .origin-row p {
    font-size: 17px
  }
  .tea2026-page #tea-region-demo .region-button {
    font-size: 17px;
    min-height: 51px;
    padding: 9px 5px
  }
  .tea2026-page #tea-region-demo h3 {
    font-size: 27px
  }
  .tea2026-page #tea-region-demo .coverage, .tea2026-page #tea-region-demo .tea-row {
    font-size: 18px
  }
  .tea2026-page #tea-region-demo .info-body {
    padding: 22px 20px
  }
}
/* ===== 已選定 B 主視覺延伸插畫（第二排），只保留這一款選單 =====
   PNG：3 欄 × 2 列；--art-x 選欄位，100% 選第二排。
   未選中讀取去圓底透明圖，選中讀取帶圓底圖；不再疊加圖片陰影。 */
.tea2026-page .activity-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin: 0 0 54px
}
.tea2026-page .activity-tab {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-width: 0;
  min-height: 390px;
  padding: 24px 25px 70px;
  border: 1px solid var(--card-line);
  border-radius: 17px;
  background: var(--card-bg);
  color: #194d37;
  overflow: hidden;
  text-decoration: none;
  transition: border-color .18s, box-shadow .18s, background .18s
}
.tea2026-page .activity-tab:hover {
  border-color: #387245;
  box-shadow: 0 6px 20px #194d3715
}
.tea2026-page .activity-icon {
  position: relative;
  display: block;
  width: 164px;
  height: 164px;
  flex: none;
  margin: 0 auto 19px;
  background-image: url("tea-menu-mainvisual-b-transparent.png");
  background-size: 300% 200%;
  background-position: var(--art-x) 100%;
  background-repeat: no-repeat
}
.tea2026-page .activity-copy {
  min-width: 0;
  width: 100%;
  text-align: center
}
.tea2026-page .activity-kicker {
  display: block;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: #55714c;
  margin-bottom: 7px
}
.tea2026-page .activity-copy strong {
  display: block;
  font-size: 31px;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: .5px;
  white-space: nowrap
}
.tea2026-page .menu-title-line {
  display: inline
}
.tea2026-page .activity-caption {
  display: block;
  font-size: 17px;
  line-height: 1.7;
  margin-top: 9px;
  padding-right: 0;
  color: #4c6745
}
.tea2026-page .activity-number {
  position: absolute;
  right: 19px;
  top: 18px;
  font-size: 14px;
  line-height: 1;
  color: #587154;
  letter-spacing: 1px
}
.tea2026-page .activity-arrow {
  position: absolute;
  right: calc(50% - 18px);
  bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #eaf0da;
  color: #194d37;
  font: 25px/1 Arial
}
/* 未選中：低彩度莫蘭迪底色＋去圓底 icon。選中：深綠底＋彩色圓底 icon。 */
.tea2026-page .tab-stamp {
  --card-bg: #e4ece5;
  --card-line: #c3d0c5
}
.tea2026-page .tab-taste {
  --card-bg: #f1ecdc;
  --card-line: #d9cfb6
}
.tea2026-page .tab-map {
  --card-bg: #e2eaf0;
  --card-line: #c2cfdb
}
.tea2026-page .activity-icon:after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("tea-menu-mainvisual-b.png");
  background-size: 300% 200%;
  background-position: var(--art-x) 100%;
  background-repeat: no-repeat;
  opacity: 0
}
.tea2026-page .activity-tab.is-active {
  border-color: #194d37;
  background: #194d37;
  color: #fffef0
}
.tea2026-page .activity-tab.is-active .activity-icon {
  background-image: none
}
.tea2026-page .activity-tab.is-active .activity-icon:after {
  opacity: 1
}
.tea2026-page .activity-tab.is-active .activity-kicker {
  color: #e9d887
}
.tea2026-page .activity-tab.is-active .activity-caption {
  color: #edf2dd
}
.tea2026-page .activity-tab.is-active .activity-number {
  color: #c8d9c2
}
.tea2026-page .activity-tab.is-active .activity-arrow {
  background: #e8cd63;
  color: #194d37
}
.tea2026-page .activity-tab:focus-visible {
  outline: 3px solid #927b20;
  outline-offset: 4px
}
@media(min-width:761px) and (max-width:1050px) {
  .tea2026-page .activity-tabs {
    gap: 14px
  }
  .tea2026-page .activity-tab {
    padding: 22px 18px 66px;
    min-height: 365px
  }
  .tea2026-page .activity-copy strong {
    font-size: 27px
  }
  .tea2026-page .activity-caption {
    font-size: 16px
  }
  .tea2026-page .activity-icon {
    width: 145px;
    height: 145px
  }
}
@media(max-width:760px) {
  /* 手機同樣一排三個。 */
  .tea2026-page .activity-tabs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 40px
  }
  .tea2026-page .activity-tab {
    align-items: center;
    text-align: center;
    padding: 24px 4px 35px;
    min-height: 244px;
    border-radius: 12px
  }
  .tea2026-page .activity-icon {
    width: 100%;
    max-width: 108px;
    height: auto;
    aspect-ratio: 1;
    margin: 0 auto 14px
  }
  .tea2026-page .activity-kicker {
    font-size: 13px;
    letter-spacing: 0;
    margin-bottom: 5px
  }
  .tea2026-page .activity-copy strong {
    font-size: 21px;
    line-height: 1.45;
    letter-spacing: 0
  }
  .tea2026-page .menu-title-line {
    display: block
  }
  .tea2026-page .activity-caption {
    display: none
  }
  .tea2026-page .activity-number {
    font-size: 11px;
    top: 9px;
    right: 8px
  }
  .tea2026-page .activity-arrow {
    width: 24px;
    height: 24px;
    right: calc(50% - 12px);
    bottom: 8px;
    font-size: 20px
  }
  /* 手機社群圖示：延續副標下方置中；若 banner 更新，微調 top 即可。 */
  .tea2026-page .hero-links {
    top: 70%;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: max-content
  }
}
@media(max-width:360px) {
  .tea2026-page .activity-copy strong {
    font-size: 18px
  }
  .tea2026-page .activity-kicker {
    font-size: 12px
  }
  .tea2026-page .activity-tab {
    min-height: 224px
  }
}
@media(prefers-reduced-motion:reduce) {
  .tea2026-page .activity-tab {
    transition: none
  }
}