/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* ============================================================
   TANDOOR MORNI — COMPLETE ADDITIONAL CSS
   DELETE everything in Additional CSS and paste ONLY this file.
   Last updated: June 2026
   ============================================================ */
 
/* ── CSS VARIABLES ── */
:root {
  --tm-copper: #B87333;
  --tm-copper-light: #D4956A;
  --tm-copper-dark: #8B5513;
  --tm-copper-bg: #FDF6EE;
  --tm-copper-accent: #E8C49A;
  --tm-gold: #C9A84C;
  --tm-charcoal: #1C1C1C;
  --tm-mid: #5C4A3A;
  --tm-light: #8C7A6B;
  --tm-border: #E5D5C5;
  --tm-white: #FFFFFF;
  --tm-off: #FAF7F4;
  --tm-success: #2A7A4B;
  --copper: #B87333;
  --copper-light: #D4956A;
  --copper-dark: #8B5513;
  --copper-bg: #FDF6EE;
  --copper-accent: #E8C49A;
  --charcoal: #1C1C1C;
  --mid: #5C4A3A;
  --light: #8C7A6B;
  --border: #E5D5C5;
  --white: #FFFFFF;
  --off: #FAF7F4;
  --success: #2A7A4B;
}
 
/* ── SECTION WRAPPERS ── */
.tm-sec { padding: 3.5rem 1.5rem; }
.tm-sec-white { background: var(--tm-white); }
.tm-sec-copper { background: var(--tm-copper-bg); }
.tm-sec-dark { background: var(--tm-charcoal); }
 
.tm-sec-label {
  font-size: .68rem;
  letter-spacing: .35em;
  text-transform: uppercase;
  color: var(--tm-copper);
  font-weight: 600;
  margin-bottom: .6rem;
  display: block;
}
.tm-sec-title {
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: .75rem;
  color: var(--tm-charcoal);
}
.tm-sec-sub {
  font-size: .9rem;
  color: var(--tm-light);
  line-height: 1.75;
  margin-bottom: 1.75rem;
}
.tm-divider {
  border: none;
  border-top: 1px solid var(--tm-border);
  margin: 0;
}
 
/* ── OVERVIEW PROSE ── */
.tm-overview p {
  font-size: .96rem;
  line-height: 1.9;
  color: var(--tm-mid);
  margin-bottom: 1.2rem;
}
.tm-overview h3 {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--tm-charcoal);
  margin: 1.8rem 0 .6rem;
  padding-bottom: .3rem;
  border-bottom: 1px solid var(--tm-border);
}
.tm-overview ul {
  padding-left: 1.4rem;
  margin-bottom: 1.2rem;
  display: flex;
  flex-direction: column;
  gap: .5rem;
}
.tm-overview li {
  font-size: .93rem;
  color: var(--tm-mid);
  line-height: 1.8;
}
.tm-overview strong { color: var(--tm-charcoal); }
 
/* ── HIGHLIGHT CARDS ── */
.tm-hi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem;
  margin-top: 1.75rem;
}
.tm-hi-card {
  background: var(--tm-white);
  border: 1px solid var(--tm-border);
  border-radius: 6px;
  padding: 1.25rem;
  border-top: 3px solid var(--tm-copper);
}
.tm-hi-title {
  font-size: .88rem;
  font-weight: 700;
  color: var(--tm-charcoal);
  margin-bottom: .4rem;
}
.tm-hi-desc {
  font-size: .78rem;
  color: var(--tm-light);
  line-height: 1.6;
}
 
/* ── FEATURE CARDS ── */
.tm-features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 1.1rem;
  margin-top: 1.5rem;
}
.tm-feat-card {
  background: var(--tm-white);
  border: 1px solid var(--tm-border);
  border-radius: 6px;
  padding: 1.4rem 1.2rem;
  border-top: 3px solid var(--tm-copper);
}
.tm-feat-title {
  font-size: .9rem;
  font-weight: 700;
  color: var(--tm-charcoal);
  margin-bottom: .4rem;
}
.tm-feat-desc {
  font-size: .8rem;
  color: var(--tm-light);
  line-height: 1.6;
}
 
/* ── SPEC TABLE ── */
.tm-spec-table {
  width: 100%;
  border-collapse: collapse;
  font-size: .87rem;
  margin-top: 1.25rem;
}
.tm-spec-table tr:nth-child(even) td { background: var(--tm-off); }
.tm-spec-table td {
  padding: .8rem 1.1rem;
  border: 1px solid var(--tm-border);
  color: var(--tm-mid);
  vertical-align: top;
}
.tm-spec-table td:first-child {
  font-weight: 600;
  color: var(--tm-charcoal);
  width: 38%;
  background: var(--tm-copper-bg);
}
.tm-cert-gold { color: var(--tm-gold); font-weight: 700; }
.tm-cert-green { color: var(--tm-success); font-weight: 700; }
 
