:root{color-scheme: light; --paper: #FBF8EF; --surface: #FFFFFF; --ivory: #FFFDF6; --ink: #181818; --ink-2: #24231F; --ink-3: #33312B; --muted: #5C5A52; --line: #E4DFD0; --line-strong: #8C8572; --gold: #F0E484; --gold-bright: #FCFC9C; --gold-soft: #F7F0C9; --gold-deep: #7A6418; --red: #C8372D; --green: #2E7D4F; --blue: #1F5FA8; --on-ink: #FBF8EF; --on-ink-muted: #B7AE8C; --danger: #B42318; --f-display: "Bricolage Grotesque", "Helvetica Neue", Arial, sans-serif; --f-body: "Figtree", "Helvetica Neue", Arial, sans-serif; --f-cjk: "Noto Serif SC", "Songti SC", "SimSun", serif; --r-sm: 4px; --r-md: 8px; --r-lg: 16px; --wrap: 1200px; --gutter: clamp(16px, 4vw, 32px); --section: clamp(56px, 8vw, 96px); --shadow-card: 0 1px 2px rgba(24,24,24,.06), 0 6px 18px rgba(24,24,24,.07); --header-h: 68px;}
.tmm *,.tmm *::before,.tmm *::after{box-sizing: border-box;}
.tmm [hidden]{display: none !important;}
html{scroll-behavior: smooth; scroll-padding-top: calc(var(--header-h) + 16px);}
@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto;}
.tmm *,.tmm *::before,.tmm *::after{transition: none !important; animation: none !important;}}
body.tmm-page{margin: 0; background: var(--paper); color: var(--ink); font-family: var(--f-body); font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased;}
.tmm img{max-width: 100%; display: block;}
.tmm a{color: var(--gold-deep); text-underline-offset: 3px;}
.tmm a:hover{color: var(--ink);}
.tmm :focus-visible{outline: 2px solid var(--blue); outline-offset: 2px;}
.tmm .on-ink :focus-visible,.tmm .tmm-header :focus-visible,.tmm .tmm-footer :focus-visible{outline-color: var(--gold);}
.tmm h1,.tmm h2,.tmm h3,.tmm h4{font-family: var(--f-display); line-height: 1.12; margin: 0; text-wrap: balance; letter-spacing: -0.015em;}
.tmm h1{font-size: clamp(2.3rem, 5.2vw, 4rem); font-weight: 700; letter-spacing: -0.025em;}
.tmm h2{font-size: clamp(1.75rem, 3.4vw, 2.6rem); font-weight: 700;}
.tmm h3{font-size: 1.3rem; font-weight: 600;}
.tmm p{margin: 0;}
.tmm ul{margin: 0; padding: 0;}
.tmm .visually-hidden{position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;}
.tmm .skip{position: absolute; left: 12px; top: -60px; z-index: 100; background: var(--gold); color: var(--ink); padding: 8px 14px; border-radius: var(--r-md); font-weight: 600;}
.tmm .skip:focus{top: 12px;}
.tmm .wrap{max-width: calc(var(--wrap) + 2 * var(--gutter)); margin-inline: auto; padding-inline: var(--gutter);}
.tmm .section{padding-block: var(--section);}
.tmm .section--tight{padding-block: clamp(40px, 5vw, 64px);}
.tmm .section--surface{background: var(--surface); border-block: 1px solid var(--line);}
.tmm .section--soft{background: var(--gold-soft);}
.tmm .section--ink{background: var(--ink); color: var(--on-ink);}
.tmm .section--ink p{color: var(--on-ink-muted);}
.tmm .section--ink h2,.tmm .section--ink h3{color: var(--on-ink);}
.tmm .eyebrow{font: 600 .75rem/1.3 var(--f-body); letter-spacing: .12em; text-transform: uppercase; color: var(--gold-deep); display: inline-flex; align-items: center; gap: 10px;}
.tmm .eyebrow::before{content: ""; width: 10px; height: 14px; border-radius: 2px; background: currentColor; opacity: .85;}
.tmm .section--ink .eyebrow,.tmm .hero .eyebrow,.tmm .page-hero .eyebrow,.tmm .cta-band .eyebrow{color: var(--gold);}
.tmm .lede{font-size: clamp(1.05rem, 1.6vw, 1.2rem); line-height: 1.6; color: var(--muted); max-width: 62ch;}
.tmm .section-head{display: grid; gap: 14px; max-width: 760px; margin-bottom: clamp(32px, 4vw, 48px);}
.tmm .section-head--split{max-width: none; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 24px;}
@media (max-width: 720px){.tmm .section-head--split{grid-template-columns: 1fr;}}
.tmm .muted{color: var(--muted);}
.tmm .small{font-size: .875rem; line-height: 1.5;}
.tmm .num{font-variant-numeric: tabular-nums;}
.tmm .btn{display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 22px; border-radius: var(--r-md); border: 1.5px solid transparent; font: 600 .95rem/1.2 var(--f-body); letter-spacing: .01em; text-decoration: none; cursor: pointer; transition: background .15s, color .15s, border-color .15s, transform .15s; white-space: nowrap;}
.tmm .btn svg{width: 16px; height: 16px; flex: none;}
.tmm .btn--primary{background: var(--ink); color: var(--on-ink);}
.tmm .btn--primary:hover{background: #000; color: var(--gold);}
.tmm .btn--gold{background: var(--gold); color: var(--ink);}
.tmm .btn--gold:hover{background: var(--gold-bright); color: var(--ink);}
.tmm .btn--outline{background: transparent; color: var(--ink); border-color: var(--ink);}
.tmm .btn--outline:hover{background: var(--ink); color: var(--on-ink);}
.tmm .btn--ghost-ink{background: transparent; color: var(--on-ink); border-color: rgba(251,248,239,.45);}
.tmm .btn--ghost-ink:hover{border-color: var(--gold); color: var(--gold);}
.tmm .btn--sm{min-height: 38px; padding: 0 14px; font-size: .875rem;}
.tmm .btn-row{display: flex; flex-wrap: wrap; gap: 12px;}
.tmm .link-arrow{font-weight: 600; color: var(--ink); text-decoration: none; display: inline-flex; gap: 6px; align-items: center; border-bottom: 1.5px solid var(--gold-deep); padding-bottom: 2px;}
.tmm .link-arrow:hover{color: var(--gold-deep);}
.tmm .section--ink .link-arrow{color: var(--gold); border-color: var(--gold);}
.tmm .tmm-header{position: sticky; top: env(safe-area-inset-top, 0px); z-index: 50; background: var(--ink); color: var(--on-ink); border-bottom: 1px solid #000;}
.tmm .header-inner{display: flex; align-items: center; gap: 24px; min-height: var(--header-h);}
.tmm .brand{display: inline-flex; align-items: center; gap: 12px; text-decoration: none; color: var(--gold); flex: none;}
.tmm .brand:hover{color: var(--gold-bright);}
.tmm .brand-mark{width: 30px; height: 40px; border-radius: 6px; background: var(--ivory); box-shadow: 0 3px 0 var(--gold), inset 0 0 0 1px rgba(0,0,0,.08); display: grid; place-items: center; color: var(--red); font: 700 20px/1 var(--f-cjk);}
.tmm .brand-text{display: grid; line-height: 1.05;}
.tmm .brand-text b{font: 700 1.02rem/1.05 var(--f-display); letter-spacing: -.01em;}
.tmm .brand-text span{font-size: .66rem; letter-spacing: .16em; text-transform: uppercase; color: var(--on-ink-muted); margin-top: 3px;}
.tmm .main-nav{margin-left: auto;}
.tmm .main-nav ul{list-style: none; display: flex; gap: 2px;}
.tmm .main-nav a{display: block; padding: 8px 11px; border-radius: var(--r-md); color: var(--on-ink); text-decoration: none; font-size: .92rem; font-weight: 500;}
.tmm .main-nav a:hover{color: var(--gold); background: var(--ink-2);}
.tmm .main-nav a[aria-current="page"]{color: var(--gold); box-shadow: inset 0 -2px 0 var(--gold); border-radius: 0;}
.tmm .header-cta{flex: none;}
.tmm .menu-btn{display: none; margin-left: auto; background: transparent; border: 1.5px solid rgba(251,248,239,.4); color: var(--on-ink); border-radius: var(--r-md); min-height: 42px; padding: 0 12px; font: 600 .9rem var(--f-body); cursor: pointer; align-items: center; gap: 8px;}
.tmm .menu-btn svg{width: 18px; height: 18px;}
.tmm .mobile-nav{background: var(--ink); border-top: 1px solid var(--ink-3); padding-block: 8px 20px;}
.tmm .mobile-nav ul{list-style: none; display: grid;}
.tmm .mobile-nav a{display: block; padding: 13px 0; color: var(--on-ink); text-decoration: none; font: 600 1.1rem var(--f-display); border-bottom: 1px solid var(--ink-3);}
.tmm .mobile-nav a[aria-current="page"]{color: var(--gold);}
.tmm .mobile-nav .btn{margin-top: 16px; width: 100%;}
@media (max-width: 1100px){.tmm .main-nav a{padding: 8px 8px; font-size: .88rem;}}
@media (max-width: 1020px){.tmm .main-nav,.tmm .header-cta{display: none;}
.tmm .menu-btn{display: inline-flex;}}
@media (min-width: 1021px){.tmm .mobile-nav{display: none !important;}}
.tmm .hero{background: var(--ink); color: var(--on-ink); overflow: hidden; position: relative;}
.tmm .hero::before{content: ""; position: absolute; inset: 0; background: radial-gradient(70% 60% at 85% 30%, rgba(240,228,132,.10), transparent 70%); pointer-events: none;}
.tmm .hero-grid{position: relative; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(32px, 5vw, 64px); align-items: center; padding-block: clamp(56px, 8vw, 104px);}
.tmm .hero h1{color: var(--on-ink);}
.tmm .hero h1 em{font-style: normal; color: var(--gold);}
.tmm .hero .lede{color: var(--on-ink-muted); margin-top: 20px;}
.tmm .hero .btn-row{margin-top: 32px;}
.tmm .hero-facts{display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 32px; list-style: none; color: var(--on-ink-muted); font-size: .9rem;}
.tmm .hero-facts li{display: inline-flex; align-items: center; gap: 8px;}
.tmm .hero-facts li::before{content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--gold);}
@media (max-width: 900px){.tmm .hero-grid{grid-template-columns: 1fr;}}
.tmm .tile{--tw: 58px; --back: var(--green); width: var(--tw); aspect-ratio: 3 / 4; flex: none; position: relative; background: var(--ivory); border-radius: calc(var(--tw) * .14); box-shadow: inset 0 0 0 1px rgba(24,24,24,.10), 0 calc(var(--tw) * .09) 0 var(--back), 0 calc(var(--tw) * .09 + 6px) 14px rgba(0,0,0,.28); display: block;}
.tmm .tile svg{position: absolute; inset: 7% 9% 9%; width: 82%; height: 84%;}
.tmm .tile--back{background: var(--back); box-shadow: inset 0 0 0 1px rgba(0,0,0,.12), 0 calc(var(--tw) * .09) 0 var(--ivory), 0 calc(var(--tw) * .09 + 6px) 14px rgba(0,0,0,.28);}
.tmm .tile--lift{transform: translateY(-18%);}
.tmm .tableau{position: relative; display: grid; gap: 26px; justify-items: center; padding: clamp(24px, 4vw, 40px); border-radius: var(--r-lg); background: radial-gradient(120% 100% at 50% 0%, #1f5c3d 0%, #154230 60%, #10341f 100%); box-shadow: inset 0 0 0 1px rgba(255,255,255,.06), inset 0 30px 60px rgba(0,0,0,.25);}
.tmm .tableau-row{display: flex; gap: clamp(4px, .8vw, 8px); justify-content: center; flex-wrap: nowrap;}
.tmm .tableau .rack{position: relative; padding: 14px 14px 0;}
.tmm .tableau .rack::after{content: ""; position: absolute; left: 0; right: 0; bottom: -14px; height: 18px; border-radius: 4px; background: linear-gradient(var(--gold), #c9b95a); box-shadow: 0 6px 12px rgba(0,0,0,.35);}
.tmm .tableau .tile{--tw: clamp(34px, 5.2vw, 58px);}
.tmm .tableau-note{display: flex; justify-content: space-between; gap: 12px; width: 100%; color: rgba(251,248,239,.78); font-size: .8rem; letter-spacing: .06em; text-transform: uppercase;}
.tmm .tableau .tile--interactive{transition: transform .2s ease; cursor: default;}
.tmm .tableau .tile--interactive:hover{transform: translateY(-14%);}
@media (max-width: 520px){.tmm .tableau .tile{--tw: calc((100vw - 120px) / 7);}
.tmm .tableau-row--wide .tile:nth-child(n+8){display: none;}}
.tmm .trust{background: var(--surface); border-bottom: 1px solid var(--line);}
.tmm .trust-inner{display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 32px; align-items: center; padding-block: 36px;}
.tmm .trust-title{font: 600 1rem/1.4 var(--f-display);}
.tmm .trust-list{display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; list-style: none;}
.tmm .trust-list li{padding: 4px 20px; border-left: 1px solid var(--line); display: grid; gap: 2px;}
.tmm .trust-list strong{font: 700 1.35rem/1.2 var(--f-display);}
.tmm .trust-list span{font-size: .85rem; color: var(--muted); line-height: 1.4;}
.tmm .audience{display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; list-style: none;}
.tmm .audience li{font-size: .78rem; font-weight: 600; padding: 4px 10px; border-radius: 999px; background: var(--paper); border: 1px solid var(--line);}
@media (max-width: 900px){.tmm .trust-inner{grid-template-columns: 1fr;}
.tmm .trust-list{grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 18px;}}
.tmm .trio{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 3vw, 36px);}
.tmm .adv{display: grid; gap: 14px; align-content: start;}
.tmm .adv .tile{--tw: 46px; --back: var(--gold);}
.tmm .adv h3{margin-top: 6px;}
.tmm .adv p{color: var(--muted);}
.tmm .adv ul{list-style: none; display: grid; gap: 6px; font-size: .92rem;}
.tmm .adv li{display: flex; gap: 8px;}
.tmm .adv li::before{content: "—"; color: var(--gold-deep);}
@media (max-width: 860px){.tmm .trio{grid-template-columns: 1fr;}}
.tmm .ph{position: relative; overflow: hidden; border-radius: var(--r-md); aspect-ratio: var(--ar, 4 / 3); max-width: 100%;}
.tmm .ph img{width: 100%; height: 100%; object-fit: cover; position: relative; z-index: 1;}
.tmm .ph figcaption,.tmm .ph .ph-cap{position: absolute; z-index: 0; left: 14px; right: 14px; bottom: 12px; font-size: .78rem; line-height: 1.4; color: rgba(251,248,239,.82); font-weight: 500;}
.tmm .ph::after{content: "PHOTO"; position: absolute; z-index: 0; top: 12px; left: 14px; font: 600 .65rem/1 var(--f-body); letter-spacing: .14em; color: var(--gold); opacity: .7;}
.tmm .ph{background-color: #173b29; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Crect x='18' y='16' width='26' height='34' rx='4' fill='%23FFFDF6' fill-opacity='.07'/%3E%3Crect x='78' y='72' width='26' height='34' rx='4' fill='%23FFFDF6' fill-opacity='.05'/%3E%3C/svg%3E"), radial-gradient(120% 90% at 30% 20%, #23573c 0%, #173b29 70%);}
.tmm .grid{display: grid; gap: clamp(16px, 2.4vw, 28px);}
.tmm .grid--2{grid-template-columns: repeat(2, minmax(0, 1fr));}
.tmm .grid--3{grid-template-columns: repeat(3, minmax(0, 1fr));}
.tmm .grid--4{grid-template-columns: repeat(4, minmax(0, 1fr));}
@media (max-width: 1000px){.tmm .grid--4{grid-template-columns: repeat(2, minmax(0, 1fr));}
.tmm .grid--3{grid-template-columns: repeat(2, minmax(0, 1fr));}}
@media (max-width: 640px){.tmm .grid--2,.tmm .grid--3,.tmm .grid--4{grid-template-columns: minmax(0, 1fr);}}
.tmm .card{background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); overflow: hidden; display: flex; flex-direction: column; min-width: 0; transition: box-shadow .2s, transform .2s;}
.tmm .card:hover{box-shadow: var(--shadow-card);}
.tmm .card .ph{border-radius: 0;}
.tmm .card-body{padding: 20px; display: flex; flex-direction: column; gap: 10px; flex: 1;}
.tmm .card-body p{color: var(--muted); font-size: .95rem;}
.tmm .card-body .link-arrow{margin-top: auto; align-self: flex-start;}
.tmm .card-kicker{font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--gold-deep);}
.tmm .svc{position: relative;}
.tmm .svc .card-body{gap: 12px;}
.tmm .svc-meta{display: flex; flex-wrap: wrap; gap: 6px;}
.tmm .badge{display: inline-flex; align-items: center; gap: 4px; padding: 3px 9px; border-radius: var(--r-sm); font: 600 .74rem/1.4 var(--f-body); background: var(--gold-soft); color: var(--ink); letter-spacing: .02em;}
.tmm .badge--outline{background: transparent; border: 1px solid var(--line-strong); color: var(--muted);}
.tmm .badge--ink{background: var(--ink); color: var(--gold);}
.tmm .quotes{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px;}
.tmm .quote{margin: 0; background: var(--ink-2); border: 1px solid var(--ink-3); border-radius: var(--r-md); padding: 26px; display: grid; gap: 18px; align-content: space-between;}
.tmm .quote blockquote{margin: 0; padding: 0; border: 0; font: 500 1.08rem/1.55 var(--f-display); color: var(--on-ink);}
.tmm .quote figcaption{font-size: .85rem; color: var(--on-ink-muted); display: grid; gap: 2px;}
.tmm .quote figcaption b{color: var(--gold); font-weight: 600;}
.tmm .stars{color: var(--gold); letter-spacing: 2px; font-size: .9rem;}
.tmm .sample-note{font-size: .78rem; color: var(--on-ink-muted); margin-top: 18px;}
@media (max-width: 900px){.tmm .quotes{grid-template-columns: 1fr;}}
.tmm .split{display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 72px); align-items: center;}
.tmm .split--rev > :first-child{order: 2;}
.tmm .split-text{display: grid; gap: 18px; align-content: start;}
.tmm .split-text p{color: var(--muted);}
.tmm .checks{list-style: none; display: grid; gap: 10px;}
.tmm .checks li{display: flex; gap: 10px; align-items: flex-start;}
.tmm .checks li::before{content: ""; flex: none; width: 18px; height: 18px; margin-top: 4px; border-radius: 4px; background: var(--gold-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M5 9.5l2.6 2.5L13 6.5' fill='none' stroke='%237A6418' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat;}
.tmm .photo-stack{position: relative;}
.tmm .photo-stack .ph--inset{position: absolute; width: 46%; right: -4%; bottom: -10%; border: 6px solid var(--paper); border-radius: var(--r-md);}
@media (max-width: 860px){.tmm .split{grid-template-columns: 1fr;}
.tmm .split--rev > :first-child{order: 0;}
.tmm .photo-stack .ph--inset{right: 4%;}}
.tmm .stat-row{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; border-top: 1px solid var(--line); padding-top: 18px;}
.tmm .stat-row strong{display: block; font: 700 1.6rem/1.1 var(--f-display);}
.tmm .stat-row span{font-size: .82rem; color: var(--muted);}
.tmm .cta-band{background: var(--ink); color: var(--on-ink); position: relative; overflow: hidden;}
.tmm .cta-inner{display: grid; grid-template-columns: minmax(0, 1.4fr) auto; gap: 32px; align-items: center; padding-block: clamp(48px, 7vw, 80px); position: relative;}
.tmm .cta-band h2{color: var(--on-ink);}
.tmm .cta-band p{color: var(--on-ink-muted); margin-top: 12px; max-width: 56ch;}
.tmm .cta-tiles{position: absolute; right: -20px; top: -30px; display: flex; gap: 10px; opacity: .14; transform: rotate(-8deg); pointer-events: none;}
.tmm .cta-tiles .tile{--tw: 74px;}
@media (max-width: 760px){.tmm .cta-inner{grid-template-columns: 1fr;}}
.tmm .page-hero{background: var(--ink); color: var(--on-ink); position: relative; overflow: hidden;}
.tmm .page-hero-inner{padding-block: clamp(40px, 6vw, 72px); display: grid; gap: 16px; position: relative; max-width: 860px;}
.tmm .page-hero h1{color: var(--on-ink); font-size: clamp(2.1rem, 4.6vw, 3.4rem);}
.tmm .page-hero .lede{color: var(--on-ink-muted);}
.tmm .page-hero .btn-row{margin-top: 10px;}
.tmm .page-hero-tiles{position: absolute; right: max(var(--gutter), calc(50% - 600px)); top: 50%; transform: translateY(-50%) rotate(6deg); display: flex; gap: 10px;}
.tmm .page-hero-tiles .tile{--tw: 64px;}
.tmm .page-hero-tiles .tile:nth-child(2){transform: translateY(-16px);}
@media (max-width: 1000px){.tmm .page-hero-tiles{display: none;}}
.tmm .crumbs{font-size: .82rem; color: var(--on-ink-muted);}
.tmm .crumbs ol{list-style: none; display: flex; flex-wrap: wrap; gap: 6px; padding: 0; margin: 0;}
.tmm .crumbs li + li::before{content: "/"; margin-right: 6px; opacity: .6;}
.tmm .crumbs a{color: var(--on-ink-muted); text-decoration: none;}
.tmm .crumbs a:hover{color: var(--gold);}
.tmm .crumbs [aria-current]{color: var(--gold);}
.tmm .filterbar{display: flex; flex-wrap: wrap; gap: 8px; align-items: center;}
.tmm .chip{min-height: 38px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--line-strong); background: var(--surface); color: var(--ink); font: 600 .85rem var(--f-body); cursor: pointer; transition: background .15s, color .15s;}
.tmm .chip:hover{border-color: var(--ink);}
.tmm .chip[aria-pressed="true"]{background: var(--ink); color: var(--gold); border-color: var(--ink);}
.tmm .chip .count{font-weight: 500; opacity: .7; margin-left: 4px;}
.tmm .filter-status{margin-left: auto; font-size: .85rem; color: var(--muted);}
.tmm .sticky-filter{position: sticky; top: calc(env(safe-area-inset-top, 0px) + var(--header-h)); z-index: 20; background: rgba(251,248,239,.94); backdrop-filter: blur(8px); border-bottom: 1px solid var(--line); padding-block: 12px;}
@media (max-width: 720px){.tmm .filterbar{flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; scrollbar-width: thin;}
.tmm .chip{flex: none;}
.tmm .filter-status{display: none;}}
.tmm .empty{padding: 40px; text-align: center; border: 1px dashed var(--line-strong); border-radius: var(--r-md); color: var(--muted);}
.tmm .cat-cards{display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px;}
.tmm .cat-card{background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); padding: 18px; display: grid; gap: 10px; text-decoration: none; color: var(--ink); align-content: start; transition: box-shadow .2s, border-color .2s;}
.tmm .cat-card:hover{box-shadow: var(--shadow-card); border-color: var(--line-strong); color: var(--ink);}
.tmm .cat-card .art{height: 92px; display: grid; place-items: center; background: var(--paper); border-radius: var(--r-sm);}
.tmm .cat-card .art svg.prod{width: auto; height: 100%; max-width: 100%;}
.tmm .cat-card h3{font-size: 1.02rem;}
.tmm .cat-card p{font-size: .85rem; color: var(--muted); line-height: 1.5;}
@media (max-width: 1080px){.tmm .cat-cards{grid-template-columns: repeat(3, minmax(0, 1fr));}}
@media (max-width: 640px){.tmm .cat-cards{grid-template-columns: repeat(2, minmax(0, 1fr));}}
.tmm .catalog{display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 32px; align-items: start;}
.tmm .sidebar{position: sticky; top: calc(var(--header-h) + 20px); display: grid; gap: 20px;}
.tmm .side-box{background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); padding: 18px; display: grid; gap: 12px;}
.tmm .side-box h2,.tmm .side-box h3{font-size: 1rem;}
.tmm .side-nav{list-style: none; display: grid; gap: 2px;}
.tmm .side-nav button,.tmm .side-nav a{width: 100%; text-align: left; background: none; border: 0; padding: 9px 10px; border-radius: var(--r-sm); font: 500 .92rem var(--f-body); color: var(--ink); cursor: pointer; display: flex; justify-content: space-between; gap: 8px; text-decoration: none;}
.tmm .side-nav button:hover,.tmm .side-nav a:hover{background: var(--paper);}
.tmm .side-nav button[aria-pressed="true"],.tmm .side-nav a[aria-current="page"]{background: var(--ink); color: var(--gold);}
.tmm .side-box--ink{background: var(--ink); border-color: var(--ink); color: var(--on-ink);}
.tmm .side-box--ink p{color: var(--on-ink-muted); font-size: .9rem;}
@media (max-width: 900px){.tmm .catalog{grid-template-columns: 1fr;}
.tmm .sidebar{position: static;}
.tmm .side-box--hide-sm{display: none;}
.tmm .side-nav{grid-auto-flow: column; grid-auto-columns: max-content; overflow-x: auto;}}
.tmm .product-art{aspect-ratio: 4 / 3; display: grid; place-items: center; background: var(--paper); border-bottom: 1px solid var(--line); position: relative; overflow: hidden;}
.tmm .product-art .tile{--tw: clamp(30px, 3.4vw, 42px);}
.tmm .product-art .stack{display: flex; gap: 5px;}
.tmm .product-art .stack + .stack{margin-top: 14px;}
.tmm .product-art .col{display: grid; justify-items: center;}
.tmm .product-art svg.prod{width: 78%; height: auto;}
.tmm .spec-mini{display: grid; grid-template-columns: auto 1fr; gap: 3px 12px; font-size: .84rem; margin: 2px 0 4px;}
.tmm .spec-mini dt{color: var(--muted);}
.tmm .spec-mini dd{margin: 0; font-variant-numeric: tabular-nums;}
.tmm .product-foot{display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; margin-top: auto; padding-top: 6px;}
.tmm .acc{display: grid; gap: 10px;}
.tmm .acc details{background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md);}
.tmm .acc summary{list-style: none; cursor: pointer; padding: 18px 54px 18px 20px; font: 600 1.02rem/1.4 var(--f-display); position: relative;}
.tmm .acc summary::-webkit-details-marker{display: none;}
.tmm .acc summary::after{content: ""; position: absolute; right: 20px; top: 50%; width: 12px; height: 12px; border-right: 2px solid var(--ink); border-bottom: 2px solid var(--ink); transform: translateY(-70%) rotate(45deg); transition: transform .2s;}
.tmm .acc details[open] summary::after{transform: translateY(-30%) rotate(-135deg);}
.tmm .acc .acc-body{padding: 0 20px 20px; color: var(--muted); display: grid; gap: 10px;}
.tmm .steps{list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); gap: 0; counter-reset: s; position: relative;}
.tmm .steps li{position: relative; padding: 0 18px 0 0; display: grid; gap: 8px; align-content: start; counter-increment: s;}
.tmm .steps li::before{content: counter(s); width: 44px; height: 56px; border-radius: 7px; background: var(--ivory); box-shadow: inset 0 0 0 1px var(--line), 0 4px 0 var(--gold); display: grid; place-items: center; font: 700 1.3rem/1 var(--f-display); color: var(--ink); margin-bottom: 10px; position: relative; z-index: 1;}
.tmm .steps li::after{content: ""; position: absolute; top: 28px; left: 52px; right: 6px; border-top: 2px dashed var(--line-strong);}
.tmm .steps li:last-child::after{display: none;}
.tmm .steps h3{font-size: 1.05rem;}
.tmm .steps p{font-size: .9rem; color: var(--muted);}
.tmm .steps .dur{font-size: .76rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gold-deep);}
.tmm .section--ink .steps li::before{background: var(--ivory); box-shadow: 0 4px 0 var(--gold);}
.tmm .section--ink .steps li::after{border-color: var(--ink-3);}
.tmm .section--ink .steps p{color: var(--on-ink-muted);}
.tmm .section--ink .steps .dur{color: var(--gold);}
@media (max-width: 1000px){.tmm .steps{grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 32px;}
.tmm .steps li::after{display: none;}}
@media (max-width: 560px){.tmm .steps{grid-template-columns: 1fr;}
.tmm .steps li{grid-template-columns: 44px minmax(0, 1fr); column-gap: 16px;}
.tmm .steps li::before{grid-row: span 3; margin: 0;}}
.tmm .compare{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px;}
.tmm .compare article{background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: clamp(22px, 3vw, 34px); display: grid; gap: 14px; align-content: start;}
.tmm .compare article.is-dark{background: var(--ink); border-color: var(--ink); color: var(--on-ink);}
.tmm .compare article.is-dark p,.tmm .compare article.is-dark li{color: var(--on-ink-muted);}
.tmm .compare article.is-dark h3{color: var(--on-ink);}
.tmm .compare .tag{font: 700 2.4rem/1 var(--f-display); letter-spacing: -.02em;}
.tmm .compare article.is-dark .tag{color: var(--gold);}
@media (max-width: 760px){.tmm .compare{grid-template-columns: 1fr;}}
.tmm .icon-tile{width: 48px; height: 48px; border-radius: 10px; background: var(--gold-soft); display: grid; place-items: center; color: var(--gold-deep);}
.tmm .icon-tile svg{width: 24px; height: 24px;}
.tmm .section--ink .icon-tile{background: var(--ink-3); color: var(--gold);}
.tmm .feature{display: grid; gap: 10px; align-content: start; padding: 24px; border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface);}
.tmm .feature p{color: var(--muted); font-size: .94rem;}
.tmm .prod-strip{display: grid; grid-auto-flow: column; grid-auto-columns: minmax(250px, 1fr); gap: 16px; overflow-x: auto; padding-bottom: 10px; scroll-snap-type: x mandatory;}
.tmm .prod-strip figure{margin: 0; scroll-snap-align: start; display: grid; gap: 10px;}
.tmm .prod-strip .code{font: 700 .78rem var(--f-body); letter-spacing: .1em; color: var(--gold);}
.tmm .prod-strip figcaption{display: grid; gap: 2px;}
.tmm .prod-strip figcaption b{color: var(--on-ink); font-family: var(--f-display); font-size: 1.02rem;}
.tmm .prod-strip figcaption span{color: var(--on-ink-muted); font-size: .88rem;}
.tmm .form-wrap{display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(28px, 5vw, 64px); align-items: start;}
@media (max-width: 900px){.tmm .form-wrap{grid-template-columns: 1fr;}}
.tmm .form{background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: clamp(20px, 3vw, 32px); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0;}
.tmm .field{display: grid; gap: 6px; min-width: 0;}
.tmm .field--full{grid-column: 1 / -1;}
@media (max-width: 560px){.tmm .form{grid-template-columns: 1fr;}}
.tmm .field label,.tmm .field legend{font: 600 .88rem/1.3 var(--f-body); color: var(--ink);}
.tmm .field .opt{font-weight: 400; color: var(--muted);}
.tmm .input{width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid var(--line-strong); border-radius: var(--r-sm); background: var(--surface); font: 400 .95rem/1.4 var(--f-body); color: var(--ink); box-shadow: none;}
.tmm .input:focus{outline: 2px solid var(--blue); outline-offset: 1px; border-color: var(--blue);}
.tmm textarea.input{min-height: 130px; resize: vertical;}
.tmm select.input{appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23181818' stroke-width='1.6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; background-size: 12px; padding-right: 34px;}
.tmm .input[aria-invalid="true"]{border-color: var(--danger);}
.tmm .err{font-size: .8rem; color: var(--danger);}
.tmm .err:empty{display: none;}
.tmm .form .btn{justify-self: start;}
.tmm .form-note{font-size: .8rem; color: var(--muted);}
.tmm .form-success{grid-column: 1 / -1; background: var(--gold-soft); border-radius: var(--r-md); padding: 16px 18px; display: grid; gap: 4px;}
.tmm .form-success b{font-family: var(--f-display); font-size: 1.05rem;}
.tmm .contact-list{list-style: none; display: grid; gap: 14px;}
.tmm .contact-item{display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 14px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md);}
.tmm .contact-item .icon-tile{width: 44px; height: 44px;}
.tmm .contact-item b{display: block; font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); font-weight: 600;}
.tmm .contact-item span{font-weight: 600; color: var(--ink); overflow-wrap: anywhere;}
.tmm .copy-btn{background: none; border: 1px solid var(--line-strong); border-radius: var(--r-sm); padding: 6px 10px; font: 600 .78rem var(--f-body); cursor: pointer; color: var(--ink);}
.tmm .copy-btn:hover{background: var(--ink); color: var(--gold); border-color: var(--ink);}
.tmm .map{position: relative; border-radius: var(--r-lg); overflow: hidden; border: 1px solid var(--line); background: #E9E4D3; aspect-ratio: 16 / 10; max-width: 100%;}
.tmm .map svg{width: 100%; height: 100%; display: block;}
.tmm .map-card{position: absolute; left: 16px; bottom: 16px; right: 16px; max-width: 360px; background: var(--surface); border-radius: var(--r-md); padding: 16px; box-shadow: var(--shadow-card); display: grid; gap: 6px;}
.tmm .map-card p{font-size: .9rem; color: var(--muted);}
.tmm .socials{display: flex; gap: 10px; list-style: none; flex-wrap: wrap; margin: 0; padding: 0;}
.tmm .socials a{width: 42px; height: 42px; display: grid; place-items: center; border-radius: 10px; border: 1px solid var(--line-strong); color: var(--ink);}
.tmm .socials a:hover{background: var(--ink); color: var(--gold); border-color: var(--ink);}
.tmm .socials svg{width: 18px; height: 18px;}
.tmm .blog-layout{display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 40px; align-items: start;}
@media (max-width: 960px){.tmm .blog-layout{grid-template-columns: 1fr;}}
.tmm .cat-tabs{display: flex; gap: 6px; flex-wrap: wrap; border-bottom: 1px solid var(--line); margin-bottom: 28px;}
.tmm .cat-tabs button{background: none; border: 0; border-bottom: 2px solid transparent; padding: 12px 4px; margin: 0 18px -1px 0; font: 600 .95rem var(--f-body); color: var(--muted); cursor: pointer; border-radius: 0;}
.tmm .cat-tabs button[aria-selected="true"]{color: var(--ink); border-bottom-color: var(--ink);}
@media (max-width: 640px){.tmm .cat-tabs{flex-wrap: nowrap; overflow-x: auto;}
.tmm .cat-tabs button{flex: none;}}
.tmm .post-list{display: grid; gap: 22px; list-style: none; margin: 0; padding: 0;}
.tmm .post{display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 24px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); overflow: hidden;}
.tmm .post .ph{border-radius: 0; height: 100%; --ar: auto; min-height: 190px;}
.tmm .post-body{padding: 22px 22px 22px 0; display: grid; gap: 10px; align-content: start; min-width: 0;}
.tmm .post-meta{display: flex; flex-wrap: wrap; gap: 12px; font-size: .8rem; color: var(--muted);}
.tmm .post-meta .cat{color: var(--gold-deep); font-weight: 700; letter-spacing: .08em; text-transform: uppercase;}
.tmm .post h2{font-size: 1.3rem;}
.tmm .post h2 button{all: unset; cursor: pointer;}
.tmm .post h2 button:hover{color: var(--gold-deep);}
.tmm .post h2 button:focus-visible{outline: 2px solid var(--blue); outline-offset: 2px;}
.tmm .post-excerpt{color: var(--muted); font-size: .95rem;}
.tmm .post-full{display: grid; gap: 12px; color: var(--ink); font-size: .96rem; border-top: 1px solid var(--line); padding-top: 14px;}
.tmm .post-full h3{font-size: 1.05rem;}
.tmm .post-full ul{padding-left: 1.2em; display: grid; gap: 4px;}
.tmm .read-btn{all: unset; cursor: pointer; font-weight: 600; color: var(--ink); border-bottom: 1.5px solid var(--gold-deep); justify-self: start; font-size: .92rem;}
.tmm .read-btn:focus-visible{outline: 2px solid var(--blue); outline-offset: 2px;}
@media (max-width: 720px){.tmm .post{grid-template-columns: 1fr; gap: 0;}
.tmm .post .ph{--ar: 16 / 9; min-height: 0; height: auto;}
.tmm .post-body{padding: 20px;}}
.tmm .pager{display: flex; gap: 6px; justify-content: center; margin-top: 32px; flex-wrap: wrap;}
.tmm .pager button,.tmm .pager a,.tmm .pager span{min-width: 42px; min-height: 42px; display: inline-grid; place-items: center; border-radius: var(--r-md); border: 1px solid var(--line-strong); background: var(--surface); font: 600 .9rem var(--f-body); cursor: pointer; color: var(--ink); padding: 0 12px; text-decoration: none;}
.tmm .pager button[aria-current="page"],.tmm .pager span[aria-current]{background: var(--ink); color: var(--gold); border-color: var(--ink);}
.tmm .pager button:disabled{opacity: .4; cursor: default;}
.tmm .search{display: flex; gap: 8px;}
.tmm .recent{list-style: none; display: grid; gap: 12px;}
.tmm .recent li{display: grid; gap: 2px;}
.tmm .recent button{all: unset; cursor: pointer; font-weight: 600; font-size: .92rem; line-height: 1.4;}
.tmm .recent button:hover{color: var(--gold-deep);}
.tmm .recent span{font-size: .78rem; color: var(--muted);}
.tmm .tagcloud{display: flex; flex-wrap: wrap; gap: 6px;}
.tmm .listing-tag{position: absolute; z-index: 2; top: 12px; left: 12px;}
.tmm .listing .card-body h3{font-size: 1.05rem;}
.tmm .values{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px;}
@media (max-width: 700px){.tmm .values{grid-template-columns: 1fr;}}
.tmm .timeline{list-style: none; margin: 0 0 0 6px; padding: 0; display: grid; gap: 0; border-left: 2px solid var(--line);}
.tmm .timeline li{position: relative; padding: 0 0 26px 26px; display: grid; gap: 4px;}
.tmm .timeline li::before{content: ""; position: absolute; left: -8px; top: 4px; width: 14px; height: 18px; border-radius: 3px; background: var(--ivory); box-shadow: inset 0 0 0 1px var(--line-strong), 0 2px 0 var(--gold);}
.tmm .timeline b{font-family: var(--f-display); font-size: 1.05rem;}
.tmm .timeline p{color: var(--muted); font-size: .94rem;}
.tmm .mission{font: 600 clamp(1.4rem, 2.8vw, 2.1rem)/1.3 var(--f-display); letter-spacing: -.01em; color: var(--on-ink); max-width: 30ch;}
.tmm .mission em{font-style: normal; color: var(--gold);}
.tmm .tmm-footer{background: var(--ink); color: var(--on-ink-muted); padding-top: clamp(48px, 6vw, 72px); border-top: 1px solid var(--ink-3);}
.tmm .footer-grid{display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, .9fr) minmax(0, 1fr) minmax(0, 1.25fr); gap: 32px; padding-bottom: 40px;}
.tmm .footer-grid h2{font: 600 .78rem/1 var(--f-body); letter-spacing: .14em; text-transform: uppercase; color: var(--gold); margin-bottom: 16px;}
.tmm .footer-grid ul{list-style: none; display: grid; gap: 9px; margin: 0; padding: 0;}
.tmm .footer-grid ul.socials{display: flex;}
.tmm .footer-grid a{color: var(--on-ink); text-decoration: none; font-size: .93rem;}
.tmm .footer-grid a:hover{color: var(--gold);}
.tmm .footer-about p{font-size: .92rem; margin-top: 16px; max-width: 38ch; color: var(--on-ink-muted);}
.tmm .tmm-footer .socials{margin-top: 20px;}
.tmm .tmm-footer .socials a{border-color: var(--ink-3); color: var(--on-ink);}
.tmm .tmm-footer .socials a:hover{background: var(--gold); color: var(--ink); border-color: var(--gold);}
.tmm .footer-contact li{font-size: .92rem; display: grid; gap: 1px;}
.tmm .footer-contact b{font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: var(--on-ink-muted); font-weight: 600;}
.tmm .footer-contact span{color: var(--on-ink); overflow-wrap: anywhere;}
.tmm .footer-bottom{border-top: 1px solid var(--ink-3); padding-block: 20px; display: flex; flex-wrap: wrap; gap: 12px 24px; justify-content: space-between; font-size: .82rem;}
.tmm .footer-bottom p{color: var(--on-ink-muted);}
.tmm .footer-bottom a{color: var(--on-ink-muted);}
@media (max-width: 900px){.tmm .footer-grid{grid-template-columns: repeat(2, minmax(0, 1fr));}
.tmm .footer-about{grid-column: 1 / -1;}}
@media (max-width: 480px){.tmm .footer-grid{grid-template-columns: 1fr;}}
.tmm .toast{position: fixed; left: 50%; bottom: calc(20px + env(safe-area-inset-bottom, 0px)); transform: translateX(-50%); background: var(--ink); color: var(--gold); padding: 10px 16px; border-radius: var(--r-md); font-weight: 600; font-size: .9rem; z-index: 80; box-shadow: var(--shadow-card);}
.tmm .link-arrow svg{width: 16px; height: 16px; flex: none;}
.tmm .link-arrow{white-space: nowrap;}
.tmm{font-family:var(--f-body);color:var(--ink);line-height:1.65}
body.tmm-page{margin:0}
.tmm-page .e-con.tmm-sec,.tmm-page .e-con.tmm-sec>.e-con-inner{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--gap:0px;--row-gap:0px;--column-gap:0px;padding:0!important;max-width:none!important;gap:0!important}
.tmm-page .elementor-widget-html,.tmm-page .elementor-widget-shortcode{margin:0!important;width:100%}
.tmm-page .elementor-widget-shortcode .elementor-shortcode{display:block}
.admin-bar .tmm .tmm-header{top:32px}
@media (max-width:782px){.admin-bar .tmm .tmm-header{top:46px}}
.tmm .product-media{display:block;aspect-ratio:1/1;max-width:100%;background:var(--paper);overflow:hidden;border-bottom:1px solid var(--line)}
.tmm .product-media img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.tmm .card:hover .product-media img{transform:scale(1.03)}
.tmm .product h3{font-size:1rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tmm .product h3 a{color:inherit;text-decoration:none}
.tmm .product h3 a:hover{color:var(--gold-deep)}
.tmm .price-html{font:700 1.05rem/1.2 var(--f-body);color:var(--ink)}
.tmm .price-html del{opacity:.5;font-weight:400;margin-right:4px}
.tmm .price-html ins{text-decoration:none}
.tmm .cat-card .art.art--img{height:150px;padding:0;overflow:hidden}
.tmm .cat-card .art--img img{width:100%;height:100%;object-fit:cover}
.tmm .listing .product-media{aspect-ratio:4/3}
.tmm .woocommerce-Price-currencySymbol{font-weight:inherit}
.tmm .contact-item a.val{display:block;font-weight:600;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
.tmm .contact-item a.val:hover{color:var(--gold-deep)}
.tmm a.copy-btn{text-decoration:none;white-space:nowrap}
.tmm .footer-contact li a{display:block}
.tmm .main-nav .has-sub{position:relative;display:flex;align-items:center}
.tmm .main-nav .has-sub > a{padding-right:2px}
.tmm .sub-toggle{background:none;border:0;color:var(--on-ink);padding:8px 6px;margin:0;cursor:pointer;display:grid;place-items:center;border-radius:var(--r-sm);min-height:0}
.tmm .sub-toggle:hover{color:var(--gold);background:none}
.tmm .sub-toggle svg{width:14px;height:14px;transition:transform .15s}
.tmm .has-sub:hover .sub-toggle svg,.tmm .has-sub.open .sub-toggle svg{transform:rotate(180deg)}
.tmm .main-nav .sub-menu{position:absolute;top:100%;right:0;min-width:190px;margin:0;padding:6px;list-style:none;display:none;flex-direction:column;gap:2px;background:var(--ink);border:1px solid var(--ink-3);border-radius:var(--r-md);box-shadow:0 12px 30px rgba(0,0,0,.35);z-index:60}
.tmm .main-nav .sub-menu::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
.tmm .has-sub:hover .sub-menu,.tmm .has-sub:focus-within .sub-menu,.tmm .has-sub.open .sub-menu{display:flex}
.tmm .main-nav .sub-menu a{padding:10px 12px;white-space:nowrap;box-shadow:none;border-radius:var(--r-sm)}
.tmm .main-nav .sub-menu a[aria-current="page"]{background:var(--ink-2);box-shadow:none}
.tmm .main-nav .has-sub.is-current > a{color:var(--gold);box-shadow:inset 0 -2px 0 var(--gold);border-radius:0}
.tmm .mobile-nav li.sub a{padding-left:20px;font-size:1rem;color:var(--on-ink-muted)}
.tmm .mobile-nav li.sub a::before{content:"— ";color:var(--gold)}
.tmm .mobile-nav li.sub a[aria-current="page"]{color:var(--gold)}
/* sticky header + logo */
.tmm-head{position:-webkit-sticky;position:sticky;top:0;z-index:999}
.admin-bar .tmm-head{top:32px}
@media (max-width:782px){.admin-bar .tmm-head{top:46px}}
@media (max-width:600px){.admin-bar .tmm-head{top:0}}
.tmm .tmm-header{position:relative;top:auto}
.admin-bar .tmm .tmm-header{top:auto}
.tmm-head.is-scrolled .tmm-header{box-shadow:0 6px 20px rgba(0,0,0,.28)}
.tmm .brand-logo{width:48px;height:48px;flex:none;display:block;object-fit:contain}
.tmm .tmm-footer .brand-logo{width:56px;height:56px}
@media (max-width:480px){.tmm .brand-logo{width:40px;height:40px}.tmm .brand-text b{font-size:.92rem}}
.tmm .mobile-nav{max-height:calc(100vh - var(--header-h));overflow-y:auto}
/* ===== Single product page, brand styling ===== */
body.tmm-single{background:var(--paper);font-family:var(--f-body);color:var(--ink)}
.tmm-single #content,.tmm-single .ast-woocommerce-container{background:transparent}
.tmm-single .ast-container{max-width:calc(var(--wrap) + 2 * var(--gutter));padding-inline:var(--gutter)}
.tmm-single #primary,.tmm-single .site-main{margin:0;padding:0}

/* breadcrumb band */
.tmm-single .tmm-pcrumb{background:var(--ink);margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-block:16px;margin-bottom:clamp(28px,4vw,44px)}
.tmm-single .tmm-pcrumb .crumbs ol{flex-wrap:wrap}
.tmm-single .tmm-pcrumb .crumbs li:last-child span{display:inline-block;max-width:46ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}
.tmm-single .summary > nav.woocommerce-breadcrumb,.tmm-single .single-product-category{display:none}

/* two column layout */
.tmm-single div.product{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(24px,4vw,56px);align-items:start}
.tmm-single div.product > *{min-width:0}
.tmm-single div.product .woocommerce-tabs,.tmm-single div.product .related,.tmm-single div.product .upsells{grid-column:1 / -1}
@media (max-width:860px){.tmm-single div.product{grid-template-columns:minmax(0,1fr)}}

/* gallery */
.tmm-single div.product .images{width:auto;float:none;margin:0;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:12px;overflow:hidden}
.tmm-single div.product .images img{width:100%;height:auto;border-radius:var(--r-md)}
.tmm-single div.product .images ul,.tmm-single div.product .images ol{list-style:none;margin:10px 0 0;padding:0;display:flex;gap:8px;flex-wrap:wrap}
.tmm-single div.product .images li{margin:0;width:auto;float:none}
.tmm-single div.product .images li img{width:72px;height:72px;object-fit:cover;border:1px solid var(--line);border-radius:var(--r-sm)}
.tmm-single span.onsale{background:var(--red);color:#fff;border-radius:var(--r-sm);font:600 .75rem/1 var(--f-body);padding:7px 10px;min-height:0;min-width:0}

/* summary */
.tmm-single div.product .summary{width:auto;float:none;margin:0;display:grid;gap:16px;align-content:start}
.tmm-single div.product .summary > *{margin:0}
.tmm-single div.product .product_title{font:700 clamp(1.45rem,2.5vw,2.05rem)/1.2 var(--f-display);letter-spacing:-.015em;color:var(--ink)}
.tmm-single div.product .summary p.price,.tmm-single div.product .summary .price{font:700 1.65rem/1.15 var(--f-body);color:var(--ink);font-variant-numeric:tabular-nums}
.tmm-single div.product .summary p.price del{opacity:.5;font-weight:400;font-size:1.05rem;margin-right:8px}
.tmm-single div.product .summary p.price ins{text-decoration:none}
.tmm-single .woocommerce-product-details__short-description{color:var(--muted);font-size:.96rem}
.tmm-single .tmm-pbadges{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.tmm-single .tmm-pbadges li{margin:0}

/* variations + add to cart */
.tmm-single table.variations{width:100%;border-collapse:collapse;margin:0;background:none}
.tmm-single table.variations tr,.tmm-single table.variations th,.tmm-single table.variations td{display:block;width:auto;padding:0;border:0;background:none;text-align:left}
.tmm-single table.variations th.label{font:600 .88rem/1.3 var(--f-body);color:var(--ink);margin-bottom:6px}
.tmm-single table.variations th.label label{font-weight:600;margin:0}
.tmm-single table.variations td.value{margin-bottom:14px}
.tmm-single table.variations select{width:100%;min-height:46px;padding:10px 34px 10px 12px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background-color:var(--surface);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23181818' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px;appearance:none;-webkit-appearance:none;font:400 .95rem/1.4 var(--f-body);color:var(--ink)}
.tmm-single .reset_variations{display:inline-block;margin-top:6px;font-size:.82rem;color:var(--gold-deep)}
.tmm-single .woocommerce-variation-price{margin-bottom:12px}
.tmm-single form.cart{margin:0}
.tmm-single .woocommerce-variation-add-to-cart,.tmm-single form.cart:not(.variations_form):not(.grouped_form){display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.tmm-single form.cart .quantity{margin:0;float:none}
.tmm-single form.cart .quantity input.qty{min-height:48px;width:90px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);font:600 1rem var(--f-body);color:var(--ink);text-align:center}
.tmm-single div.product form.cart .button,.tmm-single .single_add_to_cart_button{flex:1 1 180px;min-height:48px;padding:0 26px;border:1.5px solid var(--ink);border-radius:var(--r-md);background:var(--ink);color:var(--on-ink);font:600 .98rem/1 var(--f-body);letter-spacing:.01em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-transform:none}
.tmm-single div.product form.cart .button:hover,.tmm-single .single_add_to_cart_button:hover{background:#000;color:var(--gold);border-color:#000}
.tmm-single .single_add_to_cart_button.disabled{opacity:.45;cursor:not-allowed}
.tmm-single .ast-stock-detail,.tmm-single .stock{font-size:.88rem;color:var(--muted);margin:0}
.tmm-single .stock.in-stock{color:var(--green);font-weight:600}
.tmm-single .stock.out-of-stock{color:var(--danger);font-weight:600}

/* bulk quote aside */
.tmm-single .tmm-buyaside{display:grid;gap:10px;padding:18px;background:var(--gold-soft);border-radius:var(--r-md)}
.tmm-single .tmm-buyaside b{font-family:var(--f-display);font-size:1.02rem}
.tmm-single .tmm-buyaside p{color:var(--ink);opacity:.8}
.tmm-single .tmm-shipnote{font-size:.82rem}
.tmm-single .tmm-shipnote a{color:var(--gold-deep)}
.tmm-single .product_meta{font-size:.84rem;color:var(--muted);border-top:1px solid var(--line);padding-top:14px}
.tmm-single .product_meta a{color:var(--gold-deep)}

/* tabs */
.tmm-single div.product .woocommerce-tabs{margin-top:clamp(36px,5vw,56px);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.tmm-single div.product .woocommerce-tabs ul.tabs{display:flex;gap:0;margin:0;padding:0 clamp(10px,2vw,18px);list-style:none;border-bottom:1px solid var(--line);background:var(--paper);overflow-x:auto}
.tmm-single div.product .woocommerce-tabs ul.tabs::before,.tmm-single div.product .woocommerce-tabs ul.tabs::after,.tmm-single div.product .woocommerce-tabs ul.tabs li::before,.tmm-single div.product .woocommerce-tabs ul.tabs li::after{display:none}
.tmm-single div.product .woocommerce-tabs ul.tabs li{margin:0;padding:0;border:0;background:none;border-radius:0}
.tmm-single div.product .woocommerce-tabs ul.tabs li a{display:block;padding:16px 14px;font:600 .95rem/1.2 var(--f-body);color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;white-space:nowrap}
.tmm-single div.product .woocommerce-tabs ul.tabs li a:hover{color:var(--ink)}
.tmm-single div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom-color:var(--ink)}
.tmm-single div.product .woocommerce-Tabs-panel{padding:clamp(20px,3vw,32px)}
.tmm-single div.product .woocommerce-Tabs-panel > h2:first-child{display:none}

/* readable content inside tabs */
.tmm-single .woocommerce-Tabs-panel h1,.tmm-single .woocommerce-Tabs-panel h2,.tmm-single .woocommerce-Tabs-panel h3,.tmm-single .woocommerce-Tabs-panel h4{font-family:var(--f-display);margin:1.5em 0 .5em;line-height:1.25}
.tmm-single .woocommerce-Tabs-panel h2{font-size:1.3rem}
.tmm-single .woocommerce-Tabs-panel h3{font-size:1.1rem}
.tmm-single .woocommerce-Tabs-panel p{margin:0 0 1em;line-height:1.7}
.tmm-single .woocommerce-Tabs-panel ul,.tmm-single .woocommerce-Tabs-panel ol{margin:0 0 1em;padding-left:1.35em;list-style:disc}
.tmm-single .woocommerce-Tabs-panel ol{list-style:decimal}
.tmm-single .woocommerce-Tabs-panel li{margin:0 0 .4em;display:list-item}
.tmm-single .woocommerce-Tabs-panel img{display:inline-block;max-width:100%;height:auto;border-radius:var(--r-md)}
.tmm-single .woocommerce-Tabs-panel table{width:100%;border-collapse:collapse;font-size:.92rem;margin:0 0 1em}
.tmm-single .woocommerce-Tabs-panel th,.tmm-single .woocommerce-Tabs-panel td{padding:10px 12px;border:1px solid var(--line);text-align:left;vertical-align:top}
.tmm-single table.shop_attributes{border-collapse:collapse}
.tmm-single table.shop_attributes th{width:34%;font-weight:600;color:var(--muted);background:none}
.tmm-single table.shop_attributes td{font-style:normal}
.tmm-single table.shop_attributes p{margin:0}
/* hide marketplace scrape leftovers */
.tmm-single .module_report,.tmm-single .report-layout,.tmm-single [data-module-name="module_report"]{display:none !important}

/* related products */
.tmm-single div.product .related,.tmm-single div.product .upsells{margin-top:clamp(40px,6vw,72px)}
.tmm-single div.product .related > h2,.tmm-single div.product .upsells > h2{font:700 clamp(1.45rem,3vw,2.1rem)/1.2 var(--f-display);letter-spacing:-.015em;margin:0 0 clamp(20px,3vw,32px)}
.tmm-single ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2.2vw,26px);list-style:none;margin:0;padding:0}
.tmm-single ul.products::before,.tmm-single ul.products::after{display:none}
.tmm-single ul.products li.product{width:auto !important;float:none !important;margin:0 !important;padding:0;clear:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;display:flex;flex-direction:column;text-align:left}
.tmm-single ul.products li.product:hover{box-shadow:var(--shadow-card)}
.tmm-single ul.products li.product .astra-shop-thumbnail-wrap,.tmm-single ul.products li.product > a:first-child{display:block;aspect-ratio:1 / 1;overflow:hidden;background:var(--paper)}
.tmm-single ul.products li.product img{width:100%;height:100%;object-fit:cover;margin:0;border-radius:0;transition:transform .3s}
.tmm-single ul.products li.product:hover img{transform:scale(1.03)}
.tmm-single ul.products li.product .woocommerce-loop-product__title,.tmm-single ul.products li.product h2{font:600 .95rem/1.35 var(--f-display);color:var(--ink);padding:14px 16px 0;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tmm-single ul.products li.product .price{font:700 1.02rem/1.2 var(--f-body);color:var(--ink);padding:8px 16px 0;margin:0;display:block}
.tmm-single ul.products li.product .price del{opacity:.5;font-weight:400;font-size:.9rem}
.tmm-single ul.products li.product .price ins{text-decoration:none}
.tmm-single ul.products li.product .button{margin:12px 16px 16px;align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:0;border-radius:var(--r-md);background:var(--ink);color:var(--on-ink);font:600 .86rem/1 var(--f-body);text-decoration:none}
.tmm-single ul.products li.product .button:hover{background:#000;color:var(--gold)}
.tmm-single ul.products li.product .astra-shop-summary-wrap{padding:0}
.tmm-single ul.products li.product .star-rating,.tmm-single ul.products li.product .woocommerce-product-rating{margin:8px 16px 0}
@media (max-width:1000px){.tmm-single ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* closing CTA band */
.tmm-single .tmm-pcta{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);margin-top:clamp(48px,7vw,80px)}

/* notices */
.tmm-single .woocommerce-message,.tmm-single .woocommerce-info,.tmm-single .woocommerce-error{border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:.95rem}
.tmm-single .woocommerce-message a.button,.tmm-single .woocommerce-info a.button{background:var(--ink);color:var(--on-ink);border-radius:var(--r-md);padding:8px 16px;min-height:0}
.tmm-single ul.products li.product .astra-shop-summary-wrap{display:flex;flex-direction:column;flex:1 1 auto}
.tmm-single ul.products li.product .button{margin-top:auto}

/* precedence fixes over Astra / WooCommerce layout CSS */
.tmm-single div.product div.images{float:none !important;width:auto !important;margin-bottom:0 !important}
.tmm-single div.product div.summary{float:none !important;width:auto !important;clear:none !important}
.tmm-single ul.products li.product{width:auto !important;float:none !important;margin:0 !important}
.tmm-single ul.products li.product .astra-shop-thumbnail-wrap img:not(.show-on-hover){margin:0 !important;width:100% !important;height:100% !important;object-fit:cover}
.tmm-single ul.products li.product .price{color:var(--ink) !important;font-size:1.02rem !important;margin:0 !important;padding:8px 16px 0 !important}
.tmm-single ul.products li.product .woocommerce-loop-product__title{font-size:.95rem !important;padding:14px 16px 0 !important;margin:0 !important}
.tmm-single ul.products li.product .button{margin:12px 16px 16px !important}

/* product page: ast-container flex fix (Astra lays it out as a flex row on desktop) */
.tmm-single .site-content .ast-container{display:block !important;max-width:calc(var(--wrap) + 2 * var(--gutter));margin-inline:auto;padding-inline:var(--gutter)}
.tmm-single #primary,.tmm-single .ast-woocommerce-container{display:block;width:100%;float:none;margin:0;max-width:100%}
.tmm-single .tmm-pcta{clear:both}
.tmm-single div.product div.images{overflow:visible}

/* tab block spacing fix */
.tmm-single div.product .woocommerce-tabs{--tab-inset:clamp(22px,3vw,36px);padding:0 !important}
.tmm-single div.product .woocommerce-tabs ul.tabs{margin:0 !important;padding:0 calc(var(--tab-inset) - 14px) !important;border-radius:0}
.tmm-single div.product .woocommerce-tabs ul.tabs li{margin:0 !important;padding:0 !important;border:0 !important;background:none !important;border-radius:0 !important;box-shadow:none !important}
.tmm-single div.product .woocommerce-tabs ul.tabs li::before,.tmm-single div.product .woocommerce-tabs ul.tabs li::after{display:none !important}
.tmm-single div.product .woocommerce-tabs ul.tabs li a{padding:16px 14px !important;font-weight:600}
.tmm-single div.product .woocommerce-tabs .woocommerce-Tabs-panel,.tmm-single div.product .woocommerce-tabs .panel{padding:var(--tab-inset) !important;margin:0 !important;border:0 !important;background:none !important}
.tmm-single div.product .woocommerce-tabs .woocommerce-Tabs-panel > *:first-child{margin-top:0}
.tmm-single div.product .woocommerce-tabs .woocommerce-Tabs-panel > *:last-child{margin-bottom:0}
.tmm-single .woocommerce-Tabs-panel p,.tmm-single .woocommerce-Tabs-panel ul,.tmm-single .woocommerce-Tabs-panel ol{max-width:78ch}
.tmm-single .woocommerce-Tabs-panel p{line-height:1.75}
