/* ============================================================
   Home Redesign — modernus prekybinis e-commerce Home.
   ============================================================
   Kraunama TIK per page-templates/home-redesign.php šabloną
   (žr. inc/home-redesign.php — is_page_template() apsauga).

   Viskas scope'inta po .ps-home šaknimi, kad joks stilius
   negalėtų nutekėti į kitus puslapius.

   Brand accent: #e83a17 (vienintelė akcentinė spalva, jokio žalio).
   Jokių gradientų, jokio didelio border-radius, jokių SaaS-style
   kortelių, jokių dekoratyvių blob'ų. Žemiau hero naudojamas vienas
   šiltas tekstūruotas Home canvas; baltos lieka tik turinio kortelės.
   ============================================================ */

/* Aiški spacing skalė — jokių atsitiktinių 43px/57px reikšmių.
   Naudojama sekcijų vertikaliam padding ir heading->content tarpams. */
.ps-home {
  --ps-space-1: 8px;
  --ps-space-2: 16px;
  --ps-space-3: 24px;
  --ps-space-4: 32px;
  --ps-space-6: 48px;
  --ps-space-8: 64px;
  --ps-space-12: 96px;
  --ps-accent: #e83a17;
  --ps-accent-text: #c9300f;
  --ps-accent-hover: #b8280b;
  --ps-accent-on-dark: #fa6a44;
  --ps-ink: #1a212b;
  --ps-ink-deep: #11161c;
  --ps-ink-deep-rgb: 17, 22, 28;
  --ps-text: #1f2937;
  --ps-text-muted: #626b78;
  --ps-border: #e5e7eb;
  --ps-canvas: #f6f5f2;
  --ps-surface-cool: #f7f8f8;
  --ps-surface: #ffffff;
  --ps-home-warm: var(--ps-canvas);
  --ps-home-pattern: url("../images/home-topography-pattern.svg");
  background: var(--ps-home-warm);
  color: var(--ps-text);
}

/* The Home template is rendered inside WoodMart's content container. Make
   that outer shell full-width on this template only; individual
   .ps-home-container elements below keep the shared content axis. */
body.page-template-home-redesign .main-page-wrapper > .container {
  width: 100%;
  max-width: none;
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0;
}

body.page-template-home-redesign .main-page-wrapper > .container > .row.content-layout-wrapper {
  width: 100%;
  max-width: none;
  margin-right: 0;
  margin-left: 0;
}

body.page-template-home-redesign .main-page-wrapper > .container > .row.content-layout-wrapper > #ps-home-redesign {
  width: 100%;
  max-width: none;
  flex: 0 0 100%;
  padding-right: 0;
  padding-left: 0;
}

/* Vienas bendras tekstūruotas canvas nuo hero apačios iki Home turinio pabaigos.
   Hero lieka atskiras fotografijos sluoksnis; sekcijų išoriniai fonai žemiau
   neturi uždengti šio pattern, o kortelės gali likti baltos. */
.ps-home-after-hero {
  position: relative;
  width: 100%;
  max-width: none;
  isolation: isolate;
  background-color: var(--ps-home-warm);
}

.ps-home-after-hero::before {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  content: "";
  background-image: var(--ps-home-pattern);
  background-position: center top;
  background-repeat: repeat;
  background-size: 600px 600px;
  opacity: .07;
}

.ps-home-content {
  position: relative;
  z-index: 1;
  width: 100%;
}

.ps-home-content > * {
  position: relative;
  z-index: 1;
}

.ps-home-after-hero .ps-home-v4-categories,
.ps-home-after-hero .ps-home-products,
.ps-home-after-hero .ps-home-category-directory,
.ps-home-after-hero .ps-home-brands,
.ps-home-after-hero .ps-home-seo,
.ps-home-after-hero .ps-home-dynamic-promo {
  background-color: transparent;
  background-image: none;
}

/* Jokio papildomo horizontalaus padding čia: main.ps-home (Bootstrap
   col-lg-12 per woodmart_get_content_class()) JAU turi tą patį ~15px
   gutter'į, kokį naudoja header'io .container — tai TA PATI ašis.
   Papildomas padding čia sukurtų dvigubą (Bootstrap + savo) poslinkį ir
   nuvestų Home turinį nuo header turinio ašies. */
.ps-home-container {
  max-width: 1222px;
  margin: 0 auto;
}

.ps-home-section-title {
  font-size: 24px;
  font-weight: 700;
  color: var(--ps-text);
  margin: 0 0 var(--ps-space-4);
  line-height: 1.3;
}

/* -------------------------------
   Bendri mygtukai (CTA)
-------------------------------- */
.ps-home .ps-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 28px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 6px;
  border: 1.5px solid transparent;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}

.ps-home .ps-btn--primary {
  background: var(--ps-accent-text);
  border-color: var(--ps-accent-text);
  color: #fff;
}

.ps-home .ps-btn--primary:hover {
  background: var(--ps-accent-hover);
  border-color: var(--ps-accent-hover);
  color: #fff;
  transform: translateY(-2px);
}

.ps-home .ps-btn--secondary {
  background: transparent;
  border-color: var(--ps-border);
  color: var(--ps-text);
}

.ps-home .ps-btn--secondary:hover {
  background: #faf8f6;
  border-color: var(--ps-accent);
  transform: translateY(-2px);
}

.ps-home .ps-btn:focus-visible {
  outline: 2px solid var(--ps-accent);
  outline-offset: 2px;
}

/* -------------------------------
   A. Promo strip
-------------------------------- */
.ps-home-promo-strip {
  background: var(--ps-ink);
  color: #fff;
  padding: 10px 0;
}

