.mt-page { color: #f6f0e7; }
.mt-content { color: #f6f0e7; padding-bottom: 2rem; }
.mt-content p, .mt-content h2, .mt-content h3 { margin-block: 0; }
.mt-about { padding-top: 3rem; padding-bottom: 2.5rem; }
.mt-about h2, .mt-catalog > h2 { margin-top: .6rem; font-family: var(--font-display, "Arial Black"), sans-serif; font-size: clamp(1.5rem, 3vw, 2.2rem); font-weight: 700; letter-spacing: -.04em; }
.mt-about > p:last-child { max-width: 56rem; margin-top: 1.3rem; white-space: pre-line; color: #c9c0b5; font-size: 1rem; line-height: 1.85; }
.mt-catalog { padding-top: 3rem; }
.mt-catalogGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; margin-top: 1.75rem; }
.mt-category { min-width: 0; padding: 1.5rem; border: 1px solid #ffffff20; border-radius: 1rem; background: #1b1917; }
.mt-category h3 { margin: 0 0 1rem; color: #f6f0e7; font-family: var(--font-display, "Arial Black"), sans-serif; font-size: 1rem; font-weight: 700; }
.mt-category ul { list-style: none; margin: 0; padding: 0; }
.mt-category li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: baseline; gap: .85rem; padding-block: .8rem; border-bottom: 1px solid #ffffff15; color: #c9c0b5; font-size: .85rem; line-height: 1.6; }
.mt-category li:last-child { border-bottom: 0; }
.mt-category strong { color: #f6f0e7; white-space: nowrap; font-variant-numeric: tabular-nums; }
.mt-category small { font-size: .6rem; }
.mt-content .mt-priceNote { max-width: 62rem; margin-top: 1.5rem; font-size: .8rem; line-height: 1.8; color: #c9c0b5; }
.mt-production { --font-display: "Arial Black"; }
.mt-production .page-shell { width: min(100% - 32px, 1240px); }
.mt-production .content-card { padding: 2rem 0 0; background: transparent; color: #f6f0e7; box-shadow: none; }
.mt-production .content-card > h1 { font-size: clamp(3rem, 8vw, 6.8rem); }
.mt-production .mt-menu { margin-top: 0; }
.mt-production .mt-menuHeading h2 { margin-top: .5rem; }
.mt-production .mt-card p, .mt-production .mt-card h3 { margin-block: 0; }
.mt-production .mt-cardCopy > p:last-child { margin-top: .75rem; }
.mt-production .mt-cardCopy .mt-flavourNumber { margin-bottom: .7rem; }
.mt-production .mt-motionButton { background: transparent; cursor: pointer; font-family: inherit; }
.mt-production .mt-about > p:last-child { white-space: normal; }
.mt-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; padding-top: 3rem; padding-bottom: 3.5rem; }
.mt-eyebrow { font-size: .68rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; color: #c9c0b5; }
.mt-hero h1 { margin-top: 1rem; font-family: var(--font-display), sans-serif; font-size: clamp(3rem, 8vw, 6.8rem); font-weight: 800; line-height: 1; letter-spacing: -.055em; }
.mt-heroDot { color: #e92d27; }
.mt-intro { margin-top: 1.25rem; font-size: clamp(1rem, 2vw, 1.25rem); color: #c9c0b5; }
.mt-heroAside { display: flex; flex-direction: column; align-items: flex-end; gap: 1.25rem; }
.mt-demoBadge { padding: .6rem .8rem; border: 1px solid #ffffff30; border-radius: .5rem; font-size: .65rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.mt-originalLink { font-size: .8rem; text-decoration: underline; text-underline-offset: .3rem; }
.mt-originalLink:hover { color: #ff655d; }
.mt-originalLink:focus-visible, .mt-motionButton:focus-visible { outline: 2px solid #ff655d; outline-offset: 5px; }
.mt-menu { padding-top: 1rem; }
.mt-menuHeading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1.75rem; }
.mt-menuHeading h2 { margin-top: .5rem; font-family: var(--font-display), sans-serif; font-size: clamp(1.8rem, 3.5vw, 2.8rem); font-weight: 700; letter-spacing: -.04em; }
.mt-motionButton { display: flex; align-items: center; justify-content: center; gap: .8rem; min-height: 44px; padding: .6rem .9rem; border: 1px solid #ffffff30; border-radius: .65rem; font-size: .7rem; color: #f6f0e7; }
.mt-motionButton:hover { background: #ffffff0d; }
.mt-motionButton span { font-size: 1rem; }
.mt-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.mt-reveal { min-width: 0; }
.mt-card { position: relative; overflow: hidden; height: 100%; border: 1px solid #ffffff26; border-radius: 1.5rem; background: linear-gradient(175deg, #45433d 0%, #888276 23%, #ddd5c6 52%, #f3eee5 83%); color: #171512; box-shadow: 0 12px 30px #00000026; transition: transform 450ms ease, box-shadow 450ms ease; }
.mt-cardTop { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding: 1.4rem 1.5rem 0; color: #f6f0e7; }
.mt-topBadge { padding: .45rem .65rem; border: 1px solid #ffffff60; border-radius: 2rem; font-size: .68rem; font-weight: 800; letter-spacing: .08em; }
.mt-price { font-size: 1.75rem; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1; white-space: nowrap; }
.mt-price span { font-size: .7rem; font-weight: 700; }
.mt-visual { position: relative; height: clamp(19rem, 28vw, 25rem); isolation: isolate; perspective: var(--perspective); }
.mt-halo { position: absolute; inset: 8% 3% 4%; z-index: -1; background: radial-gradient(ellipse, var(--accent), transparent 68%); opacity: .4; transform: translate(calc(var(--px, 0px) * .3), calc(var(--py, 0px) * .3)); transition: transform 350ms ease; }
.mt-visualWord { position: absolute; inset: 13% 0 auto; z-index: -1; text-align: center; font-family: var(--font-display), sans-serif; font-weight: 800; font-size: clamp(2rem, 4.8vw, 4.5rem); letter-spacing: -.06em; color: #ffffff30; }
.mt-shadow { position: absolute; bottom: 4%; left: 20%; width: 60%; height: 5%; border-radius: 50%; background: radial-gradient(ellipse, #2a211f65, transparent 70%); transform: translateX(var(--sx, 0px)); transition: transform 350ms ease; }
.mt-imageEntrance, .mt-hoverLift, .mt-tilt, .mt-float { width: 100%; height: 100%; }
.mt-hoverLift { transition: transform 500ms cubic-bezier(.2,.65,.3,1); }
.mt-tilt { transform: translate3d(var(--px, 0px), var(--py, 0px), 0) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)); transition: transform 220ms ease-out; }
.mt-float { animation: teaFloat var(--duration) ease-in-out var(--phase) infinite; animation-play-state: paused; }
.mt-drinkImage { display: block; width: 100%; height: 100%; object-fit: contain; padding: .6rem .7rem 0; filter: drop-shadow(0 18px 14px #25140d26); }
.mt-cardCopy { position: relative; z-index: 2; padding: .75rem 1.5rem 1.75rem; }
.mt-flavourNumber { margin-bottom: .7rem; font-size: .58rem; font-weight: 800; letter-spacing: .13em; color: #6a6257; }
.mt-cardCopy h3 { max-width: 17rem; min-height: 3.5rem; font-family: var(--font-display), sans-serif; font-size: clamp(1rem, 1.5vw, 1.35rem); line-height: 1.4; font-weight: 700; letter-spacing: -.04em; overflow-wrap:normal; }
.mt-cardCopy > p:last-child { margin-top: .75rem; font-size: .85rem; color: #61594e; }
.mt-note { display: grid; gap: .6rem; padding-top: 1.75rem; font-size: .75rem; line-height: 1.75; color: #c9c0b5; }
.mt-note p { max-width: 65rem; }
.mt-menu[data-in-view="true"][data-visible="true"][data-paused="false"] .mt-float { animation-play-state: running; }
.mt-menu[data-reveal="pending"] .mt-reveal { opacity: 0; }
.mt-menu[data-reveal="entered"] .mt-reveal { animation: teaReveal 750ms cubic-bezier(.2,.65,.3,1) both; animation-delay: calc(var(--index) * var(--stagger)); }
.mt-menu[data-reveal="entered"] .mt-imageEntrance { animation: teaImageReveal 950ms cubic-bezier(.2,.65,.3,1) both; animation-delay: calc(var(--index) * var(--stagger)); }
.mt-menu[data-paused="true"] .mt-tilt, .mt-menu[data-paused="true"] .mt-halo, .mt-menu[data-paused="true"] .mt-shadow { transform: none; }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .mt-menu[data-paused="false"] .mt-card:hover { transform: translateY(-4px); box-shadow: 0 22px 40px #00000040; }
  .mt-menu[data-paused="false"] .mt-card:hover .mt-hoverLift { transform: translateY(-5px) scale(var(--hover-scale)); }
}
@keyframes teaFloat {
  0%, 100% { transform: translateY(calc(var(--amplitude) * -1)) rotate(calc(var(--rotation) * -1)) scale(1); }
  50% { transform: translateY(var(--amplitude)) rotate(var(--rotation)) scale(1.015); }
}
@keyframes teaReveal { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
@keyframes teaImageReveal { from { transform: scale(.92) rotate(-4deg); } to { transform: scale(1) rotate(0deg); } }
@media (max-width: 1023px) {
  .mt-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mt-visual { height: 23rem; }
  .mt-visualWord { font-size: 3.5rem; }
  .mt-cardCopy h3 { font-size: 1.2rem; }
  .mt-hero { align-items: flex-start; }
}
@media (max-width: 639px) {
  .mt-catalogGrid { grid-template-columns: minmax(0, 1fr); }
  .mt-category { padding: 1.2rem; }
  .mt-hero { flex-direction: column; padding-top: 1.75rem; padding-bottom: 2.5rem; gap: 1.5rem; }
  .mt-heroAside { align-items: flex-start; gap: .85rem; }
  .mt-menuHeading { align-items: flex-start; flex-direction: column; }
  .mt-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; }
  .mt-card { border-radius: 1rem; }
  .mt-cardTop { gap: .25rem; padding: .75rem .65rem 0; }
  .mt-price { font-size: clamp(.95rem, 4.4vw, 1.2rem); }
  .kd-weight { font-size: .62rem; }
  .mt-visual { height: clamp(11rem, 52vw, 14rem); }
  .mt-drinkImage { padding: .3rem .35rem 0; }
  .mt-cardCopy { padding: .65rem .7rem 1rem; }
  .mt-cardCopy .mt-flavourNumber { margin-bottom: .4rem; font-size: .48rem; }
  .mt-cardCopy h3 { min-height: 0; max-width: none; font-size: .93rem; line-height: 1.25; }
  .kd-collection .mt-cardCopy > p:last-child { margin-top: .55rem; font-size: .72rem; }
}
@media (prefers-reduced-motion: reduce) {
  .mt-menu .mt-reveal, .mt-menu .mt-imageEntrance, .mt-menu .mt-float { animation: none; opacity: 1; transform: none; }
  .mt-menu .mt-tilt, .mt-menu .mt-hoverLift, .mt-menu .mt-halo, .mt-menu .mt-shadow, .mt-menu .mt-card { transform: none; transition: none; }
  .mt-motionButton { display: none; }
}

/* Чайный фон: один ассет для PHP и статической страницы Next.js. */
.mt-production,
.mt-page-background {
  background-color: #171b16;
  background-image: linear-gradient(rgba(16, 20, 15, .24), rgba(16, 20, 15, .72)), var(--korner-page-background-image);
  background-position: center top;
  background-size: cover;
  background-attachment: fixed;
}
.mt-page-background > section:first-of-type { background: transparent; }
.mt-page-background > section:first-of-type > .absolute { display: none; }
@media (max-width: 767px), (prefers-reduced-motion: reduce) {
  .mt-production, .mt-page-background {
    background-attachment: scroll;
    background-size: auto 1100px;
    background-repeat: no-repeat;
  }
}
