/* home/index — extracted page styles */
/* overflow:clip (not hidden) — clips the decorative glyph WITHOUT establishing a BFC.
   overflow:hidden made a BFC that, combined with the legacy floated .carousel-item,
   collapsed the hero to 0 width on mobile and hid the banner. */
.tk-hm-hero{position:relative;overflow:clip;background:radial-gradient(1200px 480px at 80% -10%,rgba(255,255,255,.12),transparent),linear-gradient(135deg,#11241a 0%,#0a6d39 55%,#0a7d3f 100%);color:#fff}
.tk-hm-hero{background-color:#0a6d39} /* solid fallback so the hero is never blank/white */
.tk-hm-hero:after{content:"\f0fb";font-family:FontAwesome;position:absolute;right:-1rem;bottom:-3rem;font-size:18rem;opacity:.06;line-height:1;z-index:0;pointer-events:none}
.tk-hm-hero .tk-container,.tk-hm-hero .row{position:relative;z-index:1}
.tk-hm-hero .tk-container{position:relative;z-index:1;padding:2.4rem 16px 2.6rem}
.tk-hm-hero .kicker{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;opacity:.9}
.tk-hm-hero h1{font-size:clamp(1.7rem,4vw,2.5rem);font-weight:800;margin:.4rem 0 .6rem;color:#fff;line-height:1.12}
.tk-hm-hero h1 span{color:#ffd66b}
.tk-hm-hero .lead{font-size:1rem;opacity:.92;max-width:560px;margin:0}
.tk-hm-stats{display:flex;gap:1.6rem;margin-top:1.3rem;flex-wrap:wrap}
.tk-hm-stats b{display:block;font-size:1.5rem;line-height:1}
.tk-hm-stats span{font-size:.72rem;opacity:.85;text-transform:uppercase;letter-spacing:.05em}
.tk-hm-search{background:#fff;border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.22);padding:1.2rem;color:var(--tk-dark)}
.tk-hm-search .tk-hm-tabs{display:flex;gap:.4rem;background:#f1f4f1;border-radius:999px;padding:.25rem;margin-bottom:1rem}
.tk-hm-search .tk-hm-tabs button{flex:1;border:0;background:transparent;border-radius:999px;padding:.5rem;font-weight:700;font-size:.88rem;color:#516079;cursor:pointer}
.tk-hm-search .tk-hm-tabs button.active{background:var(--tk-green);color:#fff}
.tk-hm-search select{width:100%;border:1px solid var(--tk-line);border-radius:10px;padding:.7rem .8rem;font-size:.92rem;margin-bottom:.7rem;background:#fff}
.tk-hm-search .tk-btn{width:100%}
.tk-hm-banner{margin-top:1.4rem}
.tk-hm-banner .carousel,.tk-hm-banner img{border-radius:16px}
.tk-hm-banner img{width:100%;object-fit:cover;box-shadow:0 14px 34px rgba(20,40,25,.12)}
/* Neutralise legacy theme carousel rules (style.css forces .carousel-item img height:100% + object-fit:fill).
   Keep the banner image at intrinsic height and crop (cover) rather than stretch (fill). */
.tk-hm-banner .carousel-item{height:auto}
.tk-hm-banner .carousel-item img{height:auto;object-fit:cover}
.tk-hm-banner .carousel-indicators{margin-bottom:.4rem}
.tk-hm-banner .carousel-indicators [data-bs-target]{width:8px;height:8px;border-radius:50%}
.tk-hm-cats{display:grid;grid-template-columns:repeat(6,1fr);gap:.9rem;margin-top:-2rem;position:relative;z-index:2}
.tk-hm-cat{background:var(--tk-green);border:0;border-radius:14px;padding:1.1rem .6rem;text-align:center;text-decoration:none;transition:.16s;box-shadow:0 8px 22px rgba(20,40,25,.10)}
.tk-hm-cat:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(20,40,25,.20);background:var(--tk-green-d)}
.tk-hm-cat__ic{width:52px;height:52px;border-radius:50%;background:#fff;display:inline-flex;align-items:center;justify-content:center;margin-bottom:.5rem}
.tk-hm-cat__ic i{font-size:1.5rem;color:var(--tk-green);line-height:1}
.tk-hm-cat__ic .tk-cat-svg{width:28px;height:28px;color:var(--tk-green)}
.tk-hm-cat__t{display:block;font-weight:700;font-size:.84rem;color:#fff}
.tk-hm-sec{padding:2.2rem 0}
.tk-hm-sec.alt{background:#f6f8f6}
.tk-hm-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.2rem;flex-wrap:wrap}
.tk-hm-head h2{font-size:1.45rem;font-weight:800;margin:0;color:var(--tk-dark)}
.tk-hm-head h2 small{display:block;font-size:.8rem;font-weight:600;color:var(--tk-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.2rem}
.tk-hm-head a{font-weight:700;font-size:.86rem;color:var(--tk-green);text-decoration:none;white-space:nowrap}
.tk-hm-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1.2rem}
.tk-hm-chips .chip{font-size:.84rem;font-weight:600;color:#475569;background:#fff;border:1px solid var(--tk-line);border-radius:999px;padding:.4rem .9rem;cursor:pointer}
.tk-hm-chips .chip.active,.tk-hm-chips .chip:hover{background:var(--tk-green);color:#fff;border-color:transparent}
.tk-pop-item{height:100%}
.tk-pop-item>.tk-card{height:100%}
.tk-hm-brands{display:grid;grid-template-columns:repeat(8,1fr);gap:.8rem}
.tk-hm-brand{background:#fff;border:1px solid var(--tk-line);border-radius:12px;padding:.9rem .5rem;text-align:center;text-decoration:none;transition:.15s}
.tk-hm-brand:hover{border-color:var(--tk-green);box-shadow:0 8px 18px rgba(20,40,25,.08);transform:translateY(-3px)}
.tk-hm-brand img{height:46px;object-fit:contain;margin-bottom:.4rem}
.tk-hm-brand span{display:block;font-size:.74rem;font-weight:600;color:var(--tk-dark)}
.tk-hm-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.tk-hm-trust div{background:#fff;border:1px solid var(--tk-line);border-radius:14px;padding:1.2rem;text-align:center}
.tk-hm-trust i{font-size:1.6rem;color:var(--tk-green);margin-bottom:.5rem}
.tk-hm-trust b{display:block;font-size:.95rem;color:var(--tk-dark)}
.tk-hm-trust p{margin:.2rem 0 0;font-size:.8rem;color:var(--tk-muted)}
.tk-hm-news{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.tk-hm-art{background:#fff;border:1px solid var(--tk-line);border-radius:14px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:.16s}
.tk-hm-art:hover{box-shadow:0 14px 30px rgba(20,40,25,.1);transform:translateY(-4px)}
.tk-hm-art__img{aspect-ratio:16/10;background:#f1f4f1;overflow:hidden}
.tk-hm-art__img img{width:100%;height:100%;object-fit:cover}
.tk-hm-art__b{padding:.8rem 1rem 1rem;display:flex;flex-direction:column;gap:.35rem;flex:1}
.tk-hm-art__tag{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--tk-green-d);background:var(--tk-green-l);align-self:flex-start;border-radius:20px;padding:.12rem .55rem}
.tk-hm-art__t{font-size:.9rem;font-weight:700;color:var(--tk-dark);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tk-hm-art__d{font-size:.73rem;color:var(--tk-muted);margin-top:auto}
.tk-hm-promo{display:block;margin:1.6rem 0}
.tk-hm-promo img{width:100%;border-radius:16px;box-shadow:0 12px 30px rgba(20,40,25,.1)}
@media(max-width:991px){
    .tk-hm-cats{grid-template-columns:repeat(3,1fr);margin-top:1.2rem}
    .tk-hm-brands{grid-template-columns:repeat(4,1fr)}
    .tk-hm-trust{grid-template-columns:repeat(2,1fr)}
    .tk-hm-news{grid-template-columns:repeat(2,1fr)}
    /* Hero: tidy spacing + smaller decorative glyph + constrained banner on tablets/phones */
    .tk-hm-hero .tk-container{padding:1.6rem 16px 1.8rem}
    .tk-hm-hero:after{font-size:9rem;bottom:-1.5rem;right:-.5rem}
    .tk-hm-search{margin-top:1.1rem}
    .tk-hm-banner{margin-top:1.1rem}
    .tk-hm-banner img{max-height:220px}
}
@media(max-width:560px){
    .tk-hm-cats{grid-template-columns:repeat(2,1fr)}
    .tk-hm-brands{grid-template-columns:repeat(3,1fr)}
    .tk-hm-news{grid-template-columns:1fr}
    .tk-hm-hero h1{font-size:1.55rem}
    .tk-hm-stats{gap:1rem}
    .tk-hm-banner img{max-height:160px}
}