.ps-home-promo-strip > .ps-home-container,
.ps-home-v4-hero > .ps-home-container {
  width: 100%;
  max-width: none;
}

/* Mobile'e (kol matomas tik 1-2 punktai) — paprastas centruotas flex.
   >=768px, kai matomi visi 3, .ps-home-promo-strip__list virsta 3
   vienodo pločio grid kolonų juosta (žr. media query žemiau) — TIE
   PATYS 3 pranešimai visada užima vienodą zonos plotį, o ne
   priklauso nuo teksto ilgio. NEKEIČIAMA .ps-home-container (bendra
   1222px ašis visiems sekcijoms) — grid taikomas TIK šiam vidiniam
   .ps-home-promo-strip__list elementui, kad nepaveiktų kitų sekcijų. */
.ps-home-promo-strip__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

/* WoodMart'o globalus reset'as taiko li { margin-bottom: var(--li-mb) }
   (=10px) ir li:last-child { margin-bottom: 0 } — TAS PATS mechanizmas,
   kuris sukėlė trust-bar bug'ą. align-items:center (žr. .ps-home-promo-strip__list)
   grid'e centruoja kiekvieno elemento MARGIN BOX, tad asimetriškas
   margin-bottom (10px/10px/0px) verčia paskutinį elementą pasislinkti
   žemyn, nors jo TURINIO aukštis identiškas. margin:0 čia pašalina šią
   priežastį visiems trims elementams vienodai (ne tik trečiam). */
.ps-home-promo-strip__item {
  display: block;
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.4;
}

.ps-home-promo-strip__item--1,
.ps-home-promo-strip__item--2 {
  display: none;
}

@media (min-width: 480px) {
  .ps-home-promo-strip__item--1 {
    display: block;
  }
}

@media (min-width: 768px) {
  .ps-home-promo-strip__item--2 {
    display: block;
  }

  .ps-home-promo-strip__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    align-items: center;
    gap: 24px;
  }

  .ps-home-promo-strip__item {
    text-align: center;
    white-space: normal;
  }
}

/* -------------------------------
   B. Commerce hero
-------------------------------- */
.ps-home-hero {
  padding: var(--ps-space-8) 0;
  background: #faf8f6;
}

.ps-home-hero__inner {
  display: flex;
  align-items: stretch;
  gap: 32px;
}

.ps-home-hero__main {
  flex: 0 1 67%;
  display: flex;
  align-items: center;
  gap: 40px;
}

.ps-home-hero__inner--no-tiles .ps-home-hero__main {
  flex-basis: 100%;
}

.ps-home-hero__content {
  flex: 0 1 55%;
}

.ps-home-hero__eyebrow {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--ps-accent-text);
  margin: 0 0 16px;
}

.ps-home-hero__title {
  font-size: clamp(28px, 3.4vw, 48px);
  font-weight: 800;
  color: var(--ps-text);
  line-height: 1.1;
  letter-spacing: -0.02em;
  max-width: 15ch;
  margin: 0 0 20px;
}

.ps-home-hero__text {
  font-size: 17px;
  color: var(--ps-text-muted);
  line-height: 1.6;
  max-width: 440px;
  margin: 0 0 28px;
}

.ps-home-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.ps-home-hero__visual {
  flex: 0 1 45%;
}

.ps-home-hero__frame {
  width: 100%;
  aspect-ratio: 4 / 3;
  max-height: 380px;
  background: var(--ps-surface);
  border: 1px solid var(--ps-border);
  border-radius: 8px;
  overflow: hidden;
}

.ps-home-hero__frame img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Dvi sukrautos promo tiles šalia pagrindinio hero bloko. */
.ps-home-hero__tiles {
  flex: 0 1 33%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.ps-home-hero__tile {
  position: relative;
  flex: 1 1 0;
  min-height: 180px;
  border-radius: 8px;
  overflow: hidden;
  display: block;
  text-decoration: none;
  color: #fff;
}

.ps-home-hero__tile-media {
  position: absolute;
  inset: 0;
  display: block;
}

.ps-home-hero__tile-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .25s ease;
}

.ps-home-hero__tile:hover .ps-home-hero__tile-media img {
  transform: scale(1.03);
}

/* Subtilus solid/rgba overlay teksto kontrastui — NIEKADA gradient. */
.ps-home-hero__tile-overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(var(--ps-ink-deep-rgb), .38);
  transition: background-color .18s ease;
}

.ps-home-hero__tile:hover .ps-home-hero__tile-overlay {
  background-color: rgba(var(--ps-ink-deep-rgb), .48);
}

.ps-home-hero__tile-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  padding: 18px;
}

.ps-home-hero__tile-heading {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-bottom: 6px;
}

.ps-home-hero__tile-cta {
  font-size: 14px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.ps-home-hero__tile:focus-visible {
  outline: 2px solid var(--ps-accent);
  outline-offset: 2px;
}

/* -------------------------------
   C. Kategorijos
-------------------------------- */
.ps-home-categories {
  padding: var(--ps-space-8) 0;
  background: #fff;
}

.ps-home-categories__header {
  margin-bottom: var(--ps-space-4);
}

.ps-home-categories__header .ps-home-section-title {
  margin-bottom: 8px;
}

.ps-home-categories__subtitle {
  font-size: 16px;
  color: var(--ps-text-muted);
  margin: 0;
}

/* Tikras CSS Grid, ne flex-wrap — 8 kategorijos visada sudaro TIKSLIAI
   vieną 8 stulpelių eilutę desktop'e (>=1200px), niekada "7+1". */
.ps-home-categories__grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 14px;
}

