/* =============================================================================
   Taimelamp.ee — homepage, 2026 rebuild
   Loaded after home.css, so it is the last word on the front page.

   home.css is kept because the hero shell and the dark categories band still come
   from it, but it ends with a long `!important` cascade ("NUCLEAR OPTION: FORCE
   WHITE TEXT") that pins every heading under .taimelamp-home. Selectors here carry
   one more class than those do, which is why some rules look heavier than they
   need to — they are not decoration, they are what it takes to win.

   filters.css is no longer enqueued on the front page: the markup it styled (the
   experience/brand/advanced filter block) is gone, and its pastel-green section
   was the third unrelated palette on one page.
   ========================================================================== */

.tl-home26 {
  --tl26-ink:        #0F172A;
  --tl26-ink-soft:   #475569;
  --tl26-ink-muted:  #64748B;
  --tl26-line:       #E2E8F0;
  --tl26-surface:    #FFFFFF;
  --tl26-surface-2:  #F8FAFC;
  --tl26-brand:      #2F9E44;
  --tl26-brand-ink:  #1B7A2F;
  --tl26-brand-soft: #E9F7EC;
  --tl26-night:      #0B1320;
  --tl26-radius:     14px;
  --tl26-radius-lg:  20px;
  --tl26-shadow:     0 1px 2px rgba(15,23,42,.04), 0 8px 24px rgba(15,23,42,.06);
  --tl26-shadow-lg:  0 2px 4px rgba(15,23,42,.05), 0 18px 44px rgba(15,23,42,.10);
}

/* -----------------------------------------------------------------------------
   Buttons
   -------------------------------------------------------------------------- */

.tl-home26 .tl-btn26 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .8rem 1.35rem;
  border-radius: 999px;
  border: 1.5px solid transparent;
  font-size: .975rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.tl-home26 .tl-btn26--primary {
  background: var(--tl26-brand);
  color: #fff;
  box-shadow: 0 6px 18px rgba(47,158,68,.28);
}
.tl-home26 .tl-btn26--primary:hover,
.tl-home26 .tl-btn26--primary:focus-visible {
  background: var(--tl26-brand-ink);
  color: #fff;
  transform: translateY(-1px);
}

.tl-home26 .tl-btn26--outline {
  background: transparent;
  color: var(--tl26-ink);
  border-color: var(--tl26-line);
}
.tl-home26 .tl-btn26--outline:hover,
.tl-home26 .tl-btn26--outline:focus-visible {
  border-color: var(--tl26-brand);
  color: var(--tl26-brand-ink);
  background: var(--tl26-brand-soft);
}

/* On the dark hero. */
.tl-home26 .tl-btn26--ghost {
  background: rgba(255,255,255,.08);
  color: #E2E8F0;
  border-color: rgba(255,255,255,.22);
}
.tl-home26 .tl-btn26--ghost:hover,
.tl-home26 .tl-btn26--ghost:focus-visible {
  background: rgba(255,255,255,.16);
  border-color: rgba(255,255,255,.4);
  color: #fff;
}

.tl-home26 .tl-btn26:focus-visible,
.tl-home26 a:focus-visible,
.tl-home26 label:focus-within {
  outline: 3px solid rgba(47,158,68,.45);
  outline-offset: 2px;
}

/* -----------------------------------------------------------------------------
   Section furniture
   -------------------------------------------------------------------------- */

.tl-home26 .tl-section { padding: clamp(3rem, 5.5vw, 4.75rem) 0; }

.tl-home26 .tl-section__title,
.tl-home26 .tl-advisor .tl-section__title {
  font-size: clamp(1.55rem, 1.1rem + 1.6vw, 2.15rem) !important;
  line-height: 1.2 !important;
  letter-spacing: -.02em !important;
  font-weight: 700 !important;
  margin: 0 0 .6rem !important;
  text-align: center;
  text-shadow: none !important;
  color: var(--tl26-ink) !important;
}

.tl-home26 .tl-section__lead {
  max-width: 62ch;
  margin: 0 auto 2.25rem;
  text-align: center;
  font-size: 1.02rem;
  line-height: 1.65;
  color: var(--tl26-ink-soft);
}

/* Title left, "see all" right — on wide screens only. */
.tl-home26 .tl-section__head { margin-bottom: 2rem; }
.tl-home26 .tl-section__head .tl-section__lead { margin-bottom: 0; }
.tl-home26 .tl-section__head-cta { display: none; }