/* ── CERT BOX ── */
.tm-cert-box {
  background: linear-gradient(135deg, var(--tm-charcoal), #2C3E55);
  border-radius: 8px;
  padding: 1.75rem 2rem;
  margin: 1.25rem 0;
  color: #fff;
  border-left: 5px solid var(--tm-gold);
}
.tm-cert-box-title {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--tm-gold);
  margin-bottom: 1rem;
}
.tm-cert-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  margin-top: 1rem;
}
.tm-cert-col {
  background: rgba(255,255,255,.07);
  border-radius: 6px;
  padding: 1.1rem;
}
.tm-cert-col h4 {
  font-size: .88rem;
  font-weight: 700;
  color: var(--tm-copper-light);
  margin-bottom: .5rem;
}
.tm-cert-col p {
  font-size: .8rem;
  color: rgba(255,255,255,.7);
  line-height: 1.65;
  margin: 0;
}
.tm-cert-col a { color: var(--tm-copper-light); }
 
/* ── GAS SPLIT ── */
.tm-gas-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  margin: 1.25rem 0;
}
.tm-gas-col {
  border-radius: 8px;
  padding: 1.5rem;
  border: 1px solid var(--tm-border);
}
.tm-gas-col.propane { background: #FFF8EE; border-top: 3px solid var(--tm-copper); }
.tm-gas-col.natgas  { background: #EDF7F3; border-top: 3px solid var(--tm-success); }
.tm-gas-col h3 {
  font-size: .92rem;
  font-weight: 700;
  margin-bottom: .6rem;
  border: none;
  padding: 0;
}
.tm-gas-col.propane h3 { color: var(--tm-copper-dark); }
.tm-gas-col.natgas h3  { color: #085041; }
.tm-gas-col p {
  font-size: .82rem;
  color: var(--tm-mid);
  line-height: 1.65;
  margin-bottom: .75rem;
}
.tm-gas-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: .45rem;
}
.tm-gas-col li {
  font-size: .82rem;
  color: var(--tm-mid);
  padding-left: 1.1rem;
  position: relative;
}
.tm-gas-col li::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: var(--tm-success);
  font-weight: 700;
}
 
/* ── USE CASES ── */
.tm-use-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem;
  margin-top: 1.25rem;
}
.tm-use-card {
  background: var(--tm-white);
  border: 1px solid var(--tm-border);
  border-radius: 6px;
  padding: 1.2rem;
  border-left: 3px solid var(--tm-copper);
}
.tm-use-title {
  font-size: .88rem;
  font-weight: 700;
  color: var(--tm-charcoal);
  margin-bottom: .4rem;
}
.tm-use-desc {
  font-size: .8rem;
  color: var(--tm-light);
  line-height: 1.6;
}
 
/* ── ACCESSORIES GRID ── */
.tm-acc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: .9rem;
  margin-top: 1.25rem;
}
 
/* ── REVIEWS — force strict 3 columns ── */
#customer-reviews .tm-acc-grid {
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 1.25rem !important;
}
 
/* ── RELATED PRODUCTS — force strict 4 columns ── */
#related-products .tm-acc-grid {
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 1.25rem !important;
}
#related-products .tm-acc-item { text-align: left !important; }
#related-products .tm-acc-icon {
  width: 100% !important;
  height: 160px !important;
  border-radius: 8px !important;
  margin: 0 0 1rem 0 !important;
}
#related-products .tm-acc-icon img { border-radius: 6px !important; }
 
.tm-acc-item {
  background: var(--tm-white);
  border: 1px solid var(--tm-border);
  border-radius: 6px;
  padding: 1.1rem;
  text-align: center;
}
.tm-acc-icon {
  width: 44px;
  height: 44px;
  background: var(--tm-copper-bg);
  border-radius: 50%;
  margin: 0 auto .65rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
}
.tm-acc-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.tm-acc-name {
  font-size: .78rem;
  font-weight: 600;
  color: var(--tm-charcoal);
}
.tm-acc-desc {
  font-size: .7rem;
  color: var(--tm-light);
  margin-top: .2rem;
  line-height: 1.4;
}
 