/* margin:0 pašalina WoodMart'o globalų li { margin-bottom: var(--li-mb) }
   (=10px) + li:last-child { margin-bottom: 0 } — TAS PATS mechanizmas,
   kuris sukėlė trust-bar/promo-strip bug'ą: asimetriškas margin verčia
   grid'o paskutinę (8-tą) kortelę stretch'intis ~10px aukštesnę už likusias
   7. Taikoma VISIEMS elementams vienodai, ne tik paskutiniam. */
.ps-home-categories__item {
  min-width: 0;
  margin: 0;
}

.ps-home-categories__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: 120px;
  height: 100%;
  padding: var(--ps-space-2) var(--ps-space-1);
  background: var(--ps-surface);
  border: 1px solid var(--ps-border);
  border-radius: 8px;
  color: var(--ps-text);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.ps-home-categories__link:hover {
  border-color: var(--ps-accent);
  color: var(--ps-accent-text);
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(var(--ps-ink-deep-rgb), .05);
}

.ps-home-categories__link:focus-visible {
  outline: 2px solid var(--ps-accent);
  outline-offset: 2px;
}

/* Fiksuota media zona VISOMS kategorijoms — object-fit:contain (NE cover),
   kad skirtingų proporcijų/dydžių produktų nuotraukos (ritė, meškerė,
   masalas, apranga...) niekada nedeformuotųsi ir vizualiai svertų panašiai,
   vietoj kad viena atrodytų didelė, kita — mikroskopinė. */
.ps-home-categories__media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 48px;
  margin-bottom: var(--ps-space-1);
}

.ps-home-categories__media img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  object-position: center;
  display: block;
}

.ps-home-categories__label {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.3;
}

@media (max-width: 1199px) {
  .ps-home-categories__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* -------------------------------
   D. / F. / G. Produktai
-------------------------------- */
.ps-home-products {
  padding: var(--ps-space-8) 0;
  background: transparent;
}

/* Product rails share the warm canvas; modifier classes remain semantic
   hooks for the Home template — žr. page-templates/home-redesign.php. */
.ps-home-products--muted {
  background: transparent;
}

.ps-home-products--cool {
  background: transparent;
}

.ps-home-products__grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--ps-space-3);
}

@media (max-width: 1339px) {
  .ps-home-products__grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

/* margin:0 pašalina TĄ PATĮ WoodMart li margin-bottom/last-child mechanizmą
   (žr. .ps-home-categories__item aukščiau) — be jo kiekvienos D/F/G
   sekcijos 8-ta (paskutinė) kortelė būtų ~10px aukštesnė už likusias 7. */
.ps-product-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  margin: 0;
  background: var(--ps-surface);
  border: 1px solid var(--ps-border);
  border-radius: 6px;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.ps-product-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(var(--ps-ink-deep-rgb), .07);
  border-color: var(--ps-border);
}

.ps-product-card__media-link {
  display: flex;
  flex-direction: column;
  color: inherit;
  text-decoration: none;
  padding: 16px 16px 0;
}

.ps-product-card__media-link:focus-visible {
  outline: 2px solid var(--ps-accent);
  outline-offset: 2px;
}

.ps-product-card__image {
  position: relative;
  display: block;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 4px;
  background: #f9fafb;
}

.ps-product-card__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  transition: transform .25s ease;
}

.ps-product-card:hover .ps-product-card__image img {
  transform: scale(1.03);
}

.ps-product-card--sold-out .ps-product-card__image img {
  opacity: .55;
}

.ps-product-card__badge {
  position: absolute;
  top: var(--ps-space-1);
  left: var(--ps-space-1);
  z-index: 1;
  padding: 3px 7px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .03em;
  border-radius: 4px;
  color: #fff;
}

.ps-product-card__badge--sale {
  background: var(--ps-accent-text);
}

.ps-product-card__badge--sold-out {
  background: var(--ps-text-muted);
}

.ps-product-card__name {
  margin-top: 12px;
  font-size: 14px;
  font-weight: 600;
  color: var(--ps-text);
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: calc(1.4em * 2);
}

.ps-product-card__price {
  margin-top: 6px;
  margin-bottom: 16px;
  font-size: 14px;
  font-weight: 700;
  color: var(--ps-accent-text);
}

.ps-product-card__price ins {
  text-decoration: none;
  color: var(--ps-accent-text);
}

.ps-product-card__price del {
  color: var(--ps-text-muted);
  font-weight: 500;
  margin-right: 6px;
}

.ps-product-card__cta {
  margin-top: auto;
  padding: 0 16px 16px;
}

.ps-product-card__cta .button {
  display: block;
  text-align: center;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 600;
  border-radius: 6px;
  background: var(--ps-accent-text);
  border: 1.5px solid var(--ps-accent-text);
  color: #fff;
  text-decoration: none;
  transition: background-color .18s ease, border-color .18s ease;
}

.ps-product-card__cta .button:hover {
  background: var(--ps-accent-hover);
  border-color: var(--ps-accent-hover);
  color: #fff;
}

.ps-product-card__cta .button:focus-visible {
  outline: 2px solid var(--ps-accent);
  outline-offset: 2px;
}

.ps-product-card__sold-out-label {
  display: block;
  text-align: center;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 600;
  border-radius: 6px;
  background: #f3f4f6;
  color: var(--ps-text-muted);
}

/* -------------------------------
   Dinaminis Home Promo blokas
   (Appearance -> Home Promo; žr. inc/home-promo-settings.php)
-------------------------------- */
.ps-home-dynamic-promo {
  padding: var(--ps-space-8) 0;
  background: #faf8f6;
}