@media (min-width: 900px) {
  .tl-home26 .tl-section__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
  }
  .tl-home26 .tl-section__head .tl-section__title,
  .tl-home26 .tl-section__head .tl-section__lead {
    text-align: left;
    margin-left: 0;
    margin-right: 0;
  }
  .tl-home26 .tl-section__head-cta { display: inline-flex; flex: none; }
  /* The duplicate button under the row is for narrow screens only. */
  .tl-home26 .tl-section__head + .tl-product-row + .tl-row-more,
  .tl-home26 .tl-section__head + .tl-guide-row + .tl-row-more { display: none; }
}

.tl-home26 .tl-row-more { margin: 1.75rem 0 0; text-align: center; }

/* -----------------------------------------------------------------------------
   Hero

   v1 stacked a 140 px spacer, a 120 px JS-set padding-top and the section's own
   padding to clear a sticky header. The header is `position: relative` and always
   has been, so all of that was pushing the H1 below the fold for nothing.
   -------------------------------------------------------------------------- */

.tl-home26.taimelamp-home .tl-hero-ultra {
  min-height: 0;
  padding: clamp(2.75rem, 5vw, 4.5rem) 0 clamp(2.5rem, 4.5vw, 4rem);
}


.tl-home26 .tl-hero-ultra__title {
  font-size: clamp(1.75rem, 1.1rem + 2.6vw, 3rem) !important;
  line-height: 1.14 !important;
  letter-spacing: -.025em !important;
  margin: 0 0 1.15rem !important;
  text-wrap: balance;
}

