:root{
  --tdl-green:#2e6b3f; --tdl-olive:#3f7c51; --tdl-leaf:#90b08e;
  --tdl-accent:#ffd24b; --tdl-ink:#0f172a; --tdl-muted:#6b7280;
  --tdl-bg:#f7f5ef; --tdl-card:#ffffff; --tdl-sticky-top:110px;
}

/* Scope basic box-sizing to our blocks to stabilize sizing */
.tdl-hero, .tdl-usp, .tdl-layout, .tdl-sidebar, .tdl-sidebox, .tdl-products, .tdl-bloggrid, .tdl-footer, .tdl-infobar { box-sizing:border-box; }

/* Info bar */
.tdl-infobar{background:var(--tdl-olive); color:#fff; padding:8px 0; font-size:14px}
.tdl-infobar .wrap{display:flex; gap:18px; justify-content:center; flex-wrap:wrap}

/* Hero */
.tdl-hero{position:relative; background:var(--tdl-bg); border-radius:16px; padding:32px; overflow:hidden}
.tdl-hero h1{margin:0 0 8px; font-size:clamp(28px,4vw,44px)}
.tdl-hero p{margin:0 0 16px; color:var(--tdl-muted)}
.tdl-hero .wp-block-image img{width:100%; height:auto; display:block; border-radius:12px}

/* USP */
.tdl-usp{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:20px 0}
.tdl-usp .card{background:var(--tdl-card); border:1px solid #e5e7eb; padding:14px; border-radius:12px; text-align:center; font-weight:600}
.tdl-usp .card span{display:block; font-weight:500; color:var(--tdl-muted); margin-top:6px}

/* Main layout with sidebar */
.wp-block-columns.tdl-layout{display:grid!important; grid-template-columns:minmax(240px,280px) 1fr; align-items:start; gap:20px}
.tdl-sidebar{position:sticky; top:var(--tdl-sticky-top); align-self:start; z-index:2}
.tdl-sidebox{background:var(--tdl-card); border-radius:14px; border:1px solid #e5e7eb; padding:12px; margin-bottom:14px}
.tdl-sidebox h3{margin:.2rem 0 .6rem; font-size:16px}
.tdl-sidebox a{color:#111;text-decoration:none}
.tdl-sidebox a:hover{text-decoration:underline}

/* Products area */
.tdl-products .tdl-tabs{display:flex; gap:18px; border-bottom:1px solid #e5e7eb; margin-bottom:14px}
.tdl-products .tdl-tabs > *{padding:10px 2px; font-weight:700}
/* Normalize Woo product shortcode grids inside patterns */
.tdl-products .products{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px}
.tdl-products .products::before, .tdl-products .products::after{display:none!important; content:none!important}
.tdl-products .product{list-style:none; border:1px solid #e5e7eb; border-radius:14px; overflow:hidden; background:var(--tdl-card)}
.tdl-products .product img{width:100%; height:auto; display:block; aspect-ratio: 1 / 1; object-fit:cover}

/* Blog grid */
.tdl-bloggrid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px}

/* Footer */
.tdl-footer{background:var(--tdl-green); color:#fff; border-radius:16px; padding:28px}
.tdl-footer a{color:#fff; opacity:.9; text-decoration:none}
.tdl-footer .cols{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px}

@media (max-width:1100px){
  .wp-block-columns.tdl-layout{grid-template-columns:1fr}
  .tdl-usp{grid-template-columns:repeat(2,1fr)}
  .tdl-products .products{grid-template-columns:repeat(2,1fr)}
  .tdl-bloggrid{grid-template-columns:1fr}
}
