/* Totalljud Startsida Pro 1.1.6 — full-width premium storefront */

.tlhp-home {
  --tlhp-accent: #ff5a00;
  --tlhp-bg: #050506;
  --tlhp-panel: #111214;
  --tlhp-panel-2: #18191c;
  --tlhp-line: rgba(255,255,255,.10);
  --tlhp-line-soft: rgba(255,255,255,.065);
  --tlhp-text: #f7f7f8;
  --tlhp-muted: #a7aab1;
  --tlhp-radius: 18px;
  width: 100vw;
  max-width: 100vw;
  margin: 0 calc(50% - 50vw);
  padding: 0 0 54px;
  position: relative;
  z-index: 0;
  isolation: isolate;
  overflow-x: clip;
  background:
    radial-gradient(circle at 14% 14%, rgba(255,90,0,.09), transparent 22%),
    radial-gradient(circle at 86% 8%, rgba(255,255,255,.03), transparent 16%),
    linear-gradient(180deg, #000 0, var(--tlhp-bg) 430px, #070708 100%);
  color: var(--tlhp-text);
  font-family: inherit;
}

@supports (width: 100dvw) {
  .tlhp-home {
    width: 100dvw;
    max-width: 100dvw;
    margin-left: calc(50% - 50dvw);
    margin-right: calc(50% - 50dvw);
  }
}

.tlhp-home,
.tlhp-home * { box-sizing: border-box; }
.tlhp-home a { color: inherit; text-decoration: none; }
.tlhp-container { width: 100%; max-width: var(--tlhp-content-max, none); margin: 0 auto; padding: 0; }

/* HERO */
.tlhp-hero-slider {
  position: relative;
  width: 100%;
  height: min(var(--tlhp-hero-height, 430px), 430px);
  min-height: 360px;
  margin: 0;
  overflow: hidden;
  border: 0;
  border-bottom: 1px solid var(--tlhp-line);
  border-radius: 0;
  background: linear-gradient(135deg, #10131a 0%, #090b10 52%, #0a0a0d 100%);
  box-shadow: 0 24px 72px rgba(0,0,0,.42);
}

.tlhp-hero-top { display: none; }
.tlhp-slider-viewport, .tlhp-slider-track, .tlhp-slide, .tlhp-slide-inner { height: 100%; }
.tlhp-slider-viewport { position: relative; overflow: hidden; }
.tlhp-slider-track { display: flex; width: 100%; margin: 0; padding: 0; transform: translate3d(0,0,0); transition: transform .58s cubic-bezier(.22,1,.36,1); will-change: transform; }
.tlhp-slide { flex: 0 0 100%; min-width: 100%; margin: 0; }
.tlhp-slide-inner { display: grid; grid-template-columns: minmax(540px, 46%) minmax(0, 54%); align-items: stretch; min-width: 0; }
.tlhp-hero-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 40px clamp(38px, 4vw, 68px) 42px;
  background:
    radial-gradient(circle at 18% 18%, rgba(255,90,0,.11), transparent 24%),
    linear-gradient(135deg, #141824 0%, #0e1219 62%, #090a0d 100%);
  text-align: left;
}
.tlhp-badge {
  display: inline-flex; align-items: center; min-height: 27px; margin: 0 0 14px; padding: 7px 12px; border-radius: 999px;
  background: linear-gradient(135deg, var(--tlhp-accent), #ff7b1c); color: #fff; font-size: .69rem; line-height: 1; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; box-shadow: 0 10px 24px rgba(255,90,0,.28);
}
.tlhp-brand-name { display: block; margin: 0 0 12px; color: #bdc1c9; font-size: clamp(.82rem, .95vw, 1.02rem); font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.tlhp-slide h1 {
  max-width: 700px; margin: 0; color: #fff; font-size: clamp(2.35rem, 3.5vw, 3.75rem); line-height: .96; letter-spacing: -.062em; font-weight: 950; text-transform: uppercase;
  overflow-wrap: normal; word-break: normal; hyphens: none; text-wrap: balance;
}
.tlhp-slide.is-title-long h1 { font-size: clamp(2.38rem, 3.45vw, 4rem); line-height: .98; }
.tlhp-slide.is-title-extra-long h1 { font-size: clamp(2.02rem, 2.9vw, 3.45rem); line-height: 1; }
.tlhp-slide.is-title-xxlong h1 { font-size: clamp(1.76rem, 2.55vw, 2.86rem); line-height: 1.04; }
.tlhp-hero-desc {
  max-width: 680px; margin: 12px 0 0; color: #bcc0c7; font-size: clamp(.95rem, 1.08vw, 1.12rem); line-height: 1.56;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden;
}
.tlhp-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 13px; margin-top: 20px; }
.tlhp-price-tag { color: #fff; font-size: clamp(1.6rem, 2.2vw, 2.5rem); line-height: 1; font-weight: 950; letter-spacing: -.04em; white-space: nowrap; }
.tlhp-price-tag .woocommerce-Price-currencySymbol, .tlhp-price-tag small { color: #9ea0a7; font-size: .62em; }
.tlhp-btn, .tlhp-product-button, .tlhp-dealer-button {
  display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 10px; font-weight: 900; text-transform: uppercase; transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}
.tlhp-btn:hover, .tlhp-product-button:hover, .tlhp-dealer-button:hover { transform: translateY(-2px); filter: brightness(1.05); }
.tlhp-btn-main { min-height: 50px; padding: 15px 24px; background: linear-gradient(135deg, var(--tlhp-accent), #ff7a1b); color: #fff; font-size: .78rem; box-shadow: 0 13px 30px rgba(255,90,0,.31); }
.tlhp-btn-ghost { min-height: 45px; padding: 13px 20px; border: 1px solid var(--tlhp-line); background: rgba(255,255,255,.05); color: #fff; }
.tlhp-btn-light { min-height: 45px; padding: 13px 20px; background: #fff; color: #111 !important; border: 1px solid rgba(17,17,17,.10); box-shadow: 0 10px 22px rgba(0,0,0,.14); }

.tlhp-hero-media {
  min-width: 0; overflow: hidden; display: flex; align-items: center; justify-content: center; padding: 26px clamp(28px, 3vw, 62px); position: relative;
  background: #fff;
}
.tlhp-hero-brand-logo {
  position: absolute; top: 18px; left: 18px; z-index: 2; display: inline-flex; align-items: center; justify-content: center;
  width: auto; min-width: 0; min-height: 0; max-width: min(34%, 190px); padding: 8px 10px; border: 1px solid rgba(16,24,32,.09); border-radius: 12px;
  background: rgba(255,255,255,.94); box-shadow: 0 10px 22px rgba(15,23,42,.07); backdrop-filter: blur(6px);
}
.tlhp-hero-brand-logo img {
  display: block; width: auto; height: auto; max-width: 150px; max-height: 34px; object-fit: contain; object-position: center; filter: none;
}
/* v1.1.18: Manufacturer Logos v1.5.12 owns the finished, whitespace-trimmed loop preview. */
.tlhp-hero-brand-logo .tlhp-hero-brand-image {
  display: block !important; width: auto !important; height: auto !important; max-width: 150px !important; max-height: 34px !important;
  margin: 0 !important; padding: 0 !important; object-fit: contain !important; object-position: center !important; filter: none !important;
}
.tlhp-product-glow { position: absolute; left: 16%; right: 16%; bottom: 9%; height: 13%; border-radius: 50%; background: radial-gradient(ellipse, rgba(0,0,0,.16), transparent 70%); filter: blur(10px); }
.tlhp-product-img { position: relative; z-index: 1; display: block; width: 100%; height: 100%; max-width: 100%; max-height: 100%; object-fit: contain; object-position: center; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; filter: none; transform: scale(1.12); transform-origin: center center; }
.tlhp-product-placeholder { position: relative; z-index: 1; color: #1a1a1d; font-size: 2rem; font-weight: 900; }
.tlhp-slider-bottom {
  position: relative;
  z-index: 4;
  border-top: 1px solid var(--tlhp-line);
  background: linear-gradient(180deg, rgba(15,17,21,.98), rgba(10,11,14,.98));
}
.tlhp-slider-bottom-inner {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 14px clamp(24px, 3vw, 52px);
}
.tlhp-nav-dots {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1 1 auto;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.tlhp-nav-dots::-webkit-scrollbar { display: none; }
.tlhp-dot {
  flex: 0 0 auto;
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 11px 14px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  background: rgba(255,255,255,.035);
  color: #d6d8de;
  cursor: pointer;
  text-align: left;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.tlhp-dot:hover {
  transform: translateY(-1px);
  border-color: rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
}
.tlhp-dot.is-active {
  border-color: rgba(255,90,0,.42);
  background: linear-gradient(180deg, rgba(255,90,0,.14), rgba(255,255,255,.05));
  box-shadow: 0 12px 28px rgba(0,0,0,.2), inset 0 0 0 1px rgba(255,90,0,.08);
}
.tlhp-dot-index {
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: #fff;
  font-size: .7rem;
  line-height: 1;
  font-weight: 900;
}
.tlhp-dot.is-active .tlhp-dot-index {
  background: linear-gradient(135deg, var(--tlhp-accent), #ff7b1c);
  box-shadow: 0 10px 22px rgba(255,90,0,.24);
}
.tlhp-dot-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.tlhp-dot-copy strong {
  display: block;
  color: #fff;
  font-size: .76rem;
  line-height: 1.15;
  font-weight: 850;
  letter-spacing: .02em;
  white-space: nowrap;
}
.tlhp-dot-copy small {
  display: block;
  max-width: 20ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #989ca4;
  font-size: .66rem;
  line-height: 1.15;
}
.tlhp-slider-status {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #a5a8af;
  font-size: .82rem;
  line-height: 1;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.tlhp-slider-status-current { color: #fff; }
.tlhp-slider-status-divider {
  width: 34px;
  height: 1px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
}

/* USP */
.tlhp-usp-row { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; overflow: hidden; border: 0; border-bottom: 1px solid var(--tlhp-line); border-radius: 0; background: linear-gradient(180deg, #151619, #0f1013); }
.tlhp-usp-item { min-height: 76px; display: flex; align-items: center; justify-content: center; gap: 13px; padding: 16px 22px; border-right: 1px solid var(--tlhp-line-soft); }
.tlhp-usp-item:last-child { border-right: 0; }
.tlhp-usp-icon { width: 28px; height: 28px; flex: 0 0 28px; color: var(--tlhp-accent); }
.tlhp-usp-icon svg { width: 100%; height: 100%; }
.tlhp-usp-item h3 { margin: 0; color: #fff; font-size: .84rem; line-height: 1.2; font-weight: 850; }
.tlhp-usp-item p { margin: 3px 0 0; color: #8f9198; font-size: .7rem; line-height: 1.25; }

/* SECTIONS */
.tlhp-section { margin: 34px 0 0; padding: 0 clamp(18px, 2.5vw, 52px); }
.tlhp-section-tight { margin-top: 28px; }
.tlhp-section-head { margin: 0 0 16px; padding: 0 2px; }
.tlhp-section-head-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.tlhp-section-kicker { display: inline-flex; align-items: center; color: #ededf0; font-size: .84rem; line-height: 1; font-weight: 900; letter-spacing: .095em; text-transform: uppercase; }
.tlhp-section-kicker::before { content: ""; width: 3px; height: 19px; margin-right: 8px; border-radius: 9px; background: var(--tlhp-accent); box-shadow: 0 0 14px rgba(255,90,0,.48); }
.tlhp-section-head h2 { margin: 9px 0 0; color: #fff; font-size: 1.38rem; font-weight: 900; letter-spacing: -.02em; }
.tlhp-section-head p { max-width: 840px; margin: 8px 0 0; color: var(--tlhp-muted); font-size: .86rem; line-height: 1.55; }
.tlhp-section-link { display: inline-flex; align-items: center; margin-bottom: 4px; color: #dddde1; font-size: .74rem; font-weight: 850; white-space: nowrap; }
.tlhp-section-link::after { content: "→"; margin-left: 8px; color: var(--tlhp-accent); }

/* CATEGORIES */
.tlhp-cat-grid { display: grid; grid-template-columns: repeat(9, minmax(0,1fr)); gap: 12px; }
.tlhp-cat-card {
  min-width: 0; overflow: hidden; display: flex; flex-direction: column; border: 1px solid rgba(255,255,255,.09); border-radius: 14px;
  background: linear-gradient(180deg, #17191d, #0f1115); box-shadow: 0 14px 32px rgba(0,0,0,.22); transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.tlhp-cat-card:hover { transform: translateY(-3px); border-color: rgba(255,90,0,.45); box-shadow: 0 22px 44px rgba(0,0,0,.34); }
.tlhp-cat-card-featured { border-color: rgba(255,90,0,.42); }
.tlhp-cat-img {
  height: clamp(132px, 9.6vw, 188px); display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 12px; background: #fff;
}
.tlhp-cat-img img { width: 100%; height: 100%; object-fit: contain; margin: 0; filter: none; mix-blend-mode: normal; }
.tlhp-cat-body { min-height: 56px; display: flex; align-items: center; padding: 12px 12px 14px; }
.tlhp-cat-body h3 { margin: 0; color: #fff; font-size: .78rem; line-height: 1.2; font-weight: 850; }
.tlhp-cat-kicker, .tlhp-cat-body p, .tlhp-cat-body strong, .tlhp-quick-links { display: none; }

/* PRODUCTS */
.tlhp-products-section { margin-top: 28px; }
.tlhp-products-section.is-primary {
  overflow: hidden; border: 1px solid var(--tlhp-line); border-radius: 16px;
  background:
    radial-gradient(circle at 82% 8%, rgba(255,90,0,.08), transparent 16%),
    linear-gradient(180deg, #13161a, #090b0e);
}
.tlhp-products-section.is-primary .tlhp-section-head { margin: 0; padding: 15px 16px 14px; border-bottom: 1px solid var(--tlhp-line-soft); }
.tlhp-showcase-grid { display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 0; }
.tlhp-product-wrapper {
  padding: 14px; border: 1px solid var(--tlhp-line); border-radius: 16px;
  background: linear-gradient(180deg, #111317, #0a0b0d);
}
.tlhp-product-grid { display: grid; grid-template-columns: repeat(var(--tlhp-columns,4), minmax(0,1fr)); gap: 12px; }
.tlhp-product-card {
  min-width: 0; min-height: 340px; display: flex; flex-direction: column; padding: 14px; border-right: 1px solid var(--tlhp-line-soft);
  background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01));
}
.tlhp-product-grid .tlhp-product-card { border: 1px solid rgba(255,255,255,.08); border-radius: 14px; background: linear-gradient(180deg, #15181c, #101216); }
.tlhp-showcase-grid .tlhp-product-card:nth-child(5) { border-right: 1px solid var(--tlhp-line); }
.tlhp-product-link { min-width: 0; display: flex; flex: 1 1 auto; flex-direction: column; text-align: center; }
.tlhp-product-image-wrap {
  height: clamp(170px, 12vw, 228px); display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 12px;
  border: 1px solid rgba(0,0,0,.08); border-radius: 12px; background: #fff;
}
.tlhp-product-image-wrap img { width: 100%; height: 100%; object-fit: contain; margin: 0; filter: none; mix-blend-mode: normal; }
.tlhp-product-brand { display: block; margin: 10px 0 6px; color: var(--tlhp-accent); font-size: .6rem; font-weight: 850; text-transform: uppercase; letter-spacing: .05em; }
.tlhp-product-card h3 {
  min-height: 42px; margin: 0 0 8px; color: #fff; font-size: .8rem; line-height: 1.28; font-weight: 850;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
}
.tlhp-product-price { display: block; margin: auto 0 10px; color: #f2f2f3; font-size: .8rem; font-weight: 900; }
.tlhp-product-price del { color: #777; font-size: .82em; }
.tlhp-product-price ins { text-decoration: none; }
.tlhp-product-button { width: 100%; min-height: 38px; padding: 11px 12px; background: linear-gradient(135deg, var(--tlhp-accent), #ff7a1b); color: #fff; font-size: .68rem; }
.tlhp-dealer-card {
  min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 26px 20px; text-align: center; border-left: 1px solid rgba(255,90,0,.35);
  background:
    radial-gradient(circle at 80% 18%, rgba(255,120,45,.24), transparent 30%),
    linear-gradient(135deg, #361609, #1b0e09 60%, #101113);
}
.tlhp-dealer-kicker { display: none; }
.tlhp-dealer-card h2 { margin: 0; color: #fff; font-size: 1.22rem; line-height: 1.05; font-weight: 950; text-transform: uppercase; }
.tlhp-dealer-card p { margin: 12px 0 18px; color: #c8beb8; font-size: .74rem; line-height: 1.5; }
.tlhp-dealer-button { width: 100%; min-height: 45px; padding: 12px 14px; background: linear-gradient(135deg, var(--tlhp-accent), #ff7a1b); color: #fff; font-size: .68rem; box-shadow: 0 12px 28px rgba(255,90,0,.24); }
.tlhp-dealer-button span { margin-left: 8px; }

/* OPTIONAL SECTIONS */
.tlhp-help-panel, .tlhp-final-cta {
  display: grid; grid-template-columns: 1.15fr .85fr; gap: 28px; margin-top: 32px; padding: 36px;
  border: 1px solid var(--tlhp-line); border-radius: 20px;
  background:
    radial-gradient(circle at 84% 22%, rgba(255,90,0,.10), transparent 26%),
    linear-gradient(135deg,#171a20,#101215 58%, #0c0d10 100%);
  box-shadow: 0 18px 44px rgba(0,0,0,.18);
}
.tlhp-help-panel h2, .tlhp-final-cta h2 { color: #fff; margin: 10px 0 0; font-size: 1.82rem; line-height: 1.08; }
.tlhp-help-panel p, .tlhp-final-cta p { color: var(--tlhp-muted); line-height: 1.65; }
.tlhp-help-actions, .tlhp-final-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.tlhp-help-actions .tlhp-btn, .tlhp-final-actions .tlhp-btn { min-width: 180px; min-height: 58px; border-radius: 14px; font-size: .8rem; }
.tlhp-final-actions .tlhp-btn-light { color: #111 !important; background: rgba(255,255,255,.98); border-color: rgba(17,17,17,.08); }
.tlhp-help-list {
  padding: 24px; border: 1px solid rgba(255,255,255,.08); border-radius: 16px; background: rgba(255,255,255,.035);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.tlhp-help-list h3 { margin: 0 0 12px; color: #fff; font-size: 1.05rem; }
.tlhp-help-list ul { margin: 0; padding: 0; list-style: none; }
.tlhp-help-list li { position: relative; padding: 0 0 0 19px; margin: 0 0 10px; color: #ddd; line-height: 1.55; }
.tlhp-help-list li:last-child { margin-bottom: 0; }
.tlhp-help-list li::before { content: ""; position: absolute; left: 0; top: .58em; width: 7px; height: 7px; border-radius: 50%; background: var(--tlhp-accent); }

.tlhp-brand-grid { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); gap: 14px; }
.tlhp-brand-card {
  min-width: 0;
  min-height: 94px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 15px 12px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff, #f3f4f7);
  color: #15171a;
  box-shadow: 0 12px 28px rgba(0,0,0,.12);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.tlhp-brand-card:hover {
  transform: translateY(-3px);
  border-color: rgba(255,90,0,.42);
  box-shadow: 0 20px 38px rgba(0,0,0,.18);
}
.tlhp-brand-logo-wrap {
  width: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tlhp-brand-card img {
  display: block;
  width: auto;
  height: auto;
  max-width: min(150px, 88%);
  max-height: 52px;
  object-fit: contain;
  filter: none;
}
.tlhp-brand-card-name {
  display: block;
  max-width: 100%;
  overflow: hidden;
  color: #25272b;
  font-size: .72rem;
  line-height: 1.2;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tlhp-brand-fallback {
  color: #1e2024;
  font-size: .82rem;
  font-weight: 900;
  text-align: center;
}
.tlhp-brand-grid.logos-only .tlhp-brand-card { min-height: 88px; }

/* COMPANY FOOTER */
.tlhp-company-footer { margin-top: 32px; padding: 0 clamp(18px, 2.5vw, 52px); border: 0; background: transparent; }
.tlhp-company-footer-head { display: block; margin: 0 0 16px; }
.tlhp-company-footer-head h2 { margin: 10px 0 0; color: #fff; font-size: 1.36rem; font-weight: 900; }
.tlhp-company-footer-head p { margin: 8px 0 0; color: var(--tlhp-muted); }
.tlhp-company-info-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.tlhp-company-info-card {
  min-width: 0; display: flex; align-items: flex-start; gap: 12px; padding: 18px 18px 20px;
  border: 1px solid rgba(255,255,255,.08); border-radius: 14px; background: linear-gradient(180deg, #17191d, #101216);
}
.tlhp-company-info-card:last-child { border-right: 1px solid rgba(255,255,255,.08); }
.tlhp-info-icon { width: 23px; height: 23px; flex: 0 0 23px; color: var(--tlhp-accent); }
.tlhp-info-icon svg { width: 100%; height: 100%; }
.tlhp-company-info-card h3 { margin: 0 0 5px; color: #fff; font-size: .95rem; line-height: 1.2; font-weight: 850; }
.tlhp-company-info-card p { margin: 0; color: #aeb1b8; font-size: .77rem; line-height: 1.6; overflow-wrap: anywhere; }
.tlhp-company-info-card a { color: #f0f0f2; text-decoration: underline; text-underline-offset: 2px; }
.tlhp-company-legal { margin-top: 12px; padding: 10px 12px; border-top: 1px solid var(--tlhp-line-soft); color: #6f7076; font-size: .62rem; text-align: center; }

@media (max-width: 1280px) {
  .tlhp-container { width: 100%; }
  .tlhp-cat-grid { grid-template-columns: repeat(9, minmax(125px,1fr)); overflow-x: auto; padding-bottom: 4px; scrollbar-width: thin; }
  .tlhp-showcase-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .tlhp-product-card:nth-child(3n) { border-right: 0; }
  .tlhp-dealer-card { min-height: 286px; border-top: 1px solid rgba(255,90,0,.35); border-left: 0; }
  .tlhp-company-info-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .tlhp-brand-grid { grid-template-columns: repeat(4,1fr); }
}

@media (max-width: 900px) {
  .tlhp-hero-slider { height: auto; min-height: 0; }
  .tlhp-slider-viewport, .tlhp-slider-track, .tlhp-slide, .tlhp-slide-inner { height: auto; }
  .tlhp-slide-inner { grid-template-columns: 1fr; }
  .tlhp-hero-copy { min-height: 220px; align-items: center; padding: 24px 28px 25px; text-align: center; }
  .tlhp-hero-media { min-height: 210px; padding: 14px 20px; }
  .tlhp-hero-brand-logo { top: 16px; left: 16px; max-width: min(52%, 180px); padding: 7px 9px; }
  .tlhp-hero-brand-logo img { width:auto; height:auto; max-width:140px; max-height:30px; }
  .tlhp-slider-bottom-inner { flex-direction: column; align-items: stretch; padding: 14px 22px 16px; }
  .tlhp-nav-dots { width: 100%; }
  .tlhp-dot { flex: 1 1 auto; min-width: 0; }
  .tlhp-dot-copy small { max-width: none; }
  .tlhp-slider-status { justify-content: flex-end; }
  .tlhp-usp-row { grid-template-columns: 1fr; }
  .tlhp-usp-item { justify-content: flex-start; border-right: 0; border-bottom: 1px solid var(--tlhp-line-soft); }
  .tlhp-usp-item:last-child { border-bottom: 0; }
  .tlhp-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tlhp-help-panel, .tlhp-final-cta { grid-template-columns: 1fr; }
  .tlhp-company-info-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 640px) {
  .tlhp-container { width: 100%; }
  .tlhp-hero-copy { min-height: 205px; padding: 21px 18px 22px; }
  .tlhp-slide h1 { font-size: clamp(1.85rem, 8.8vw, 2.5rem); }
  .tlhp-hero-desc { margin-top:10px;font-size:.82rem;-webkit-line-clamp:2; }
  .tlhp-hero-actions { width:100%;margin-top:15px;gap:10px;flex-direction:row;justify-content:center; }
  .tlhp-price-tag { white-space: normal; }
  .tlhp-btn-main { width:auto;min-height:44px;padding:12px 18px; }
  .tlhp-hero-media { min-height: 180px; padding: 10px; }
  .tlhp-hero-brand-logo { top: 12px; left: 12px; max-width: min(58%, 160px); min-height: 0; padding: 6px 8px; border-radius: 11px; }
  .tlhp-hero-brand-logo img { width:auto; height:auto; max-width:126px; max-height:26px; }
  .tlhp-slider-bottom-inner { padding:9px 14px 10px; }
  .tlhp-nav-dots { gap: 8px; }
  .tlhp-dot { padding: 10px 11px; border-radius: 12px; }
  .tlhp-dot-copy strong { font-size: .72rem; }
  .tlhp-dot-copy small { display: none; }
  .tlhp-slider-status { font-size: .74rem; }
  .tlhp-section-head-row { align-items: flex-start; flex-direction: column; }

  /* Product sections stay compact on phones. One-column cards made a single
     product consume almost an entire viewport; the native mobile composition is
     now a stable two-column catalogue, with a one-column fallback only for very
     narrow devices below 340px. */
  .tlhp-showcase-grid,
  .tlhp-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .tlhp-products-section.is-primary { overflow: visible; }
  .tlhp-product-wrapper { padding: 10px; border-radius: 15px; }
  .tlhp-product-card,
  .tlhp-product-grid .tlhp-product-card {
    min-height: 0;
    padding: 9px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 15px;
    background: linear-gradient(180deg, #15191f, #101419);
  }
  .tlhp-product-link { min-height: 0; }
  .tlhp-product-image-wrap {
    height: clamp(132px, 38vw, 168px);
    padding: 7px;
    border-radius: 12px;
  }
  .tlhp-product-brand { margin: 8px 0 4px; font-size: .54rem; }
  .tlhp-product-card h3 {
    min-height: 2.55em;
    margin: 0 0 6px;
    font-size: .72rem;
    line-height: 1.27;
  }
  .tlhp-product-price { margin: auto 0 8px; font-size: .74rem; }
  .tlhp-product-button {
    min-height: 36px;
    padding: 9px 7px;
    border-radius: 11px;
    font-size: .59rem;
    line-height: 1.1;
  }
  .tlhp-showcase-grid .tlhp-dealer-card {
    grid-column: 1 / -1;
    min-height: 190px;
    border-radius: 15px;
  }
  .tlhp-company-info-grid { grid-template-columns: 1fr; }
  .tlhp-brand-grid { grid-template-columns: repeat(2,1fr); }
  .tlhp-help-panel, .tlhp-final-cta { padding: 24px; }
  .tlhp-help-actions .tlhp-btn, .tlhp-final-actions .tlhp-btn { width: 100%; min-width: 0; }
}

@media (max-width: 339px) {
  .tlhp-showcase-grid,
  .tlhp-product-grid { grid-template-columns: 1fr; }
  .tlhp-showcase-grid .tlhp-dealer-card { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .tlhp-slider-track, .tlhp-btn, .tlhp-product-button, .tlhp-dealer-button, .tlhp-cat-card { transition: none; }
}


/* v1.1.19: iPhone hero navigation.
 * Mobile does not need five labelled product pills fighting for width. Keep the
 * manual slide navigation, but express it as a tiny premium progress rail.
 * Desktop/tablet presentation is intentionally unchanged. */
@media (max-width: 640px) {
  .tlhp-slider-bottom-inner {
    min-height: 48px;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0;
    padding: 10px 18px 11px;
  }
  .tlhp-nav-dots {
    width: auto;
    flex: 0 0 auto;
    justify-content: center;
    gap: 7px;
    overflow: visible;
  }
  .tlhp-dot {
    width: 9px;
    min-width: 9px;
    height: 9px;
    flex: 0 0 9px;
    gap: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 999px;
    background: rgba(255,255,255,.24);
    box-shadow: none;
    transform: none;
    transition: width .22s cubic-bezier(.22,1,.36,1), flex-basis .22s cubic-bezier(.22,1,.36,1), background .18s ease, opacity .18s ease;
  }
  .tlhp-dot:hover,
  .tlhp-dot:focus,
  .tlhp-dot:focus-visible {
    transform: none;
    border: 0;
    background: rgba(255,255,255,.34);
    box-shadow: none;
    outline: 0;
  }
  .tlhp-dot.is-active,
  .tlhp-dot.is-active:hover,
  .tlhp-dot.is-active:focus {
    width: 28px;
    min-width: 28px;
    flex-basis: 28px;
    border: 0;
    background: linear-gradient(90deg, #f0691e, #ff7a1b);
    box-shadow: 0 0 14px rgba(240,105,30,.28);
  }
  .tlhp-dot-index,
  .tlhp-dot-copy,
  .tlhp-slider-status {
    display: none;
  }
}
.tlhp-rental-price-suffix{font-size:.56rem;font-weight:650;color:var(--tlhp-muted,#7c8794);white-space:nowrap}

/* Dedicated rental feature — Totalljud premium, simplified */
.tlhp-rental-feature{
  position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr); gap:34px; align-items:center;
  margin:34px clamp(18px,2.5vw,52px) 0; padding:32px 34px; border:1px solid rgba(255,255,255,.09); border-radius:22px;
  background:radial-gradient(circle at 6% -20%,rgba(255,90,0,.22),transparent 34%),radial-gradient(circle at 96% 0%,rgba(255,255,255,.055),transparent 30%),linear-gradient(135deg,#0b0e12,#171b21 58%,#0e1115);
  box-shadow:0 22px 54px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.055);
}
.tlhp-rental-feature::after{content:"";position:absolute;left:34px;right:34px;bottom:0;height:2px;background:linear-gradient(90deg,var(--tlhp-accent),rgba(255,90,0,.16) 48%,transparent 82%)}
.tlhp-rental-feature__copy{position:relative;z-index:1;max-width:600px}.tlhp-rental-feature__copy h2{margin:10px 0 0;color:#fff;font-size:clamp(1.85rem,2.7vw,2.85rem);line-height:1.01;font-weight:930;letter-spacing:-.045em}.tlhp-rental-feature__copy>p{max-width:560px;margin:13px 0 0;color:#a8adb5;font-size:.86rem;line-height:1.6}.tlhp-rental-feature__notice{display:flex;flex-direction:column;gap:3px;margin-top:18px;padding:13px 14px;border:1px solid rgba(255,90,0,.19);border-radius:13px;background:rgba(255,90,0,.075)}.tlhp-rental-feature__notice strong{color:#ff9a5c;font-size:.75rem;font-weight:880}.tlhp-rental-feature__notice span{color:#9ea4ad;font-size:.68rem;line-height:1.4}.tlhp-rental-feature__actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.tlhp-rental-feature__actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 15px;border-radius:12px;font-size:.7rem;font-weight:850;text-decoration:none;transition:.17s ease}.tlhp-rental-feature__primary{border:1px solid var(--tlhp-accent);color:#fff!important;background:linear-gradient(135deg,var(--tlhp-accent),#d94f00);box-shadow:0 10px 22px rgba(255,90,0,.20)}.tlhp-rental-feature__primary span{margin-left:8px}.tlhp-rental-feature__secondary{border:1px solid rgba(255,255,255,.13);color:#fff!important;background:rgba(255,255,255,.055)}.tlhp-rental-feature__actions a:hover{transform:translateY(-1px)}
.tlhp-rental-feature__items{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tlhp-rental-mini{min-width:0;overflow:hidden;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.09);border-radius:16px;color:#fff!important;background:linear-gradient(180deg,#15191e,#101216);box-shadow:0 12px 28px rgba(0,0,0,.20);text-decoration:none!important;transition:.17s ease}.tlhp-rental-mini:hover{transform:translateY(-2px);border-color:rgba(255,90,0,.30);box-shadow:0 18px 36px rgba(0,0,0,.28)}.tlhp-rental-mini__media{position:relative;height:165px;margin:7px 7px 0;padding:9px;overflow:hidden;border-radius:12px;background:#fff}.tlhp-rental-mini__media img{display:block;width:100%;height:100%;margin:0;object-fit:contain;background:#fff}.tlhp-rental-mini__media b{position:absolute;top:8px;left:8px;display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:7px;color:#fff;background:#111820;box-shadow:0 4px 10px rgba(0,0,0,.14);font-size:.48rem;line-height:1;font-weight:900;letter-spacing:.09em}.tlhp-rental-mini__copy{display:flex;min-height:92px;flex-direction:column;padding:11px 12px}.tlhp-rental-mini__copy>strong{display:-webkit-box;min-height:2.35em;overflow:hidden;color:#fff;font-size:.72rem;line-height:1.18;font-weight:850;-webkit-box-orient:vertical;-webkit-line-clamp:2}.tlhp-rental-mini__copy>span{display:block;margin-top:auto;color:#fff;font-size:.69rem;font-weight:900}.tlhp-rental-mini__copy small{color:#8f969f;font-size:.48rem;font-weight:650;white-space:nowrap}
@media(max-width:1040px){.tlhp-rental-feature{grid-template-columns:1fr;gap:24px}.tlhp-rental-feature__copy{max-width:720px}.tlhp-rental-feature__items{max-width:760px}}
@media(max-width:700px){.tlhp-rental-feature{margin:24px 12px 0;padding:23px 16px 18px;border-radius:18px;gap:20px}.tlhp-rental-feature::after{left:16px;right:16px}.tlhp-rental-feature__copy h2{font-size:1.85rem}.tlhp-rental-feature__copy>p{font-size:.76rem}.tlhp-rental-feature__actions{display:grid;grid-template-columns:1fr 1fr}.tlhp-rental-feature__actions a{min-height:42px;font-size:.64rem}.tlhp-rental-feature__items{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.tlhp-rental-mini{border-radius:13px}.tlhp-rental-mini__media{height:105px;margin:5px 5px 0;padding:6px;border-radius:10px}.tlhp-rental-mini__copy{min-height:82px;padding:8px}.tlhp-rental-mini__copy>strong{font-size:.6rem}.tlhp-rental-mini__copy>span{font-size:.58rem}.tlhp-rental-mini__copy small{display:block;margin-top:2px;font-size:.43rem}}
@media(max-width:430px){.tlhp-rental-feature__actions{grid-template-columns:1fr}.tlhp-rental-feature__items{grid-template-columns:1fr}.tlhp-rental-mini{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center}.tlhp-rental-mini__media{height:100px;margin:6px}.tlhp-rental-mini__copy{min-height:100px;justify-content:center}.tlhp-rental-mini__copy>span{margin-top:7px}}

/* 1.1.24 — simplified premium rental feature */
.tlhp-rental-feature{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:clamp(30px,4vw,64px);align-items:center;margin:clamp(34px,4vw,58px) clamp(18px,3vw,42px) 0;padding:clamp(34px,4.2vw,58px);border:1px solid rgba(255,255,255,.09);border-radius:26px;background:radial-gradient(circle at 0 0,rgba(255,90,0,.22),transparent 35%),linear-gradient(135deg,#0a0d11,#151a21 60%,#0d1116);box-shadow:0 26px 64px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.06)}
.tlhp-rental-feature:after{content:"";position:absolute;left:34px;right:34px;bottom:0;height:2px;background:linear-gradient(90deg,var(--tlhp-accent),rgba(255,90,0,.14) 50%,transparent 84%)}
.tlhp-rental-feature__copy{position:relative;z-index:2;max-width:610px}.tlhp-rental-feature__copy h2{margin:10px 0 0;color:#fff;font-size:clamp(2.15rem,3.4vw,3.55rem);line-height:.96;font-weight:930;letter-spacing:-.055em}.tlhp-rental-feature__copy>p:not(.tlhp-rental-feature__more){max-width:560px;margin:16px 0 0;color:#a9afb7;font-size:.88rem;line-height:1.62}.tlhp-rental-feature__facts{display:flex;flex-wrap:wrap;gap:7px 18px;margin-top:18px;color:#777f89;font-size:.62rem;font-weight:720}.tlhp-rental-feature__facts span{position:relative}.tlhp-rental-feature__facts span+span:before{content:"";position:absolute;left:-10px;top:50%;width:3px;height:3px;border-radius:50%;background:var(--tlhp-accent)}.tlhp-rental-feature__actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}.tlhp-rental-feature__actions a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 16px;border-radius:12px;font-size:.69rem;font-weight:860;text-decoration:none;transition:.17s ease}.tlhp-rental-feature__primary{border:1px solid var(--tlhp-accent);color:#fff!important;background:linear-gradient(135deg,#ff7023,#d94f00);box-shadow:0 10px 22px rgba(255,90,0,.20)}.tlhp-rental-feature__primary span{margin-left:8px}.tlhp-rental-feature__secondary{border:1px solid rgba(255,255,255,.14);color:#fff!important;background:rgba(255,255,255,.055)}.tlhp-rental-feature__actions a:hover{transform:translateY(-1px)}.tlhp-rental-feature__more{max-width:570px;margin:16px 0 0!important;color:#747c86!important;font-size:.64rem!important;line-height:1.5!important}.tlhp-rental-feature__more strong{color:#aeb4bc}.tlhp-rental-feature__more a{color:#ff8b4c!important;font-weight:820}
.tlhp-rental-feature__visual{position:relative;z-index:2;overflow:hidden;display:flex;min-height:330px;flex-direction:column;border:1px solid rgba(255,255,255,.10);border-radius:21px;color:#fff!important;background:linear-gradient(180deg,#171c23,#10141a);box-shadow:0 18px 42px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.05);text-decoration:none!important;transition:.18s ease}.tlhp-rental-feature__visual:hover{transform:translateY(-2px);border-color:rgba(255,90,0,.28);box-shadow:0 24px 50px rgba(0,0,0,.30)}.tlhp-rental-feature__visual-head{display:grid;grid-template-columns:1fr auto;grid-template-areas:"small arrow" "strong arrow";align-items:center;padding:18px 20px 8px}.tlhp-rental-feature__visual-head small{grid-area:small;color:#ff8b4c;font-size:.55rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.tlhp-rental-feature__visual-head strong{grid-area:strong;margin-top:3px;color:#fff;font-size:.92rem;font-weight:870}.tlhp-rental-feature__visual-head b{grid-area:arrow;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:#fff;background:var(--tlhp-accent);font-size:.85rem}.tlhp-rental-feature__stage{position:relative;overflow:hidden;display:block;flex:1;min-height:230px;margin:5px 16px 0;border-radius:17px;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.10),transparent 42%),linear-gradient(180deg,#f8f9fa,#e9ecef);box-shadow:inset 0 1px 0 #fff}.tlhp-rental-feature__product{position:absolute;display:grid;place-items:center;width:36%;height:78%;top:11%;padding:12px;border-radius:15px;background:#fff;box-shadow:0 15px 32px rgba(15,23,42,.12)}.tlhp-rental-feature__product img{display:block;width:100%;height:100%;object-fit:contain}.tlhp-rental-feature__product.p1{left:5%;transform:rotate(-3deg)}.tlhp-rental-feature__product.p2{left:32%;z-index:2;width:38%;height:84%;top:8%}.tlhp-rental-feature__product.p3{right:5%;transform:rotate(3deg)}.tlhp-rental-feature__visual-foot{display:flex;align-items:center;justify-content:center;gap:9px;min-height:42px;color:#777f89;font-size:.55rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.tlhp-rental-feature__visual-foot i{width:3px;height:3px;border-radius:50%;background:var(--tlhp-accent)}
@media(max-width:1040px){.tlhp-rental-feature{grid-template-columns:1fr;gap:25px}.tlhp-rental-feature__copy{max-width:720px}.tlhp-rental-feature__visual{max-width:760px;width:100%}}
@media(max-width:700px){.tlhp-rental-feature{margin:24px 12px 0;padding:25px 17px 17px;border-radius:20px;gap:21px}.tlhp-rental-feature:after{left:17px;right:17px}.tlhp-rental-feature__copy h2{font-size:2.25rem}.tlhp-rental-feature__copy>p:not(.tlhp-rental-feature__more){font-size:.76rem}.tlhp-rental-feature__actions{display:grid;grid-template-columns:1fr}.tlhp-rental-feature__actions a{min-height:44px}.tlhp-rental-feature__more{font-size:.6rem!important}.tlhp-rental-feature__visual{min-height:260px;border-radius:17px}.tlhp-rental-feature__visual-head{padding:14px 15px 6px}.tlhp-rental-feature__stage{min-height:175px;margin:5px 10px 0}.tlhp-rental-feature__product{padding:7px;border-radius:11px}.tlhp-rental-feature__visual-foot{min-height:35px;font-size:.48rem}}

/* Compact content-top standard: mobile homepage hero must leave room for content. */
@media (max-width:640px){
  .tlhp-hero-copy{min-height:0!important;padding:18px 18px 19px!important;}
  .tlhp-badge{min-height:22px!important;margin-bottom:8px!important;padding:5px 9px!important;font-size:.58rem!important;}
  .tlhp-brand-name{margin-bottom:6px!important;font-size:.72rem!important;}
  .tlhp-slide h1,.tlhp-slide.is-title-long h1,.tlhp-slide.is-title-extra-long h1,.tlhp-slide.is-title-xxlong h1{font-size:clamp(1.72rem,8vw,2.15rem)!important;line-height:.98!important;}
  .tlhp-hero-desc{margin-top:7px!important;font-size:.78rem!important;line-height:1.42!important;-webkit-line-clamp:2!important;}
  .tlhp-hero-actions{display:grid!important;grid-template-columns:auto auto!important;align-items:center!important;justify-content:center!important;gap:10px!important;width:auto!important;margin-top:12px!important;flex-direction:initial!important;flex-wrap:nowrap!important;}
  .tlhp-price-tag{font-size:1.35rem!important;}
  .tlhp-btn-main{width:auto!important;min-height:40px!important;padding:10px 13px!important;font-size:.64rem!important;}
  .tlhp-hero-media{height:190px!important;min-height:190px!important;max-height:190px!important;padding:8px 12px!important;}
  .tlhp-product-img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;transform:scale(1.08)!important;transform-origin:center center!important;}
  .tlhp-hero-brand-logo{top:9px!important;left:9px!important;max-width:135px!important;padding:5px 7px!important;}
  .tlhp-hero-brand-logo img,.tlhp-hero-brand-logo .tlhp-hero-brand-image{max-width:105px!important;max-height:22px!important;}
  .tlhp-slider-bottom-inner{min-height:0!important;padding:7px 12px 8px!important;}
}

/* 1.1.30 - slightly larger standard hero product images. */