.tl-home26 .tl-hero-ultra__description { margin: 0 auto 1.9rem; max-width: 62ch; }
.tl-home26 .tl-hero-ultra__description p {
  color: rgba(226, 232, 240, .82) !important;
  font-size: 1rem;
  line-height: 1.65;
  margin: 0 0 .6rem;
}
.tl-home26 .tl-hero-ultra__description p:last-child { margin-bottom: 0; }
.tl-home26 .tl-hero-ultra__description strong { color: #fff; font-weight: 600; }
.tl-home26 .description-highlight { font-size: .95rem !important; }

.tl-home26 .tl-hero-ultra__cta {
  display: flex;
  gap: .75rem;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 0 2.25rem;
}

.tl-home26 .tl-hero26__partner {
  padding-top: 1.75rem;
  border-top: 1px solid rgba(255,255,255,.09);
}
.tl-home26 .tl-hero26__brands {
  display: flex;
  gap: 1rem;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
/* The claim the logos are evidence for. Reads as a caption, not a second headline. */
.tl-home26 .tl-hero26__claim {
  margin: .9rem auto 0;
  max-width: 46ch;
  text-align: center;
  font-size: .9rem !important;
  line-height: 1.55;
  color: rgba(226,232,240,.72) !important;
  text-wrap: balance;
}
.tl-home26 .tl-hero26__claim strong { color: #A7F3B4; font-weight: 600; }
.tl-home26 .tl-hero26__brand {
  display: block;
  padding: .55rem 1.15rem;
  border-radius: 12px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  transition: background-color .18s ease, border-color .18s ease;
}
.tl-home26 .tl-hero26__brand:hover { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.22); }
/* The Mars Hydro wordmark is dark grey (mean RGB 54,54,54) on transparent, so on the
   dark hero it disappears. Spider Farmer's is white and needs the opposite. */
.tl-home26 .tl-hero26__brand--light { background: rgba(255,255,255,.92); border-color: rgba(255,255,255,.92); }
.tl-home26 .tl-hero26__brand--light:hover { background: #fff; border-color: #fff; }
.tl-home26 .tl-hero26__brand--light img { opacity: 1; }
.tl-home26 .tl-hero26__brand img {
  display: block;
  height: 26px;
  width: auto;
  opacity: .92;
}

/* -----------------------------------------------------------------------------
   Trust strip
   -------------------------------------------------------------------------- */

.tl-home26 .tl-trust26 {
  background: var(--tl26-surface);
  border-bottom: 1px solid var(--tl26-line);
  padding: 1.25rem 0;
}
.tl-home26 .tl-trust26__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem 1.5rem;
}
@media (min-width: 900px) {
  .tl-home26 .tl-trust26__list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.tl-home26 .tl-trust26__list li {
  display: flex;
  align-items: center;
  gap: .7rem;
  margin: 0;
  font-size: .875rem;
  line-height: 1.35;
  color: var(--tl26-ink-muted);
}
.tl-home26 .tl-trust26__list i {
  font-size: 1.25rem;
  color: var(--tl26-brand);
}
.tl-home26 .tl-trust26__list span { display: block; }
.tl-home26 .tl-trust26__list strong {
  display: block;
  color: var(--tl26-ink);
  font-weight: 650;
  font-size: .95rem;
}

/* -----------------------------------------------------------------------------
   Grow-space advisor + running cost
   -------------------------------------------------------------------------- */

.tl-home26 .tl-advisor {
  background:
    radial-gradient(60rem 30rem at 50% -10rem, rgba(47,158,68,.07) 0%, transparent 65%),
    var(--tl26-surface-2);
  border-bottom: 1px solid var(--tl26-line);
  padding: clamp(3rem, 5.5vw, 4.75rem) 0;
  scroll-margin-top: 1.5rem;
}

.tl-home26 .tl-advisor__picker { border: 0; margin: 0 0 2rem; padding: 0; }
.tl-home26 .tl-advisor__legend {
  display: block;
  width: 100%;
  margin: 0 0 .85rem;
  padding: 0;
  text-align: center;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--tl26-ink-muted);
}

.tl-home26 .tl-advisor__chips {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .6rem;
}

/* Real radios, visually hidden: keyboard and screen-reader behaviour for free. */
.tl-home26 .tl-advisor__radio {
  position: absolute;
  width: 1px; height: 1px;
  margin: -1px; padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.tl-home26 .tl-advisor__chip {
  display: inline-flex;
  align-items: center;
  padding: .62rem 1.1rem;
  border-radius: 999px;
  border: 1.5px solid var(--tl26-line);
  background: var(--tl26-surface);
  color: var(--tl26-ink-soft);
  font-size: .95rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  cursor: pointer;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}
.tl-home26 .tl-advisor__chip:hover { border-color: #B7DFC1; color: var(--tl26-ink); }
.tl-home26 .tl-advisor__radio:checked + .tl-advisor__chip {
  background: var(--tl26-brand);
  border-color: var(--tl26-brand);
  color: #fff;
}
.tl-home26 .tl-advisor__radio:focus-visible + .tl-advisor__chip {
  outline: 3px solid rgba(47,158,68,.45);
  outline-offset: 2px;
}

.tl-home26 .tl-advisor__grid {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
}
@media (min-width: 960px) {
  .tl-home26 .tl-advisor__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}

.tl-home26 .tl-advisor__card {
  background: var(--tl26-surface);
  border: 1px solid var(--tl26-line);
  border-radius: var(--tl26-radius-lg);
  padding: clamp(1.25rem, 2.5vw, 1.85rem);
  box-shadow: var(--tl26-shadow);
}

.tl-home26 .tl-advisor__card-title {
  display: flex;
  align-items: center;
  gap: .6rem;
  margin: 0 0 1.25rem !important;
  font-size: 1.08rem !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
  color: var(--tl26-ink) !important;
  text-shadow: none !important;
}
.tl-home26 .tl-advisor__card-title i { color: var(--tl26-brand); font-size: 1.15rem; }
.tl-home26 .tl-advisor__for {
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  font-size: .95em;
  color: var(--tl26-brand-ink);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.tl-home26 .tl-advisor__stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
  margin: 0 0 1.25rem;
}
.tl-home26 .tl-advisor__stats > div {
  background: var(--tl26-surface-2);
  border: 1px solid var(--tl26-line);
  border-radius: var(--tl26-radius);
  padding: .8rem .9rem;
}
.tl-home26 .tl-advisor__stats dt {
  margin: 0 0 .3rem;
  font-size: .74rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--tl26-ink-muted);
}
.tl-home26 .tl-advisor__stats dd {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.25;
  color: var(--tl26-ink);
  font-variant-numeric: tabular-nums;
}

.tl-home26 .tl-advisor__hint {
  margin: 0 0 1.25rem;
  font-size: .86rem !important;
  line-height: 1.6;
  color: var(--tl26-ink-muted) !important;
}

.tl-home26 .tl-advisor__links { display: flex; flex-wrap: wrap; gap: .5rem; }
.tl-home26 .tl-chiplink {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .5rem .85rem;
  border-radius: 999px;
  border: 1px solid var(--tl26-line);
  background: var(--tl26-surface);
  color: var(--tl26-ink);
  font-size: .875rem;
  font-weight: 600;
  text-decoration: none;
  transition: border-color .16s ease, background-color .16s ease;
}
.tl-home26 .tl-chiplink:hover { border-color: var(--tl26-brand); background: var(--tl26-brand-soft); }
.tl-home26 .tl-chiplink__count {
  padding: .1rem .45rem;
  border-radius: 999px;
  background: var(--tl26-surface-2);
  color: var(--tl26-ink-muted);
  font-size: .76rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.tl-home26 .tl-advisor__more { margin: 1.1rem 0 0; }
.tl-home26 .tl-advisor__more a {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  font-size: .9rem;
  font-weight: 600;
  color: var(--tl26-brand-ink);
  text-decoration: none;
}
.tl-home26 .tl-advisor__more a:hover { text-decoration: underline; }

/* The calculator comes from taimelamp-pricing with its own compact styling.
   Only the parts that need to sit on a card are restated. */
.tl-home26 .tl-advisor .tl-calc { margin: 0; }
.tl-home26 .tl-advisor .tl-calc__inputs { gap: .7rem; }
.tl-home26 .tl-advisor .tl-calc__inputs input {
  border: 1.5px solid var(--tl26-line);
  border-radius: 10px;
  padding: .6rem .7rem;
  background: var(--tl26-surface);
  color: var(--tl26-ink);
}
.tl-home26 .tl-advisor .tl-calc__inputs input:focus-visible {
  outline: 3px solid rgba(47,158,68,.35);
  outline-offset: 1px;
  border-color: var(--tl26-brand);
}
.tl-home26 .tl-advisor .tl-calc__inputs span {
  font-size: .74rem;
  font-weight: 600;
  letter-spacing: .03em;
  text-transform: uppercase;
  color: var(--tl26-ink-muted);
  opacity: 1;
}
.tl-home26 .tl-advisor .tl-calc__out { gap: .75rem; margin-top: 1.1rem; }
.tl-home26 .tl-advisor .tl-calc__out div {
  background: var(--tl26-brand-soft);
  border: 1px solid rgba(47,158,68,.18);
  border-radius: var(--tl26-radius);
  padding: .85rem .5rem;
}
.tl-home26 .tl-advisor .tl-calc__out strong { font-size: 1.4rem; color: var(--tl26-brand-ink); }
.tl-home26 .tl-advisor .tl-calc__out span {
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .03em;
  text-transform: uppercase;
  color: var(--tl26-ink-muted);
  opacity: 1;
}
.tl-home26 .tl-advisor .tl-calc__note {
  font-size: .78rem !important;
  line-height: 1.55;
  color: var(--tl26-ink-muted) !important;
  opacity: 1;
}

/* -----------------------------------------------------------------------------
   Categories

   The dark band is kept — it breaks the page rhythm and the product photography
   reads well on it. What changed is density: the tiles printed the full category
   description, which since 2026-08-30 is 71–109 words of SEO copy each, so twelve
   tiles rendered about a thousand words of paragraph. The text stays in the DOM
   (it is crawlable, and removing it would be a content regression); it is clamped
   to three lines so the grid is scannable again.
   -------------------------------------------------------------------------- */

.tl-home26.taimelamp-home .categories-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(.75rem, 1.6vw, 1.25rem);
}
@media (min-width: 720px)  { .tl-home26.taimelamp-home .categories-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1080px) { .tl-home26.taimelamp-home .categories-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

.tl-home26.taimelamp-home .tl-categories .category-card {
  border-radius: var(--tl26-radius-lg);
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.11);
}
.tl-home26.taimelamp-home .tl-categories .category-card:hover {
  transform: translateY(-3px);
  border-color: rgba(122, 231, 143, .45);
  box-shadow: 0 14px 34px rgba(0,0,0,.28);
}
.tl-home26.taimelamp-home .tl-categories .category-image { aspect-ratio: 4 / 3; background: #fff; }
.tl-home26.taimelamp-home .tl-categories .category-image img { object-fit: contain; padding: 8%; }

.tl-home26.taimelamp-home .tl-categories .category-info {
  padding: .9rem 1rem 1rem;
  gap: .4rem;
}
.tl-home26.taimelamp-home .tl-categories .category-info h3 {
  font-size: 1rem !important;
  line-height: 1.3 !important;
  font-weight: 650 !important;
}
.tl-home26.taimelamp-home .tl-categories .category-info p {
  font-size: .82rem !important;
  line-height: 1.5 !important;
  color: rgba(226,232,240,.62) !important;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}
.tl-home26.taimelamp-home .tl-categories .category-count {
  align-self: flex-start;
  padding: .12rem .5rem;
  border-radius: 999px;
  background: rgba(122,231,143,.14);
  color: #A7F3B4;
  font-size: .72rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
/* The tile is one big link; the pill inside it was styled as a second button. */
.tl-home26.taimelamp-home .tl-categories .category-info .btn.small {
  margin-top: auto;
  padding: 0;
  background: none !important;
  box-shadow: none !important;
  border: 0;
  color: #7AE78F !important;
  font-size: .84rem;
  font-weight: 600;
}

/* -----------------------------------------------------------------------------
   Product and guide cards
   -------------------------------------------------------------------------- */

.tl-home26 .tl-product-row {
  display: grid;
  gap: clamp(.75rem, 1.6vw, 1.1rem);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (min-width: 720px)  { .tl-home26 .tl-product-row { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1080px) { .tl-home26 .tl-product-row { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

.tl-home26 .tl-product-card {
  display: flex;
  flex-direction: column;
  gap: .55rem;
  padding: .75rem;
  border: 1px solid var(--tl26-line);
  border-radius: var(--tl26-radius);
  background: var(--tl26-surface);
  color: var(--tl26-ink);
  text-decoration: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.tl-home26 .tl-product-card:hover {
  border-color: #B7DFC1;
  box-shadow: var(--tl26-shadow-lg);
  transform: translateY(-2px);
}
.tl-home26 .tl-product-card__media {
  display: block;
  aspect-ratio: 1 / 1;
  border-radius: 10px;
  background: var(--tl26-surface-2);
  overflow: hidden;
}
.tl-home26 .tl-product-card__media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.tl-home26 .tl-product-card__name {
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--tl26-ink);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}
.tl-home26 .tl-product-card__price {
  margin-top: auto;
  font-size: 1rem;
  font-weight: 700;
  color: var(--tl26-ink);
  font-variant-numeric: tabular-nums;
}
.tl-home26 .tl-product-card__price del { font-weight: 500; font-size: .85em; color: var(--tl26-ink-muted); margin-right: .35rem; }
.tl-home26 .tl-product-card__price ins { text-decoration: none; color: var(--tl26-brand-ink); }

.tl-home26 .tl-guides { background: var(--tl26-surface-2); border-top: 1px solid var(--tl26-line); }
.tl-home26 .tl-guide-row {
  display: grid;
  gap: clamp(.85rem, 1.8vw, 1.25rem);
  grid-template-columns: minmax(0, 1fr);
}
@media (min-width: 640px)  { .tl-home26 .tl-guide-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1020px) { .tl-home26 .tl-guide-row { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

.tl-home26 .tl-guide-card {
  display: flex;
  flex-direction: column;
  gap: .6rem;
  padding: 0 0 1rem;
  border: 1px solid var(--tl26-line);
  border-radius: var(--tl26-radius);
  background: var(--tl26-surface);
  color: var(--tl26-ink);
  text-decoration: none;
  overflow: hidden;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.tl-home26 .tl-guide-card:hover {
  border-color: #B7DFC1;
  box-shadow: var(--tl26-shadow-lg);
  transform: translateY(-2px);
}
.tl-home26 .tl-guide-card__media { display: block; aspect-ratio: 16 / 9; background: var(--tl26-surface-2); overflow: hidden; }
.tl-home26 .tl-guide-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.tl-home26 .tl-guide-card__title {
  padding: 0 1rem;
  font-size: .98rem;
  font-weight: 650;
  line-height: 1.4;
  color: var(--tl26-ink);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}
.tl-home26 .tl-guide-card__more {
  margin-top: auto;
  padding: 0 1rem;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-size: .85rem;
  font-weight: 600;
  color: var(--tl26-brand-ink);
}

/* -----------------------------------------------------------------------------
   Brands
   -------------------------------------------------------------------------- */

.tl-home26 .tl-brands26 { background: var(--tl26-surface); border-top: 1px solid var(--tl26-line); }
.tl-home26 .tl-brands26__grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr);
  max-width: 900px;
  margin: 0 auto;
}
@media (min-width: 760px) { .tl-home26 .tl-brands26__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.tl-home26 .tl-brand26 {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 1rem;
  padding: 1.15rem 1.25rem;
  border: 1px solid var(--tl26-line);
  border-radius: var(--tl26-radius-lg);
  background: var(--tl26-surface);
  color: var(--tl26-ink);
  text-decoration: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.tl-home26 .tl-brand26:hover {
  border-color: #B7DFC1;
  box-shadow: var(--tl26-shadow-lg);
  transform: translateY(-2px);
}
.tl-home26 .tl-brand26__logo {
  display: grid;
  place-items: center;
  width: 112px;
  height: 52px;
  border-radius: 10px;
  padding: .4rem .6rem;
}
.tl-home26 .tl-brand26--dark .tl-brand26__logo { background: #111827; }
.tl-home26 .tl-brand26--light .tl-brand26__logo { background: var(--tl26-surface-2); }
.tl-home26 .tl-brand26__logo img { max-width: 100%; max-height: 100%; width: auto; height: auto; display: block; }
.tl-home26 .tl-brand26__body { display: block; min-width: 0; }
.tl-home26 .tl-brand26__count {
  display: block;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--tl26-brand-ink);
  font-variant-numeric: tabular-nums;
}
.tl-home26 .tl-brand26__note {
  display: block;
  margin-top: .15rem;
  font-size: .85rem;
  line-height: 1.5;
  color: var(--tl26-ink-muted);
}
.tl-home26 .tl-brand26__go { color: var(--tl26-ink-muted); font-size: 1.1rem; }
.tl-home26 .tl-brand26:hover .tl-brand26__go { color: var(--tl26-brand); }

/* -----------------------------------------------------------------------------
   Final CTA
   -------------------------------------------------------------------------- */

.tl-home26.taimelamp-home .tl-final-cta {
  background: var(--tl26-night);
  border-top: 0;
  padding: clamp(3rem, 5.5vw, 4.5rem) 0;
}
.tl-home26.taimelamp-home .tl-final-cta h2 {
  color: #fff !important;
  font-size: clamp(1.5rem, 1.1rem + 1.5vw, 2rem) !important;
  letter-spacing: -.02em !important;
  text-shadow: none !important;
  margin: 0 0 .65rem !important;
}
.tl-home26.taimelamp-home .tl-final-cta p {
  color: rgba(226,232,240,.75) !important;
  max-width: 56ch;
  margin: 0 auto 1.65rem;
}
.tl-home26 .tl-cta-actions { display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; }
.tl-home26 .tl-final-cta .tl-btn26--outline {
  color: #E2E8F0;
  border-color: rgba(255,255,255,.24);
}
.tl-home26 .tl-final-cta .tl-btn26--outline:hover {
  background: rgba(255,255,255,.1);
  border-color: rgba(255,255,255,.45);
  color: #fff;
}

/* -----------------------------------------------------------------------------
   Motion
   The hero used to run two infinite keyframe animations plus a scroll parallax
   handler. Nothing here animates without an interaction.
   -------------------------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
  .tl-home26 *,
  .tl-home26 *::before,
  .tl-home26 *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
  .tl-home26 .tl-product-card:hover,
  .tl-home26 .tl-guide-card:hover,
  .tl-home26 .tl-brand26:hover,
  .tl-home26.taimelamp-home .tl-categories .category-card:hover { transform: none; }
}

/* -----------------------------------------------------------------------------
   Narrow screens

   The calculator's own stylesheet collapses its three results to one column below
   420 px, which costs about 200 px of scroll on a phone for numbers that are five
   characters long. Kept three-across and scaled down instead.
   -------------------------------------------------------------------------- */

@media (max-width: 560px) {
  .tl-home26 .tl-advisor .tl-calc__inputs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .6rem;
  }
  /* The price field wraps alone onto the second row; let it use the full width. */
  .tl-home26 .tl-advisor .tl-calc__inputs label:last-child { grid-column: 1 / -1; }

  .tl-home26 .tl-advisor .tl-calc__out {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .5rem;
  }
  .tl-home26 .tl-advisor .tl-calc__out div { padding: .7rem .3rem; }
  .tl-home26 .tl-advisor .tl-calc__out strong { font-size: 1.12rem; }
  .tl-home26 .tl-advisor .tl-calc__out span { font-size: .62rem; letter-spacing: .02em; }

  .tl-home26 .tl-advisor__stats { gap: .5rem; }
  .tl-home26 .tl-advisor__stats > div { padding: .65rem .7rem; }
  .tl-home26 .tl-advisor__stats dd { font-size: .95rem; }


  .tl-home26 .tl-hero-ultra__cta .tl-btn26 { flex: 1 1 100%; }
}
