/* Storefront cache revision: 2026-08-11 */
@font-face { font-family: "General Sans"; src: url("/assets/home-20261015/general-sans-400.woff2") format("woff2"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: "General Sans"; src: url("/assets/home-20261015/general-sans-500.woff2") format("woff2"); font-style: normal; font-weight: 500; font-display: swap; }
@font-face { font-family: "General Sans"; src: url("/assets/home-20261015/general-sans-600.woff2") format("woff2"); font-style: normal; font-weight: 600; font-display: swap; }
@font-face { font-family: "General Sans"; src: url("/assets/home-20261015/general-sans-700.woff2") format("woff2"); font-style: normal; font-weight: 700; font-display: swap; }

:root {
  --lh-brown: #2c1816;
  --lh-orange: #ce4a21;
  --lh-cream: #f1ecc7;
  --lh-mist: #f2f2ef;
  --lh-white: #fff;
  --lh-page: min(75vw, 1440px);
  --lh-radius: 24px;
  --lh-font: "General Sans Variable", "General Sans", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--lh-brown); background: #fff; font-family: var(--lh-font); }
button, input { font: inherit; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
.skip-link { position: fixed; left: 12px; top: -80px; z-index: 100; padding: 12px 18px; background: #fff; }
.skip-link:focus { top: 12px; }
.lh-shell { width: var(--lh-page); margin-inline: auto; }
.lh-title { margin: 0; font-size: clamp(38px, 2.92vw, 56px); line-height: 1.15; letter-spacing: 0; font-weight: 700; }
.lh-pill { display: inline-flex; min-height: 56px; align-items: center; justify-content: center; padding: 14px 30px; border-radius: 999px; background: #fff; color: var(--lh-brown); font-size: 20px; line-height: 1.15; font-weight: 500; transition: background-color .2s, color .2s; }
.lh-pill:hover { background: var(--lh-orange); color: #fff; }

.lh-promo { height: 49px; display: flex; align-items: center; background: var(--lh-brown); color: #fff; font-size: 14px; }
.lh-promo__inner { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; align-items: center; }
.lh-promo p { margin: 0; }
.lh-promo__inner > p { text-align: right; }
.lh-promo a { display: flex; align-items: center; gap: 8px; justify-self: start; color: var(--lh-cream); font-weight: 500; text-decoration: underline; text-underline-offset: 4px; }
.lh-promo a img { width: 16px; height: 16px; }

.lh-header { height: 90px; position: relative; z-index: 20; background: #fff; }
.lh-header__inner { height: 100%; display: grid; grid-template-columns: 220px 1fr auto; align-items: center; gap: 32px; }
.lh-logo { width: 220px; height: 90px; position: relative; display: block; }
.lh-logo img { position: absolute; object-fit: contain; }
.lh-logo__mark { left: 20px; top: 18px; width: 85px; height: 53px; }
.lh-logo__word-1 { left: 118px; top: 32px; width: 79px; height: 20px; }
.lh-logo__word-2 { left: 115px; top: 52px; width: 85px; height: 19px; }
.lh-nav { position: absolute; left: calc((100% - var(--lh-page)) / 2 + 340px); top: 0; width: 732px; height: 90px; display: grid; grid-template-columns: repeat(6, 122px); align-items: center; gap: 0; }
.lh-nav a { display: block; width: max-content; justify-self: center; text-align: center; font-size: 16px; line-height: 1.5; font-weight: 600; white-space: nowrap; position: relative; }
.lh-nav a::after { content: ""; position: absolute; left: 50%; bottom: -5px; width: 100%; height: 2px; background: var(--lh-orange); transform: translateX(-50%) scaleX(0); transition: transform .2s; }
.lh-nav a:hover::after, .lh-nav a:focus-visible::after { transform: translateX(-50%) scaleX(1); }
.lh-header__tools { grid-column: 3; width: 120px; display: flex; align-items: center; justify-content: flex-end; gap: 18px; transition: width .2s; }
.lh-header.is-searching .lh-header__tools { width: 336px; }
.lh-language { width: 78px; height: 32px; position: relative; flex: 0 0 78px; color: #333; font-size: 14px; line-height: 1.5; font-weight: 500; }
.lh-language__toggle { width: 78px; height: 32px; padding: 4px 24px 4px 5px; position: relative; border: 1px solid #e8e8e8; background: #fff; color: inherit; text-align: left; cursor: pointer; }
.lh-language__toggle > span:first-child { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lh-language__icon { position: absolute; left: 52px; top: 3px; width: 24px; height: 24px; overflow: hidden; }
.lh-language__icon img { position: absolute; left: 6.5px; top: 9.75px; width: 11.5px; height: 6.5px; max-width: none; }
.lh-language__menu { position: absolute; z-index: 5; right: 0; top: 31px; width: 160px; padding: 7px 0; background: #fff; box-shadow: 0 8px 24px rgba(44,24,22,.14); }
.lh-language__menu[hidden] { display: none; }
.lh-language__menu button { width: 100%; min-height: 37px; padding: 7px 16px; border: 0; background: transparent; color: #333; text-align: center; font-size: 14px; line-height: 1.5; cursor: pointer; }
.lh-language__menu button:hover, .lh-language__menu button:focus-visible, .lh-language__menu button[aria-current="true"] { background: var(--lh-mist); }
.lh-search { width: 24px; height: 24px; position: relative; overflow: hidden; border: 0; padding: 0; background: transparent; cursor: pointer; }
.lh-search img { position: absolute; left: 3.5px; top: 3.5px; width: 18.53px; height: 18.53px; max-width: none; }
.lh-header.is-searching .lh-search { display: none; }
.lh-search-form { width: 240px; height: 32px; display: flex; align-items: center; border: 1px solid #e8e8e8; background: #fff; }
.lh-search-form[hidden] { display: none; }
.lh-search-form button { width: 30px; height: 30px; flex: 0 0 30px; display: grid; place-items: center; padding: 0; border: 0; background: transparent; cursor: pointer; }
.lh-search-form button img { width: 19px; height: 19px; }
.lh-search-form input { min-width: 0; width: 100%; height: 30px; padding: 4px 8px 4px 0; border: 0; outline: 0; color: #333; background: transparent; font-size: 14px; line-height: 1.5; font-weight: 500; }
.lh-search-form input::placeholder { color: #999; opacity: 1; }
.lh-menu-button { display: none; width: 34px; height: 34px; border: 0; background: transparent; padding: 6px; }
.lh-menu-button span, .lh-menu-button::before, .lh-menu-button::after { content: ""; display: block; height: 2px; background: var(--lh-brown); margin: 5px 0; }

.lh-hero { position: relative; height: clamp(560px, calc(100svh - 139px), 1080px); display: flex; align-items: center; color: #fff; overflow: hidden; background: #6b6b57; }
.lh-hero__media, .lh-hero__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.lh-hero__media { object-fit: cover; }
.lh-hero__shade { background: linear-gradient(90deg, rgba(15,16,10,.46), rgba(15,16,10,.08) 58%, transparent); }
.lh-hero__content { position: relative; z-index: 1; width: min(708px, 54vw); display: flex; flex-direction: column; gap: 32px; }
.lh-hero h1 { margin: 0; font-size: 56px; line-height: 1.15; letter-spacing: 0; }
.lh-hero p { margin: 0; max-width: 708px; font-size: 24px; line-height: 1.3; font-weight: 500; }
.lh-hero__actions { width: 708px; max-width: 100%; display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.lh-hero .lh-pill { width: 100%; height: 66px; min-height: 66px; padding-inline: 24px; font-size: 24px; white-space: nowrap; }

.lh-products { height: 1080px; }
.lh-products .lh-title { height: 160px; padding-top: 48px; }
.lh-products__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.lh-product-card__media { position: relative; height: 720px; overflow: hidden; background: var(--lh-mist); }
.lh-product-card__image-link { display: block; position: relative; width: 100%; height: 100%; }
.lh-product-card__image-link > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lh-product-card__product-image { z-index: 0; }
.lh-product-card__scene { z-index: 1; opacity: 0; transition: opacity .3s ease; }
.lh-product-card__media:hover .lh-product-card__scene, .lh-product-card__image-link:focus-visible .lh-product-card__scene { opacity: 1; }
.lh-label { position: absolute; z-index: 2; left: 0; top: 0; width: 122px; height: 52px; display: grid; place-items: center; overflow: hidden; color: #fff; font-size: 16px; line-height: 1.5; font-weight: 500; pointer-events: none; cursor: default; }
.lh-label > img { position: absolute; width: 52px; max-width: none; height: 122px; transform: rotate(90deg); }
.lh-label > span { position: relative; z-index: 1; white-space: nowrap; }
.lh-product-card__info { height: 200px; position: relative; padding: 12px 0 0; display: flex; flex-direction: column; align-items: flex-start; }
.lh-product-card h3 { margin: 28px 0 0; font-size: 36px; line-height: 1.2; }
.lh-product-card--has-swatches h3 { margin-top: 28px; }
.lh-rating { height: 24px; display: flex; gap: 16px; align-items: center; color: #333; font-size: 16px; line-height: 1.5; font-weight: 500; }
.lh-product-stars { width: 136px; height: 24px; display: flex; gap: 3.6px; }
.lh-product-star { position: relative; flex: 0 0 24px; width: 24px; height: 24px; }
.lh-product-star > img:first-child { position: absolute; left: 1.43px; top: .92px; width: 21.14px; height: 20.16px; max-width: none; }
.lh-product-star--partial > img:last-child { position: absolute; left: 13.71px; top: 3.93px; width: 8.86px; height: 16.96px; max-width: none; }
.lh-swatches { display: flex; gap: 12px; margin: 7px 0 0; }
.lh-swatch { appearance: none; width: 34px; height: 34px; padding: 0; border: 5px solid #fff; border-radius: 50%; box-shadow: none; cursor: pointer; }
.lh-swatch[aria-pressed="true"] { box-shadow: 0 0 0 1px #b9b3af; }
.lh-swatch:focus-visible { outline: 2px solid var(--lh-brown); outline-offset: 3px; }

.lh-scenes { display: grid; grid-template-columns: repeat(2, 1fr); }
.lh-scene { position: relative; min-height: min(50vw, 960px); overflow: hidden; color: #fff; }
.lh-scene > img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.lh-scene:hover > img { transform: scale(1.03); }
.lh-scene::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(transparent, rgba(15,10,8,.58)); }
.lh-scene__content { position: absolute; z-index: 1; right: 32px; bottom: 24px; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.lh-scene--1 .lh-scene__content { left: 25%; }
.lh-scene--2 .lh-scene__content { left: 32px; }
.lh-scene h3 { margin: 0; max-width: 560px; font-size: 32px; line-height: 1.15; font-weight: 600; }
.lh-scene .lh-pill { width: 151px; min-height: 55px; padding: 12px 24px; font-size: 20px; }

.lh-why > .lh-title { width: var(--lh-page); height: 160px; margin: 0 auto; padding-top: 48px; }
.lh-story { height: 817px; position: relative; color: #fff; overflow: hidden; }
.lh-story__image, .lh-story__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.lh-story__image { object-fit: cover; }
.lh-story__shade { background: linear-gradient(90deg, rgba(30,19,16,.38), rgba(30,19,16,.03) 65%); }
.lh-story .lh-shell { position: relative; z-index: 1; height: 100%; }
.lh-story__copy { width: 854px; max-width: 62vw; padding-top: 101px; }
.lh-story__panel { width: 854px; max-width: 100%; height: 353px; display: flex; align-items: flex-start; padding: 48px 42px 48px 43px; background: url("/assets/home-20261015/story-glass.svg") center / 100% 100% no-repeat; }
.lh-story h3 { margin: 0; font-size: 48px; line-height: 1.2; letter-spacing: 0; }
.lh-story ul { width: var(--lh-page); margin: 64px 0 0; padding: 0; list-style: none; display: grid; gap: 44px; font-size: 24px; line-height: 1.5; font-weight: 500; }
.lh-story li { display: flex; gap: 8px; align-items: center; }
.lh-story li::before { content: ""; width: 6px; height: 6px; flex: 0 0 auto; border-radius: 50%; background: #fff; }
.lh-detail-grid { height: 715px; position: relative; overflow: hidden; background: var(--lh-mist); padding: 88px max(12.5vw, 24px) 92px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.lh-detail__media { aspect-ratio: 1; overflow: hidden; border-radius: var(--lh-radius); background: #ddd; }
.lh-detail__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.lh-detail:hover img { transform: scale(1.04); }
.lh-detail h4 { margin: 32px 0 0; text-align: center; font-size: 32px; line-height: normal; font-weight: 600; }

.lh-reviews { height: 2051px; }
.lh-reviews__heading { height: 160px; padding-top: 48px; }
.lh-reviews__showcase { height: 792px; }
.lh-reviews__tabs { height: 56px; display: flex; gap: 48px; padding-top: 72px; box-sizing: content-box; }
.lh-tab { width: 240px; height: 56px; display: flex; align-items: center; justify-content: center; gap: 12px; border-radius: 999px; background: var(--lh-mist); font-size: 24px; line-height: 1.5; font-weight: 500; }
.lh-tab.is-active { background: var(--lh-orange); color: #fff; }
.lh-tab.is-active > span { width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.lh-reviews__feature { height: 520px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; margin-top: 64px; }
.lh-reviews__feature-media { overflow: hidden; border-radius: var(--lh-radius); height: 520px; }
.lh-reviews__feature-media img { width: 100%; height: 100%; object-fit: cover; }
.lh-reviews__feature-copy { position: relative; display: flex; flex-direction: column; min-width: 0; }
.lh-reviews__meta { height: 24px; display: flex; align-items: center; gap: 8px; font-size: 14px; line-height: 1.15; font-weight: 500; }
.lh-review-stars { width: 136px; height: 24px; display: flex; gap: 3.6px; }
.lh-review-stars img { width: 24px; height: 24px; flex: 0 0 auto; }
.lh-review-stars--small { width: 90.4px; height: 16px; gap: 2.4px; }
.lh-review-stars--small img { width: 16px; height: 16px; }
.lh-reviews__meta a { text-decoration: underline; text-underline-offset: 4px; }
.lh-reviews__feature-copy h3 { margin: 21px 0 0; font-size: 48px; line-height: 1.2; letter-spacing: 0; }
.lh-reviews__feature-copy > p { margin: 32px 0 0; font-size: 24px; line-height: 1.5; font-weight: 500; }
.lh-feature-quote { position: relative; height: 195px; margin-top: 32px; padding: 24px; background: var(--lh-mist); border-radius: var(--lh-radius); }
.lh-feature-quote > p { position: absolute; left: 24px; right: 24px; top: 106px; margin: 0; font-size: 16px; line-height: 1.5; font-weight: 500; }
.lh-author { display: flex; align-items: center; gap: 12px; font-size: 14px; }
.lh-feature-quote .lh-author { position: absolute; left: 24px; top: 24px; }
.lh-feature-quote .lh-author > img { width: 68px; height: 68px; }
.lh-feature-quote .lh-author > span { gap: 2px; }
.lh-author > img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.lh-author > span { display: flex; flex-direction: column; gap: 4px; }
.lh-author strong { font-size: 14px; line-height: 1.5; font-weight: 600; }
.lh-author small { font-size: 14px; line-height: 1.5; font-weight: 500; color: #999; }
.lh-reviews__wall { height: 1099px; position: relative; }
.lh-reviews__wall::before { content: ""; position: absolute; left: 50%; top: 0; width: var(--lh-page); border-top: 1px solid #dedbd8; transform: translateX(-50%); }
.lh-reviews__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; padding-top: 72px; }
.lh-review-card { height: 899px; display: flex; flex-direction: column; gap: 24px; }
.lh-review-card--2 .lh-review-card__quote { order: -1; }
.lh-review-card__media { height: 691px; position: relative; display: block; overflow: hidden; border-radius: var(--lh-radius); background: #000; color: #fff; }
.lh-review-card__media video { width: 100%; height: 100%; display: block; object-fit: cover; }
.lh-review-card__play { position: absolute; z-index: 2; left: 50%; top: 50%; width: 58px; height: 58px; padding: 0; border: 0; background: transparent; transform: translate(-50%, -50%); cursor: pointer; }
.lh-review-card__play img { width: 58px; height: 58px; display: block; }
.lh-review-card__media::after { content: ""; position: absolute; inset: 55% 0 0; background: linear-gradient(transparent, rgba(0,0,0,.68)); }
.lh-review-card__overlay { position: absolute; z-index: 1; left: 24px; right: 24px; top: 578px; }
.lh-review-card__overlay strong { font-size: 24px; line-height: 1.3; font-weight: 600; }
.lh-review-card__overlay p { margin: 8px 0 0; font-size: 16px; line-height: 1.5; font-weight: 500; }
.lh-review-card__play:focus-visible { outline: 3px solid #fff; outline-offset: 4px; border-radius: 50%; }
.lh-review-card__media.has-started::after, .lh-review-card__media.has-started .lh-review-card__play, .lh-review-card__media.has-started .lh-review-card__overlay { opacity: 0; pointer-events: none; }
.lh-review-card__quote { height: 184px; padding: 24px; overflow: hidden; background: var(--lh-mist); border-radius: var(--lh-radius); }
.lh-review-card__quote > p { display: -webkit-box; margin: 12px 0 0; overflow: hidden; font-size: 16px; line-height: 1.5; font-weight: 500; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.lh-author small:empty { display: none; }

.lh-faq { min-height: 1080px; padding-bottom: 120px; background: var(--lh-mist); }
.lh-faq .lh-title { height: 232px; padding-top: 120px; text-align: center; }
.lh-faq__list { display: grid; gap: 32px; }
.lh-faq__item { border-radius: var(--lh-radius); background: #fff; overflow: hidden; }
.lh-faq__question { width: 100%; height: 127px; display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 32px 48px; border: 0; text-align: left; background: transparent; color: var(--lh-brown); font-size: 24px; line-height: 1.3; font-weight: 600; cursor: pointer; }
.lh-faq__item.is-open .lh-faq__question { height: 79px; align-items: flex-start; padding-top: 48px; padding-bottom: 0; }
.lh-faq__icon { position: relative; width: 32px; height: 32px; flex: 0 0 auto; }
.lh-faq__icon::before, .lh-faq__icon::after { content: ""; position: absolute; left: 5px; top: 14px; width: 23px; height: 4px; border-radius: 999px; background: currentColor; }
.lh-faq__icon::after { transform: rotate(90deg); transition: transform .25s; }
.is-open .lh-faq__icon::after { transform: rotate(0); }
.lh-faq__answer { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .3s; }
.is-open .lh-faq__answer { grid-template-rows: 1fr; }
.lh-faq__answer > div { overflow: hidden; }
.lh-faq__answer p { margin: 0; padding: 0 72px 32px 48px; color: #333; font-size: 16px; line-height: 1.5; }
.lh-faq__item.is-open .lh-faq__answer p { padding: 24px 72px 48px 48px; }

.lh-search-page { min-height: 720px; padding: 88px 0 120px; background: #fff; }
.lh-search-page__header { display: grid; gap: 24px; max-width: 952px; }
.lh-search-page__header h1 { margin: 0; font-size: 48px; line-height: 1.2; }
.lh-search-page__form { height: 64px; display: flex; border: 1px solid #dedbd8; border-radius: 999px; overflow: hidden; background: #fff; }
.lh-search-page__form input[type="search"] { min-width: 0; flex: 1; padding: 0 28px; border: 0; outline: 0; color: #333; font-size: 18px; }
.lh-search-page__form button { width: 148px; border: 0; border-radius: 999px; background: var(--lh-orange); color: #fff; font-size: 18px; font-weight: 600; cursor: pointer; }
.lh-search-page__summary { margin: 64px 0 24px; color: #666; font-size: 16px; }
.lh-search-page__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px 24px; }
.lh-search-card { min-width: 0; }
.lh-search-card__media { aspect-ratio: 1; display: block; overflow: hidden; border-radius: var(--lh-radius); background: var(--lh-mist); }
.lh-search-card__media img { width: 100%; height: 100%; object-fit: cover; }
.lh-search-card h2 { margin: 20px 0 0; font-size: 24px; line-height: 1.3; }
.lh-search-card p { margin: 8px 0 0; color: #666; font-size: 16px; line-height: 1.5; }
.lh-search-page__empty { margin-top: 64px; padding: 64px; border-radius: var(--lh-radius); background: var(--lh-mist); text-align: center; }
.lh-search-page__empty h2 { margin: 0; font-size: 32px; line-height: 1.2; }
.lh-search-page__empty p { margin: 16px auto 0; max-width: 560px; color: #666; font-size: 18px; line-height: 1.5; }
.lh-search-page .pagination { margin: 64px 0 0; display: flex; justify-content: center; gap: 16px; }
.lh-search-page .pagination a, .lh-search-page .pagination .page.current { min-width: 44px; min-height: 44px; display: grid; place-items: center; border-radius: 999px; background: var(--lh-mist); }
.lh-search-page .pagination .page.current { background: var(--lh-orange); color: #fff; }

@media (min-width: 1201px) and (max-width: 1877px) {
  .lh-header.is-searching .lh-nav { visibility: hidden; pointer-events: none; }
}

.lh-footer { height: 750px; background: var(--lh-brown); color: #fff; overflow: hidden; }
.lh-footer > .lh-shell { height: 750px; }
.lh-footer__top { height: 475px; padding-top: 88px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.lh-footer__brand { min-width: 0; max-width: 708px; }
.lh-footer .lh-logo { margin: -10px 0 0; }
.lh-footer__intro { margin: 16px 0 0; font-size: 16px; line-height: 1.5; font-weight: 500; }
.lh-footer__label { margin: 32px 0 16px; font-size: 14px; line-height: 1.5; font-weight: 500; }
.lh-newsletter { display: flex; width: 100%; max-width: 706px; height: 72px; position: relative; }
.lh-newsletter input { min-width: 0; flex: 1; padding: 0 32px; border: 1px solid rgba(255,255,255,.5); border-radius: 999px 0 0 999px; background: transparent; color: #fff; font-size: 20px; line-height: 1.5; font-weight: 500; }
.lh-newsletter input:focus { border-color: #fff; outline: 0; }
.lh-newsletter input::placeholder { color: rgba(255,255,255,.5); opacity: 1; }
.lh-newsletter input:-webkit-autofill, .lh-newsletter input:-webkit-autofill:hover, .lh-newsletter input:-webkit-autofill:focus { -webkit-text-fill-color: #fff; box-shadow: 0 0 0 1000px var(--lh-brown) inset; transition: background-color 9999s ease-out; }
.lh-newsletter button { width: 186px; border: 0; border-radius: 0 999px 999px 0; background: var(--lh-orange); color: #fff; font-size: 20px; line-height: 1.5; font-weight: 500; cursor: pointer; }
.lh-newsletter__message { position: absolute; left: 32px; top: calc(100% + 8px); margin: 0; color: #fff; font-size: 14px; line-height: 1.5; }
.lh-footer__nav { min-width: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.lh-footer__nav > div { min-width: 0; }
.lh-footer__nav h3 { margin: 0 0 32px; font-size: 24px; line-height: 1.3; font-weight: 600; }
.lh-footer__nav ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 24px; font-size: 16px; line-height: 1.5; font-weight: 500; }
.lh-socials { display: flex; gap: 48px; margin-top: 64px; }
.lh-socials a, .lh-socials > span { display: block; width: 24px; height: 24px; }
.lh-socials img { width: 24px; height: 24px; }
.lh-footer__bottom { height: 275px; position: relative; }
.lh-footer__wordmark { position: absolute; left: 0; top: 3px; margin: 0; font-size: 160px; line-height: normal; letter-spacing: 28.8px; font-weight: 700; white-space: nowrap; }
.lh-footer__copyright { position: absolute; right: 0; top: 151px; margin: 0; white-space: nowrap; font-size: 16px; line-height: normal; font-weight: 500; }

@media (max-width: 1919px) {
  .lh-footer__wordmark { font-size: 8.333vw; letter-spacing: .18em; }
}

@media (min-width: 1921px) {
  .lh-detail-grid { grid-template-columns: repeat(3, 464px); justify-content: center; }
}

@media (max-width: 1600px) {
  .lh-nav { position: static; width: auto; height: auto; display: flex; grid-template-columns: none; justify-content: center; gap: clamp(20px, 2vw, 40px); }
  .lh-nav a:first-child { padding-left: 0; }
  .lh-product-card h3 { margin-top: 24px; font-size: 32px; }
  .lh-swatches { position: static; margin-top: 12px; }
  .lh-reviews__feature-copy h3 { font-size: 44px; }
  .lh-reviews__feature-copy > p { margin-top: 24px; font-size: 20px; }
  .lh-feature-quote { height: 219px; }
}

@media (max-width: 1280px) {
  .lh-story h3 { font-size: 44px; }
}

@media (max-width: 1200px) {
  .lh-header__inner { grid-template-columns: 1fr auto; }
  .lh-header__tools { grid-column: 2; width: auto; }
  .lh-menu-button { display: block; }
  .lh-nav { display: none; position: absolute; left: 0; right: 0; top: 90px; padding: 26px 24px; background: #fff; flex-direction: column; align-items: flex-start; box-shadow: 0 16px 30px rgba(44,24,22,.1); }
  .lh-header.is-open .lh-nav { display: flex; }
  .lh-reviews__feature { height: auto; }
  .lh-reviews__feature-copy { min-height: 0; }
  .lh-reviews__feature-copy h3 { font-size: 40px; }
  .lh-reviews__feature-copy > p { font-size: 18px; }
  .lh-feature-quote { position: relative; inset: auto; height: auto; min-height: 195px; margin-top: 32px; }
  .lh-feature-quote .lh-author { position: static; }
  .lh-feature-quote > p { position: static; margin-top: 14px; }
}

@media (min-width: 801px) and (max-width: 1600px) {
  .lh-review-card { height: auto; }
  .lh-review-card__media { flex: 0 0 691px; }
  .lh-review-card__quote { height: auto; min-height: 184px; overflow: visible; }
}

@media (max-width: 1100px) {
  :root { --lh-page: calc(100vw - 48px); }
  .lh-header__inner { grid-template-columns: 190px 1fr auto; }
  .lh-nav { gap: 16px; }
  .lh-nav a { font-size: 14px; }
  .lh-hero .lh-pill { font-size: 20px; }
  .lh-story h3 { font-size: 44px; }
  .lh-reviews { height: auto; }
  .lh-reviews__feature-copy h3 { font-size: 40px; }
  .lh-reviews__feature-copy > p { font-size: 18px; }
  .lh-reviews__wall { height: auto; padding-bottom: 72px; }
  .lh-reviews__grid { grid-template-columns: repeat(2, 1fr); }
  .lh-footer__wordmark { font-size: 8vw; }
}

@media (min-width: 801px) and (max-width: 900px) {
  .lh-story h3 { font-size: 38px; }
}

@media (max-width: 800px) {
  :root { --lh-page: calc(100vw - 32px); --lh-radius: 18px; }
  .lh-promo { height: auto; min-height: 49px; padding: 10px 0; }
  .lh-promo__inner { grid-template-columns: 1fr; align-items: center; }
  .lh-promo__inner > p:first-child { text-align: center; }
  .lh-promo a { justify-self: center; }
  .lh-header__inner { grid-template-columns: 1fr auto; }
  .lh-logo { width: 152px; height: 45px; }
  .lh-logo__mark { left: 0; top: 0; width: 72px; height: 45px; }
  .lh-logo__word-1 { left: 83px; top: 12px; width: 67px; height: 17px; }
  .lh-logo__word-2 { left: 80px; top: 29px; width: 72px; height: 16px; }
  .lh-menu-button { display: block; }
  .lh-header__tools { gap: 16px; }
  .lh-header.is-searching .lh-header__tools { width: auto; }
  .lh-header.is-searching .lh-search { display: block; }
  .lh-search-form { position: absolute; left: 16px; right: 16px; top: 90px; width: auto; height: 52px; padding: 10px 12px; box-shadow: 0 16px 30px rgba(44,24,22,.1); }
  .lh-search-form button, .lh-search-form input { height: 30px; }
  .lh-nav { display: none; position: absolute; left: 0; right: 0; top: 90px; padding: 26px 24px; background: #fff; flex-direction: column; align-items: flex-start; box-shadow: 0 16px 30px rgba(44,24,22,.1); }
  .lh-header.is-open .lh-nav { display: flex; }
  .lh-hero { min-height: 720px; align-items: flex-end; padding-bottom: 64px; }
  .lh-hero__content { width: 100%; gap: 24px; }
  .lh-hero h1 { font-size: clamp(44px, 13vw, 64px); }
  .lh-hero p { font-size: 18px; }
  .lh-hero__actions { grid-template-columns: 1fr; gap: 12px; }
  .lh-hero .lh-pill { min-height: 54px; padding-inline: 22px; font-size: 17px; }
  .lh-products__grid, .lh-scenes, .lh-reviews__feature, .lh-reviews__grid, .lh-footer__top { grid-template-columns: 1fr; }
  .lh-products { height: auto; padding-block: 40px; }
  .lh-products .lh-title { height: auto; padding-top: 0; }
  .lh-products__grid { margin-top: 30px; }
  .lh-product-card__media { height: auto; aspect-ratio: 708/720; }
  .lh-product-card__info { height: auto; min-height: 180px; padding-inline: 0; }
  .lh-product-card h3 { margin-top: 20px; font-size: 26px; }
  .lh-scene { min-height: 100vw; }
  .lh-scene--1 .lh-scene__content, .lh-scene--2 .lh-scene__content { left: 24px; right: 24px; bottom: 30px; align-items: flex-start; }
  .lh-scene .lh-pill { padding: 11px 20px; min-height: 48px; font-size: 16px; }
  .lh-why > .lh-title { height: auto; padding: 38px 0; }
  .lh-story { height: 700px; }
  .lh-story__copy { width: 100%; max-width: none; padding-top: 300px; }
  .lh-story__panel { width: 100%; height: auto; min-height: 220px; padding: 32px 24px; }
  .lh-story h3 { font-size: 38px; }
  .lh-story ul { margin: 20px 0 0; padding-left: 24px; gap: 18px; font-size: 18px; line-height: 1.3; }
  .lh-detail-grid { height: auto; grid-template-columns: 1fr; padding: 32px 16px 54px; }
  .lh-detail h4 { margin-top: 20px; font-size: 26px; }
  .lh-reviews { height: auto; }
  .lh-reviews__heading { height: auto; padding-top: 52px; }
  .lh-reviews__showcase { height: auto; padding-bottom: 52px; }
  .lh-reviews__tabs { height: auto; gap: 12px; padding-top: 30px; }
  .lh-tab { width: auto; flex: 1; height: 48px; font-size: 16px; }
  .lh-reviews__feature { height: auto; margin-top: 30px; }
  .lh-reviews__feature-media { height: 420px; }
  .lh-reviews__feature-copy { min-height: 620px; }
  .lh-reviews__feature-copy h3 { font-size: 38px; }
  .lh-reviews__feature-copy > p { font-size: 18px; }
  .lh-feature-quote { height: 230px; }
  .lh-reviews__wall { height: auto; padding-bottom: 52px; }
  .lh-reviews__grid { padding-top: 40px; }
  .lh-review-card { height: auto; }
  .lh-review-card__media { height: 125vw; max-height: 691px; }
  .lh-review-card__overlay { top: auto; bottom: 24px; }
  .lh-review-card__quote { height: auto; min-height: 184px; }
  .lh-faq__question { min-height: 96px; padding: 22px; font-size: 18px; }
  .lh-faq { height: auto; min-height: 0; padding-bottom: 54px; }
  .lh-faq .lh-title { height: 170px; padding-top: 0; display: flex; align-items: center; justify-content: center; }
  .lh-faq__list { gap: 16px; }
  .lh-faq__question { height: auto; }
  .lh-faq__answer p { padding: 0 50px 24px 22px; font-size: 16px; }
  .lh-faq__item.is-open .lh-faq__question { min-height: 96px; height: auto; align-items: center; padding: 22px; }
  .lh-faq__item.is-open .lh-faq__answer p { padding: 0 50px 24px 22px; }
  .lh-search-page { min-height: 560px; padding: 52px 0 72px; }
  .lh-search-page__header h1 { font-size: 38px; }
  .lh-search-page__form { height: 56px; }
  .lh-search-page__form input[type="search"] { padding: 0 20px; font-size: 16px; }
  .lh-search-page__form button { width: 104px; font-size: 16px; }
  .lh-search-page__summary { margin-top: 44px; }
  .lh-search-page__grid { grid-template-columns: 1fr; }
  .lh-search-page__empty { margin-top: 44px; padding: 44px 24px; }
  .lh-search-page__empty h2 { font-size: 28px; }
  .lh-footer { height: auto; padding-top: 60px; }
  .lh-footer > .lh-shell { height: auto; }
  .lh-footer__top { height: auto; padding-top: 0; gap: 52px; }
  .lh-footer .lh-logo { width: 152px; height: 45px; }
  .lh-footer__nav { gap: 14px; }
  .lh-footer__nav h3 { font-size: 19px; }
  .lh-footer__nav ul { gap: 16px; font-size: 14px; }
  .lh-newsletter { height: 60px; }
  .lh-newsletter input { padding-inline: 20px; font-size: 16px; }
  .lh-newsletter button { width: 140px; font-size: 16px; }
  .lh-footer__bottom { height: 200px; margin-top: 30px; }
  .lh-footer__wordmark { top: 36px; font-size: 11vw; letter-spacing: .11em; }
  .lh-footer__copyright { left: 0; right: auto; top: auto; bottom: 16px; }
}

@media (max-width: 500px) {
  .lh-story__copy { padding-top: 220px; }
  .lh-story h3 { font-size: clamp(30px, 8.72vw, 34px); }
  .lh-reviews__feature-copy { min-height: 0; }
  .lh-feature-quote { position: relative; inset: auto; height: auto; min-height: 0; margin-top: 32px; }
  .lh-feature-quote .lh-author { position: static; }
  .lh-feature-quote > p { position: static; margin-top: 14px; }
}

@media (max-width: 360px) {
  .lh-story { height: 720px; }
}

/* Homepage-only integrations. Existing inner-page styles remain independent. */
.lh-search-form { position: relative; }
.lh-search-results { position: absolute; top: calc(100% + 8px); right: 0; width: min(360px, calc(100vw - 32px)); padding: 12px; background: #fff; color: var(--lh-brown); box-shadow: 0 12px 32px #2c181626; }
.lh-search-results[hidden] { display: none; }
.lh-search-results a { display: block; padding: 12px; font-size: 16px; line-height: 1.4; }
.lh-search-results a:hover, .lh-search-results a:focus-visible { background: var(--lh-mist); }
.lh-search-results p { margin: 8px 12px; font-size: 14px; }
.lh-newsletter__status { position: absolute; top: calc(100% + 10px); left: 0; margin: 0; font-size: 14px; line-height: 1.5; }
.lh-newsletter button:disabled { cursor: wait; opacity: .7; }
.lh-faq__answer a { text-decoration: underline; text-underline-offset: 3px; }
.lh-footer__nav { grid-template-columns: .8fr .8fr 1.4fr; }
:focus-visible { outline: 2px solid var(--lh-orange); outline-offset: 5px; }
@media (max-width: 800px) {
  .lh-search-form { position: absolute; }
  .lh-hero__media { object-position: 60% center; }
  .lh-hero { height: auto; min-height: 720px; padding-top: 56px; }
  .lh-footer__nav { grid-template-columns: 1fr 1fr; row-gap: 36px; }
  .lh-footer__nav > div:last-child { grid-column: 1 / -1; }
  .lh-footer__nav > div:last-child ul { grid-template-columns: 1fr 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: 0s !important; animation-duration: 0s !important; }
}
@media (max-width: 380px) {
  .lh-header__inner, .lh-header__tools { gap: 8px; }
  .lh-header .lh-logo { width: 128px; }
  .lh-header .lh-logo__mark { top: 3px; width: 60px; height: 38px; }
  .lh-header .lh-logo__word-1 { left: 70px; top: 12px; width: 56px; height: 14px; }
  .lh-header .lh-logo__word-2 { left: 68px; top: 26px; width: 60px; height: 13px; }
}
