/* TeakGarden design synchronization: category image layout. */
.tg-category-head.has-category-image {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 34%);
  align-items: center;
  gap: 42px;
}
.tg-category-head:not(.has-category-image) {
  grid-template-columns: minmax(0, 850px);
}
.tg-category-figure {
  margin: 0;
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: var(--ivory);
}
.tg-category-figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tg-header .tg-nav a,
.tg-header .tg-nav button,
.tg-header .tg-actions .tg-btn {
  white-space: nowrap;
}
@media (min-width: 1250px) and (max-width: 1400px) {
  .tg-header .tg-brand-header { width: 145px; min-width: 145px; }
  .tg-header .tg-nav { gap: 10px; }
  .tg-header .tg-nav a,
  .tg-header .tg-nav button { font-size: 12px; }
  .tg-header .tg-search { display: block; width: 155px; flex: 0 0 155px; }
  .tg-header .tg-search input { font-size: 11px; }
  .tg-header .tg-actions { gap: 5px; }
  .tg-header .tg-actions .tg-btn { font-size: 11px; padding-inline: 7px; }
}
@media (min-width: 1101px) and (max-width: 1249px) {
  .tg-header .tg-search { display: none; }
  .tg-header .tg-nav { gap: 12px; }
}
.tg-home-featured {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  background: transparent;
  border: 0;
}
.tg-home-featured .tg-product-card-image { aspect-ratio: 1.45 / 1; }
.tg-home-featured .tg-product-card-body { padding: 22px 0 10px; }
.tg-home-featured .tg-product-card {
  border: 0;
  background: transparent;
}
.tg-home-featured .tg-product-card h3 { font-size: 25px; }
.tg-home-family-links { border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); padding: 20px 0; margin-top: 32px; }
.tg-home-family-links > div { display: flex; flex-wrap: wrap; gap: 8px 28px; margin-top: 8px; }
.tg-home-family-links a { color: var(--graphite); text-decoration: none; font-weight: 600; }
.tg-home-family-links a:hover { color: var(--moss); }
.tg-home-family-links a span { color: var(--moss); }
.tg-home-section-head { display: flex; justify-content: space-between; align-items: end; gap: 24px; }
.tg-home-resources .tg-card-grid { margin-top: 22px; }
.tg-home-resources .tg-card h3 a { color: var(--graphite); text-decoration: none; }
.tg-home-resources .tg-card p { min-height: 76px; }
@media (max-width: 860px) {
  .tg-category-head.has-category-image {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .tg-category-figure {
    aspect-ratio: 16 / 10;
  }
  .tg-home-featured { grid-template-columns: 1fr; }
  .tg-home-section-head { display: block; }
  .tg-home-resources .tg-card p { min-height: 0; }
}
/* Global typography and footer follow the final design system. */
body.tg-site { font-size: 16px; }
.tg-site .tg-section h2 { font-size: clamp(32px, 3vw, 40px); }
.tg-site .tg-btn { font-size: 14px; font-weight: 600; }
.tg-site .tg-product-type { color: var(--moss); }
.tg-footer { background: var(--ivory); }
.tg-footer-grid { grid-template-columns: minmax(230px, 1.55fr) repeat(4, minmax(0, 1fr)); gap: 30px; }
.tg-footer-grid > div:first-child { min-width: 0; }
.tg-footer .tg-note { line-height: 1.65; }
.tg-footer .tg-footer-relationship { margin-top: 12px; }
.tg-footer h2 { font-size: 12px; font-weight: 700; line-height: 1.9; margin: 0 0 15px; color: var(--muted); }
.tg-footer-grid > div:last-child .tg-btn {
  display: inline-flex;
  width: fit-content;
  min-width: 134px;
  margin: 0 0 8px;
  padding: 7px 10px;
  color: var(--moss);
}
.tg-footer-grid > div:last-child .tg-btn-primary { color: #fff; }
.tg-footer-grid > div:last-child .tg-btn:hover { color: var(--moss); }
.tg-footer-grid > div:last-child .tg-btn-primary:hover { color: #fff; }
.tg-footer-bottom { align-items: center; }
.tg-header .tg-nav button[aria-expanded="true"] { color: var(--moss); box-shadow: inset 0 -2px var(--heritage); }
.tg-site .tg-btn-wa::before {
  content: "";
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%2325D366%22%20d%3D%22M12%202a10%2010%200%200%200-8.66%2015L2%2022l5.13-1.3A10%2010%200%201%200%2012%202Z%22%2F%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M8.08%206.7c-.25%200-.5.08-.68.28-.46.5-.75%201.1-.75%201.8%200%202.6%203.53%206.7%207.5%208.1%201.8.63%203.4.4%204.15-.5.2-.25.3-.8.3-1.3%200-.22-.13-.35-.34-.45l-2.45-1.15c-.2-.09-.37-.04-.5.15l-.9%201.1c-.15.18-.32.2-.55.09-1.43-.66-2.85-1.93-3.58-3.35-.11-.23-.08-.4.1-.55l.69-.72c.18-.17.23-.36.13-.59L10.08%207c-.1-.21-.26-.3-.48-.3H8.08Z%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
}
.tg-mobile-header-rfq { display: none; }
@media (max-width: 960px) {
  .tg-mobile-header-rfq { display: inline-flex; min-height: 34px; padding: 4px 11px; margin-left: auto; font-size: 12px !important; }
  .tg-mobile-trigger { margin-left: 4px; }
}
@media (max-width: 860px) {
  .tg-site .tg-section h2 { font-size: 30px; }
  .tg-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tg-footer-grid > div:first-child { grid-column: 1 / -1; }
}
/* Homepage follows the final editorial section order. */
.tg-home-hero .tg-hero-copy { max-width: 570px; }
.tg-home-hero .tg-hero-actions { max-width: 390px; }
.tg-home-proof { background: var(--ivory); padding: 23px 0; }
.tg-home-proof ul { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; list-style:none; margin:0; padding:0; }
.tg-home-proof li { border-top:2px solid var(--heritage); padding-top:11px; font-size:12px; line-height:1.4; font-weight:600; }
.tg-home-collections { background:#fff; }
.tg-home-collections .tg-home-section-head { align-items:end; }
.tg-home-collections .tg-section-lede { max-width:570px; margin-bottom:0; }
.tg-home-featured { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:26px; }
.tg-home-collection-card { min-width:0; }
.tg-home-collection-image { display:block; aspect-ratio:1.58 / 1; overflow:hidden; background:var(--ivory); }
.tg-home-collection-image img { display:block; width:100%; height:100%; object-fit:cover; }
.tg-home-image-fallback { display:grid; place-items:center; height:100%; color:var(--muted); font-size:13px; }
.tg-home-collection-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-top:15px; }
.tg-home-collection-heading h3 { font-size:25px; line-height:1.2; margin:0; }
.tg-home-collection-heading h3 a { color:var(--graphite); text-decoration:none; }
.tg-home-collection-card p { color:var(--body); margin:8px 0 0; font-size:14px; line-height:1.65; max-width:590px; }
.tg-home-family-links { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin-top:34px; border:0; padding:0; }
.tg-home-family-links a { border:1px solid var(--hair); padding:12px 14px; display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:13px; }
.tg-home-b2b .tg-split { align-items:center; }
.tg-home-figure { margin:0; min-width:0; }
.tg-home-figure .tg-ai-image { display:block; width:100%; height:100%; min-height:420px; background-size:cover; background-position:center; }
.tg-home-b2b-copy { padding:14px 0; }
.tg-home-checklist { list-style:none; padding:0; margin:28px 0; border-top:1px solid var(--hair); }
.tg-home-checklist li { padding:10px 0; border-bottom:1px solid var(--hair); font-size:14px; line-height:1.5; }
.tg-home-checklist li::before { content:"—"; color:var(--heritage); margin-right:12px; }
.tg-home-b2b-bottom { display:flex; align-items:start; gap:20px; }
.tg-home-b2b-bottom .tg-btn { white-space:nowrap; }
.tg-home-b2b-bottom p { margin:0; font-size:12px; line-height:1.6; color:var(--muted); }
.tg-home-process-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; margin-top:28px; }
.tg-home-process-step { min-width:0; }
.tg-home-process-visual { display:block; width:100%; aspect-ratio:1.42 / 1; overflow:hidden; background-color:var(--canvas); background-size:cover; background-position:center; }
.tg-home-process-step .tg-home-process-visual.tg-ai-workshop { min-height:0; }
.tg-home-process-visual img { display:block; width:100%; height:100%; object-fit:cover; }
.tg-home-process-design { display:grid; place-items:center; position:relative; color:var(--moss); background-color:#e9e8e1; background-image:linear-gradient(90deg,transparent 49.8%,rgba(70,87,43,.12) 50%,transparent 50.2%),linear-gradient(transparent 49.8%,rgba(70,87,43,.12) 50%,transparent 50.2%); background-size:25px 25px; }
.tg-home-process-design::after { content:""; width:38%; height:48%; border:2px solid rgba(70,87,43,.45); transform:skewY(-12deg); position:absolute; }
.tg-home-process-design span { position:relative; z-index:1; font-size:24px; letter-spacing:.12em; background:#e9e8e1; padding:3px 9px; }
.tg-home-process-production { display:grid; place-items:center; position:relative; color:var(--moss); background-color:#e9e8e1; background-image:repeating-linear-gradient(0deg,transparent 0,transparent 15px,rgba(70,87,43,.13) 16px,transparent 17px); }
.tg-home-process-production::after { content:""; width:48%; height:42%; border:2px solid rgba(70,87,43,.45); box-shadow:9px 9px 0 -2px #e9e8e1,9px 9px 0 0 rgba(70,87,43,.35); position:absolute; }
.tg-home-process-production span { position:relative; z-index:1; font-size:24px; letter-spacing:.12em; background:#e9e8e1; padding:3px 9px; }
.tg-home-step-number { display:block; margin-top:13px; color:var(--moss); font-size:12px; font-weight:700; }
.tg-home-process-step h3 { margin:2px 0 5px; font-size:20px; line-height:1.25; }
.tg-home-process-step p { margin:0; font-size:13px; line-height:1.65; color:var(--body); }
.tg-home-lounge .tg-split { align-items:center; }
.tg-home-lounge .tg-home-figure .tg-ai-image { min-height:390px; }
.tg-home-subtitle { font-size:13px; color:var(--moss); font-weight:650; }
.tg-home-first-container { border-top:1px solid var(--hair); border-bottom:1px solid var(--hair); padding:48px 0; }
.tg-home-first-container .tg-split { align-items:center; grid-template-columns:1.2fr .8fr; }
.tg-home-first-container .tg-btn { white-space:nowrap; }
.tg-home-first-container .tg-note { margin:9px 0 0; }
.tg-home-resources { border-bottom:1px solid var(--hair); padding:22px 0; }
.tg-home-resources-row { display:grid; grid-template-columns:130px minmax(0,1fr) auto; gap:22px; align-items:center; }
.tg-home-guide-links { display:flex; align-items:center; gap:22px; min-width:0; }
.tg-home-guide-links a { font-size:12px; line-height:1.4; color:var(--body); text-decoration:none; }
.tg-home-guide-links a:hover { color:var(--moss); text-decoration:underline; }
.tg-home-resources-row > .tg-link { font-size:12px; white-space:nowrap; }
body.home .tg-footer { margin-top:0; }
@media (max-width: 960px) {
  .tg-home-proof ul { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .tg-home-family-links { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .tg-home-process-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tg-home-resources-row { grid-template-columns:1fr; gap:10px; }
  .tg-home-guide-links { flex-wrap:wrap; gap:10px 18px; }
}
@media (max-width: 860px) {
  .tg-home-proof ul { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  .tg-home-featured { grid-template-columns:1fr; }
  .tg-home-family-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tg-home-b2b .tg-home-figure { order:0; }
  .tg-home-b2b-copy { order:1; }
  .tg-home-b2b-bottom { display:block; }
  .tg-home-b2b-bottom p { margin-top:14px; }
  .tg-home-first-container .tg-split { grid-template-columns:1fr; }
  .tg-home-figure .tg-ai-image { min-height:280px; }
  .tg-home-guide-links { display:grid; gap:9px; }
}
@media (max-width: 540px) {
  .tg-home-process-grid { gap:14px; }
  .tg-home-process-visual { aspect-ratio:1.1 / 1; }
  .tg-home-family-links a { padding:10px; font-size:12px; }
  .tg-home-proof li { font-size:11px; }
}
/* WooCommerce category template. */
.tg-category-head.has-category-image {
  grid-template-columns:minmax(0,1fr) minmax(0,43%);
  grid-template-rows:auto auto;
  gap:0 48px;
  padding:46px 0;
}
.tg-category-head:not(.has-category-image) { grid-template-columns:minmax(0,850px); }
.tg-category-head > div:first-child { grid-column:1; grid-row:1; }
.tg-category-head .tg-category-figure { grid-column:2; grid-row:1 / 3; aspect-ratio:1.85 / 1; align-self:center; }
.tg-category-head .tg-category-cta { grid-column:1; grid-row:2; margin-top:12px; align-self:start; }
.tg-category-head h1 { max-width:700px; font-size:clamp(36px,3.3vw,46px); }
.tg-category-head p { max-width:650px; margin-bottom:0; }
.tg-breadcrumb strong { font-weight:650; color:var(--graphite); }
.tg-proof { background:var(--ivory); padding:17px 0; }
.tg-proof-list { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; }
.tg-proof-list li { line-height:1.35; font-size:12px; }
.tg-category-listing { padding:38px 0 60px; }
.tg-category-listing .tg-content-grid { grid-template-columns:250px minmax(0,1fr); gap:38px; }
.tg-category-listing .tg-sidebar { border:0; border-top:1px solid var(--border); }
.tg-category-listing .tg-sidebar-head { padding:13px 0; }
.tg-category-listing .tg-side-group { border-color:var(--hair); }
.tg-category-subnav { display:flex; gap:10px; flex-wrap:wrap; align-items:center; margin-bottom:22px; }
.tg-category-subnav .tg-eyebrow { margin-right:7px; }
.tg-category-subnav a { border:1px solid var(--hair); padding:6px 12px; color:var(--graphite); text-decoration:none; font-size:12px; }
.tg-category-subnav a:hover { border-color:var(--moss); color:var(--moss); }
.tg-archive-toolbar { display:flex; align-items:center; gap:5px; min-height:47px; border-bottom:1px solid var(--border); margin-bottom:20px; font-size:13px; }
.tg-archive-toolbar strong { font-weight:700; }
.tg-archive-toolbar > span { color:var(--muted); }
.tg-archive-sort { display:flex; gap:8px; align-items:center; margin-left:auto; }
.tg-archive-sort label { color:var(--muted); }
.tg-archive-sort select { max-width:178px; height:34px; border:0; background:#fff; color:var(--graphite); font:inherit; cursor:pointer; }
.tg-category-listing .tg-product-card { border:0; }
.tg-category-listing .tg-product-card-body { padding:12px 0 8px; }
.tg-category-listing .tg-product-card h3 { font-size:19px; line-height:1.3; }
.tg-category-listing .tg-product-card p { min-height:0; line-height:1.5; }
.tg-category-listing .tg-product-card-image { aspect-ratio:1.25 / 1; }
.tg-category-listing .tg-product-card-image img { object-fit:cover; }
.tg-category-listing .tg-card-actions { margin-top:14px; }
.tg-category-pagination { display:flex; gap:8px; margin-top:30px; }
.tg-category-pagination a,.tg-category-pagination span { padding:6px 11px; border:1px solid var(--hair); color:var(--moss); text-decoration:none; }
.tg-category-pagination .current { background:var(--moss); color:#fff; }
.tg-category-support { border-top:1px solid var(--hair); }
.tg-category-support h2 { margin-bottom:28px; }
.tg-category-support .tg-support-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 32px; margin:0; background:transparent; border:0; }
.tg-category-support .tg-support-grid article { padding:15px 0 0; border-top:2px solid var(--heritage); background:transparent; }
.tg-category-support .tg-support-grid h3 { margin:0 0 7px; font-size:17px; }
.tg-category-support .tg-support-grid p { margin:0; font-size:13px; line-height:1.6; color:var(--body); }
.tg-category-support .tg-cta-row { margin-top:32px; }
.tg-category-related { background:var(--ivory); padding:35px 0; }
.tg-category-related nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:12px; }
.tg-category-related a { display:flex; justify-content:space-between; gap:10px; padding:12px 14px; color:var(--graphite); text-decoration:none; background:#fff; border:1px solid var(--hair); font-size:13px; font-weight:600; }
.tg-category-related a:hover { border-color:var(--moss); }
.tg-category-related a span { color:var(--moss); }
.tg-category-head h1 { font-weight:600; letter-spacing:-.04em; line-height:1.1; }
.tg-category-listing .tg-side-group:not(.is-expanded) .tg-side-child { display:none; }
.tg-category-listing .tg-side-group:not(.is-expanded):hover .tg-side-child,
.tg-category-listing .tg-side-group:not(.is-expanded):focus-within .tg-side-child { display:block; }
body.tax-product_cat .tg-footer,body.post-type-archive-product .tg-footer { margin-top:0; }
.tg-mobile-category-browser summary { display:flex; justify-content:space-between; gap:12px; }
.tg-mobile-category-current { font-size:12px; color:var(--moss); font-weight:600; }
@media (max-width: 960px) {
  .tg-category-head.has-category-image { grid-template-columns:minmax(0,1fr) minmax(0,40%); gap:0 26px; }
  .tg-proof-list { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .tg-category-listing .tg-content-grid { grid-template-columns:1fr; }
  .tg-category-listing .tg-sidebar { display:none; }
}
@media (max-width: 860px) {
  .tg-category-head.has-category-image { grid-template-columns:1fr; gap:14px; padding:26px 0; }
  .tg-category-head > div:first-child { grid-column:1; grid-row:1; }
  .tg-category-head .tg-category-figure { grid-column:1; grid-row:2; aspect-ratio:1.35 / 1; }
  .tg-category-head .tg-category-cta { grid-column:1; grid-row:3; margin:0; }
  .tg-category-head .tg-category-cta .tg-btn-primary { width:100%; }
  .tg-category-head .tg-category-cta .tg-btn:not(.tg-btn-primary) { display:none; }
  .tg-category-head h1 { font-size:34px; }
  .tg-proof-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tg-category-listing { padding:22px 0 44px; }
  .tg-category-listing .tg-product-grid { grid-template-columns:1fr; }
  .tg-category-listing .tg-card-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
  .tg-category-listing .tg-card-actions .tg-link { display:grid; place-items:center; padding:8px; border:1px solid var(--border); text-decoration:none; }
  .tg-category-listing .tg-card-actions .tg-btn { width:100%; }
  .tg-category-support .tg-support-grid { grid-template-columns:1fr; gap:20px; }
  .tg-category-related nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 540px) {
  .tg-category-head h1 { font-size:32px; }
  .tg-category-related a { font-size:12px; padding:10px; }
  .tg-proof-list li { font-size:11px; }
}

/* Single product v2: real WooCommerce gallery, decisions and product data. */
.tg-single-product .tg-product-breadcrumb { padding:22px 0 0; display:flex; flex-wrap:wrap; align-items:center; gap:0 8px; line-height:1.5; }
.tg-single-product .tg-product-breadcrumb strong { color:var(--graphite); }
.tg-product-mobile-heading { display:none; }
.tg-single-product .tg-product-layout { grid-template-columns:250px minmax(0,1.42fr) minmax(330px,1fr); gap:34px; padding:22px 0 62px; align-items:start; }
.tg-single-product .tg-sidebar { position:static; border:0; border-top:1px solid var(--border); }
.tg-single-product .tg-sidebar-head { padding:12px 0; }
.tg-single-product .tg-side-parent { padding:10px 0; border-bottom:1px solid var(--hair); }
.tg-single-product .tg-side-child { padding:7px 12px; }
.tg-single-product .tg-side-group:not(.is-expanded) .tg-side-child { display:none; }
.tg-single-product .tg-side-group:not(.is-expanded):hover .tg-side-child,
.tg-single-product .tg-side-group:not(.is-expanded):focus-within .tg-side-child { display:block; }
.tg-single-product .tg-gallery { min-width:0; }
.tg-single-product .tg-gallery-main { aspect-ratio:1.15 / 1; overflow:hidden; }
.tg-single-product .tg-gallery-main img { display:block; object-fit:contain; }
.tg-single-product .tg-decision { border:0; padding:0; min-width:0; }
.tg-single-product .tg-decision > .tg-product-type { display:none; }
.tg-single-product .tg-product-title { font-size:clamp(32px,2.6vw,40px); margin:0 0 10px; line-height:1.1; }
.tg-single-product .tg-product-intro { margin:0; font-size:15px; line-height:1.65; }
.tg-single-product .tg-specs { margin:22px 0 18px; border-top-color:var(--graphite); }
.tg-single-product .tg-spec { grid-template-columns:minmax(0,43%) minmax(0,57%); gap:8px; padding:8px 0; font-size:13px; line-height:1.5; }
.tg-single-product .tg-spec strong { font-weight:650; }
.tg-single-product .tg-field { margin-top:18px; }
.tg-single-product .tg-field label { text-transform:uppercase; letter-spacing:.08em; color:var(--muted); font-size:11px; margin:0 0 5px; }
.tg-grade-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.tg-grade-heading .tg-link { font-size:11px; white-space:nowrap; }
.tg-single-product .tg-qty { max-width:160px; }
.tg-single-product .tg-qty input { min-width:0; }
.tg-single-product .tg-decision > .tg-btn-primary { margin-top:20px; min-height:50px; }
.tg-single-product .tg-decision > .tg-btn-wa,
.tg-single-product .tg-decision > .tg-btn-neutral { display:inline-flex; width:calc(50% - 6px); min-height:46px; }
.tg-single-product .tg-decision > .tg-btn-neutral { margin-left:8px; }
.tg-single-product .tg-decision > .tg-btn-wa { font-size:0; }
.tg-single-product .tg-decision > .tg-btn-wa::after { content:"WhatsApp"; font-size:13px; }
.tg-product-custom { margin:12px 0 0; background:var(--ivory); padding:11px 14px; text-align:center; font-size:13px; font-weight:650; line-height:1.4; }
.tg-product-custom a { color:var(--moss); text-decoration:none; }
.tg-product-response { color:var(--muted); font-size:11px; margin:8px 0 0; line-height:1.4; }
.tg-product-mobile-browser { display:none; }
.tg-single-product .tg-tabs { padding:0 0 56px; border-top:1px solid var(--hair); }
.tg-product-tab-nav { display:flex; gap:30px; border-bottom:1px solid var(--hair); }
.tg-product-tab-nav button { border:0; border-bottom:2px solid transparent; margin-bottom:-1px; padding:15px 0; background:none; font:inherit; font-size:14px; font-weight:600; cursor:pointer; color:var(--body); }
.tg-product-tab-nav button[aria-selected="true"] { color:var(--graphite); border-bottom-color:var(--moss); }
.tg-product-panels { padding:28px 0 0; max-width:1060px; min-height:150px; }
.tg-product-panels section[hidden] { display:none; }
.tg-product-panels h2 { font-size:22px; margin:0 0 15px; line-height:1.3; }
.tg-product-panels p { font-size:14px; line-height:1.7; color:var(--body); max-width:720px; }
.tg-product-detail-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:52px; margin:0; }
.tg-product-detail-list > div { display:grid; grid-template-columns:38% 1fr; gap:12px; border-bottom:1px solid var(--hair); padding:9px 0; font-size:13px; }
.tg-product-detail-list dt { color:var(--muted); }
.tg-product-detail-list dd { margin:0; font-weight:650; }
.tg-product-related { background:var(--ivory); padding:42px 0 52px; }
.tg-product-related h2 { font-size:26px; line-height:1.2; letter-spacing:-.03em; margin:0 0 20px; }
.tg-product-related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.tg-product-related .tg-product-card-image { aspect-ratio:1.7 / 1; }
.tg-product-related .tg-product-card-body { padding:12px; }
.tg-product-related .tg-product-card h3 { margin:3px 0; font-size:17px; line-height:1.3; }
.tg-product-related .tg-product-card p { font-size:12px; line-height:1.5; min-height:0; margin:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.tg-product-related .tg-card-actions { margin-top:9px; }
.tg-product-related .tg-card-actions .tg-btn { display:none; }
body.single-product .tg-footer { margin-top:0; }
@media(max-width:1100px) {
  .tg-single-product .tg-product-layout { grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr); gap:26px; }
  .tg-single-product .tg-product-layout > .tg-sidebar { display:none; }
  .tg-product-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:860px) {
  .tg-single-product .tg-product-breadcrumb { padding-top:14px; }
  .tg-single-product .tg-product-breadcrumb a:first-child,
  .tg-single-product .tg-product-breadcrumb a:first-child + span { display:none; }
  .tg-product-mobile-heading { display:block; padding:4px 0 0; }
  .tg-product-mobile-heading h1 { font-size:clamp(28px,7vw,36px); line-height:1.15; margin:0 0 8px; letter-spacing:-.04em; }
  .tg-product-mobile-heading p { margin:0; color:var(--body); line-height:1.5; font-size:14px; }
  .tg-single-product .tg-product-layout { display:block; padding:4px 0 18px; }
  .tg-single-product .tg-product-layout > .tg-sidebar { display:none; }
  .tg-single-product .tg-gallery-main { aspect-ratio:1.13 / 1; }
  .tg-single-product .tg-decision { margin-top:18px; }
  .tg-single-product .tg-decision > .tg-product-title,
  .tg-single-product .tg-decision > .tg-product-intro { display:none; }
  .tg-single-product .tg-specs { margin-top:0; }
  .tg-single-product .tg-qty { max-width:none; }
  .tg-product-mobile-browser { display:block; }
  .tg-product-mobile-browser .tg-mobile-category-browser { display:block; border-left:0; border-right:0; margin:0; }
  .tg-single-product .tg-tabs { padding:0 0 28px; }
  .tg-product-tab-nav { display:block; border:0; }
  .tg-product-tab-nav button { display:block; width:100%; text-align:left; border-bottom:1px solid var(--hair); padding:14px 0; }
  .tg-product-tab-nav button[aria-selected="true"] { border-bottom:2px solid var(--moss); }
  .tg-product-panels { padding:18px 0 0; }
  .tg-product-detail-list { grid-template-columns:1fr; }
}
@media(max-width:540px) {
  .tg-single-product .tg-product-breadcrumb strong { display:none; }
  .tg-single-product .tg-product-breadcrumb strong ~ span { display:none; }
  .tg-product-related-grid { grid-template-columns:1fr; gap:12px; }
  .tg-product-related .tg-product-card { display:grid; grid-template-columns:92px minmax(0,1fr); }
  .tg-product-related .tg-product-card-image { aspect-ratio:auto; min-height:100%; }
  .tg-product-related .tg-product-card-body { padding:10px; min-width:0; }
  .tg-product-related .tg-product-card p { display:none; }
}

/* Resources hub and editorial article templates. */
.tg-resources-intro { padding:24px 0 30px; }
.tg-resources-intro .tg-breadcrumb,.tg-article-head .tg-breadcrumb { margin:0 0 15px; }
.tg-resources-intro-grid { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:50px; align-items:end; }
.tg-resources-intro h1 { font-size:clamp(34px,3.5vw,48px); line-height:1.1; letter-spacing:-.04em; max-width:760px; margin:0 0 10px; }
.tg-resources-intro p { color:var(--body); font-size:15px; line-height:1.6; max-width:770px; margin:0; }
.tg-resources-intro-cta { display:grid; gap:6px; text-align:center; }
.tg-resources-intro-cta small { color:var(--muted); font-size:11px; line-height:1.4; }
.tg-resource-filters { border-top:1px solid var(--hair); border-bottom:1px solid var(--hair); }
.tg-resource-filters .tg-container { display:flex; gap:22px; align-items:center; overflow:auto; scrollbar-width:thin; }
.tg-resource-filters a { display:inline-flex; gap:6px; align-items:center; flex:none; padding:16px 2px; border-bottom:2px solid transparent; color:var(--body); text-decoration:none; font-size:12px; font-weight:650; white-space:nowrap; }
.tg-resource-filters a.is-active { border-bottom-color:var(--moss); color:var(--moss); }
.tg-resource-filters small { color:var(--muted); font-weight:400; }
.tg-resource-feature { display:grid; grid-template-columns:1.12fr .88fr; gap:46px; align-items:center; padding-top:28px; padding-bottom:40px; }
.tg-resource-feature-image { display:block; height:330px; background:var(--ivory); overflow:hidden; }
.tg-resource-feature-image img,.tg-resource-card-image img,.tg-article-image img { display:block; width:100%; height:100%; object-fit:cover; }
.tg-resource-image-empty { display:grid; place-items:center; width:100%; height:100%; min-height:120px; background:var(--ivory); color:var(--moss); text-align:center; font-family:Georgia,serif; font-size:22px; line-height:1.2; }
.tg-resource-image-empty small { font-family:inherit; font-size:11px; letter-spacing:.13em; text-transform:uppercase; }
.tg-resource-feature h2 { font-size:clamp(26px,2.7vw,36px); line-height:1.15; letter-spacing:-.035em; margin:9px 0; }
.tg-resource-feature h2 a,.tg-resource-card h3 a { color:var(--graphite); text-decoration:none; }
.tg-resource-feature p { color:var(--body); font-size:14px; line-height:1.65; }
.tg-resource-section-title { display:flex; justify-content:space-between; align-items:baseline; gap:16px; border-bottom:1px solid var(--border); margin-bottom:22px; padding-bottom:8px; }
.tg-resource-section-title h2 { font-size:21px; letter-spacing:-.025em; margin:0; }
.tg-resource-section-title > span { color:var(--muted); font-size:12px; }
.tg-resource-list { padding-bottom:48px; }
.tg-resource-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px 24px; }
.tg-resource-card-image { display:block; height:196px; overflow:hidden; margin-bottom:9px; }
.tg-resource-card .tg-product-type { display:block; font-size:10px; }
.tg-resource-card h3 { font-size:19px; line-height:1.3; margin:4px 0 7px; }
.tg-resource-card .tg-link { font-size:12px; }
.tg-resource-topics { padding-bottom:52px; }
.tg-resource-topic-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.tg-resource-topic-grid details { border-top:2px solid var(--heritage); }
.tg-resource-topic-grid summary { font-size:14px; font-weight:650; padding:10px 0 4px; list-style:none; cursor:pointer; }
.tg-resource-topic-grid summary::-webkit-details-marker { display:none; }
.tg-resource-topic-grid ul { margin:0; padding:0; list-style:none; }
.tg-resource-topic-grid li { margin:0 0 8px; line-height:1.35; }
.tg-resource-topic-grid li a { color:var(--body); font-size:12px; text-decoration:none; }
.tg-resource-topic-grid li a:hover { color:var(--moss); }
.tg-resource-range { padding-bottom:48px; }
.tg-resource-range nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.tg-resource-range nav a { border:1px solid var(--hair); padding:16px; text-decoration:none; color:var(--graphite); display:flex; justify-content:space-between; gap:8px; font-size:14px; font-weight:650; }
.tg-resource-range nav span { color:var(--moss); }
.tg-resource-cta { border-top:1px solid var(--hair); padding:36px 0; }
.tg-resource-cta .tg-container { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.tg-resource-cta h2 { font-size:25px; line-height:1.2; margin:0 0 4px; }
.tg-resource-cta p { color:var(--body); margin:0; font-size:13px; }
.tg-resource-cta .tg-container > div:last-child { display:flex; gap:8px; }
.tg-article-head { padding-top:22px; padding-bottom:25px; }
.tg-article-head h1 { font-size:clamp(38px,4vw,54px); line-height:1.08; letter-spacing:-.04em; max-width:930px; margin:7px 0 13px; }
.tg-article-excerpt { font-size:16px; line-height:1.7; color:var(--body); max-width:780px; margin:0 0 8px; }
.tg-article-meta { font-size:12px; color:var(--muted); margin:0; }
.tg-article-image { height:410px; margin:22px 0 0; background:var(--ivory); }
.tg-article-layout { display:grid; grid-template-columns:220px minmax(0,800px); gap:55px; align-items:start; padding-bottom:60px; }
.tg-article-toc { position:sticky; top:92px; font-size:12px; }
.tg-article-toc summary { text-transform:uppercase; letter-spacing:.09em; font-size:11px; font-weight:700; color:var(--muted); margin-bottom:8px; cursor:pointer; }
.tg-article-toc nav a { display:block; border-top:1px solid var(--hair); padding:8px 6px; color:var(--body); text-decoration:none; line-height:1.35; }
.tg-article-toc nav a:hover { color:var(--moss); }
.tg-article-body { color:var(--body); font-size:15px; line-height:1.75; }
.tg-article-body h2 { color:var(--graphite); font-size:25px; line-height:1.3; letter-spacing:-.025em; margin:25px 0 8px; scroll-margin-top:90px; }
.tg-article-body h2:first-child { margin-top:0; }
.tg-article-body h3 { color:var(--graphite); font-size:20px; margin:22px 0 7px; scroll-margin-top:90px; }
.tg-article-body p { margin:0 0 13px; }
.tg-article-body a { color:var(--moss); }
.tg-article-takeaway { border-top:3px solid var(--moss); background:var(--ivory); padding:25px; margin-top:32px; }
.tg-article-takeaway h2 { font-size:23px; margin:5px 0 7px; }
.tg-article-takeaway p { margin:0; color:var(--body); }
.tg-article-related { padding-bottom:50px; }
body.page-slug-resources .tg-footer,body.single-post .tg-footer { margin-top:0; }
@media(max-width:860px) {
  .tg-resources-intro-grid,.tg-resource-feature { grid-template-columns:1fr; gap:18px; }
  .tg-resources-intro-cta { display:none; }
  .tg-resource-feature-image { height:300px; }
  .tg-resource-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tg-resource-topic-grid,.tg-resource-range nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tg-article-layout { grid-template-columns:1fr; gap:20px; }
  .tg-article-toc { position:static; }
  .tg-article-toc details { border:1px solid var(--border); padding:12px; }
  .tg-article-toc summary { text-transform:none; font-size:13px; margin:0; color:var(--graphite); }
  .tg-article-head h1 { font-size:34px; }
}
@media(max-width:540px) {
  .tg-resources-intro { padding:18px 0 22px; }
  .tg-resources-intro h1 { font-size:32px; }
  .tg-resource-feature-image { height:220px; }
  .tg-resource-feature { padding-top:20px; }
  .tg-resource-feature h2 { font-size:25px; }
  .tg-resource-grid { grid-template-columns:1fr; gap:0; }
  .tg-resource-list .tg-resource-card,.tg-article-related .tg-resource-card { display:grid; grid-template-columns:74px minmax(0,1fr); grid-template-rows:auto auto auto; column-gap:12px; border-bottom:1px solid var(--hair); padding:12px 0; }
  .tg-resource-list .tg-resource-card-image,.tg-article-related .tg-resource-card-image { grid-row:1/4; height:74px; margin:0; }
  .tg-resource-card-image .tg-resource-image-empty { min-height:74px; font-size:12px; }
  .tg-resource-card-image .tg-resource-image-empty small { font-size:7px; }
  .tg-resource-card h3 { font-size:15px; margin:0 0 4px; }
  .tg-resource-topic-grid,.tg-resource-range nav { grid-template-columns:1fr; gap:0; }
  .tg-resource-topic-grid details { border-top:1px solid var(--hair); }
  .tg-resource-topic-grid summary { padding:14px 0; }
  .tg-resource-topic-grid summary::after { content:"+"; float:right; color:var(--moss); }
  .tg-resource-topic-grid details[open] summary::after { content:"−"; }
  .tg-resource-range nav a { border-width:0 0 1px; }
  .tg-resource-cta { background:var(--ivory); }
  .tg-resource-cta .tg-container,.tg-resource-cta .tg-container > div:last-child { display:grid; grid-template-columns:1fr; width:100%; }
  .tg-resource-cta .tg-btn { width:100%; }
  .tg-article-head h1 { font-size:30px; }
  .tg-article-excerpt { font-size:14px; }
  .tg-article-image { height:220px; }
}

.tg-resources-intro h1,.tg-article-head h1,.tg-resource-feature h2,.tg-resource-card h3,.tg-article-body h2,.tg-article-body h3 { font-weight:650; }
.tg-article-body ul,.tg-article-body ol { padding-left:24px; margin:0 0 16px; list-style:revert; }
.tg-article-body li { padding-left:3px; margin-bottom:3px; }

/* Authority pages: About, Manufacturing, Wholesale, OEM and Contact. */
.tg-authority-v2 h1,.tg-authority-v2 h2,.tg-authority-v2 h3 { font-weight:650; letter-spacing:-.035em; line-height:1.2; }
.tg-authority-v2 h2 { font-size:clamp(25px,2.4vw,33px); margin:5px 0 18px; }
.tg-authority-v2 h3 { font-size:17px; margin:6px 0; }
.tg-authority-v2 p { color:var(--body); line-height:1.65; }
.tg-authority-hero { padding:28px 0 42px; border-bottom:1px solid var(--hair); }
.tg-authority-hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:55px; align-items:center; }
.tg-authority-hero .tg-breadcrumb { margin-bottom:22px; }
.tg-authority-hero h1 { font-size:clamp(34px,3.5vw,48px); margin:0 0 14px; }
.tg-authority-hero p { font-size:15px; max-width:670px; margin:0; }
.tg-authority-hero .tg-cta-row { margin-top:23px; }
.tg-authority-hero .tg-btn { min-width:145px; }
.tg-authority-hero figure,.tg-authority-split figure { margin:0; height:340px; overflow:hidden; background:var(--ivory); }
.tg-authority-hero figure img,.tg-authority-split figure img { display:block; width:100%; height:100%; object-fit:cover; }
.tg-authority-image-empty { display:grid; place-items:center; height:100%; color:var(--moss); background:var(--ivory); text-align:center; font:24px/1.25 Georgia,serif; }
.tg-authority-image-empty small { font:11px/1.2 "Instrument Sans",sans-serif; text-transform:uppercase; letter-spacing:.13em; }
.tg-authority-focus { padding:50px 0; }
.tg-authority-focus-grid { display:grid; grid-template-columns:230px minmax(0,1fr); gap:48px; }
.tg-authority-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px 27px; }
.tg-authority-facts article { border-top:2px solid var(--heritage); padding-top:9px; }
.tg-authority-facts h3 { font-size:16px; margin:0 0 5px; }
.tg-authority-facts p { font-size:13px; line-height:1.6; margin:0; }
.tg-authority-steps { padding:45px 0 54px; }
.tg-authority-steps h2 { margin:0 0 27px; }
.tg-authority-steps-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px; }
.tg-authority-steps-grid article { border-top:2px solid var(--moss); padding-top:8px; }
.tg-authority-steps-grid article span { font-size:11px; color:var(--moss); font-weight:700; }
.tg-authority-steps-grid article h3 { font-size:15px; margin:2px 0 6px; }
.tg-authority-steps-grid article p { font-size:13px; line-height:1.55; margin:0; }
.tg-authority-steps-grid.is-cards { grid-template-columns:repeat(3,minmax(0,1fr)); }
.tg-authority-steps-grid.is-cards article { border:1px solid var(--hair); border-top:2px solid var(--heritage); background:#fff; padding:16px; }
.tg-authority-oem-teak-garden-furniture .tg-authority-steps-grid.is-cards { grid-template-columns:repeat(5,minmax(0,1fr)); }
.tg-authority-split { padding:48px 0; }
.tg-authority-split .tg-split { align-items:center; gap:50px; }
.tg-authority-split p { font-size:14px; }
.tg-authority-list { margin:22px 0 0; border-top:1px solid var(--hair); }
.tg-authority-list > div { border-bottom:1px solid var(--hair); padding:12px 0; }
.tg-authority-list dt { font-weight:700; }
.tg-authority-list dd { color:var(--body); margin:4px 0 0; font-size:13px; line-height:1.6; }
.tg-authority-cta { padding:38px 0 42px; border-top:1px solid var(--hair); }
.tg-authority-cta .tg-container { display:flex; justify-content:space-between; align-items:center; gap:32px; }
.tg-authority-cta h2 { margin:0 0 5px; }
.tg-authority-cta p { margin:0; font-size:13px; max-width:580px; }
.tg-authority-cta-actions { display:flex; gap:10px; }
.tg-authority-cta-actions .tg-btn { min-width:125px; white-space:nowrap; }
.tg-authority-proof { padding:30px 0; }
.tg-authority-proof .tg-container { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px; }
.tg-authority-proof .tg-container > div { border-top:2px solid var(--heritage); padding-top:9px; }
.tg-authority-proof strong { display:block; font-size:18px; line-height:1.2; }
.tg-authority-proof span { color:var(--body); font-size:12px; }
.tg-authority-terms { padding:48px 0; }
.tg-authority-terms-grid { display:grid; grid-template-columns:240px 1fr; gap:60px; }
.tg-authority-terms dl { border-top:1px solid var(--graphite); margin:0; }
.tg-authority-terms dl div { display:grid; grid-template-columns:32% 1fr; gap:20px; border-bottom:1px solid var(--hair); padding:10px 0; font-size:13px; line-height:1.45; }
.tg-authority-terms dt { color:var(--muted); }
.tg-authority-terms dd { margin:0; font-weight:650; }
.tg-authority-benefits { padding:45px 0; }
.tg-authority-benefits .tg-container { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.tg-authority-benefits article { background:#fff; padding:22px; }
.tg-authority-benefits h3 { font-size:19px; }
.tg-authority-benefits p { margin:0; font-size:13px; }
.tg-authority-grades { padding:48px 0; }
.tg-authority-grades .tg-split { grid-template-columns:1.7fr .7fr; gap:55px; align-items:center; }
.tg-authority-grades .tg-authority-list { margin-bottom:12px; }
.tg-authority-grades .tg-authority-list > div { display:grid; grid-template-columns:230px 1fr; gap:18px; }
.tg-authority-grades .tg-authority-list dd { margin:0; }
.tg-authority-grades aside { background:var(--ivory); padding:24px; }
.tg-authority-grades aside p { font-size:13px; }
.tg-authority-grades aside .tg-btn { width:100%; }
.tg-contact-routes-v2 { padding:43px 0 48px; }
.tg-contact-route-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-top:18px; }
.tg-contact-route-grid article { background:#fff; padding:21px; display:flex; flex-direction:column; min-height:190px; }
.tg-contact-route-grid h2 { font-size:19px; margin:0 0 6px; }
.tg-contact-route-grid p { font-size:13px; margin:0 0 18px; }
.tg-contact-route-grid .tg-btn { margin-top:auto; }
.tg-contact-conversion { padding:48px 0 60px; }
.tg-contact-conversion-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(270px,.8fr); gap:75px; align-items:start; }
.tg-contact-conversion h2 { margin:0 0 5px; }
.tg-contact-conversion > .tg-container p { margin:0 0 14px; font-size:14px; }
.tg-contact-form .tg-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px 18px; }
.tg-contact-form .full { grid-column:1/-1; }
.tg-contact-form textarea { min-height:120px; }
.tg-contact-form .tg-btn { min-width:180px; }
.tg-contact-form .tg-message { margin-top:10px; font-size:12px; }
.tg-contact-form .tg-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.tg-company-details { background:var(--ivory); padding:25px; }
.tg-company-details dl { border-top:1px solid var(--hair); }
.tg-company-details dl > div { border-bottom:1px solid var(--hair); padding:11px 0; font-size:13px; }
.tg-company-details dt { color:var(--muted); }
.tg-company-details dd { margin:0; font-weight:650; }
.tg-company-details p { margin:20px 0 0; font-size:13px; }
body.page .tg-authority-v2 + .tg-footer { margin-top:0; }
.tg-authority-about .tg-authority-steps-grid:not(.is-cards) { grid-template-columns:repeat(6,minmax(0,1fr)); }
@media(max-width:1100px) {
  .tg-authority-steps-grid,.tg-authority-about .tg-authority-steps-grid:not(.is-cards),.tg-authority-oem-teak-garden-furniture .tg-authority-steps-grid.is-cards { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .tg-authority-focus-grid { grid-template-columns:180px 1fr; gap:30px; }
  .tg-authority-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tg-authority-hero-grid { gap:30px; }
}
@media(max-width:860px) {
  .tg-authority-hero-grid,.tg-authority-focus-grid,.tg-authority-terms-grid,.tg-contact-conversion-grid { grid-template-columns:1fr; gap:20px; }
  .tg-authority-hero figure { height:300px; }
  .tg-authority-proof .tg-container { grid-template-columns:repeat(3,1fr); }
  .tg-authority-split .tg-split,.tg-authority-grades .tg-split { grid-template-columns:1fr; }
  .tg-authority-cta .tg-container { display:block; }
  .tg-authority-cta-actions { margin-top:20px; }
  .tg-contact-route-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:540px) {
  .tg-authority-v2 h2 { font-size:26px; }
  .tg-authority-hero { padding:18px 0 30px; }
  .tg-authority-hero .tg-breadcrumb { margin-bottom:12px; }
  .tg-authority-hero h1 { font-size:32px; }
  .tg-authority-hero figure { height:220px; margin-top:18px; }
  .tg-authority-hero .tg-cta-row { display:grid; grid-template-columns:1fr 1fr; }
  .tg-authority-hero .tg-cta-row .tg-btn { min-width:0; }
  .tg-authority-focus,.tg-authority-split,.tg-authority-terms,.tg-authority-grades { padding:32px 0; }
  .tg-authority-facts,.tg-authority-steps-grid,.tg-authority-about .tg-authority-steps-grid:not(.is-cards),.tg-authority-steps-grid.is-cards,.tg-authority-oem-teak-garden-furniture .tg-authority-steps-grid.is-cards { grid-template-columns:1fr; }
  .tg-authority-steps-grid { gap:16px; }
  .tg-authority-proof .tg-container { grid-template-columns:repeat(2,1fr); }
  .tg-authority-benefits .tg-container { grid-template-columns:1fr; }
  .tg-authority-grades .tg-authority-list > div { grid-template-columns:1fr; gap:3px; }
  .tg-authority-cta-actions { display:grid; grid-template-columns:1fr; }
  .tg-contact-route-grid { grid-template-columns:1fr; gap:10px; }
  .tg-contact-route-grid article { min-height:0; }
  .tg-contact-form .tg-form-grid { grid-template-columns:1fr; }
}

/* Two-step RFQ review and details. */
.tg-rfq-v2 { padding:30px 0 54px; min-height:600px; }
.tg-rfq-v2 h1 { font-size:36px; line-height:1.15; font-weight:650; letter-spacing:-.035em; margin:0 0 10px; }
.tg-rfq-v2 h2 { font-size:24px; margin:0 0 8px; }
.tg-rfq-v2 .tg-breadcrumb { margin-bottom:20px; }
.tg-rfq-v2 p { line-height:1.6; color:var(--body); }
.tg-rfq-columns { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:45px; align-items:start; }
.tg-rfq-columns > div:first-child > p { max-width:710px; margin:0; }
.tg-rfq-v2 .tg-rfq-items { margin-top:26px; border-top:1px solid var(--graphite); }
.tg-rfq-v2 .tg-rfq-item { grid-template-columns:95px minmax(0,1fr) auto; gap:18px; padding:18px 0; }
.tg-rfq-v2 .tg-rfq-thumb { width:95px; height:95px; }
.tg-rfq-v2 .tg-rfq-item > div:nth-child(2) { min-width:0; }
.tg-rfq-v2 .tg-rfq-item strong { font-size:16px; line-height:1.25; display:block; }
.tg-rfq-v2 .tg-rfq-actions { align-items:center; }
.tg-rfq-v2 .tg-rfq-actions button { min-width:36px; min-height:37px; padding:4px; }
.tg-rfq-v2 .tg-rfq-item > div:last-child { text-align:right; }
.tg-rfq-v2 .tg-rfq-review-bottom { display:flex; flex-wrap:wrap; gap:18px; margin-top:20px; font-size:12px; color:var(--muted); }
.tg-rfq-summary { background:var(--ivory); border:1px solid var(--hair); padding:24px; }
.tg-rfq-summary dl { margin:12px 0 26px; border-top:1px solid var(--graphite); }
.tg-rfq-summary dl div { display:flex; justify-content:space-between; gap:10px; border-bottom:1px solid var(--hair); padding:10px 0; font-size:13px; }
.tg-rfq-summary dt { color:var(--body); }
.tg-rfq-summary dd { font-weight:650; margin:0; text-align:right; }
.tg-rfq-summary > .tg-btn { display:flex; width:100%; margin-top:10px; min-height:48px; }
.tg-rfq-summary p { font-size:12px; margin:14px 0 0; }
.tg-rfq-details { padding-top:12px; }
.tg-rfq-details form { margin-top:18px; }
.tg-rfq-details .tg-field { margin-top:5px; }
.tg-rfq-details .tg-field label { font-size:12px; margin-bottom:5px; }
.tg-rfq-details textarea { min-height:140px; }
.tg-rfq-v2 .tg-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.tg-rfq-submit-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-top:8px; }
.tg-rfq-submit-actions > .tg-btn { min-height:48px; min-width:150px; }
.tg-rfq-back { border:0; background:none; padding:8px; font:inherit; cursor:pointer; }
.tg-rfq-submit-actions > span { color:var(--muted); font-size:12px; }
.tg-rfq-submit-actions .tg-message { flex-basis:100%; }
.tg-rfq-attached > div { margin-top:12px; border-top:1px solid var(--graphite); }
.tg-rfq-attached > div > div { padding:10px 0; border-bottom:1px solid var(--hair); }
.tg-rfq-attached strong,.tg-rfq-attached span:not(.tg-eyebrow) { display:block; font-size:13px; }
.tg-rfq-attached span:not(.tg-eyebrow) { color:var(--muted); }
.tg-rfq-attached .tg-rfq-back { margin-top:13px; }
body.page-slug-rfq .tg-footer { margin-top:0; }
@media(max-width:960px) {
  .tg-rfq-columns { grid-template-columns:minmax(0,1fr) 265px; gap:20px; }
  .tg-rfq-v2 .tg-rfq-item { grid-template-columns:72px 1fr; }
  .tg-rfq-v2 .tg-rfq-thumb { width:72px; height:72px; }
  .tg-rfq-v2 .tg-rfq-item > div:last-child { text-align:left; grid-column:2; }
}
@media(max-width:700px) {
  .tg-rfq-v2 { padding:20px 0 35px; }
  .tg-rfq-v2 h1 { font-size:30px; }
  .tg-rfq-columns { grid-template-columns:1fr; gap:22px; }
  .tg-rfq-summary { order:2; }
  .tg-rfq-details .tg-form-grid { grid-template-columns:1fr; }
  .tg-rfq-submit-actions { display:grid; grid-template-columns:1fr; }
  .tg-rfq-submit-actions > .tg-btn { width:100%; }
}

/* Search catalogue layout. */
.tg-search-v2 { padding:30px 0 60px; }
.tg-search-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:38px; align-items:start; }
.tg-search-v2 .tg-sidebar { border:0; border-top:1px solid var(--border); position:static; }
.tg-search-v2 .tg-sidebar-head { padding:13px 0; }
.tg-search-v2 .tg-side-parent { padding:10px 0; border-bottom:1px solid var(--hair); }
.tg-search-v2 .tg-side-child { padding:8px 12px; }
.tg-search-v2 .tg-side-group:not(.is-expanded) .tg-side-child { display:none; }
.tg-search-v2 .tg-search-results h1 { font-size:34px; line-height:1.2; font-weight:650; letter-spacing:-.035em; margin:0 0 3px; }
.tg-search-results > p { color:var(--muted); font-size:13px; margin:0 0 24px; }
.tg-search-results section { margin-top:25px; }
.tg-search-results section h2 { border-bottom:1px solid var(--graphite); padding-bottom:7px; margin:0 0 18px; font-size:12px; font-weight:700; color:var(--muted); text-transform:uppercase; letter-spacing:.08em; }
.tg-search-categories { display:flex; flex-wrap:wrap; gap:10px; }
.tg-search-categories a { border:1px solid var(--border); padding:8px 15px; text-decoration:none; color:var(--graphite); font-size:13px; font-weight:600; }
.tg-search-v2 .tg-product-card { border:0; }
.tg-search-v2 .tg-product-card-body { padding:12px 0; }
.tg-search-v2 .tg-product-card h3 { margin:4px 0; }
.tg-search-v2 .tg-product-card-image { aspect-ratio:1.35/1; }
.tg-search-v2 .tg-product-card p { min-height:0; }
body.search .tg-footer { margin-top:0; }
@media(max-width:960px) {
  .tg-search-layout { grid-template-columns:1fr; }
  .tg-search-v2 .tg-sidebar { display:none; }
}
@media(max-width:700px) {
  .tg-search-v2 { padding:22px 0 40px; }
  .tg-search-v2 .tg-search-results h1 { font-size:27px; }
  .tg-search-v2 .tg-product-grid { grid-template-columns:1fr; }
}