/* ── FAQ ── */
.tm-faq-list {
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.tm-faq-item { border-bottom: 1px solid var(--tm-border); }
.tm-faq-item:first-child { border-top: 1px solid var(--tm-border); }
.tm-faq-item summary {
  padding: 1rem 0;
  font-size: .93rem;
  font-weight: 500;
  color: var(--tm-charcoal);
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  list-style: none;
}
.tm-faq-item summary::-webkit-details-marker { display: none; }
.tm-faq-icon {
  color: var(--tm-copper);
  font-size: 1.2rem;
  transition: transform .22s;
  flex-shrink: 0;
  margin-left: 1rem;
}
.tm-faq-item[open] .tm-faq-icon { transform: rotate(45deg); }
.tm-faq-answer {
  padding: 0 0 1rem;
  font-size: .87rem;
  color: var(--tm-mid);
  line-height: 1.8;
}
.tm-faq-answer a { color: var(--tm-copper); }
 
/* ── FINANCING STRIP ── */
.tm-fin-strip {
  background: linear-gradient(135deg, #1C1210, #3D2614);
  border-radius: 8px;
  padding: 2.5rem 2rem;
  text-align: center;
  color: #FAF7F4;
  margin-top: 1.25rem;
}
.tm-fin-rate {
  font-size: 4.5rem;
  color: var(--tm-copper-light);
  line-height: 1;
  margin-bottom: .4rem;
  font-weight: 700;
}
.tm-fin-title {
  font-size: 1.4rem;
  font-weight: 600;
  margin-bottom: .75rem;
}
.tm-fin-sub {
  color: rgba(250,247,244,.65);
  margin: 0 auto 1.5rem;
  font-size: .88rem;
  line-height: 1.7;
}
 
/* ── BUTTONS ── */
.tm-btn-primary {
  background: var(--tm-copper);
  color: #fff;
  padding: .8rem 1.75rem;
  border-radius: 4px;
  font-weight: 600;
  font-size: .88rem;
  letter-spacing: .04em;
  display: inline-block;
  text-decoration: none;
}
.tm-btn-primary:hover { background: var(--tm-copper-dark); color: #fff; }
 
/* ── COMPARISON TABLE ── */
.tm-compare-wrap { overflow-x: auto; }
.tm-compare-table {
  width: 100%;
  border-collapse: collapse;
  font-size: .87rem;
}
.tm-compare-table th { padding: .85rem 1rem; text-align: left; }
.tm-compare-table td {
  padding: .75rem 1rem;
  border: 1px solid var(--tm-border);
  color: var(--tm-mid);
  vertical-align: top;
}
.tm-compare-table td:first-child {
  font-weight: 600;
  background: var(--tm-copper-bg);
  color: var(--tm-charcoal);
  min-width: 140px;
}
 
/* ── TAGLINE ── */
.tm-tagline {
  font-size: .88rem;
  color: var(--tm-light);
  margin-bottom: 1rem;
  line-height: 1.6;
  letter-spacing: .01em;
}
 
/* ── CERT PILLS ── */
.tm-pills {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-bottom: 1.25rem;
}
.tm-pill {
  display: inline-block;
  padding: .3rem .85rem;
  border-radius: 100px;
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .03em;
  line-height: 1.4;
}
.tm-pill-gold   { background: rgba(201,168,76,.12);  color: #7A5500;           border: 1px solid rgba(201,168,76,.45); }
.tm-pill-green  { background: rgba(42,122,75,.1);    color: var(--tm-success); border: 1px solid rgba(42,122,75,.35); }
.tm-pill-blue   { background: #EEF6FF;               color: #1D6FA4;           border: 1px solid #93C5E8; }
.tm-pill-copper { background: rgba(184,115,51,.1);   color: var(--tm-copper-dark); border: 1px solid rgba(184,115,51,.35); }
.tm-pill-dark   { background: rgba(28,28,28,.07);    color: var(--tm-charcoal); border: 1px solid rgba(28,28,28,.18); }
 
/* ── SPEC MINI-GRID ── */
.tm-spec-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: .6rem;
  background: var(--tm-off);
  border: 1px solid var(--tm-border);
  border-radius: 6px;
  padding: 1rem;
  margin-bottom: 1.25rem;
}
.tm-sg-label {
  font-size: .62rem;
  color: var(--tm-light);
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-bottom: .2rem;
}
.tm-sg-val {
  font-size: .88rem;
  font-weight: 700;
  color: var(--tm-charcoal);
  line-height: 1.3;
}
 
/* ── SHIPPING NOTE ── */
.tm-ship-note {
  font-size: .78rem;
  color: var(--tm-success);
  font-weight: 500;
  line-height: 1.7;
  margin-top: .75rem;
}
.tm-ship-note span { margin-right: .5rem; }
 
/* ── LOCATIONS SECTION ── */
.tm-loc-sec {
  padding: 4rem 1.5rem;
  text-align: center;
  background: #FDFAF7;
}
.tm-loc-sec .tm-sec-label {
  display: block;
  font-size: .68rem;
  letter-spacing: .35em;
  text-transform: uppercase;
  color: var(--tm-copper);
  font-weight: 700;
  margin-bottom: 1rem;
}
.tm-loc-sec-title {
  font-size: clamp(1.8rem, 3.5vw, 2.6rem);
  font-weight: 700;
  color: var(--tm-charcoal);
  line-height: 1.2;
  margin-bottom: 1rem;
}
.tm-loc-sec-sub {
  font-size: .93rem;
  color: var(--tm-light);
  line-height: 1.75;
  margin: 0 auto 2.25rem;
}
.tm-loc-pills-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .75rem;
  margin-bottom: 2.5rem;
}
.tm-loc-pills-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .65rem;
}
.tm-loc-pill {
  display: inline-block;
  padding: .55rem 1.35rem;
  border-radius: 100px;
  font-size: .85rem;
  font-weight: 600;
  letter-spacing: .01em;
  transition: background .2s, color .2s, transform .15s;
}
.tm-loc-pill-solid   { background: #C0451A; color: #fff; border: 2px solid #C0451A; }
.tm-loc-pill-solid:hover { background: #A33816; border-color: #A33816; transform: translateY(-1px); }
.tm-loc-pill-outline { background: transparent; color: var(--tm-charcoal); border: 2px solid #D6C8BA; }
.tm-loc-pill-outline:hover { background: #FDF6EE; border-color: #C0451A; color: #A33816; transform: translateY(-1px); }
.tm-loc-cta {
  display: inline-block;
  background: #C0451A;
  color: #fff;
  padding: .85rem 2rem;
  border-radius: 6px;
  font-size: .92rem;
  font-weight: 700;
  letter-spacing: .03em;
  text-decoration: none;
  transition: background .2s, transform .15s;
}
.tm-loc-cta:hover { background: #A33816; color: #fff; transform: translateY(-2px); }
a.tm-loc-pill-solid,
a.tm-loc-pill-solid:visited,
a.tm-loc-pill-solid:hover,
a.tm-loc-cta,
a.tm-loc-cta:visited,
a.tm-loc-cta:hover { color: #fff !important; }
a.tm-loc-pill-outline,
a.tm-loc-pill-outline:visited { color: var(--tm-charcoal) !important; }
a.tm-loc-pill-outline:hover   { color: #A33816 !important; }
 
/* ── FIX WOODMART DEFAULT TD BORDERS ── */
.woocommerce-Tabs-panel td { border-bottom: none !important; }
 
.tm-spec-table { border-collapse: collapse !important; }
.tm-spec-table td {
  border: 1px solid #E5D5C5 !important;
  border-bottom: 1px solid #E5D5C5 !important;
}
.tm-spec-table tr:nth-child(even) td { background: #FAF7F4 !important; }
.tm-spec-table td:first-child {
  background: #FDF6EE !important;
  font-weight: 600;
  color: #1C1C1C;
  width: 38%;
}
.tm-compare-table { border-collapse: collapse !important; }
.tm-compare-table td {
  border: 1px solid #E5D5C5 !important;
  border-bottom: 1px solid #E5D5C5 !important;
}
.tm-compare-table td:first-child {
  background: #FDF6EE !important;
  font-weight: 600;
  color: #1C1C1C;
}
 
/* ── RELATED PRODUCTS FLEX ROW (Copper A-Series) ── */
.tm-related-flex-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 1.5rem;
}
.tm-related-card {
  flex: 1 1 180px;
  background: #FAF7F4;
  border: 1px solid #E5D5C5;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.tm-related-img-link img {
  width: 100%;
  height: 160px;
  object-fit: contain;
  display: block;
  background: #F5F0EB;
  padding: 16px;
}
.tm-related-body {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
}
.tm-related-name a {
  font-size: 13px;
  font-weight: bold;
  color: #1c1c1c;
  text-decoration: none;
  line-height: 1.4;
}
.tm-related-price-row {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.tm-related-amount {
  font-size: 15px;
  font-weight: bold;
  color: #b87333;
}
.tm-related-badge {
  font-size: 11px;
  font-weight: 600;
  color: #2a7a4b;
  background: rgba(42,122,75,.1);
  border: 1px solid rgba(42,122,75,.3);
  padding: 2px 7px;
  border-radius: 4px;
}
.tm-related-desc { font-size: 12px; color: #8c7a6b; }
.tm-related-btn {
  display: inline-block;
  margin-top: auto;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 600;
  color: #b87333;
  border: 1px solid #b87333;
  border-radius: 4px;
  text-decoration: none;
  text-align: center;
}
.tm-related-btn:hover { background: #b87333; color: #fff; }
 
/* ── FREE ACCESSORIES KIT — tm-new-acc-* ── */
.tm-new-acc-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1rem;
  margin-top: 1.5rem;
}
.tm-new-acc-card {
  background: #FFFFFF;
  border: 1px solid #E5D5C5;
  border-radius: 10px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.tm-new-acc-img-box {
  background: #F5F0EB;
  padding: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 130px;
}
.tm-new-acc-img-box a { display: block; width: 100%; }
.tm-new-acc-img-box img {
  display: block;
  width: 100%;
  height: 110px;
  object-fit: contain;
  border-radius: 6px;
}
.tm-new-acc-content {
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
}
.tm-new-acc-title-text {
  font-size: 13px;
  font-weight: 700;
  color: #1C1C1C;
  line-height: 1.4;
  margin: 0;
}
.tm-new-acc-title-text a { color: #1C1C1C; text-decoration: none; }
.tm-new-acc-title-text a:hover { color: #B87333; }
.tm-new-acc-meta { display: flex; align-items: center; gap: 6px; }
.tm-new-acc-pill {
  display: inline-block;
  background: #EAF3DE;
  color: #3B6D11;
  font-size: 10px;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 20px;
  letter-spacing: .03em;
  border: 1px solid rgba(61,109,17,.2);
}
.tm-new-acc-details {
  font-size: 12px;
  color: #8C7A6B;
  line-height: 1.5;
  margin: 0;
}
.tm-new-acc-action-btn {
  display: inline-block;
  margin-top: auto;
  padding-top: 8px;
  font-size: 12px;
  font-weight: 600;
  color: #B87333;
  text-decoration: none;
  letter-spacing: .03em;
}
.tm-new-acc-action-btn:hover { color: #8B5513; text-decoration: underline; }
 
/* ── SHORT DESCRIPTION ── */
.ta-root {
  font-family: Georgia, 'Times New Roman', serif;
  max-width: 780px;
  margin: 0 auto;
  padding: 1.5rem 1rem;
}
.ta-top-meta {
  display: flex;
  align-items: center;
  gap: .6rem;
  font-size: 13px;
  color: #4a7c59;
  margin-bottom: 1.5rem;
  font-family: 'Helvetica Neue', Arial, sans-serif;
  letter-spacing: .01em;
}
.ta-top-meta span.sep { color: #bbb; }
.ta-top-meta .check   { color: #4a7c59; font-weight: 700; }
.ta-return-card {
  background: #f4f9f2;
  border: 1px solid #cfe3c9;
  border-radius: 10px;
  padding: 1.1rem 1.4rem;
  margin-bottom: 1.6rem;
  font-family: 'Helvetica Neue', Arial, sans-serif;
}
.ta-return-title { font-size: 14px; color: #2e6b3e; font-weight: 600; margin-bottom: .65rem; }
.ta-return-title span { font-weight: 400; color: #4a7c59; }
.ta-return-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .35rem; }
.ta-return-list li { font-size: 13.5px; color: #3d5c45; padding-left: 1rem; position: relative; }
.ta-return-list li::before { content: '·'; position: absolute; left: 0; color: #7aab82; }
.ta-return-list li a { color: #b05a20; text-decoration: underline; }
.ta-specs-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 1.6rem;
  font-family: 'Helvetica Neue', Arial, sans-serif;
  background: #fafafa;
}
.ta-spec { padding: 1.1rem 1.3rem; border-bottom: 1px solid #ebebeb; border-right: 1px solid #ebebeb; }
.ta-spec:nth-child(even)       { border-right: none; }
.ta-spec:nth-last-child(-n+2)  { border-bottom: none; }
.ta-spec-label { font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: #999; margin-bottom: .3rem; font-weight: 500; }
.ta-spec-value { font-size: 15px; color: #222; font-weight: 600; line-height: 1.3; }
.ta-badge-row  { display: flex; gap: .7rem; flex-wrap: wrap; margin-bottom: 1.6rem; }
.ta-badge {
  border: 1.5px solid #4a7c59;
  border-radius: 7px;
  padding: .5rem 1rem;
  font-size: 13px;
  color: #2e6b3e;
  font-family: 'Helvetica Neue', Arial, sans-serif;
  display: flex;
  align-items: center;
  gap: .4rem;
  font-weight: 500;
}
.ta-trust-card {
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  background: #fafafa;
  padding: 1.2rem 1.5rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem 2rem;
  font-family: 'Helvetica Neue', Arial, sans-serif;
}
.ta-trust-item { display: flex; flex-direction: column; gap: .15rem; font-size: 13.5px; color: #4a4a4a; line-height: 1.45; }
.ta-trust-item strong { color: #111; font-weight: 700; font-size: 14px; }
.ta-trust-item a { color: inherit; text-decoration: none; }
.ta-trust-item a strong { color: #111; }
.ta-keyword-pills { display: flex; flex-wrap: wrap; gap: .55rem .6rem; }
.ta-keyword-pill {
  border: 1.5px solid #e8d5c4;
  border-radius: 999px;
  padding: .45rem 1rem;
  font-size: 13px;
  color: #b05a20;
  background: #fdf6f0;
  font-weight: 400;
  white-space: nowrap;
  line-height: 1.3;
}
.ta-highlight-card {
  border: 1px solid #e8d5c4;
  border-radius: 10px;
  background: #fdf6f0;
  padding: 1rem 1.2rem;
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  margin-bottom: 1.4rem;
}
.ta-highlight-icon { width: 28px; height: 28px; flex-shrink: 0; margin-top: 1px; }
.ta-highlight-icon svg { width: 100%; height: 100%; }
.ta-highlight-title { font-size: 14px; font-weight: 700; color: #b05a20; margin-bottom: .2rem; }
.ta-highlight-sub   { font-size: 12.5px; color: #7a6a5a; }
.ta-included-note {
  border: 1px solid #cfe3c9;
  border-radius: 10px;
  background: #f4f9f2;
  padding: .9rem 1.1rem .9rem 2.2rem;
  font-size: 13.5px;
  color: #2e6b3e;
  font-weight: 500;
  line-height: 1.5;
  position: relative;
}
.ta-included-note::before { content: '✓'; position: absolute; left: .8rem; top: .95rem; font-size: 13px; color: #4a7c59; font-weight: 700; }
 
/* ── LONG DESCRIPTION — LAYOUT ── */
.section       { padding: 4.5rem 2rem; }
.section-white { background: var(--white); }
.section-copper{ background: var(--copper-bg); }
.section-dark  { background: var(--charcoal); }
.container     { max-width: 1060px; margin: 0 auto; }
 
/* ── LONG DESCRIPTION — LABELS & TITLES ── */
.slabel {
  font-size: .7rem;
  letter-spacing: .35em;
  text-transform: uppercase;
  color: var(--copper);
  font-weight: 500;
  margin-bottom: .75rem;
}
.section-dark .slabel { color: var(--copper-light); }
.stitle {
  font-family: 'Jost', sans-serif;
  font-size: clamp(1.5rem, 2.8vw, 2.1rem);
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1.25rem;
}
.section-dark .stitle { color: #FAF7F4; }
 
/* ── LONG DESCRIPTION — PROSE ── */
.prose p        { color: var(--mid); line-height: 1.85; margin-bottom: 1.2rem; font-size: .95rem; }
.prose h3       { font-family: 'Jost', sans-serif; font-size: 1.15rem; font-weight: 700; color: var(--charcoal); margin: 1.5rem 0 .5rem; }
.prose h3:first-child { margin-top: 0; }
.prose ul       { color: var(--mid); font-size: .93rem; line-height: 1.8; padding-left: 1.5rem; margin-bottom: 1.2rem; }
.prose ul li    { margin-bottom: .35rem; }
.prose strong   { color: var(--charcoal); }
.prose a        { color: var(--copper); font-weight: 500; text-decoration: none; }
.prose a:hover  { text-decoration: underline; }
.prose em       { font-style: italic; color: var(--mid); }
 
/* ── LONG DESCRIPTION — BENEFITS GRID ── */
.benefits-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1.25rem;
  margin-top: 2rem;
}
.benefit-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 1.5rem 1.25rem;
}
.benefit-card h3       { font-size: .97rem; font-weight: 700; color: var(--charcoal); margin-bottom: .5rem; }
.benefit-card p        { font-size: .82rem; color: var(--light); line-height: 1.65; }
.benefit-card strong   { color: var(--charcoal); }
 
/* ── LONG DESCRIPTION — SPEC TABLE ── */
.spec-table { width: 100%; border-collapse: collapse; margin-top: 1.5rem; font-size: .88rem; }
.spec-table tr:nth-child(even) td,
.spec-table tr:nth-child(even) th { background: var(--off); }
.spec-table td, .spec-table th {
  padding: .8rem 1.1rem;
  border-bottom: 1px solid var(--border);
  color: var(--mid);
  text-align: left;
  vertical-align: top;
}
.spec-table th { font-weight: 600; color: var(--charcoal); width: 42%; }
 
/* ── LONG DESCRIPTION — USE-CASE CARDS ── */
.use-cases {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1.25rem;
  margin-top: 2rem;
}
.use-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 1.5rem 1.25rem;
  border-left: 3px solid var(--copper);
}
.use-title { font-size: .95rem; font-weight: 700; color: var(--charcoal); margin-bottom: .4rem; }
.use-text  { font-size: .82rem; color: var(--light); line-height: 1.65; }
 
/* ── LONG DESCRIPTION — NOTICE BOX ── */
.notice-box {
  background: #FFF8E7;
  border: 1px solid #E8C44A;
  border-radius: 6px;
  padding: 1.25rem 1.5rem;
  margin-top: 1.5rem;
  font-size: .88rem;
  color: #6B5000;
  line-height: 1.7;
}
.notice-box strong { color: #4A3800; }
 
/* ── LONG DESCRIPTION — RECIPE TABLE ── */
.recipe-table { width: 100%; border-collapse: collapse; font-size: .86rem; margin-top: 1.5rem; }
.recipe-table th {
  background: var(--charcoal);
  color: #FAF7F4;
  padding: .7rem .9rem;
  text-align: left;
  font-size: .78rem;
  font-weight: 500;
}
.recipe-table th.skewer-col { background: var(--copper-dark); }
.recipe-table td {
  padding: .65rem .9rem;
  border-bottom: 1px solid var(--border);
  color: var(--mid);
  vertical-align: top;
}
.recipe-table tr:nth-child(even) td { background: rgba(250,247,244,.6); }
.recipe-table td:first-child { font-weight: 600; color: var(--charcoal); }
 
/* ── LONG DESCRIPTION — AUDIENCE GRID ── */
.audience-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 1.1rem;
  margin-top: 1.75rem;
}
.audience-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-left: 3px solid var(--copper);
  padding: 1.25rem;
  border-radius: 0 5px 5px 0;
}
.audience-card h3 { font-size: .92rem; font-weight: 600; color: var(--charcoal); margin-bottom: .35rem; }
.audience-card p  { font-size: .82rem; color: var(--mid); line-height: 1.65; }
 
/* ── LONG DESCRIPTION — CULTURAL GRID ── */
.cultural-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 1rem;
  margin-top: 1.5rem;
}
.cultural-card { background: var(--off); border: 1px solid var(--border); border-radius: 5px; padding: 1.1rem; }
.cultural-card .cult-name   { font-size: .9rem; font-weight: 600; color: var(--charcoal); margin-bottom: .2rem; }
.cultural-card .cult-region { font-size: .72rem; color: var(--copper); font-weight: 500; letter-spacing: .06em; text-transform: uppercase; margin-bottom: .4rem; }
.cultural-card .cult-desc   { font-size: .8rem; color: var(--light); line-height: 1.55; }
.section-dark .cultural-card { background: rgba(250,247,244,.06); border-color: rgba(255,255,255,.12); }
.section-dark .cultural-card .cult-name   { color: #FAF7F4; }
.section-dark .cultural-card .cult-region { color: var(--copper-light); }
.section-dark .cultural-card .cult-desc   { color: rgba(250,247,244,.6); }
 
/* ── LONG DESCRIPTION — FAQ ── */
.faq-list { margin-top: 2rem; }
.faq-item { border-bottom: 1px solid var(--border); }
.faq-item:first-child { border-top: 1px solid var(--border); }
.faq-question {
  padding: 1.1rem 0;
  font-size: .95rem;
  font-weight: 500;
  color: var(--charcoal);
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  list-style: none;
}
.faq-question::-webkit-details-marker { display: none; }
.faq-q-icon { color: var(--copper); font-size: 1.2rem; transition: transform .25s; flex-shrink: 0; margin-left: .75rem; }
details[open] .faq-q-icon { transform: rotate(45deg); }
.faq-answer { padding: 0 0 1.1rem; color: var(--mid); font-size: .88rem; line-height: 1.75; }
.faq-answer strong { color: var(--charcoal); }
 
/* ── RELATED PRODUCTS GRID ── */
.related-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1.25rem;
  margin-top: 2rem;
}
.rel-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 6px;
  overflow: hidden;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  transition: border-color .2s, box-shadow .2s;
}
.rel-card:hover { border-color: var(--copper); box-shadow: 0 4px 16px rgba(0,0,0,.08); }
.rel-img {
  height: 150px;
  min-height: 150px;
  max-height: 150px;
  background: var(--off);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 12px;
  flex-shrink: 0;
}
.rel-img img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  display: block;
  width: auto;
  height: auto;
  font-size: 0;
}
.rel-info {
  padding: 1.1rem 1.25rem;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.rel-name {
  font-size: .88rem;
  font-weight: 600;
  color: var(--charcoal);
  margin-bottom: .3rem;
  line-height: 1.4;
  flex: 1;
}
.rel-price {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.3rem;
  color: var(--copper);
  font-weight: 600;
  margin-top: auto;
}
.rel-badge { font-size: .75rem; color: var(--light); margin-top: .2rem; }
 
/* ── GOOGLE REVIEWS ── */
.gr-section    { padding: 4.5rem 2rem; background: var(--copper-bg); }
.gr-container  { max-width: 1060px; margin: 0 auto; }
.gr-slabel     { font-size: .7rem; letter-spacing: .35em; text-transform: uppercase; color: var(--copper); font-weight: 500; margin-bottom: .75rem; }
.gr-title      { font-size: clamp(1.4rem, 2.6vw, 2rem); font-weight: 700; line-height: 1.25; margin-bottom: 1.75rem; }
.gr-header     { display: flex; align-items: flex-start; gap: 2rem; margin-bottom: 2.5rem; flex-wrap: wrap; }
.gr-score      { text-align: center; flex-shrink: 0; background: var(--white); border: 1px solid var(--border); border-radius: 10px; padding: 1.1rem 1.5rem; }
.gr-score-num  { font-family: 'Cormorant Garamond', serif; font-size: 3.6rem; font-weight: 600; color: var(--charcoal); line-height: 1; }
.gr-score-stars{ color: #F4B400; font-size: 1.1rem; letter-spacing: .12em; margin: .25rem 0 .15rem; }
.gr-score-label{ font-size: .72rem; color: var(--light); white-space: nowrap; }
.gr-intro      { font-size: .88rem; color: var(--mid); line-height: 1.8; flex: 1; min-width: 200px; padding-top: .25rem; }
.gr-grid       { display: grid; grid-template-columns: repeat(auto-fill, minmax(285px, 1fr)); gap: 1.2rem; }
.gr-card       { background: var(--white); border: 1px solid var(--border); border-radius: 8px; padding: 1.35rem 1.3rem; display: flex; flex-direction: column; }
.gr-card-top   { display: flex; align-items: flex-start; justify-content: space-between; gap: .6rem; margin-bottom: .8rem; }
.gr-avatar-wrap{ display: flex; align-items: center; gap: .65rem; }
.gr-avatar     { width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: .95rem; font-weight: 700; color: #fff; flex-shrink: 0; }
.gr-name       { font-size: .88rem; font-weight: 600; color: var(--charcoal); margin-bottom: .1rem; }
.gr-date       { font-size: .72rem; color: var(--light); }
.gr-badge      { display: inline-flex; align-items: center; gap: .3rem; background: var(--white); border: 1px solid var(--border); border-radius: 5px; padding: .22rem .5rem .22rem .4rem; flex-shrink: 0; }
.gr-badge-text { font-size: .62rem; font-weight: 700; color: var(--mid); letter-spacing: .06em; text-transform: uppercase; line-height: 1; }
.gr-stars      { color: #F4B400; font-size: .9rem; letter-spacing: .06em; margin-bottom: .6rem; }
.gr-body       { font-size: .86rem; color: var(--mid); line-height: 1.78; flex: 1; margin-bottom: .9rem; }
.gr-body.empty { color: var(--copper); font-style: italic; opacity: .7; }
.gr-foot       { display: flex; align-items: center; gap: .45rem; padding-top: .65rem; border-top: 1px solid var(--border); margin-top: auto; }
.gr-foot-text  { font-size: .7rem; color: var(--light); font-style: italic; }
.gr-note       { font-size: .73rem; color: var(--light); text-align: center; margin-top: 1.35rem; line-height: 1.6; }
 
/* ── CTA BUTTONS ── */
.btn-primary {
  background: var(--copper);
  color: #fff;
  padding: .85rem 1.75rem;
  border-radius: 4px;
  text-decoration: none;
  font-weight: 500;
  font-size: .9rem;
  display: inline-block;
  border: none;
  cursor: pointer;
  transition: background .2s;
}
.btn-primary:hover { background: var(--copper-dark); }
.btn-outline {
  border: 1px solid var(--copper);
  color: var(--copper);
  background: transparent;
  padding: .85rem 1.75rem;
  border-radius: 4px;
  text-decoration: none;
  font-weight: 400;
  font-size: .9rem;
  display: inline-block;
  transition: background .2s;
}
.btn-outline:hover { background: var(--copper-bg); }
 
/* ── INTERNAL LINKS ── */
.int-links {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: .85rem;
  margin-top: 1.75rem;
}
.int-link {
  color: var(--copper-accent);
  text-decoration: none;
  font-size: .85rem;
  padding: .75rem;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 4px;
  display: block;
}
.int-link:hover { border-color: rgba(255,255,255,.3); }
 
/* ── RESPONSIVE ── */
@media (max-width: 900px) {
  .tm-new-acc-grid        { grid-template-columns: repeat(3, 1fr); }
  .related-grid           { grid-template-columns: repeat(3, 1fr); }
  #customer-reviews .tm-acc-grid  { grid-template-columns: repeat(2, 1fr) !important; }
  #related-products .tm-acc-grid  { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 640px) {
  .section                { padding: 3rem 1.25rem; }
  .tm-cert-cols           { grid-template-columns: 1fr; }
  .tm-gas-grid            { grid-template-columns: 1fr; }
  .tm-hi-grid             { grid-template-columns: 1fr 1fr; }
  .tm-acc-grid            { grid-template-columns: repeat(3, 1fr); }
  .tm-fin-rate            { font-size: 3rem; }
  .tm-loc-pill            { font-size: .78rem; padding: .45rem 1rem; }
  .recipe-table           { font-size: .78rem; }
  .recipe-table td,
  .recipe-table th        { padding: .5rem .6rem; }
  .gr-section             { padding: 3rem 1.25rem; }
}
@media (max-width: 580px) {
  .tm-new-acc-grid        { grid-template-columns: repeat(2, 1fr); gap: .75rem; }
  .related-grid           { grid-template-columns: repeat(2, 1fr); }
  #customer-reviews .tm-acc-grid,
  #related-products .tm-acc-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 400px) {
  .tm-hi-grid             { grid-template-columns: 1fr; }
  .tm-acc-grid            { grid-template-columns: 1fr; }
  .tm-spec-grid           { grid-template-columns: repeat(2, 1fr); }
  .tm-new-acc-grid        { grid-template-columns: 1fr; }
  .related-grid           { grid-template-columns: 1fr; }
}
 
/* =====================================================
   PRODUCT SPEC SHEET – ADDITIONAL CSS
   Paste into: Appearance > Customize > Additional CSS
   All rules scoped to .psd-* — no side effects.
   ===================================================== */
 
/* ── Outer card ───────────────────────────────────────── */
.psd-section {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 18px;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  background-color: #fafafa;
  margin: 20px 0;
}
 
/* ── Left group (icon + text) ─────────────────────────── */
.psd-left {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
 
/* ── File icon box ────────────────────────────────────── */
.psd-icon-box {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 6px;
  background-color: #f0f0f0;
}
 
/* ── Text meta ────────────────────────────────────────── */
.psd-meta {
  min-width: 0;
}
 
.psd-title {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #111111 !important;
  line-height: 1.3 !important;
  white-space: nowrap;
}
 
.psd-subtitle {
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #888888 !important;
}
 
/* ── Download button ──────────────────────────────────── */
.psd-download-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  padding: 9px 18px;
  border-radius: 6px;
  background-color: #111111;
  color: #ffffff !important;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background-color 0.18s ease, border-color 0.18s ease;
}
 
.psd-download-btn svg {
  flex-shrink: 0;
}
 
/* Hover state */
.psd-download-btn:hover,
.psd-download-btn:focus-visible {
  background-color: #333333;
  color: #ffffff !important;
  outline: none;
}
 
/* Keyboard focus ring */
.psd-download-btn:focus-visible {
  border-color: #888888;
}
 
/* ── Mobile: stack vertically on narrow screens ─────── */
@media (max-width: 520px) {
  .psd-section {
    flex-direction: column;
    align-items: flex-start;
  }
 
  .psd-download-btn {
    width: 100%;
    justify-content: center;
  }
}