.ps-home-dynamic-promo__card {
  display: flex;
  align-items: stretch;
  gap: var(--ps-space-6);
  background: var(--ps-surface);
  border: 1px solid var(--ps-border);
  border-radius: 8px;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.ps-home-dynamic-promo__card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(var(--ps-ink-deep-rgb), .07);
  border-color: var(--ps-border);
}

.ps-home-dynamic-promo__content {
  flex: 0 1 45%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--ps-space-6);
}

.ps-home-dynamic-promo__eyebrow {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--ps-accent-text);
  margin: 0 0 var(--ps-space-1);
}

.ps-home-dynamic-promo__title {
  font-size: clamp(22px, 2.6vw, 32px);
  font-weight: 800;
  color: var(--ps-text);
  line-height: 1.2;
  margin: 0 0 var(--ps-space-2);
}

.ps-home-dynamic-promo__text {
  font-size: 16px;
  color: var(--ps-text-muted);
  line-height: 1.6;
  margin: 0 0 var(--ps-space-4);
}

.ps-home-dynamic-promo__content .ps-btn {
  align-self: flex-start;
}

.ps-home-dynamic-promo__media {
  flex: 0 1 55%;
  min-height: 260px;
}

.ps-home-dynamic-promo__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* -------------------------------
   E. Didelis akcinis banneris
-------------------------------- */
.ps-home-promo {
  position: relative;
  padding: var(--ps-space-12) 0;
  color: #fff;
  overflow: hidden;
}

.ps-home-promo__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.ps-home-promo__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.ps-home-promo__overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(var(--ps-ink-deep-rgb), .45);
}

/* .ps-home-promo__inner NELIEČIA max-width — jis paveldi
   .ps-home-container (1222px), kad banneris liktų toje pačioje
   Home content ašyje. Skaitomas teksto plotis ribojamas ATSKIRAME
   viduje esančiame elemente (.ps-home-promo__text-block), o ne
   perrašant patį container'į. */
.ps-home-promo__inner {
  position: relative;
  z-index: 1;
}

.ps-home-promo__text-block {
  max-width: 560px;
}

.ps-home-promo__title {
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 800;
  color: #fff;
  margin: 0 0 12px;
}

.ps-home-promo__text {
  color: rgba(255, 255, 255, .92);
  margin: 0 0 24px;
  line-height: 1.6;
}

/* -------------------------------
   H. Trust / USP juosta
-------------------------------- */
.ps-home-trust-bar {
  padding: var(--ps-space-4) 0;
  background: var(--ps-ink);
}

/* 3 vienodo pločio grid kolonos (ne centruotas flex cluster su
   atsitiktiniais tarpais) — kiekvienas USP punktas užima vienodą
   zonos plotį ir vienodai centruojasi savo kolonoje. Taikoma
   .ps-home-trust-bar__list (vidiniam elementui), o ne bendram
   .ps-home-container, kad nepaveiktų kitų sekcijų ašies. */
.ps-home-trust-bar__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: center;
  gap: 16px 24px;
}

/* WoodMart'o globalus reset'as taiko li { margin-bottom: var(--li-mb) }
   (=10px) ir li:last-child { margin-bottom: 0 }. Grid rikiuoja eilutės
   aukštį pagal DIDŽIAUSIĄ elemento IŠORINĮ (su margin) aukštį, o po to
   stretch'ina KIEKVIENO elemento border-box likusiai vietai užpildyti —
   kadangi paskutinis elementas neturi margin-bottom, jis vienintelis
   "sugeria" visą papildomą 10px kaip savo AUKŠTĮ, o ne kaip margin, todėl
   jo turinys centruojasi žemiau už pirmus du. margin:0 čia pašalina šią
   nesimetrišką inheritance'o priežastį visiems trims elementams vienodai
   (NE tik trečiam), o align-items:center ant grid konteinerio papildomai
   apsaugo nuo bet kokio stretch'o ateityje. */
.ps-home-trust-bar__item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
}

.ps-home-trust-bar__icon {
  display: block;
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  color: var(--ps-accent-on-dark);
}

/* -------------------------------
   I. SEO / informacinis turinys
-------------------------------- */
.ps-home-seo {
  padding: var(--ps-space-8) 0;
  background: transparent;
}

.ps-home-seo__text {
  color: var(--ps-text-muted);
  line-height: 1.6;
  max-width: 820px;
}

