/* Tỏi An Thịnh 2.1 — Premium Origin Editorial */
:root {
  --tat-v2-ivory: #fffdf7;
  --tat-v2-cream: #f7f3e8;
  --tat-v2-green: #176238;
  --tat-v2-green-dark: #0d4c2b;
  --tat-v2-gold: #d8bd65;
  --tat-v2-copper: #a7653d;
  --tat-v2-line: #ded5c3;
  --tat-v2-shadow: 0 18px 50px rgba(25, 68, 41, .08);
}

body.tat-theme { background: var(--tat-v2-ivory); }
.tat-site-main { background: var(--tat-v2-ivory); }
.tat-site-header { position: relative; background: rgba(255,253,247,.98); backdrop-filter: none; }
.tat-header-inner { min-height: 104px; }
.tat-brand img, .tat-brand .custom-logo { max-height: 86px; }
.tat-primary-nav a { font-size: 13px; font-weight: 650; }
.tat-section-title { letter-spacing: -.018em; }
.tat-button { min-height: 42px; padding: 8px 20px; font-size: 13px; box-shadow: 0 7px 16px rgba(23,98,56,.12); }
.tat-button--outline { box-shadow: none; background: rgba(255,255,255,.4); }
.tat-v2-section { position: relative; padding: 68px 0; overflow: clip; }
.tat-v2-section::after { content:""; position:absolute; left:0; right:0; bottom:0; height:1px; background:linear-gradient(90deg,transparent,var(--tat-v2-line),transparent); }
.tat-v2-section .tat-section-header { margin-bottom: 30px; }
.tat-v2-theme--paper { background: var(--tat-v2-ivory); }
.tat-v2-theme--cream { background: var(--tat-v2-cream); }
.tat-v2-theme--green { color:#fff; background:linear-gradient(120deg,var(--tat-v2-green-dark),var(--tat-v2-green)); }
.tat-v2-theme--green .tat-section-title,.tat-v2-theme--green .tat-eyebrow { color:#fff; }
.tat-script-title { margin-bottom: -4px; color: var(--tat-v2-copper); font: 400 38px/1.05 var(--tat-script, "TAT Script", cursive); }
.tat-breadcrumb { margin-bottom: 44px; color: #66766a; font-size: 12px; }

/* Editorial hero */
.tat-v2-hero { position: relative; isolation: isolate; overflow: hidden; background: var(--tat-v2-cream); }
.tat-v2-hero__media { position:absolute; inset:0; z-index:-3; }
.tat-v2-hero__media img { width:100%; height:100%; object-fit:cover; object-position:var(--tat-focus,center); }
.tat-v2-hero::before { content:""; position:absolute; inset:0; z-index:-2; pointer-events:none; }
.tat-v2-hero__inner { min-height: inherit; display:flex; align-items:center; }
.tat-v2-hero__content { position:relative; z-index:2; width:min(53%,690px); padding:56px 0; }
.tat-v2-hero .tat-title { font-size:clamp(38px,4.35vw,67px); line-height:1.1; }
.tat-v2-hero .tat-lead { max-width:590px; margin:20px 0 28px; color:#253d2d; font-size:15px; line-height:1.8; }
.tat-v2-hero--home { min-height:640px; }
.tat-v2-hero--home::before { background:linear-gradient(90deg,rgba(255,253,247,.99) 0%,rgba(255,253,247,.91) 36%,rgba(255,253,247,.33) 59%,rgba(255,253,247,.02) 78%); }
.tat-v2-hero--home .tat-v2-hero__content { padding-bottom:130px; }
.tat-v2-hero--home .tat-title { text-transform:uppercase; font-family:var(--tat-sans); font-weight:900; font-size:clamp(38px,4vw,61px); letter-spacing:-.035em; }
.tat-v2-hero--banner { min-height:410px; }
.tat-v2-hero--banner::before { background:linear-gradient(90deg,rgba(255,253,247,.99),rgba(255,253,247,.88) 43%,rgba(255,253,247,.16) 72%); }
.tat-v2-hero--banner .tat-title { font-size:clamp(37px,4vw,56px); }
.tat-v2-hero--cover { min-height:520px; color:#fff; }
.tat-v2-hero--cover::before { background:linear-gradient(90deg,rgba(4,45,22,.93),rgba(7,55,27,.58) 52%,rgba(7,55,27,.2)); }
.tat-v2-hero--cover .tat-title,.tat-v2-hero--cover .tat-eyebrow,.tat-v2-hero--cover .tat-lead,.tat-v2-hero--cover .tat-breadcrumb { color:#fff; }
.tat-v2-hero--split { min-height:510px; padding-bottom:86px; background:var(--tat-v2-ivory); }
.tat-v2-hero--split::before,.tat-v2-hero--split>.tat-v2-hero__media { display:none; }
.tat-v2-hero--split .tat-v2-hero__inner { display:grid; grid-template-columns:1fr 1.08fr; gap:48px; padding-block:40px; }
.tat-v2-hero--split .tat-v2-hero__content { width:100%; padding:0; }
.tat-v2-hero__split-image img { width:100%; aspect-ratio:1.25; object-fit:cover; border-radius:24px; box-shadow:var(--tat-v2-shadow); }
.tat-v2-hero__highlights { position:absolute; z-index:3; left:50%; bottom:31px; display:grid; grid-template-columns:repeat(4,1fr); transform:translateX(-50%); }
.tat-v2-highlight { display:flex; gap:13px; align-items:center; padding:8px 22px; border-right:1px solid rgba(33,97,52,.22); }
.tat-v2-highlight:last-child { border-right:0; }
.tat-v2-highlight__icon { flex:0 0 auto; width:var(--tat-highlight-icon-ring-size,44px); height:var(--tat-highlight-icon-ring-size,44px); display:grid; place-items:center; color:var(--tat-highlight-icon-color,var(--tat-v2-green)); background:var(--tat-highlight-icon-background,transparent); border:var(--tat-highlight-icon-border-width,1px) solid var(--tat-highlight-icon-border-color,#9cb3a0); border-radius:50%; }
.tat-v2-highlight__icon svg,.tat-v2-highlight__icon i,.tat-v2-highlight__icon img,.tat-v2-highlight__icon .tat-managed-icon__mask { width:var(--tat-highlight-icon-glyph-size,25px); height:var(--tat-highlight-icon-glyph-size,25px); display:block; object-fit:contain; font-size:var(--tat-highlight-icon-glyph-size,25px); }
.tat-v2-highlight__icon .tat-managed-icon__svg { fill:none; stroke:currentColor; stroke-width:1.7; }
.tat-v2-highlight strong,.tat-v2-highlight small { display:block; color:var(--tat-v2-green-dark); }
.tat-v2-highlight strong { font-size:13px; line-height:1.3; }
.tat-v2-highlight small { margin-top:3px; font-size:10px; opacity:.8; }
.tat-v2-hero--cover .tat-v2-highlight { border-color:rgba(255,255,255,.22); }
.tat-v2-hero--cover .tat-v2-highlight__icon { color:var(--tat-highlight-icon-color,#f7e495); border-color:var(--tat-highlight-icon-border-color,rgba(247,228,149,.55)); }
.tat-v2-hero--cover .tat-v2-highlight strong,.tat-v2-hero--cover .tat-v2-highlight small { color:#f7e495; }
.tat-v2-seal { position:absolute; right:4.5%; bottom:34px; width:112px; height:112px; display:grid; place-items:center; padding:16px; color:#73511f; background:#f6d35e; border:7px double #73511f; border-radius:50%; transform:rotate(-8deg); box-shadow:0 9px 28px rgba(0,0,0,.18); text-align:center; font-size:10px; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.tat-v2-ornament--garlic { position:absolute; z-index:-1; left:-85px; bottom:-65px; width:260px; height:320px; opacity:.5; background:url(../images/garlic-line.svg) center/contain no-repeat; }
.tat-v2-hero::after { content:""; position:absolute; z-index:-1; left:0; right:0; bottom:0; height:135px; opacity:.6; background:url(../images/field-contours.svg) center bottom/cover no-repeat; }

/* Story and stats */
.tat-v2-story__grid { display:grid; grid-template-columns:.83fr 1.17fr; gap:62px; align-items:center; }
.tat-v2-story__grid--image-left { grid-template-columns:1.05fr .95fr; }
.tat-v2-story__grid--image-left .tat-v2-story__image { order:-1; }
.tat-v2-story__content p { margin:0 0 15px; color:#465148; font-size:14px; }
.tat-v2-story__content blockquote { margin:24px 0; padding:5px 0 5px 28px; color:var(--tat-v2-copper); border-left:4px solid var(--tat-v2-gold); font-family:var(--tat-serif); font-size:19px; font-style:italic; }
.tat-v2-story__image { position:relative; }
.tat-v2-story__image img { width:100%; aspect-ratio:1.42; object-fit:cover; border-radius:23px; box-shadow:var(--tat-v2-shadow); }
.tat-v2-story__stamp { position:absolute; top:-38px; right:-28px; width:145px; height:145px; display:grid; place-items:center; padding:28px; color:rgba(33,97,52,.25); border:3px double rgba(33,97,52,.18); border-radius:50%; transform:rotate(12deg); text-align:center; font-size:11px; font-weight:800; letter-spacing:.08em; }
.tat-v2-stats { display:flex; margin-top:30px; padding-top:22px; border-top:1px solid var(--tat-v2-line); }
.tat-v2-stats>div { flex:1; padding:0 18px; border-right:1px solid var(--tat-v2-line); }
.tat-v2-stats>div:first-child { padding-left:0; }
.tat-v2-stats>div:last-child { border-right:0; }
.tat-v2-stats strong,.tat-v2-stats span { display:block; }
.tat-v2-stats strong { color:var(--tat-v2-green); font-family:var(--tat-serif); font-size:25px; }
.tat-v2-stats span { color:#627066; font-size:11px; }

/* Timeline */
.tat-v2-timeline { background:var(--tat-v2-cream); }
.tat-v2-timeline__grid { position:relative; display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.tat-v2-timeline__grid::before { content:""; position:absolute; top:19px; left:9%; right:9%; border-top:1px dashed #8e9c8d; }
.tat-v2-timeline__grid article { position:relative; z-index:1; padding-top:47px; overflow:hidden; background:rgba(255,255,255,.68); border:1px solid var(--tat-v2-line); border-radius:14px; text-align:center; }
.tat-v2-timeline__grid article>span { position:absolute; top:0; left:50%; width:38px; height:38px; display:grid; place-items:center; transform:translateX(-50%); color:var(--tat-v2-green); background:var(--tat-v2-ivory); border:1px solid var(--tat-v2-green); border-radius:50%; font-weight:900; }
.tat-v2-timeline__grid img { width:100%; aspect-ratio:1.75; object-fit:cover; }
.tat-v2-timeline__grid h3 { margin:14px 18px 6px; color:var(--tat-v2-green); font-family:var(--tat-serif); font-size:18px; }
.tat-v2-timeline__grid p { min-height:66px; margin:0; padding:0 18px 20px; color:#667067; font-size:12px; line-height:1.55; }
.tat-v2-theme--green .tat-v2-timeline__grid article { background:rgba(255,255,255,.05); border-color:rgba(255,255,255,.18); }
.tat-v2-theme--green .tat-v2-timeline__grid h3,.tat-v2-theme--green .tat-v2-timeline__grid p { color:#fff; }

/* Region */
.tat-v2-region__grid { display:grid; grid-template-columns:1.12fr .9fr .65fr; gap:40px; align-items:center; }
.tat-v2-region__visual img { width:100%; aspect-ratio:1.28; object-fit:cover; border-radius:22px; box-shadow:var(--tat-v2-shadow); }
.tat-v2-region__content p { color:#4c594f; font-size:13px; }
.tat-v2-checklist { display:grid; gap:9px; margin:19px 0 24px; padding:0; list-style:none; }
.tat-v2-checklist li { position:relative; padding-left:23px; color:#3f4f44; font-size:12px; line-height:1.55; }
.tat-v2-checklist li::before { content:"✓"; position:absolute; left:0; top:1px; width:15px; height:15px; display:grid; place-items:center; color:#fff; background:var(--tat-v2-green); border-radius:50%; font-size:9px; }
.tat-v2-region__map { position:relative; min-height:310px; display:grid; place-items:center; padding:22px; background:#fbf9f1; border:1px solid var(--tat-v2-line); border-radius:20px; }
.tat-v2-region__map img { width:100%; max-height:280px; object-fit:contain; }

/* Product showcase */
.tat-v2-products-showcase { background:linear-gradient(180deg,var(--tat-v2-cream),var(--tat-v2-ivory)); }
.tat-v2-products-showcase__list { display:grid; gap:16px; }
.tat-v2-products-showcase__list article { display:grid; grid-template-columns:1.03fr .97fr; min-height:355px; overflow:hidden; background:#fff; border:1px solid var(--tat-v2-line); border-radius:18px; }
.tat-v2-products-showcase__list article.is-reverse { grid-template-columns:.97fr 1.03fr; }
.tat-v2-products-showcase__list article.is-reverse .tat-v2-product-row__image { order:2; }
.tat-v2-product-row__image img { width:100%; height:100%; min-height:355px; object-fit:cover; }
.tat-v2-product-row__body { padding:36px 42px; }
.tat-v2-product-row__body h3 { margin:0 0 11px; color:var(--tat-v2-green); font-family:var(--tat-serif); font-size:34px; }
.tat-v2-product-row__body>p { color:#566057; font-size:13px; }
.tat-v2-product-facts { display:grid; grid-template-columns:1fr 1fr; gap:14px 20px; margin:22px 0; }
.tat-v2-product-facts>span { display:grid; grid-template-columns:28px 1fr; grid-template-rows:auto auto; column-gap:10px; }
.tat-v2-product-facts svg,.tat-v2-product-facts i,.tat-v2-product-facts img,.tat-v2-product-facts .tat-managed-icon__mask { grid-row:1/3; width:var(--tat-product-fact-icon-glyph-size,27px); height:var(--tat-product-fact-icon-glyph-size,27px); display:block; object-fit:contain; color:var(--tat-product-fact-icon-color,var(--tat-v2-green)); font-size:var(--tat-product-fact-icon-glyph-size,27px); }
.tat-v2-product-facts .tat-managed-icon__svg { fill:none; stroke:currentColor; stroke-width:1.7; }
.tat-v2-product-facts b { color:var(--tat-v2-green); font-size:11px; }
.tat-v2-product-facts small { color:#6b746c; font-size:9px; }
.tat-v2-products-showcase__list article:last-child { color:#fff; background:linear-gradient(120deg,#102b1d,var(--tat-v2-green)); border-color:transparent; }
.tat-v2-products-showcase__list article:last-child h3,.tat-v2-products-showcase__list article:last-child .tat-eyebrow,.tat-v2-products-showcase__list article:last-child .tat-v2-product-facts b,.tat-v2-products-showcase__list article:last-child .tat-v2-product-facts small,.tat-v2-products-showcase__list article:last-child p { color:#fff; }
.tat-v2-products-showcase__list article:last-child .tat-v2-product-facts svg,.tat-v2-products-showcase__list article:last-child .tat-v2-product-facts i { color:var(--tat-product-fact-icon-color,var(--tat-v2-gold)); }
.tat-v2-products-showcase__list article:last-child .tat-v2-product-facts .tat-managed-icon__svg { stroke:currentColor; }

/* Table */
.tat-v2-comparison { padding-top:50px; text-align:center; }
.tat-v2-comparison .tat-section-title { font-size:31px; }
.tat-v2-table-wrap { overflow:auto; border:1px solid var(--tat-v2-line); border-radius:14px; }
.tat-v2-comparison table { width:100%; min-width:760px; border-collapse:collapse; background:#fff; text-align:left; }
.tat-v2-comparison th,.tat-v2-comparison td { padding:10px 14px; border-right:1px solid var(--tat-v2-line); border-bottom:1px solid var(--tat-v2-line); font-size:12px; }
.tat-v2-comparison thead th { color:var(--tat-v2-green); background:#e8efe3; text-align:center; }
.tat-v2-comparison tbody th { color:var(--tat-v2-green); background:#f6f3ea; }

/* Gallery */
.tat-v2-gallery { background:var(--tat-v2-ivory); }
.tat-v2-gallery__grid { display:grid; grid-template-columns:repeat(var(--tat-gallery-columns,5),1fr); gap:12px; }
.tat-v2-gallery figure { position:relative; overflow:hidden; margin:0; border-radius:13px; box-shadow:0 7px 18px rgba(28,61,39,.08); }
.tat-v2-gallery figure:nth-child(6n+1),.tat-v2-gallery figure:nth-child(6n+5) { grid-column:span 2; }
.tat-v2-gallery img { width:100%; aspect-ratio:1.45; object-fit:cover; transition:transform .35s ease; }
.tat-v2-gallery figure:hover img { transform:scale(1.035); }
.tat-v2-gallery figcaption { position:absolute; left:0; right:0; bottom:0; padding:25px 12px 9px; color:#fff; background:linear-gradient(transparent,rgba(0,0,0,.7)); font-size:10px; }

/* Editorial news */
.tat-v2-news__featured { display:grid; grid-template-columns:1.18fr .82fr; overflow:hidden; margin-bottom:34px; background:#fff; border:1px solid var(--tat-v2-line); border-radius:22px; }
.tat-v2-news__featured>a img { width:100%; height:100%; min-height:380px; object-fit:cover; }
.tat-v2-news__featured>div { align-self:center; padding:42px; }
.tat-v2-news__featured h3 { margin:10px 0 14px; color:var(--tat-v2-green); font-family:var(--tat-serif); font-size:31px; line-height:1.3; }
.tat-v2-news__featured p { color:#5d675f; font-size:13px; }
.tat-v2-news__filters { display:grid; grid-template-columns:repeat(5,1fr); margin:0 0 28px; padding:14px 22px; background:#faf8f1; border:1px solid #e7e0d1; border-radius:14px; }
.tat-v2-news__filters span { padding:8px; color:#435148; text-align:center; font-size:12px; }
.tat-v2-news__filters .is-active { color:#fff; background:var(--tat-v2-green); border-radius:999px; }
.tat-v2-news .tat-news-card { border-radius:16px; }
.tat-v2-news .tat-news-card h3 { font-size:18px; }

/* Contact */
.tat-v2-contact__cards { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:28px; }
.tat-v2-contact__cards article { display:flex; align-items:center; gap:14px; min-height:100px; padding:18px; background:#fff; border:1px solid var(--tat-v2-line); border-radius:14px; }
.tat-v2-contact__cards article>span { width:var(--tat-contact-card-icon-ring-size,48px); height:var(--tat-contact-card-icon-ring-size,48px); display:grid; place-items:center; flex:0 0 auto; color:var(--tat-contact-card-icon-color,var(--tat-v2-green)); background:var(--tat-contact-card-icon-background,#f1f5ea); border:var(--tat-contact-card-icon-border-width,0px) solid var(--tat-contact-card-icon-border-color,transparent); border-radius:50%; }
.tat-v2-contact__cards article>span svg,.tat-v2-contact__cards article>span i,.tat-v2-contact__cards article>span img,.tat-v2-contact__cards article>span .tat-managed-icon__mask { width:var(--tat-contact-card-icon-glyph-size,27px); height:var(--tat-contact-card-icon-glyph-size,27px); display:block; object-fit:contain; font-size:var(--tat-contact-card-icon-glyph-size,27px); }
.tat-v2-contact__cards article>span .tat-managed-icon__svg { fill:none; stroke:currentColor; stroke-width:1.7; }
.tat-v2-contact__cards h3 { margin:0 0 3px; color:var(--tat-v2-green); font-size:14px; }
.tat-v2-contact__cards p { margin:0; color:#667168; font-size:11px; }
.tat-v2-contact__panel { display:grid; grid-template-columns:.72fr 1.28fr; overflow:hidden; background:#fff; border:1px solid var(--tat-v2-line); border-radius:18px; }
.tat-v2-contact__panel aside { padding:36px; background:linear-gradient(145deg,#f6f4ea,#fff); }
.tat-v2-contact__panel aside h2 { margin-top:0; color:var(--tat-v2-green); font-family:var(--tat-serif); font-size:29px; }
.tat-v2-contact__panel aside>p { color:#606b63; font-size:12px; }
.tat-v2-contact__panel aside ul { display:grid; gap:17px; margin:27px 0 0; padding:0; list-style:none; }
.tat-v2-contact__panel aside li { display:grid; grid-template-columns:var(--tat-contact-support-icon-ring-size,38px) 1fr; gap:11px; align-items:center; }
.tat-v2-contact__support-icon { width:var(--tat-contact-support-icon-ring-size,38px); height:var(--tat-contact-support-icon-ring-size,38px); display:grid; place-items:center; color:var(--tat-contact-support-icon-color,var(--tat-v2-green)); background:var(--tat-contact-support-icon-background,#fff); border:var(--tat-contact-support-icon-border-width,0px) solid var(--tat-contact-support-icon-border-color,transparent); border-radius:50%; }
.tat-v2-contact__support-icon svg,.tat-v2-contact__support-icon i,.tat-v2-contact__support-icon img,.tat-v2-contact__support-icon .tat-managed-icon__mask { width:var(--tat-contact-support-icon-glyph-size,20px); height:var(--tat-contact-support-icon-glyph-size,20px); display:block; object-fit:contain; font-size:var(--tat-contact-support-icon-glyph-size,20px); }
.tat-v2-contact__support-icon .tat-managed-icon__svg { fill:none; stroke:currentColor; stroke-width:1.5; }
.tat-v2-contact__panel aside strong,.tat-v2-contact__panel aside small { display:block; }
.tat-v2-contact__panel aside strong { color:var(--tat-v2-green); font-size:12px; }
.tat-v2-contact__panel aside small { color:#707a72; font-size:10px; }
.tat-v2-contact__panel .tat-contact-form { padding:36px; }
.tat-v2-contact__map { display:grid; grid-template-columns:.55fr 1.45fr; gap:28px; align-items:center; margin-top:28px; }
.tat-v2-contact__map iframe,.tat-v2-map-placeholder { width:100%; min-height:290px; border:0; border-radius:16px; }
.tat-v2-location__grid { display:grid; grid-template-columns:.82fr 1.38fr; gap:34px; align-items:stretch; padding:20px; border:1px solid var(--tat-line); border-radius:22px; background:rgba(255,255,255,.64); }
.tat-v2-location__content { padding:34px 22px; }
.tat-v2-location__content p { max-width:470px; }
.tat-v2-location iframe,.tat-v2-location .tat-v2-map-placeholder { width:100%; min-height:330px; border:0; border-radius:16px; }
.tat-v2-map-placeholder { display:grid; place-items:center; align-content:center; color:var(--tat-v2-green); background:linear-gradient(135deg,#eef4ed,#dcebe2); border:1px solid #cbd8ca; }
.tat-v2-map-placeholder i { width:38px; height:48px; margin-bottom:12px; background:#d64234; border-radius:50% 50% 50% 0; transform:rotate(-45deg); }
.tat-v2-map-placeholder strong,.tat-v2-map-placeholder small { display:block; transform:none; }

/* Partners and identity */
.tat-v2-partners { padding:26px 0; background:#fbf9f1; border-top:1px solid var(--tat-v2-line); }
.tat-v2-partners__inner { display:grid; grid-template-columns:1fr 1.2fr; gap:35px; align-items:center; }
.tat-v2-partners h2 { margin:0; color:var(--tat-v2-green); font-size:18px; }
.tat-v2-partners p { margin:3px 0 0; color:#787d75; font-size:11px; }
.tat-v2-partners__items { display:flex; justify-content:flex-end; gap:22px; }
.tat-v2-partners__items>span { width:var(--tat-partner-icon-ring-size,66px); height:var(--tat-partner-icon-ring-size,66px); display:grid; place-items:center; position:relative; color:var(--tat-partner-icon-color,var(--tat-v2-green)); background:var(--tat-partner-icon-background,transparent); border:var(--tat-partner-icon-border-width,1px) solid var(--tat-partner-icon-border-color,#8aa792); border-radius:50%; }
.tat-v2-partners__items svg,.tat-v2-partners__items i,.tat-v2-partners__items img,.tat-v2-partners__items .tat-managed-icon__mask { width:var(--tat-partner-icon-glyph-size,30px); height:var(--tat-partner-icon-glyph-size,30px); display:block; object-fit:contain; font-size:var(--tat-partner-icon-glyph-size,30px); }
.tat-v2-partners__items .tat-managed-icon__svg { fill:none; stroke:currentColor; stroke-width:1.6; }
.tat-v2-partners__items small { position:absolute; top:70px; display:none; width:100px; text-align:center; }
.tat-v2-identity { background:linear-gradient(180deg,var(--tat-v2-ivory),#faf7ef); }
.tat-v2-identity__grid { display:grid; grid-template-columns:.86fr 1.14fr; gap:60px; align-items:center; }
.tat-v2-identity__image { display:grid; place-items:center; min-height:330px; background:#fff; border:1px solid var(--tat-v2-line); border-radius:18px; }
.tat-v2-identity__image img { max-width:330px; max-height:300px; object-fit:contain; }

/* Existing blocks adapted to editorial references */
.tat-section--green { background:linear-gradient(120deg,var(--tat-v2-green-dark),var(--tat-v2-green)); }
.tat-section--green .tat-feature { border:0; border-right:1px solid rgba(255,255,255,.18); border-radius:0; }
.tat-section--green .tat-feature:last-child { border-right:0; }
.tat-feature { border-radius:14px; box-shadow:none; }
.tat-product-card,.tat-news-card { border-radius:14px; }
.tat-process__item::before { color:var(--tat-v2-green); background:#fff; border:1px solid var(--tat-v2-green); }
.tat-process__item:not(:last-child)::after { border-color:#89a08e; }
.tat-cta { min-height:220px; border-radius:20px; }
.tat-site-footer { background:linear-gradient(120deg,#0b4929,#17673a); }

/* Editorial single post */
.tat-article--editorial { padding-top:52px; background:linear-gradient(180deg,#fffdf8 0,#fff 32%,#fffdf8 100%); }
.tat-article--editorial .tat-article__header { max-width:1170px; margin-bottom:34px; }
.tat-article__header .tat-breadcrumb { margin-bottom:28px; color:var(--tat-muted); font-size:13px; }
.tat-article__header .tat-breadcrumb a { color:var(--tat-green); }
.tat-article__category { display:inline-flex; margin-bottom:16px; padding:7px 13px; border-radius:999px; color:#fff; background:var(--tat-green); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.tat-article--editorial .tat-article__header .tat-title { max-width:920px; font-size:clamp(40px,5vw,70px); line-height:1.04; }
.tat-article__dek { max-width:920px; margin:22px 0 0; font-size:19px; font-weight:600; line-height:1.65; }
.tat-article--editorial .tat-article__layout { grid-template-columns:minmax(0,850px) 300px; gap:56px; }
.tat-article__featured { margin:0 0 40px; }
.tat-article__featured img { width:100%; max-height:590px; object-fit:cover; border-radius:20px; }
.tat-article__featured figcaption { margin-top:10px; color:var(--tat-muted); font-size:12px; text-align:center; }
.tat-article__body { font-size:17px; line-height:1.82; }
.tat-article__body h2 { margin:44px 0 15px; font-size:34px; }
.tat-article__body h3 { margin:32px 0 12px; font-size:25px; }
.tat-article__body blockquote { margin:34px 0; padding:24px 28px; border:0; border-radius:16px; background:var(--tat-cream); color:var(--tat-green); font-family:var(--tat-serif); font-size:22px; }
.tat-article__body > * { scroll-margin-top:120px; }
.tat-article-sidecard { margin-bottom:24px; padding:26px; border:1px solid var(--tat-line); border-radius:18px; background:#f8f5ed; box-shadow:0 12px 32px rgba(54,65,42,.05); }
.tat-article-sidecard h3 { margin:0 0 18px; color:var(--tat-green); font-family:var(--tat-serif); font-size:21px; }
.tat-toc ol,.tat-related-docs ul { margin:0; padding:0; list-style:none; }
.tat-toc li { position:relative; padding:0 0 13px 18px; border-left:1px solid rgba(33,97,52,.26); }
.tat-toc li::before { content:''; position:absolute; left:-4px; top:7px; width:7px; height:7px; border-radius:50%; background:var(--tat-green); }
.tat-toc li.is-sub { padding-left:27px; font-size:13px; }
.tat-toc a { color:var(--tat-ink); }
.tat-article-sidecard dl { margin:0; display:grid; grid-template-columns:100px 1fr; gap:13px 12px; font-size:13px; }
.tat-article-sidecard dt { color:var(--tat-green); font-weight:750; }
.tat-article-sidecard dd { margin:0; }
.tat-related-docs li + li { border-top:1px solid var(--tat-line); }
.tat-related-docs a { display:block; padding:12px 0; color:var(--tat-green); font-weight:650; }
.tat-article__tags,.tat-article__share { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:32px; padding-top:20px; border-top:1px solid var(--tat-line); font-size:13px; }
.tat-article__tags a,.tat-article__share a,.tat-copy-link { padding:7px 11px; border:1px solid rgba(33,97,52,.24); border-radius:6px; color:var(--tat-green); background:#fff; font:inherit; cursor:pointer; }
.tat-article__nav { display:grid; grid-template-columns:1fr 1fr; margin-top:30px; border:1px solid var(--tat-line); border-radius:14px; overflow:hidden; }
.tat-article__nav > div { min-height:100px; padding:20px; }
.tat-article__nav > div + div { border-left:1px solid var(--tat-line); text-align:right; }
.tat-article__nav small { display:block; color:var(--tat-green); margin-bottom:8px; }
.tat-article__nav a { color:var(--tat-ink); font-weight:700; }
.tat-article-related { padding:65px 0 75px; }
.tat-article-cta { padding:0 0 72px; }
.tat-article-cta .tat-container { display:flex; align-items:center; justify-content:space-between; gap:30px; min-height:210px; padding:42px 48px; border-radius:20px; color:#fff; background:linear-gradient(110deg,#164e2c,#276f3b); }
.tat-article-cta h2 { margin:6px 0; color:#fff; font-size:36px; }
.tat-article-cta p { margin:0; opacity:.86; }
.tat-article-cta .tat-eyebrow { color:#d8c66b; }
.tat-article-cta .tat-button + .tat-button { margin-left:10px; }
.tat-button--gold { color:#173f27; background:linear-gradient(135deg,#e4cc7a,#caa854); }

@media (max-width:1100px) {
  .tat-v2-hero__highlights { grid-template-columns:repeat(2,1fr); }
  .tat-v2-highlight:nth-child(2) { border-right:0; }
  .tat-v2-story__grid,.tat-v2-region__grid { gap:32px; }
  .tat-v2-region__grid { grid-template-columns:1fr 1fr; }
  .tat-v2-region__map { grid-column:1/-1; min-height:260px; }
  .tat-v2-region__map img,.tat-v2-map-shape { max-height:230px; }
  .tat-v2-gallery__grid { --tat-gallery-columns:4!important; }
  .tat-v2-contact__cards { grid-template-columns:1fr 1fr; }
}

@media (max-width:820px) {
  .tat-v2-section { padding:52px 0; }
  .tat-v2-hero--home,.tat-v2-hero--banner,.tat-v2-hero--cover { min-height:650px; align-items:flex-end; }
  .tat-v2-hero--home::before,.tat-v2-hero--banner::before { background:linear-gradient(0deg,rgba(255,253,247,.99),rgba(255,253,247,.92) 51%,rgba(255,253,247,.08) 86%); }
  .tat-v2-hero--cover::before { background:linear-gradient(0deg,rgba(4,45,22,.96),rgba(4,45,22,.3) 80%); }
  .tat-v2-hero__inner { align-items:flex-end; }
  .tat-v2-hero__content { width:100%; padding:280px 0 140px; }
  .tat-v2-hero--banner .tat-v2-hero__content { padding-top:240px; }
  .tat-v2-hero .tat-title { font-size:40px; }
  .tat-v2-hero--home .tat-title { font-size:39px; }
  .tat-v2-hero--split .tat-v2-hero__inner { display:flex; flex-direction:column-reverse; gap:24px; padding-block:26px 50px; }
  .tat-v2-hero--split .tat-v2-hero__content { padding:0; }
  .tat-v2-hero__highlights { bottom:24px; }
  .tat-v2-highlight { padding:6px 9px; }
  .tat-v2-highlight__icon { width:var(--tat-highlight-icon-ring-size,35px); height:var(--tat-highlight-icon-ring-size,35px); }
  .tat-v2-highlight small { display:none; }
  .tat-v2-seal { width:84px; height:84px; right:15px; bottom:142px; font-size:8px; }
  .tat-v2-story__grid,.tat-v2-story__grid--image-left,.tat-v2-region__grid,.tat-v2-contact__map,.tat-v2-location__grid,.tat-v2-identity__grid { grid-template-columns:1fr; }
  .tat-v2-story__image { order:-1; }
  .tat-v2-story__stamp { right:8px; }
  .tat-v2-timeline__grid { grid-template-columns:1fr 1fr; }
  .tat-v2-timeline__grid::before { display:none; }
  .tat-v2-products-showcase__list article,.tat-v2-products-showcase__list article.is-reverse { grid-template-columns:1fr; }
  .tat-v2-products-showcase__list article.is-reverse .tat-v2-product-row__image { order:0; }
  .tat-v2-product-row__image img { min-height:260px; aspect-ratio:1.5; }
  .tat-v2-product-row__body { padding:28px; }
  .tat-v2-gallery__grid { --tat-gallery-columns:2!important; }
  .tat-v2-gallery figure:nth-child(n) { grid-column:span 1; }
  .tat-v2-news__featured { grid-template-columns:1fr; }
  .tat-v2-news__featured>a img { min-height:260px; }
  .tat-v2-news__filters { display:flex; overflow:auto; }
  .tat-v2-news__filters span { min-width:120px; }
  .tat-v2-contact__panel { grid-template-columns:1fr; }
  .tat-v2-partners__inner { grid-template-columns:1fr; }
  .tat-v2-partners__items { justify-content:flex-start; flex-wrap:wrap; }
  .tat-article--editorial .tat-article__layout { grid-template-columns:1fr; }
  .tat-article--editorial .tat-article__header .tat-title { font-size:clamp(36px,10vw,54px); }
  .tat-article__sidebar { position:static; }
  .tat-article-cta .tat-container { align-items:flex-start; flex-direction:column; padding:34px 28px; }
}

@media (max-width:520px) {
  .tat-v2-hero__highlights { width:calc(100% - 24px); }
  .tat-v2-highlight strong { font-size:10px; }
  .tat-script-title { font-size:30px; }
  .tat-v2-stats { display:grid; grid-template-columns:repeat(3,1fr); }
  .tat-v2-stats>div { padding:0 8px; }
  .tat-v2-stats strong { font-size:19px; }
  .tat-v2-stats span { font-size:9px; }
  .tat-v2-timeline__grid,.tat-v2-contact__cards,.tat-v2-product-facts { grid-template-columns:1fr; }
  .tat-v2-gallery__grid { --tat-gallery-columns:1!important; }
  .tat-v2-contact__panel .tat-contact-form { padding:24px; }
  .tat-v2-news__featured>div { padding:26px; }
  .tat-article__nav { grid-template-columns:1fr; }
  .tat-article__nav > div + div { border-left:0; border-top:1px solid var(--tat-line); text-align:left; }
  .tat-article-cta .tat-button { display:flex; margin:8px 0 0!important; }
}

@media (prefers-reduced-motion:reduce) {
  .tat-v2-gallery img,.tat-product-card,.tat-news-card,.tat-button { transition:none!important; }
}

/* ==========================================================
   Homepage refinement 2.1 — approved Premium Origin Editorial
   ========================================================== */
body.tat-theme .tat-section-title,
body.tat-theme .tat-v2-story .tat-section-title,
body.tat-theme .tat-v2-region .tat-section-title,
body.tat-theme .tat-product-card h3,
body.tat-theme .tat-news-card h3 {
  font-family: var(--tat-serif);
  letter-spacing: -.018em;
}

body.home .tat-v2-section { padding-block: 58px; }
body.home .tat-v2-hero--home { min-height: 590px; }
body.home .tat-v2-hero--home::before {
  background: linear-gradient(90deg,rgba(255,253,247,.99) 0%,rgba(255,253,247,.92) 35%,rgba(255,253,247,.36) 57%,rgba(255,253,247,.02) 77%);
}
body.home .tat-v2-hero--home .tat-v2-hero__content { width: min(49%,630px); padding: 48px 0 120px; }
body.home .tat-v2-hero--home .tat-title { max-width: 610px; font-size: clamp(40px,4vw,58px); line-height: 1.05; }
body.home .tat-v2-hero .tat-lead { max-width: 560px; margin-block: 18px 24px; font-size: 15px; line-height: 1.7; }
body.home .tat-v2-hero__highlights { grid-template-columns: repeat(3,1fr); }
body.home .tat-v2-highlight { min-height: 64px; padding: 8px 18px; }

/* Reference homepage composition: the hero is a complete editorial scene,
   not a generic image cover. The product menu and certification seal form a
   small right-side cluster around the basket image. */
body.home .tat-v2-hero--home { min-height:590px; }
body.home .tat-v2-hero--home .tat-v2-hero__content { width:min(43%,540px); padding:74px 0 66px; }
body.home .tat-v2-hero--home .tat-v2-hero__content > .tat-eyebrow { display:none; }
body.home .tat-v2-hero--home .tat-title { max-width:510px; font-size:clamp(35px,3.15vw,48px); line-height:1.1; }
body.home .tat-v2-hero--home .tat-lead { max-width:490px; font-size:14px; line-height:1.72; }
body.home .tat-v2-hero--home::before { background:linear-gradient(90deg,rgba(255,253,247,.99) 0%,rgba(255,253,247,.94) 37%,rgba(255,253,247,.45) 53%,rgba(255,253,247,.05) 70%); }
body.home .tat-v2-seal { right:8.2%; bottom:46px; width:102px; height:102px; padding:15px; }
body.home .tat-v2-hero__inline-highlights { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; max-width:500px; margin:20px 0 20px; }
body.home .tat-v2-hero__inline-highlights .tat-v2-highlight { min-height:48px; gap:8px; padding:0 9px 0 0; border-right:0; }
body.home .tat-v2-hero__inline-highlights .tat-v2-highlight__icon { width:34px; height:34px; }
body.home .tat-v2-hero__inline-highlights .tat-v2-highlight__icon svg { width:18px; height:18px; }
body.home .tat-v2-hero__inline-highlights .tat-v2-highlight strong { font-size:10px; line-height:1.34; }

body.home .tat-v2-story__grid { grid-template-columns: .9fr 1.1fr; gap: 52px; }
body.home .tat-v2-story { padding-block:52px; }
body.home .tat-v2-story__grid { grid-template-columns:.92fr 1.08fr; gap:44px; padding:28px 34px; background:#fffdf8; border:1px solid #ebe6d8; border-radius:0 18px 18px 0; }
body.home .tat-v2-story .tat-section-title { max-width:460px; font-size:clamp(30px,2.65vw,40px); line-height:1.14; }
body.home .tat-v2-story__content p { max-width:450px; font-size:13px; line-height:1.7; }
body.home .tat-v2-story__image img { aspect-ratio:1.55; border-radius:12px; }
body.home .tat-v2-story__stamp { width: 126px; height: 126px; top: -28px; }
body.home .tat-v2-stats { margin-top:22px; padding-top:16px; }
body.home .tat-v2-stats strong { font-size:21px; }
body.home .tat-v2-stats span { font-size:10px; }

/* ==========================================================
   About page master — editorial split, not a generic stack
   ========================================================== */
.tat-v2-hero--about { min-height: 350px; }
.tat-v2-hero--about::before { background:linear-gradient(90deg,rgba(255,253,247,1) 0%,rgba(255,253,247,.96) 33%,rgba(255,253,247,.56) 51%,rgba(255,253,247,.05) 72%); }
.tat-v2-hero--about .tat-v2-hero__content { width:min(48%,600px); padding:34px 0 42px; }
.tat-v2-hero--about .tat-breadcrumb { margin-bottom:26px; font-size:12px; }
.tat-v2-hero--about .tat-title { max-width:510px; margin-top:12px; font-size:clamp(34px,3.15vw,48px); line-height:1.2; }
.tat-v2-hero--about .tat-lead { max-width:465px; margin:16px 0 0; font-size:13px; line-height:1.65; }
.tat-v2-hero--about .tat-v2-ornament--garlic { opacity:.55; }

.tat-v2-story--about-intro { padding-block:30px 42px; border-bottom:1px solid var(--tat-v2-line); }
.tat-v2-story--about-intro .tat-v2-story__grid { grid-template-columns:.94fr 1.06fr; gap:46px; }
.tat-v2-story--about-intro .tat-v2-story__content { max-width:555px; }
.tat-v2-story--about-intro .tat-section-title { margin:0 0 16px; font-size:clamp(30px,2.7vw,40px); }
.tat-v2-story--about-intro .tat-v2-story__content p { font-size:13px; line-height:1.67; }
.tat-v2-story--about-intro .tat-v2-story__image img { aspect-ratio:1.28; border-radius:12px; box-shadow:none; }
.tat-v2-story--about-intro .tat-v2-story__stamp { display:none; }
.tat-v2-story--about-intro .tat-button { margin-top:4px; color:#fff; background:var(--tat-v2-green); border-color:var(--tat-v2-green); }

.tat-v2-timeline--about { padding-block:30px 38px; }
.tat-v2-timeline--about .tat-section-header { margin-bottom:28px; }
.tat-v2-timeline--about .tat-section-title { font-size:clamp(26px,2.3vw,34px); }
.tat-v2-timeline--about .tat-v2-timeline__grid { gap:18px; }
.tat-v2-timeline--about .tat-v2-timeline__grid::before { top:17px; left:8%; right:8%; }
.tat-v2-timeline--about .tat-v2-timeline__grid article { padding-top:39px; border-radius:10px; }
.tat-v2-timeline--about .tat-v2-timeline__grid article>span { width:34px; height:34px; font-size:11px; }
.tat-v2-timeline--about .tat-v2-timeline__grid img { aspect-ratio:1.7; }
.tat-v2-timeline--about .tat-v2-timeline__grid h3 { margin:12px 12px 5px; color:#273b2b; font-family:var(--tat-sans); font-size:13px; line-height:1.35; }
.tat-v2-timeline--about .tat-v2-timeline__grid p { min-height:72px; padding:0 14px 17px; font-size:11px; line-height:1.55; }

.tat-v2-story--about-people { padding-block:38px 42px; }
.tat-v2-story--about-people .tat-v2-story__grid { grid-template-columns:1fr .92fr; gap:52px; align-items:center; }
.tat-v2-story--about-people .tat-v2-story__image img { aspect-ratio:1.27; border-radius:12px; box-shadow:none; }
.tat-v2-story--about-people .tat-v2-story__stamp { display:none; }
.tat-v2-story--about-people .tat-section-title { margin-bottom:15px; font-size:clamp(29px,2.55vw,39px); line-height:1.16; }
.tat-v2-story--about-people .tat-v2-story__content p { font-size:13px; line-height:1.68; }
.tat-v2-story--about-people blockquote { margin:22px 0 0; padding:2px 0 2px 34px; color:var(--tat-v2-copper); border:0; font-size:18px; line-height:1.5; }
.tat-v2-story--about-people blockquote::before { content:'“'; position:absolute; margin-left:-32px; color:#7fa14e; font-family:var(--tat-serif); font-size:48px; font-style:normal; line-height:.7; }

/* About: this is an ecosystem strip, not the homepage product-card pattern. */
.tat-section--about-products { padding-block:34px 38px; }
.tat-section--about-products .tat-section-header { margin-bottom:22px; }
.tat-section--about-products .tat-section-title { font-size:clamp(25px,2.25vw,33px); }
.tat-section--about-products .tat-product-grid { gap:18px; }
.tat-section--about-products .tat-product-card { overflow:hidden; border:1px solid var(--tat-v2-line); border-radius:10px; box-shadow:none; }
.tat-section--about-products .tat-product-card__image img { display:block; width:100%; aspect-ratio:1.72; object-fit:cover; }
.tat-section--about-products .tat-product-card__body { min-height:0; padding:14px 16px 15px; text-align:center; }
.tat-section--about-products .tat-product-card__origin-logo { display:none; }
.tat-section--about-products .tat-product-card h3 { margin:0 0 7px; font-size:18px; line-height:1.25; }
.tat-section--about-products .tat-product-card p { margin:0; color:#6a716b; font-size:11px; line-height:1.55; }
.tat-section--about-products .tat-card-link { display:none; }

/* About: four regional attributes are a quiet factual row. */
.tat-section--about-traits { padding-block:28px 30px; background:var(--tat-v2-ivory); }
.tat-section--about-traits .tat-section-header { margin-bottom:18px; }
.tat-section--about-traits .tat-section-title { display:none; }
.tat-section--about-traits .tat-feature-grid { gap:12px; }
.tat-section--about-traits .tat-feature { min-height:142px; padding:14px 13px; border:1px solid var(--tat-v2-line); border-radius:9px; background:rgba(255,255,255,.55); text-align:center; }
.tat-section--about-traits .tat-feature__icon { width:42px; height:42px; margin:0 auto 7px; color:var(--tat-v2-green); }
.tat-section--about-traits .tat-feature h3 { margin:0 0 5px; color:var(--tat-v2-green); font-size:14px; }
.tat-section--about-traits .tat-feature p { margin:0; font-size:10px; line-height:1.45; }

/* About: the four commitments are one continuous green band. */
.tat-section--about-values { padding-block:26px; }
.tat-section--about-values .tat-section-header { margin-bottom:16px; }
.tat-section--about-values .tat-section-title { display:none; }
.tat-section--about-values .tat-feature-grid { gap:0; }
.tat-section--about-values .tat-feature { min-height:132px; padding:14px 20px; text-align:center; }
.tat-section--about-values .tat-feature__icon { width:43px; height:43px; margin:0 auto 8px; color:#e8ce77; border-color:rgba(232,206,119,.56); }
.tat-section--about-values .tat-feature h3 { margin:0 0 5px; color:#f7e495; font-size:14px; line-height:1.3; }
.tat-section--about-values .tat-feature p { margin:0; color:#e4efe5; font-size:10px; line-height:1.48; }

/* About: management information is a four-column record, not a logo panel. */
.tat-v2-identity--about { padding-block:28px 34px; background:var(--tat-v2-ivory); }
.tat-v2-identity--about > .tat-container > .tat-eyebrow { display:block; margin-bottom:14px; text-align:center; }
.tat-v2-about-management { display:grid; grid-template-columns:1.05fr 1.22fr 1.12fr .88fr; overflow:hidden; border:1px solid var(--tat-v2-line); border-radius:10px; background:rgba(255,255,255,.5); }
.tat-v2-about-management > div { min-height:146px; padding:15px 18px; border-left:1px solid var(--tat-v2-line); }
.tat-v2-about-management > div:first-child { border-left:0; }
.tat-v2-about-management h3 { margin:0 0 9px!important; color:var(--tat-v2-green)!important; font-family:var(--tat-sans)!important; font-size:12px!important; font-weight:800!important; line-height:1.25!important; letter-spacing:0!important; }
.tat-v2-about-management ul { margin:0!important; padding-left:17px!important; color:#5b655c!important; font-family:var(--tat-sans)!important; font-size:10px!important; line-height:1.7!important; }
.tat-v2-about-management__unit { display:grid; align-content:center; gap:4px; }
.tat-v2-about-management__unit img { width:38px; height:38px; object-fit:contain; }
.tat-v2-about-management__unit small,.tat-v2-about-management__unit em { color:#7c817a; font-size:10px; font-style:normal; }
.tat-v2-about-management__unit strong { color:var(--tat-v2-green)!important; font-family:var(--tat-serif)!important; font-size:17px!important; line-height:1.1!important; }

/* About: gallery uses an even five-by-two contact sheet. */
.tat-v2-gallery--about { padding-block:28px 30px; }
.tat-v2-gallery--about .tat-section-header { margin-bottom:16px; }
.tat-v2-gallery--about .tat-section-title { display:none; }
.tat-v2-gallery--about .tat-v2-gallery__grid { grid-template-columns:repeat(5,1fr); gap:9px; }
.tat-v2-gallery--about figure:nth-child(n) { grid-column:span 1; border-radius:7px; box-shadow:none; }
.tat-v2-gallery--about img { aspect-ratio:1.45; }
.tat-v2-gallery--about figcaption { display:none; }

/* About: short editorial call-to-action with the image reserved for the right. */
.tat-section--about-cta { padding-block:25px 18px; background:var(--tat-v2-ivory); }
.tat-section--about-cta .tat-cta { min-height:122px!important; overflow:hidden; border:1px solid var(--tat-v2-line); border-radius:9px; background:#fffdf7; }
.tat-section--about-cta .tat-cta__content { position:relative; z-index:1; max-width:68%; padding:22px 44px; text-align:center; }
.tat-section--about-cta .tat-cta__content h2 { margin:0 0 11px!important; color:var(--tat-v2-green)!important; font-size:24px!important; line-height:1.2!important; }
.tat-section--about-cta .tat-cta__content p { display:none; }
.tat-section--about-cta .tat-cta__media { right:0; left:auto; width:36%; opacity:.95; }
.tat-section--about-cta .tat-cta__media::after { background:linear-gradient(90deg,#fffdf7 0%,rgba(255,253,247,.08) 70%); }
.tat-section--about-cta .tat-button { display:inline-flex; margin:0 5px; padding:9px 21px; font-size:11px; }
.tat-section--about-cta .tat-button--outline { color:var(--tat-v2-green); background:transparent; border-color:var(--tat-v2-green); }

@media (max-width: 767px) {
  .tat-v2-hero--about { min-height:560px; }
  .tat-v2-hero--about .tat-v2-hero__content { width:100%; padding:260px 0 58px; }
  .tat-v2-hero--about .tat-title { font-size:clamp(32px,9vw,40px); }
  .tat-v2-story--about-intro .tat-v2-story__grid,
  .tat-v2-story--about-people .tat-v2-story__grid { grid-template-columns:1fr; gap:24px; }
  .tat-v2-story--about-intro .tat-v2-story__image,
  .tat-v2-story--about-people .tat-v2-story__image { order:-1; }
  .tat-v2-timeline--about .tat-v2-timeline__grid { gap:14px; }
  .tat-section--about-traits .tat-feature-grid,.tat-section--about-values .tat-feature-grid { grid-template-columns:1fr 1fr; }
  .tat-v2-about-management { grid-template-columns:1fr; }
  .tat-v2-about-management > div { min-height:0; border-top:1px solid var(--tat-v2-line); border-left:0; }
  .tat-v2-about-management > div:first-child { border-top:0; }
  .tat-v2-gallery--about .tat-v2-gallery__grid { grid-template-columns:repeat(2,1fr); }
  .tat-section--about-cta .tat-cta__content { max-width:100%; padding:25px 18px; }
  .tat-section--about-cta .tat-cta__media { display:none; }
}

body.home .tat-section--green { padding-block: 54px; }
body.home .tat-section--green .tat-section-header { margin-bottom: 24px; }
body.home .tat-section--green .tat-section-title { max-width: 760px; margin-inline: auto; font-size: clamp(31px,3.1vw,43px); line-height: 1.16; }
body.home .tat-section--green .tat-feature { min-height: 160px; padding: 16px 20px; }
body.home .tat-section--green .tat-feature__icon { width: 48px; height: 48px; margin-bottom: 12px; }
body.home .tat-section--green .tat-feature h3 { font-size: 20px; }
/* The approved reference uses this as a short four-value band, without a
   duplicate section headline. */
body.home .tat-section--green { padding-block:28px; }
body.home .tat-section--green .tat-feature-grid { gap:0; }
body.home .tat-section--green .tat-feature { min-height:112px; padding:11px 18px; background:transparent; }
body.home .tat-section--green .tat-feature__icon { width:42px; height:42px; margin-bottom:8px; }
body.home .tat-section--green .tat-feature__icon svg { width:23px; height:23px; }
body.home .tat-section--green .tat-feature h3 { margin:0 0 4px; font-size:14px; line-height:1.35; }
body.home .tat-section--green .tat-feature p { margin:0; font-size:10px; line-height:1.5; }

body.home .tat-product-grid { gap: 18px; }
body.home .tat-product-card { border-radius: 14px; box-shadow: none; }
body.home .tat-product-card__image img { aspect-ratio: 1.65; }
body.home .tat-product-card__body { min-height: 170px; padding: 17px 19px; }
body.home .tat-product-card__body { position:relative; padding-left:78px; }
body.home .tat-product-card__origin-logo { position:absolute; top:18px; left:18px; width:46px; height:46px; object-fit:contain; border-radius:50%; }
body.home .tat-product-card h3 { font-size: 24px; }
body.home .tat-product-card p { margin-bottom: 8px; font-size: 13px; line-height: 1.55; }

body.home .tat-v2-region__grid { grid-template-columns: 1.07fr .88fr .62fr; gap: 34px; }
body.home .tat-v2-region__visual img { aspect-ratio: 1.38; border-radius: 16px; }
body.home .tat-v2-region__content .tat-section-title { font-size: clamp(31px,3vw,42px); }
body.home .tat-v2-region__map { min-height: 270px; border-radius: 16px; }

body.home .tat-v2-news { padding-bottom: 46px; }
body.home .tat-v2-news .tat-section-header { margin-bottom: 24px; }
body.home .tat-v2-news .tat-news-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
body.home .tat-v2-news .tat-news-card { border-radius: 13px; }
body.home .tat-v2-news .tat-news-card__image img { aspect-ratio: 1.55; }
body.home .tat-v2-news .tat-news-card__body { padding: 16px; }
body.home .tat-v2-news .tat-news-card h3 { font-size: 17px; }
body.home .tat-v2-news .tat-news-card p { display: none; }
.tat-news-cta-card {
  min-height: 100%; display: flex; flex-direction: column; justify-content: flex-end; padding: 24px;
  overflow: hidden; color: #fff; background-color: var(--tat-green); background-position: center; background-size: cover;
  border-radius: 13px;
}
.tat-news-cta-card h3 { margin: 0 0 18px; color: #fff; font-family: var(--tat-serif); font-size: 23px; line-height: 1.22; }
.tat-news-cta-card .tat-button { align-self: flex-start; min-height: 38px; padding: 7px 14px; color: var(--tat-green); background: #fff; border-color: #fff; font-size: 12px; }

/* Partner strip follows the reference as one continuous compact row: a short
   text block followed immediately by five equal circular marks. */
body.home .tat-v2-partners { padding:17px 0 18px; }
body.home .tat-v2-partners__inner { grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr); gap:30px; }
body.home .tat-v2-partners h2 { font-family:var(--tat-sans); font-size:16px !important; line-height:1.22; letter-spacing:-.02em; }
body.home .tat-v2-partners p { margin-top:4px; font-size:10px; line-height:1.45; }
body.home .tat-v2-partners__items { justify-content:flex-start; gap:18px; }
body.home .tat-v2-partners__items>span { width:48px; height:48px; }
body.home .tat-v2-partners__items svg { width:22px; height:22px; }

/* Footer reference layout: four compact editorial columns separated by lines,
   then a low legal row. The primary navigation's product children stay out of
   the footer menu. */
body.tat-theme .tat-site-footer { background:linear-gradient(120deg,#0b4929,#17673a); }
body.tat-theme .tat-footer-main { grid-template-columns:1.22fr .82fr 1.04fr 1.1fr; gap:0; padding:29px 0 22px; }
body.tat-theme .tat-footer-column { min-width:0; padding-left:30px; border-left:1px solid rgba(255,255,255,.24); }
body.tat-theme .tat-footer-brand { padding-right:32px; }
body.tat-theme .tat-footer-brand__identity { display:flex; align-items:center; gap:12px; }
body.tat-theme .tat-footer-brand__identity img,
body.tat-theme .tat-footer-brand__identity .custom-logo { width:69px; height:69px; max-height:69px; margin:0; object-fit:contain; }
body.tat-theme .tat-footer-brand__identity span,
body.tat-theme .tat-footer-brand__identity strong,
body.tat-theme .tat-footer-brand__identity em { display:block; font-style:normal; }
body.tat-theme .tat-footer-brand__identity span { color:#fff; font-size:8px; font-weight:800; line-height:1.25; letter-spacing:.04em; text-transform:uppercase; }
body.tat-theme .tat-footer-brand__identity strong { margin-top:3px; color:#fff; font-family:var(--tat-sans); font-size:20px; line-height:1; letter-spacing:.02em; }
body.tat-theme .tat-footer-brand__identity em { margin-top:5px; color:#f0c47a; font-size:8px; font-weight:800; letter-spacing:.08em; }
body.tat-theme .tat-footer-brand > p { max-width:236px; margin:12px 0 7px; font-size:10px; line-height:1.48; }
body.tat-theme .tat-footer-social { display:flex; gap:6px; }
body.tat-theme .tat-footer-social a { display:grid; width:18px; height:18px; place-items:center; border:1px solid rgba(255,255,255,.6); border-radius:50%; color:#fff; font-size:10px; font-weight:800; }
body.tat-theme .tat-site-footer h3 { margin:0 0 12px; color:#fff; font-family:var(--tat-sans); font-size:14px; line-height:1.2; }
body.tat-theme .tat-site-footer p,
body.tat-theme .tat-site-footer li { font-size:10px; line-height:1.5; }
body.tat-theme .tat-footer-links li { margin:0 0 5px; }
body.tat-theme .tat-footer-contact__list { display:grid; gap:6px; }
body.tat-theme .tat-footer-contact__list li { display:grid; grid-template-columns:14px 1fr; gap:5px; margin:0; }
body.tat-theme .tat-footer-contact__list span { color:#f1d376; font-weight:800; text-align:center; }
body.tat-theme .tat-footer-newsletter p { margin:0 0 10px; }
body.tat-theme .tat-newsletter { height:32px; }
body.tat-theme .tat-newsletter input { min-width:0; padding:7px 10px; font-size:10px; }
body.tat-theme .tat-newsletter button { width:35px; font-size:13px; }
body.tat-theme .tat-footer-bottom { padding-block:8px; font-size:9px; }

/* HT Document Manager integration */
body.tat-theme .tat-htdm-section .htdm-documents-wrap { max-width: 1100px; margin-inline: auto; }
body.tat-theme .tat-htdm-section .htdm-group { margin-bottom: 20px; }
body.tat-theme .tat-htdm-section .htdm-table-card { border-color: var(--tat-line); border-radius: 16px; box-shadow: none; }
body.tat-theme .tat-htdm-section .htdm-card-header { padding: 17px 20px; background: var(--tat-green); }
body.tat-theme .tat-htdm-section .htdm-documents-table thead th { color: var(--tat-green); background: #fff; }
body.tat-theme .tat-htdm-section .htdm-documents-table tbody td { padding-block: 15px; }
body.tat-theme .tat-htdm-section .htdm-download-btn { color: #fff !important; background: var(--tat-green) !important; border-radius: 999px; }
body.tat-theme .tat-htdm-section .htdm-download-btn:hover,
body.tat-theme .tat-htdm-section .htdm-download-btn:focus { background: var(--tat-green-dark) !important; }

@media (max-width:1100px) {
  body.home .tat-v2-news .tat-news-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width:820px) {
  body.home .tat-v2-section { padding-block: 48px; }
  body.home .tat-v2-hero--home { min-height: 650px; }
  body.home .tat-v2-hero--home .tat-v2-hero__content { width: 100%; padding: 300px 0 132px; }
	body.home .tat-v2-seal { right:20px; bottom:34px; width:78px; height:78px; font-size:8px; }
  body.home .tat-v2-hero--home .tat-title { font-size: clamp(34px,10vw,42px); }
  body.home .tat-v2-story__grid,
  body.home .tat-v2-region__grid { grid-template-columns: 1fr; }
  body.home .tat-v2-region__map { min-height: 240px; }
  body.home .tat-v2-partners__inner { grid-template-columns: 1fr; }
	  body.home .tat-v2-partners__items { justify-content:flex-start; }
}

@media (max-width:560px) {
  body.home .tat-v2-hero__highlights { grid-template-columns: 1fr; bottom: 14px; }
  body.home .tat-v2-highlight { min-height: 34px; border-right: 0; border-bottom: 1px solid rgba(33,97,52,.15); }
	body.home .tat-v2-hero__inline-highlights { grid-template-columns:1fr; gap:0; }
	body.home .tat-v2-hero__inline-highlights .tat-v2-highlight { border-bottom:1px solid rgba(33,97,52,.12); }
	body.home .tat-v2-story__grid { padding:0; background:transparent; border:0; }
	body.home .tat-section--green { padding-block:18px; }
  body.home .tat-v2-news .tat-news-grid { grid-template-columns: 1fr; }
  .tat-news-cta-card { min-height: 280px; }
  body.tat-theme .tat-footer-main { grid-template-columns: 1fr; gap: 24px; }
  body.tat-theme .tat-footer-column { padding-left:0; border-left:0; }
}

/* ==========================================================
   Homepage proportion correction 2.1.1
   Icon scale is contextual: ring size and glyph size are kept
   separate so one global SVG rule cannot distort the layout.
   ========================================================== */
body.home .tat-v2-hero__highlights .tat-v2-highlight__icon {
  width: var(--tat-highlight-icon-ring-size, 48px);
  height: var(--tat-highlight-icon-ring-size, 48px);
}
body.home .tat-v2-hero__highlights .tat-v2-highlight svg,
body.home .tat-v2-hero__highlights .tat-v2-highlight i,
body.home .tat-v2-hero__highlights .tat-v2-highlight img {
  width: var(--tat-highlight-icon-glyph-size, 24px);
  height: var(--tat-highlight-icon-glyph-size, 24px);
  font-size: var(--tat-highlight-icon-glyph-size, 24px);
  stroke-width: 1.55;
}

body.home .tat-v2-story .tat-section-title {
  font-size: clamp(32px, 2.8vw, 42px);
}
body.home .tat-section--green .tat-section-title {
  font-size: clamp(29px, 2.65vw, 38px);
}
body.home .tat-section--green .tat-feature__icon {
  width: var(--tat-feature-icon-ring-size, 62px);
  height: var(--tat-feature-icon-ring-size, 62px);
}
body.home .tat-section--green .tat-feature__icon svg,
body.home .tat-section--green .tat-feature__icon i,
body.home .tat-section--green .tat-feature__icon img {
  width: var(--tat-feature-icon-glyph-size, 30px);
  height: var(--tat-feature-icon-glyph-size, 30px);
  font-size: var(--tat-feature-icon-glyph-size, 30px);
  stroke-width: 1.55;
}
body.home .elementor-widget-tat_product_grid .tat-section-title {
  max-width: 650px;
  margin-inline: auto;
  font-size: clamp(29px, 2.55vw, 36px);
  line-height: 1.16;
}
body.home .tat-v2-region__content .tat-section-title {
  font-size: clamp(29px, 2.65vw, 38px);
  line-height: 1.13;
}

body.home .tat-v2-news {
  padding-block: 44px 40px;
}
body.home .tat-v2-news .tat-section-header {
  max-width: 720px;
  margin-bottom: 20px;
}
body.home .tat-v2-news .tat-eyebrow {
  margin-bottom: 7px;
  font-size: 11px;
}
body.home .tat-v2-news .tat-section-title {
  margin-bottom: 0;
  font-size: clamp(27px, 2.3vw, 32px) !important;
  line-height: 1.15;
  letter-spacing: -.014em;
}

body.home .tat-v2-partners {
  padding: 24px 0 26px;
}
body.home .tat-v2-partners__inner {
  grid-template-columns: .95fr 1.05fr;
  gap: 42px;
}
body.home .tat-v2-partners h2 {
  font-size: 17px !important;
  line-height: 1.25;
  letter-spacing: .005em;
}
body.home .tat-v2-partners p {
  margin-top: 4px;
  font-size: 11px;
  line-height: 1.4;
}
body.home .tat-v2-partners__items {
  gap: 28px;
}
body.home .tat-v2-partners__items > span {
  width: var(--tat-partner-icon-ring-size, 68px);
  height: var(--tat-partner-icon-ring-size, 68px);
  border-color: var(--tat-partner-icon-border-color, rgba(23, 98, 56, .48));
}
body.home .tat-v2-partners__items svg,
body.home .tat-v2-partners__items i,
body.home .tat-v2-partners__items img {
  width: var(--tat-partner-icon-glyph-size, 31px);
  height: var(--tat-partner-icon-glyph-size, 31px);
  font-size: var(--tat-partner-icon-glyph-size, 31px);
  stroke-width: 1.5;
}

.tat-v2-contact__cards article > span {
  width: var(--tat-contact-card-icon-ring-size, 44px);
  height: var(--tat-contact-card-icon-ring-size, 44px);
}
.tat-v2-contact__cards svg,
.tat-v2-contact__cards i,
.tat-v2-contact__cards img {
  width: var(--tat-contact-card-icon-glyph-size, 23px);
  height: var(--tat-contact-card-icon-glyph-size, 23px);
  font-size: var(--tat-contact-card-icon-glyph-size, 23px);
}

@media (max-width: 1100px) {
  body.home .tat-v2-partners__items { gap: 18px; }
  body.home .tat-v2-partners__items > span { width: var(--tat-partner-icon-ring-size, 58px); height: var(--tat-partner-icon-ring-size, 58px); }
  body.home .tat-v2-partners__items svg, body.home .tat-v2-partners__items i, body.home .tat-v2-partners__items img { width: var(--tat-partner-icon-glyph-size, 28px); height: var(--tat-partner-icon-glyph-size, 28px); font-size: var(--tat-partner-icon-glyph-size, 28px); }
}

@media (max-width: 820px) {
  body.home .tat-v2-news { padding-block: 40px 36px; }
  body.home .tat-v2-news .tat-section-title { font-size: clamp(27px, 7vw, 33px) !important; }
  body.home .tat-v2-partners { padding-block: 20px; }
  body.home .tat-v2-partners__inner { gap: 16px; }
  body.home .tat-v2-partners__items { justify-content: flex-start; gap: 14px; }
}

@media (max-width: 560px) {
  body.home .tat-v2-partners__items { display: grid; grid-template-columns: repeat(5, 48px); justify-content: space-between; width: 100%; }
  body.home .tat-v2-partners__items > span { width: var(--tat-partner-icon-ring-size, 48px); height: var(--tat-partner-icon-ring-size, 48px); }
  body.home .tat-v2-partners__items svg, body.home .tat-v2-partners__items i, body.home .tat-v2-partners__items img { width: var(--tat-partner-icon-glyph-size, 24px); height: var(--tat-partner-icon-glyph-size, 24px); font-size: var(--tat-partner-icon-glyph-size, 24px); }
}