/* -------------------------------
   Mobile bazinis responsive
-------------------------------- */
@media (max-width: 767px) {
  .ps-home-dynamic-promo {
    padding: var(--ps-space-4) 0;
  }

  .ps-home-dynamic-promo__card {
    flex-direction: column;
  }

  .ps-home-dynamic-promo__content {
    flex-basis: auto;
    padding: var(--ps-space-4);
  }

  .ps-home-dynamic-promo__media {
    flex-basis: auto;
    min-height: 200px;
  }

  .ps-home-hero {
    padding: var(--ps-space-6) 0;
  }

  .ps-home-hero__inner {
    flex-direction: column;
    align-items: stretch;
  }

  .ps-home-hero__main {
    flex-basis: auto;
    flex-direction: column;
  }

  .ps-home-hero__content,
  .ps-home-hero__visual {
    flex-basis: auto;
  }

  .ps-home-hero__text {
    max-width: none;
  }

  .ps-home-hero__frame {
    max-height: 280px;
  }

  .ps-home-hero__tiles {
    flex-basis: auto;
    flex-direction: row;
  }

  .ps-home-hero__tile {
    min-height: 160px;
  }

  .ps-home-categories,
  .ps-home-products,
  .ps-home-seo {
    padding: var(--ps-space-4) 0;
  }

  .ps-home-promo {
    padding: var(--ps-space-6) 0;
  }

  .ps-home-promo__text-block {
    max-width: none;
  }

  /* Kategorijos mobile'e: native horizontal swipe + scroll-snap, be JS.
     Grid (desktop/tablet) pakeičiamas atgal į flex, kad veiktų overflow-x. */
  .ps-home-categories__grid {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
  }

  .ps-home-categories__item {
    flex: 0 0 auto;
    width: 132px;
    scroll-snap-align: start;
  }

  /* Produktai mobile'e: native horizontal swipe + scroll-snap, be JS. */
  .ps-home-products__grid {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 16px;
    padding-bottom: 4px;
  }

  .ps-product-card {
    flex: 0 0 auto;
    width: 62vw;
    max-width: 240px;
    scroll-snap-align: start;
  }

  /* Mobile'e 3 kolonos per ankštos ilgiausiam USP tekstui —
     sukraunama į vieną stulpelį, bet struktūra/vertical alignment
     tarp punktų lieka identiška desktop'o versijai. */
  .ps-home-trust-bar__list {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .ps-home-trust-bar__item {
    justify-content: flex-start;
    text-align: left;
  }
}

/* -------------------------------
   Accessibility: prefers-reduced-motion
-------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .ps-home .ps-btn,
  .ps-home-categories__link,
  .ps-home-hero__tile,
  .ps-home-hero__tile-media img,
  .ps-home-hero__tile-overlay,
  .ps-product-card,
  .ps-product-card__image img,
  .ps-home-dynamic-promo__card {
    transition: none;
  }

  .ps-home .ps-btn:hover,
  .ps-home-categories__link:hover,
  .ps-home-hero__tile:hover .ps-home-hero__tile-media img,
  .ps-product-card:hover,
  .ps-product-card:hover .ps-product-card__image img,
  .ps-home-dynamic-promo__card:hover {
    transform: none;
  }
}

/* ============================================================
   HOME REDESIGN V2 — commerce density and discovery layers.
   These overrides are scoped to Home-only classes and do not change
   collection/product card markup used by other templates.
   ============================================================ */

.ps-home-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--ps-space-3);
  margin-bottom: var(--ps-space-4);
}

.ps-home-section-head .ps-home-section-title {
  margin-bottom: 6px;
}

.ps-home-section-subtitle {
  margin: 0;
  color: var(--ps-text-muted);
  font-size: 15px;
  line-height: 1.5;
}

.ps-home-section-link {
  flex: 0 0 auto;
  color: var(--ps-text);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}

.ps-home-section-link:hover {
  color: var(--ps-accent-text);
}

.ps-home-section-link:focus-visible,
.ps-home-category-directory__link:focus-visible,
.ps-home-brands__link:focus-visible {
  outline: 2px solid var(--ps-accent);
  outline-offset: 3px;
}


.ps-home-category-directory__meta,
.ps-home-brands__details > span {
  display: block;
  margin-top: 5px;
  color: var(--ps-text-muted);
  font-size: 12px;
  line-height: 1.3;
}

/* Product rails */
.ps-home-products {
  padding: 48px 0;
}

.ps-home-products__grid {
  display: flex;
  gap: 16px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.ps-home-products__grid > .ps-product-card {
  flex: 0 0 calc((100% - 64px) / 5);
  min-width: 0;
}

.ps-home-carousel {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
}

.ps-home-carousel__viewport {
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
}

.ps-home-carousel__track {
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

.ps-home-carousel__track > .ps-product-card {
  scroll-snap-align: start;
}

.ps-home-carousel__control {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid var(--ps-border);
  border-radius: 50%;
  background: var(--ps-surface);
  color: var(--ps-text);
  font-size: 17px;
  line-height: 1;
  cursor: pointer;
}

.ps-home-carousel__control:hover:not(:disabled) {
  border-color: var(--ps-accent);
  color: var(--ps-accent-text);
}

.ps-home-carousel__control:disabled {
  opacity: .35;
  cursor: default;
}

/* I. Broader category directory */
.ps-home-category-directory {
  padding: 48px 0;
  background: transparent;
}

.ps-home-category-directory__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.ps-home-category-directory__item {
  min-width: 0;
  margin: 0;
}

.ps-home-category-directory__link {
  display: block;
  height: 100%;
  padding: 12px;
  border-bottom: 1px solid var(--ps-border);
  color: var(--ps-text);
  text-decoration: none;
  transition: border-color .18s ease, color .18s ease;
}

.ps-home-category-directory__link:hover {
  border-color: var(--ps-accent);
  color: var(--ps-accent-text);
}

.ps-home-category-directory__media {
  display: block;
  height: 112px;
  margin-bottom: 12px;
  background: transparent;
}

.ps-home-category-directory__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.ps-home-category-directory__label {
  display: block;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}

/* J. Brand rail */
.ps-home-brands {
  padding: 44px 0;
  background: var(--ps-ink);
}

.ps-home-brands__track {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  list-style: none;
  margin: 0;
  padding: 0 0 6px;
  scrollbar-width: thin;
}

.ps-home-brands__item {
  flex: 0 0 190px;
  margin: 0;
}

.ps-home-brands__link {
  display: block;
  min-height: 176px;
  padding: 0;
  border: 1px solid var(--ps-border);
  background: var(--ps-surface);
  color: var(--ps-text);
  text-decoration: none;
  transition: border-color .18s ease, transform .18s ease;
}

.ps-home-brands__link:hover {
  border-color: var(--ps-accent);
  transform: translateY(-2px);
}

.ps-home-brands__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 104px;
  padding: 14px 18px;
  background: #f8f8f6;
}

.ps-home-brands__logo-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.ps-home-brands__logo-placeholder {
  display: block;
  width: 52px;
  height: 52px;
  border: 1px solid var(--ps-border);
  background: var(--ps-canvas);
}

.ps-home-brands__details {
  display: block;
  padding: 13px 14px 14px;
}

.ps-home-brands__details strong,
.ps-home-brands__details span {
  display: block;
}

.ps-home-brands__details strong {
  font-size: 15px;
  line-height: 1.25;
}

.ps-home-brands__details span {
  margin-top: 6px;
}

@media (max-width: 1199px) {

  .ps-home-products__grid > .ps-product-card {
    flex-basis: calc((100% - 48px) / 4);
  }

  .ps-home-category-directory__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .ps-home-hero {
    padding: 24px 0 32px;
  }

  .ps-home-hero__title {
    max-width: 14ch;
  }

  .ps-home-category-directory {
    padding: 32px 0;
  }

  .ps-home-products {
    padding: 32px 0;
  }

  .ps-home-section-head {
    align-items: flex-start;
  }

  .ps-home-section-title {
    font-size: 21px;
  }

  .ps-home-section-link {
    font-size: 13px;
  }


  .ps-home-carousel {
    gap: 8px;
  }

  .ps-home-carousel__control {
    display: none;
  }

  .ps-home-products__grid {
    gap: 12px;
  }

  .ps-home-products__grid > .ps-product-card {
    flex-basis: 68vw;
    max-width: 250px;
  }


  .ps-home-category-directory__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .ps-home-category-directory__link {
    padding: 8px;
  }

  .ps-home-category-directory__media {
    height: 94px;
    margin-bottom: 8px;
  }

  .ps-home-brands {
    padding: 32px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ps-home-category-directory__link,
  .ps-home-brands__link {
    transition: none;
  }

  .ps-home-carousel__track {
    scroll-behavior: auto;
  }
}

/* ============================================================
   Home completion — header spacing + premium brand marquee.
   ============================================================ */

/* WoodMart parent adds 40px below the header globally. Home keeps only a
   compact mobile separation before its promo strip; desktop is edge-to-edge. */
body.page-template-home-redesign .whb-header {
  margin-bottom: 8px;
}

/* Keep the desktop header-to-Home composition compact without changing the
   mobile header spacing. */
@media (min-width: 1025px) {
	body.page-template-home-redesign .whb-header {
		margin-bottom: 0;
	}
}

.ps-home-brands {
  overflow: hidden;
}

.ps-home-brands__track {
  display: flex;
  flex-wrap: nowrap;
  gap: 12px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0 0 8px;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.ps-home-brands__track::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.ps-home-brands__item {
  flex: 0 0 194px;
}

.ps-home-brands__link {
  min-height: 160px;
  border: 1px solid rgba(255, 255, 255, .1);
  background: rgba(255, 255, 255, .025);
  color: #f3f4f6;
  box-shadow: none;
}

.ps-home-brands__link:hover,
.ps-home-brands__link:focus-visible {
  border-color: rgba(232, 58, 23, .8);
  background: rgba(255, 255, 255, .06);
}

.ps-home-brands__logo {
  height: 96px;
  padding: 14px 18px;
  background: #f5f5f3;
}

.ps-home-brands__details {
  padding: 12px 14px 13px;
  border-top: 1px solid rgba(255, 255, 255, .08);
}

.ps-home-brands__details strong {
  color: #f3f4f6;
}

.ps-home-brands__details span {
  color: rgba(255, 255, 255, .58);
}

@media (max-width: 767px) {
  .ps-home-brands__item {
    flex-basis: 176px;
  }

  .ps-home-brands__link {
    min-height: 150px;
  }

  .ps-home-brands__logo {
    height: 88px;
  }
}

/* ============================================================
   Home V4 — modern retail / premium fishing e-commerce.

   V4 sąmoningai nenaudoja ankstesnio 65/35 hero ir 4x2 kortelių
   grid. Čia fotografija yra pagrindinis paviršius, o kategorijos —
   lengva katalogo navigacijos juosta be card background'ų.
   ============================================================ */

/* A. Vienas editorial hero */
.ps-home-v4-hero {
  padding: 0;
  background: var(--ps-surface);
}

@media (min-width: 768px) {
	.ps-home-v4-hero {
		padding-top: 0;
	}
}

.ps-home-v4-hero__frame {
  position: relative;
  height: 560px;
  overflow: hidden;
  background: var(--ps-ink);
  isolation: isolate;
}

.ps-home-v4-hero__image,
.ps-home-v4-hero__overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.ps-home-v4-hero__image {
  display: block;
  object-fit: cover;
  object-position: center 56%;
}

.ps-home-v4-hero__overlay {
  z-index: 1;
  background: rgba(13, 21, 25, .38);
}

.ps-home-v4-hero__content {
  position: absolute;
  z-index: 2;
  right: 48px;
  bottom: 48px;
  left: 48px;
  max-width: 590px;
  color: #fff;
}

.ps-home-v4-hero__eyebrow {
  display: block;
  margin-bottom: 12px;
  color: rgba(255, 255, 255, .88);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.ps-home-v4-hero__title {
  max-width: 11ch;
  margin: 0;
  color: #fff;
  font-size: clamp(44px, 5.4vw, 78px);
  font-weight: 800;
  letter-spacing: -.045em;
  line-height: .92;
}

.ps-home-v4-hero__description {
  max-width: 38ch;
  margin: 20px 0 0;
  color: rgba(255, 255, 255, .9);
  font-size: 17px;
  line-height: 1.45;
}

.ps-home-v4-hero__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 27px;
}

.ps-home-v4-hero__primary,
.ps-home-v4-hero__secondary {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
}

.ps-home-v4-hero__primary {
  padding: 13px 17px;
  background: var(--ps-accent-text);
}

.ps-home-v4-hero__secondary {
  padding: 7px 0;
  border-bottom: 1px solid rgba(255, 255, 255, .72);
}

.ps-home-v4-hero__primary:hover,
.ps-home-v4-hero__primary:focus-visible,
.ps-home-v4-hero__secondary:hover,
.ps-home-v4-hero__secondary:focus-visible {
  color: #fff;
  text-decoration: none;
}

.ps-home-v4-hero__primary:hover,
.ps-home-v4-hero__primary:focus-visible {
  background: var(--ps-accent-hover);
}

.ps-home-v4-hero__primary span,
.ps-home-v4-hero__secondary span,
.ps-home-v4-categories__all span,
.ps-home-v4-categories__arrow {
  display: inline-block;
  transition: transform .2s ease;
}

.ps-home-v4-hero__primary:hover span,
.ps-home-v4-hero__primary:focus-visible span,
.ps-home-v4-hero__secondary:hover span,
.ps-home-v4-hero__secondary:focus-visible span {
  transform: translateX(4px);
}

.ps-home-v4-hero__primary:focus-visible,
.ps-home-v4-hero__secondary:focus-visible,
.ps-home-v4-categories__link:focus-visible,
.ps-home-v4-categories__all:focus-visible {
  outline: 2px solid var(--ps-accent);
  outline-offset: 3px;
}

/* B. Editorial category rail — ne kortelių grid */
.ps-home-v4-categories {
  padding: 36px 0 42px;
  border-top: 1px solid var(--ps-border);
  border-bottom: 1px solid var(--ps-border);
  background: transparent;
}

.ps-home-v4-categories__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
}

.ps-home-v4-categories__title {
  margin: 0;
  color: var(--ps-text);
  font-size: 30px;
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.1;
}

.ps-home-v4-categories__subtitle {
  max-width: 48ch;
  margin: 8px 0 0;
  color: var(--ps-text-muted);
  font-size: 14px;
  line-height: 1.4;
}

.ps-home-v4-categories__all {
  flex: 0 0 auto;
  color: var(--ps-text);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}

.ps-home-v4-categories__all:hover {
  color: var(--ps-accent-text);
  text-decoration: none;
}

.ps-home-v4-categories__all:hover span,
.ps-home-v4-categories__all:focus-visible span {
  transform: translateX(4px);
}

.ps-home-v4-categories__rail {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  overflow: visible;
  margin: 0;
  padding: 18px 0 8px;
  border-top: 1px solid var(--ps-border);
  list-style: none;
}

.ps-home-v4-categories__item {
  min-width: 0;
  min-height: 0;
  margin: 0;
}

.ps-home-v4-categories__link {
  display: block;
  min-width: 0;
  color: var(--ps-text);
  text-decoration: none;
}

.ps-home-v4-categories__link:hover {
  color: var(--ps-text);
  text-decoration: none;
}

.ps-home-v4-categories__media {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  background: var(--ps-canvas);
}

.ps-home-v4-categories__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .25s ease;
}

.ps-home-v4-categories__media--missing {
  border-bottom: 1px solid var(--ps-border);
  background: var(--ps-canvas);
}

.ps-home-v4-categories__placeholder-label {
  padding: 10px;
  color: var(--ps-text-muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.3;
  text-align: center;
  text-transform: uppercase;
}

.ps-home-v4-categories__link:hover .ps-home-v4-categories__media img,
.ps-home-v4-categories__link:focus-visible .ps-home-v4-categories__media img {
  transform: scale(1.03);
}

.ps-home-v4-categories__body {
  display: block;
  padding: 11px 0 0;
  border-bottom: 1px solid var(--ps-border);
}

.ps-home-v4-categories__label {
  display: block;
  color: var(--ps-text);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
}

.ps-home-v4-categories__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 0 12px;
  color: var(--ps-text-muted);
  font-size: 12px;
  line-height: 1.2;
}

.ps-home-v4-categories__arrow {
  color: var(--ps-accent-text);
  font-size: 17px;
  font-weight: 700;
}

.ps-home-v4-categories__link:hover .ps-home-v4-categories__arrow,
.ps-home-v4-categories__link:focus-visible .ps-home-v4-categories__arrow {
  transform: translateX(4px);
}

/* Po lengvos navigacijos realūs produktai turi prasidėti greitai. */
.ps-home-v4-categories + .ps-home-products {
  padding-top: 42px;
}

@media (max-width: 1199px) {
  .ps-home-v4-hero__frame {
    height: 540px;
  }

  .ps-home-v4-hero__content {
    right: 40px;
    bottom: 40px;
    left: 40px;
  }

  .ps-home-v4-categories__rail {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1440px) {
  .ps-home-v4-categories__rail {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .ps-home-v4-hero__frame {
    height: 430px;
  }

  .ps-home-v4-hero__image {
    object-position: 61% 54%;
  }

  .ps-home-v4-hero__overlay {
    background: rgba(13, 21, 25, .43);
  }

  .ps-home-v4-hero__content {
    right: 22px;
    bottom: 26px;
    left: 22px;
  }

  .ps-home-v4-hero__eyebrow {
    margin-bottom: 9px;
    font-size: 11px;
  }

  .ps-home-v4-hero__title {
    font-size: 45px;
  }

  .ps-home-v4-hero__description {
    max-width: 31ch;
    margin-top: 15px;
    font-size: 14px;
  }

  .ps-home-v4-hero__actions {
    gap: 16px;
    margin-top: 20px;
  }

  .ps-home-v4-hero__primary,
  .ps-home-v4-hero__secondary {
    font-size: 13px;
  }

  .ps-home-v4-categories {
    padding: 30px 0 34px;
  }

  .ps-home-v4-categories__header {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 16px;
  }

  .ps-home-v4-categories__title {
    font-size: 24px;
  }

  .ps-home-v4-categories__rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    padding-top: 14px;
  }

  .ps-home-v4-categories + .ps-home-products {
    padding-top: 34px;
  }

}

@media (max-width: 359px) {
  .ps-home-v4-categories__rail {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ps-home-v4-hero__primary span,
  .ps-home-v4-hero__secondary span,
  .ps-home-v4-categories__all span,
  .ps-home-v4-categories__arrow,
  .ps-home-v4-categories__media img {
    transition: none;
  }
}

/* Home V4 — tamsi pagrindinė kategorijų navigacijos juosta. */
.ps-home-after-hero .ps-home-v4-categories {
  background: linear-gradient(180deg, var(--ps-ink) 0%, var(--ps-ink-deep) 100%);
  border-top-color: rgba(255, 255, 255, .12);
  border-bottom-color: rgba(255, 255, 255, .16);
  box-shadow: 0 2px 8px rgba(var(--ps-ink-deep-rgb), .12);
  color: #f3f4f6;
}

.ps-home-after-hero .ps-home-v4-categories__title,
.ps-home-after-hero .ps-home-v4-categories__all,
.ps-home-after-hero .ps-home-v4-categories__link,
.ps-home-after-hero .ps-home-v4-categories__label {
  color: #f3f4f6;
}

.ps-home-after-hero .ps-home-v4-categories__subtitle,
.ps-home-after-hero .ps-home-v4-categories__meta {
  color: rgba(255, 255, 255, .78);
}

.ps-home-after-hero .ps-home-v4-categories__rail {
  border-top-color: rgba(255, 255, 255, .14);
}

.ps-home-after-hero .ps-home-v4-categories__body {
  border-bottom-color: rgba(255, 255, 255, .24);
}

.ps-home-after-hero .ps-home-v4-categories__arrow {
  color: var(--ps-accent-on-dark);
}

.ps-home-after-hero .ps-home-v4-categories__all:hover,
.ps-home-after-hero .ps-home-v4-categories__link:hover,
.ps-home-after-hero .ps-home-v4-categories__link:active,
.ps-home-after-hero .ps-home-v4-categories__link:focus-visible {
  color: var(--ps-accent-on-dark);
}

.ps-home-after-hero .ps-home-v4-categories__link:hover .ps-home-v4-categories__label,
.ps-home-after-hero .ps-home-v4-categories__link:active .ps-home-v4-categories__label,
.ps-home-after-hero .ps-home-v4-categories__link:focus-visible .ps-home-v4-categories__label {
  color: var(--ps-accent-on-dark);
}

.ps-home-after-hero .ps-home-v4-categories__link:hover .ps-home-v4-categories__body,
.ps-home-after-hero .ps-home-v4-categories__link:active .ps-home-v4-categories__body,
.ps-home-after-hero .ps-home-v4-categories__link:focus-visible .ps-home-v4-categories__body {
  border-bottom-color: var(--ps-accent);
}

/* Home V4 — product rails share the warm canvas; dark treatment is reserved
   for the category navigation and the brands/trust composition. */
.ps-home-after-hero .ps-home-products {
  background: transparent;
  border-top: 0;
  border-bottom: 0;
  color: var(--ps-text);
}

/* Brands + trust form one continuous dark composition. */
.ps-home-after-hero .ps-home-brands {
  background: var(--ps-ink);
  border-top: 1px solid rgba(255, 255, 255, .08);
  border-bottom: 0;
  color: #f3f4f6;
}

.ps-home-after-hero .ps-home-brands .ps-home-section-title {
  color: #f3f4f6;
}

.ps-home-after-hero .ps-home-brands .ps-home-section-subtitle {
  color: rgba(255, 255, 255, .72);
}

.ps-home-after-hero .ps-home-brands .ps-home-section-link {
  color: #f3f4f6;
}

.ps-home-after-hero .ps-home-brands .ps-home-section-link:hover,
.ps-home-after-hero .ps-home-brands .ps-home-section-link:focus-visible {
  color: var(--ps-accent-on-dark);
}

.ps-home-after-hero .ps-home-trust-bar {
  background: var(--ps-ink);
  border-top: 1px solid rgba(255, 255, 255, .1);
  color: #f3f4f6;
}

/* Product rails — keep native swipe/scroll, but remove visible browser bars. */
.ps-home-products .ps-home-carousel__track {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.ps-home-products .ps-home-carousel__track::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.ps-home-products .ps-home-carousel__control {
  flex-basis: 40px;
  width: 40px;
  height: 40px;
  border-color: var(--ps-border);
  color: var(--ps-ink);
}

.ps-home-products .ps-home-carousel__control:hover:not(:disabled),
.ps-home-products .ps-home-carousel__control:focus-visible {
  border-color: var(--ps-accent);
  color: var(--ps-accent-text);
}
