/** Shopify CDN: Minification failed

Line 2938:0 Unexpected "{"
Line 2938:1 Expected identifier but found "%"
Line 2938:62 Unexpected ","
Line 2941:40 Expected identifier but found "%"
Line 2955:0 Unexpected "{"
Line 2955:1 Expected identifier but found "%"
Line 2955:46 Expected identifier but found whitespace
Line 2955:61 Unexpected ".6px"
Line 2956:81 Expected identifier but found "%"

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:lnc-announcement (INDEX:22) */
.lnc-announcement { font-family: var(--lnc-font-mono); font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; }
.lnc-announcement__wrap { min-height: 40px; display: flex; align-items: center; justify-content: center; padding-block: 8px; }
.lnc-announcement__track { display: flex; align-items: center; justify-content: center; text-align: center; }
.lnc-announcement__row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; justify-content: center; }
/* Desktop: single centred row; trailing separator + clone hidden */
.lnc-announcement__row--clone { display: none; }
.lnc-announcement__row .lnc-announcement__sep:last-child { display: none; }
.lnc-announcement__msg { color: currentColor; }
.lnc-announcement__sep { opacity: .5; margin-inline: 12px; }
.lnc-announcement[data-rotate] .lnc-announcement__row { gap: 0; }
.lnc-announcement[data-rotate] .lnc-announcement__sep { display: none; }
body.lnc-vid-top .lnc-announcement { display: none; }
@media (max-width: 749px) {
  .lnc-announcement--desk { display: none; }
  .lnc-announcement { font-size: 10px; letter-spacing: .1em; overflow: hidden; }
  /* AUTO-scrolling marquee (owner request): both rows render on one line and the
     track loops -50%. Reduced-motion falls back to a finger-scrollable rail. */
  .lnc-announcement .lnc-announcement__wrap { min-height: 34px; padding-block: 6px; padding-inline: 0; max-width: none; justify-content: flex-start; overflow: hidden; }
  .lnc-announcement .lnc-announcement__track { flex-wrap: nowrap; white-space: nowrap; width: max-content; margin: 0; animation: lnc-ann-roll 22s linear infinite; }
  .lnc-announcement .lnc-announcement__row { flex-wrap: nowrap; }
  .lnc-announcement .lnc-announcement__row--clone { display: flex; }
  .lnc-announcement .lnc-announcement__row .lnc-announcement__sep:last-child { display: inline; }
  /* rotate mode shows one message at a time — no marquee */
  .lnc-announcement[data-rotate] .lnc-announcement__track { animation: none; width: auto; margin-inline: auto; }
  .lnc-announcement[data-rotate] .lnc-announcement__row--clone { display: none; }
}
@keyframes lnc-ann-roll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .lnc-announcement .lnc-announcement__track { animation: none !important; width: auto; overflow-x: auto; scrollbar-width: none; }
  .lnc-announcement .lnc-announcement__row--clone { display: none !important; }
}
/* END_SECTION:lnc-announcement */

/* START_SECTION:lnc-article (INDEX:23) */
.lnc-article {
  padding-block: var(--pt, 64px) var(--pb, 72px);
}

/* ---- Header ---- */
.lnc-article__head {
  max-width: 820px;
  margin: 0 auto;
  padding-inline: var(--lnc-gutter, 40px);
}
.lnc-article__kicker {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 400;
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--lnc-muted);
}
.lnc-article__kicker .lnc-tlink { color: var(--lnc-muted); }
.lnc-article__kicker-sep { color: var(--lnc-taupe); }
.lnc-article__kicker-cat { color: var(--lnc-accent-deep); }
.lnc-article__title {
  margin: 26px 0 0;
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: clamp(38px, 4.4vw, 54px);
  line-height: 1.04;
  letter-spacing: -.03em;
  color: var(--lnc-ink);
}
.lnc-article__standfirst {
  margin: 20px 0 0;
  font-family: var(--lnc-font-serif);
  font-size: clamp(17px, 1.5vw, 19px);
  line-height: 1.65;
  color: var(--lnc-body);
}
.lnc-article__byline {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 26px;
  padding-bottom: 34px;
  border-bottom: 1px solid var(--lnc-line);
}
.lnc-article__avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--lnc-accent-wash);
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: 14px;
  color: var(--lnc-accent-deep);
}
.lnc-article__by-meta { display: flex; flex-direction: column; gap: 2px; }
.lnc-article__author {
  font-family: var(--lnc-font-body);
  font-weight: 700;
  font-size: 13.5px;
  color: var(--lnc-ink);
}
.lnc-article__dateline {
  font-weight: 400;
  font-size: 10.5px;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--lnc-muted);
}

/* ---- Hero ---- */
.lnc-article__hero {
  max-width: 1040px;
  margin: 36px auto 0;
  padding-inline: var(--lnc-gutter, 40px);
}
.lnc-article__hero-frame {
  border-radius: var(--lnc-radius-lg);
  overflow: clip;
  aspect-ratio: 16 / 8.5;
  background: var(--lnc-cloud);
  box-shadow: 0 30px 60px rgba(27, 40, 50, .12);
}
.lnc-article__hero-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lnc-article__caption {
  margin-top: 12px;
  font-weight: 400;
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--lnc-taupe);
  text-align: center;
}

/* ---- Body prose ---- */
.lnc-article__body {
  max-width: 820px;
  margin: 48px auto 0;
  padding-inline: var(--lnc-gutter, 40px);
  font-family: var(--lnc-font-serif);
  font-size: 18px;
  line-height: 1.8;
  color: var(--lnc-body);
}
.lnc-article__body > :first-child { margin-top: 0; }
.lnc-article__body p { margin: 0 0 24px; }
.lnc-article__body a {
  color: var(--lnc-accent-deep);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.lnc-article__body strong { color: var(--lnc-ink); font-weight: 700; }
.lnc-article__body em { font-style: italic; }
.lnc-article__body h2 {
  margin: 44px 0 16px;
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: 28px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: var(--lnc-ink);
}
.lnc-article__body h3 {
  margin: 1.6em 0 .4em;
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: clamp(20px, 2vw, 23px);
  line-height: 1.2;
  letter-spacing: -.01em;
  color: var(--lnc-ink);
}
.lnc-article__body ul,
.lnc-article__body ol { margin: 0 0 24px; padding-left: 22px; }
.lnc-article__body li { margin: 0 0 10px; }
.lnc-article__body blockquote {
  margin: 40px 0;
  padding: 34px 38px;
  background: var(--lnc-accent-wash);
  border: 1px solid var(--lnc-accent-line);
  border-radius: 16px;
  display: grid;
  grid-template-columns: 34px 1fr;
  column-gap: 18px;
  font-family: var(--lnc-font-serif);
  font-style: italic;
  font-size: 23px;
  line-height: 1.5;
  color: var(--lnc-accent-deep);
}
.lnc-article__body blockquote::before {
  content: "";
  grid-column: 1;
  height: 2px;
  background: var(--lnc-spark);
  margin-top: 16px;
}
.lnc-article__body blockquote > * { grid-column: 2; }
.lnc-article__body blockquote p { margin: 0; }
.lnc-article__body blockquote p + p { margin-top: .6em; }
.lnc-article__body img {
  max-width: 100%;
  height: auto;
  border-radius: var(--lnc-radius);
  margin: 1.6em 0;
  display: block;
}
.lnc-article__body figure { margin: 1.8em 0; }
.lnc-article__body figcaption {
  margin-top: 10px;
  font-family: var(--lnc-font-mono);
  font-size: 11px;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--lnc-muted);
  text-align: center;
}
.lnc-article__body hr { border: 0; border-top: 1px solid var(--lnc-line); margin: 2em 0; }

/* ---- Tags footer ---- */
.lnc-article__tags-row {
  max-width: 820px;
  margin: 44px auto 0;
  padding: 26px var(--lnc-gutter, 40px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  border-top: 1px solid var(--lnc-line);
  border-bottom: 1px solid var(--lnc-line);
  /* keep the rules inside the reading measure */
  border-inline: 0;
}
.lnc-article__tags { display: flex; gap: 8px; flex-wrap: wrap; }
.lnc-article__tag {
  font-weight: 500;
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--lnc-ink-deep);
  background: var(--lnc-accent-wash);
  border: 1px solid var(--lnc-accent-line);
  border-radius: var(--lnc-radius-pill);
  padding: 6px 12px;
}
.lnc-article__all {
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--lnc-accent-deep);
}

/* ---- Keep reading ---- */
.lnc-article__more {
  max-width: var(--lnc-wrap, 1280px);
  margin: 64px auto 0;
  padding-inline: var(--lnc-gutter, 40px);
}
.lnc-article__more-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
}
.lnc-article__more-title {
  margin: 0;
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: clamp(24px, 2.6vw, 30px);
  letter-spacing: -.02em;
  color: var(--lnc-ink);
}
.lnc-article__more-accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-article__more-link {
  font-weight: 500;
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--lnc-accent-deep);
  white-space: nowrap;
}
.lnc-article__more-grid {
  display: grid;
  grid-template-columns: repeat(var(--kr-cols, 3), minmax(0, 1fr));
  gap: 18px;
}

/* Design's bordered white card (journal-first-night-home "Keep reading") —
   scoped so the base .lnc-acard masthead style elsewhere is untouched. */
.lnc-article__more-grid .lnc-acard {
  height: 100%;
  background: var(--lnc-white);
  border: 1px solid var(--lnc-line);
  border-radius: var(--lnc-radius);
  overflow: clip;
  transition: transform .25s ease, box-shadow .25s ease;
}
.lnc-article__more-grid .lnc-acard:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(27, 40, 50, .10);
}
.lnc-article__more-grid .lnc-acard__media {
  border-radius: 0;
  aspect-ratio: 16 / 10;
}
.lnc-article__more-grid .lnc-acard__body {
  flex: 1;
  padding: 22px 24px 24px;
  gap: 10px;
}
.lnc-article__more-grid .lnc-acard__meta { font-weight: 500; font-size: 10px; color: var(--lnc-accent-deep); }
.lnc-article__more-grid .lnc-acard__meta .lnc-acard__cat { color: inherit; }
.lnc-article__more-grid .lnc-acard__title { font-size: 18px; line-height: 1.2; }
.lnc-article__more-grid .lnc-acard__more { margin-top: auto; padding-top: 16px; font-weight: 500; font-size: 10.5px; letter-spacing: .12em; }

/* ---- Mobile ---- */
@media (max-width: 749px) {
  .lnc-article__hero-frame { aspect-ratio: 16 / 11; }
  .lnc-article__body { font-size: 17px; }
  .lnc-article__more-grid { grid-template-columns: 1fr; }
  .lnc-article__more-head { flex-wrap: wrap; }
}
/* END_SECTION:lnc-article */

/* START_SECTION:lnc-awards (INDEX:24) */
.lnc-awards { padding-block: var(--pt, 40px) var(--pb, 40px); border-top: 1px solid var(--lnc-line); border-bottom: 1px solid var(--lnc-line); }
.lnc-awards__head { text-align: center; font-weight: 500; font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-muted); margin: 0 0 28px; }
.lnc-awards__row { display: grid; grid-template-columns: repeat(var(--cols, 4), 1fr); gap: 20px; }
.lnc-awards__item { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 12px; }
.lnc-awards__badge { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; }
.lnc-awards__badge img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; }
.lnc-awards__text { display: flex; flex-direction: column; gap: 4px; }
.lnc-awards__name { font-family: var(--lnc-font-display); font-weight: 600; font-size: 14px; color: var(--lnc-ink); }
.lnc-awards__detail { font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-awards__note { text-align: center; font-size: 9.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-taupe); margin: 24px 0 0; }
@media (max-width: 749px) {
  /* mobile.dc.html — compact recognition band: 2-up bordered text cards, no
     medal icons, 22px band padding, 28px above */
  .lnc-awards { margin-top: 28px; padding-block: 22px; }
  .lnc-awards__head { font-size: 9.5px; letter-spacing: .18em; margin-bottom: 16px; }
  .lnc-awards__row { grid-template-columns: 1fr 1fr; gap: 10px; }
  .lnc-awards__item { gap: 0; border: 1px solid var(--lnc-line-soft); border-radius: 10px; padding: 12px; justify-content: center; }
  .lnc-awards__badge { display: none; }
  .lnc-awards__name { font-size: 14px; }
  .lnc-awards__detail { font-size: 8.5px; margin-top: 4px; }
  .lnc-awards__note { font-size: 9px; margin-top: 14px; }
}
/* END_SECTION:lnc-awards */

/* START_SECTION:lnc-blog (INDEX:25) */
.lnc-blog { padding-block: var(--pt, 44px) var(--pb, 72px); }

.lnc-blog__head { margin-bottom: 44px; }
.lnc-blog__eyebrow {
  margin: 0;
  font-family: var(--lnc-font-mono);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--lnc-accent-deep);
}
.lnc-blog__title {
  margin: 16px 0 0;
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: clamp(34px, 4.4vw, 56px);
  line-height: .98;
  letter-spacing: -.03em;
  color: var(--lnc-ink);
}
.lnc-blog__title-accent {
  font-family: var(--lnc-font-serif);
  font-style: italic;
  font-weight: 500;
  color: var(--lnc-accent-deep);
}
.lnc-blog__intro {
  margin: 16px 0 0;
  font-family: var(--lnc-font-serif);
  font-size: clamp(15px, 1.4vw, 17.5px);
  line-height: 1.6;
  color: var(--lnc-body);
  max-width: 52ch;
}
.lnc-blog__intro p { margin: 0 0 10px; }
.lnc-blog__intro p:last-child { margin-bottom: 0; }

.lnc-blog__grid {
  display: grid;
  grid-template-columns: repeat(var(--lnc-blog-cols, 3), minmax(0, 1fr));
  gap: 18px;
}

/* Design's bordered white grid card — scoped so the base .lnc-acard masthead style is untouched. */
.lnc-blog .lnc-acard {
  height: 100%;
  background: var(--lnc-white);
  border: 1px solid var(--lnc-line);
  border-radius: var(--lnc-radius);
  overflow: clip;
  transition: transform .25s ease, box-shadow .25s ease;
}
.lnc-blog .lnc-acard:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(27, 40, 50, .10);
}
.lnc-blog .lnc-acard__media {
  border-radius: 0;
  aspect-ratio: 16 / 10;
}
.lnc-blog .lnc-acard__body {
  flex: 1;
  padding: 22px 24px 24px;
  gap: 10px;
}
.lnc-blog .lnc-acard__meta { font-weight: 500; font-size: 10px; color: var(--lnc-accent-deep); }
.lnc-blog .lnc-acard__meta .lnc-acard__cat { color: inherit; }
.lnc-blog .lnc-acard__title { font-size: 19px; line-height: 1.2; letter-spacing: -.015em; }
.lnc-blog .lnc-acard__excerpt { flex: 1 1 auto; font-size: 14.5px; }
.lnc-blog .lnc-acard__more { margin-top: 16px; font-weight: 500; font-size: 10.5px; letter-spacing: .12em; }

.lnc-blog__pagination { margin-top: clamp(32px, 4vw, 48px); }
.lnc-blog__empty {
  margin: 0;
  font-family: var(--lnc-font-serif);
  font-size: 17px;
  line-height: 1.6;
  color: var(--lnc-body);
}

@media (max-width: 989px) {
  .lnc-blog__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 749px) {
  .lnc-blog__grid { grid-template-columns: 1fr; }
  .lnc-blog .lnc-acard__body { padding: 20px 20px 22px; }
}
/* END_SECTION:lnc-blog */

/* START_SECTION:lnc-category-grid (INDEX:26) */
.lnc-cats { padding-block: var(--pt, 72px) var(--pb, 8px); }
.lnc-cats__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.lnc-cats__h2 { margin-top: 12px; font-size: clamp(28px, 3.2vw, 36px); }
.lnc-cats__viewall { white-space: nowrap; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; display: inline-flex; align-items: center; gap: 6px; }
.lnc-cats__grid { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: 20px; }
/* min-width:0 down the chain: the nowrap subtitle ("COTS · CHESTS · WARDROBES") otherwise
   sets the track's min-content width and pushes the second column off narrow phones. */
.lnc-cat, .lnc-cat__text, .lnc-cat__title, .lnc-cat__sub { min-width: 0; max-width: 100%; }
.lnc-cat { display: flex; align-items: stretch; min-height: 172px; text-decoration: none; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 16px; overflow: clip; transition: transform .25s var(--lnc-ease), box-shadow .25s var(--lnc-ease); }
.lnc-cat:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(27,40,50,.10); }
.lnc-cat__text { flex: 1; padding: 22px 4px 22px 22px; display: flex; flex-direction: column; justify-content: space-between; }
.lnc-cat__title { display: block; font-family: var(--lnc-font-display); font-weight: 600; font-size: 21px; line-height: 1.1; color: var(--lnc-ink); }
.lnc-cat__sub { display: block; margin-top: 6px; font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-cat__shop { display: inline-flex; align-items: center; gap: 6px; font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-cat__media { flex: 1; position: relative; background: var(--lnc-cloud); }
.lnc-cat__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: center bottom; mix-blend-mode: multiply; padding: 10px; }
.lnc-cat:hover .lnc-cat__shop { gap: 10px; }
@media (max-width: 989px) { .lnc-cats__grid { grid-template-columns: minmax(0,1fr) minmax(0,1fr); } }
@media (max-width: 749px) {
  /* mobile.dc.html — 2-up cards, text above image, no view-all */
  .lnc-cats { padding-block: 26px 0; }
  .lnc-cats__head { margin-bottom: 16px; }
  .lnc-cats .lnc-eyebrow { font-size: 10.5px; letter-spacing: .18em; }
  .lnc-cats .lnc-cats__h2 { margin-top: 9px; font-size: 26px; }
  .lnc-cats__viewall { display: none; }
  .lnc-cats__grid { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 12px; }
  .lnc-cat { flex-direction: column; min-height: 0; border-radius: 14px; }
  .lnc-cat:hover { transform: none; box-shadow: none; }
  .lnc-cat__text { flex: 0 0 auto; padding: 14px 14px 8px; }
  .lnc-cat__title { font-size: 15.5px; line-height: 1.15; }
  .lnc-cat__sub { margin-top: 5px; font-size: 8.5px; letter-spacing: .08em; }
  .lnc-cat__shop { display: none; }
  .lnc-cat__media { flex: 0 0 auto; height: 104px; border-top: 1px solid var(--lnc-line-soft); }
  .lnc-cat__media img { padding: 8px; object-position: center; }
}
/* END_SECTION:lnc-category-grid */

/* START_SECTION:lnc-closing-cta (INDEX:27) */
.lnc-pcta { background: var(--lnc-ink); }
.lnc-pcta__wrap { max-width: 1280px; margin: 0 auto; padding: 72px 40px; text-align: center; }
.lnc-pcta__h { margin: 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(30px, 3.4vw, 38px); letter-spacing: -.025em; color: var(--lnc-cream, #F4EEE4); }
.lnc-pcta__accent { font-family: var(--lnc-font-serif); font-style: italic; font-weight: 500; color: var(--lnc-accent-on-dark, #8CC0BA); }
.lnc-pcta__sub { margin: 14px auto 0; font-family: var(--lnc-font-serif); font-size: 17px; line-height: 1.6; color: #C7CDD2; max-width: 44ch; }
.lnc-pcta__ctas { display: flex; gap: 14px; justify-content: center; margin-top: 28px; flex-wrap: wrap; }
/* base.css paints .lnc-cta as the ink pill and loads AFTER compiled section CSS —
   scope through .lnc-pcta (0,2,0) so the design's cream/outline variants win. */
.lnc-pcta .lnc-pcta__buy { font-family: var(--lnc-font-body); font-weight: 700; font-size: 15px; color: var(--lnc-ink); background: var(--lnc-cream, #F4EEE4); border: 0; border-radius: var(--lnc-radius-pill); padding: 16px 32px; cursor: pointer; }
/* design lnc-cta-ink wipe: ink fill sweeps in, text goes cream */
.lnc-pcta .lnc-pcta__buy::before { background: var(--lnc-ink-deep, #12242A); inset: 2px; border-radius: var(--lnc-radius-pill); }
.lnc-pcta .lnc-pcta__buy:is(:hover, :focus-visible) { color: var(--lnc-cream, #F4EEE4) !important; }
.lnc-pcta .lnc-pcta__explore { font-family: var(--lnc-font-body); font-weight: 700; font-size: 15px; color: var(--lnc-cream, #F4EEE4); background: transparent; border: 1.5px solid rgba(244,238,228,.4); border-radius: var(--lnc-radius-pill); padding: 15px 30px; text-decoration: none; }
/* design lnc-cta-cream wipe: cream fill sweeps in, text goes ink */
.lnc-pcta .lnc-pcta__explore::before { background: var(--lnc-cream, #F4EEE4); }
.lnc-pcta .lnc-pcta__explore:is(:hover, :focus-visible) { color: var(--lnc-ink-deep, #12242A) !important; border-color: var(--lnc-cream, #F4EEE4) !important; }
.lnc-pcta__sep { background: var(--lnc-paper); display: flex; align-items: center; justify-content: center; gap: 18px; padding: 34px 40px; }
.lnc-pcta__sepline { height: 1px; width: 90px; background: var(--lnc-accent-line); }
/* Design mobile-product 14: buttons stack full width; the sticky bar is the
   shortcut, this section is the invitation. */
@media (max-width: 749px) {
  .lnc-pcta__wrap { padding: 34px 22px 38px; }
  .lnc-pcta__h { font-size: 30px; line-height: 1.06; }
  .lnc-pcta__sub { margin-top: 12px; font-size: 15.5px; }
  .lnc-pcta__ctas { flex-direction: column; gap: 10px; margin-top: 22px; }
  .lnc-pcta .lnc-pcta__buy { width: 100%; height: 54px; padding: 0; display: flex; align-items: center; justify-content: center; font-size: 15.5px; }
  .lnc-pcta .lnc-pcta__explore { width: 100%; height: 52px; padding: 0; display: flex; align-items: center; justify-content: center; font-size: 15px; }
  .lnc-pcta__sep { padding: 26px 24px; }
}
/* END_SECTION:lnc-closing-cta */

/* START_SECTION:lnc-collection-hero (INDEX:28) */
.lnc-colhero { padding-top: var(--pt, 44px); }
.lnc-colhero__wrap { max-width: var(--lnc-wrap, 1280px); margin: 0 auto; padding-inline: clamp(20px, 3.5vw, 40px); }
.lnc-colhero__crumb { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-colhero__crumb a { color: inherit; }
/* Design: the collection breadcrumb is one uniform #8A7E6C — no tinted current
   segment. (The PDP breadcrumb DOES ink its last segment; that one is correct
   as-is.) */
.lnc-colhero__crumb-cur { color: inherit; }
.lnc-colhero__row { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-top: 20px; flex-wrap: wrap; }
.lnc-colhero__lead { max-width: 64ch; }
.lnc-colhero__h { margin: 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(38px, 5vw, 52px); line-height: 1; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-colhero__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-colhero__sub { margin: 16px 0 0; font-family: var(--lnc-font-serif); font-size: 17.5px; line-height: 1.6; color: var(--lnc-body); }
.lnc-colhero__chips { display: flex; gap: 8px; flex-wrap: wrap; padding-bottom: 4px; }
.lnc-colhero__chip { display: inline-flex; align-items: center; gap: 7px; text-decoration: none; font-family: var(--lnc-font-body); font-weight: 700; font-size: 12.5px; color: var(--lnc-ink-deep); background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 9px 16px; }

/* Mobile (design "02 — Collection banner"): H1 36px, description 16px, chips
   become a one-line scroll rail with a peeking last chip — wrapping chips were
   stacking three rows tall and pushing products two screens down. */
@media (max-width: 749px) {
  /* The filter bar renders inside this section but must stay pinned for the whole
     page, not just this section's 320-odd px. `display: contents` drops the
     section wrapper's box so the bar becomes a direct child of #MainContent and
     its sticky containing block is the full page — "header + facet bar are one
     sticky stack" (design 03). The wrapper carries no styling of its own. */
  .lnc-colhero-section { display: contents; }
  .lnc-colhero { padding-top: 18px; }
  .lnc-colhero__crumb { font-size: 9.5px; }
  .lnc-colhero__row { margin-top: 12px; gap: 0; }
  .lnc-colhero__h { font-size: 36px; }
  .lnc-colhero__sub { margin-top: 14px; font-size: 16px; line-height: 1.62; }
  .lnc-colhero__chips { flex-wrap: nowrap; overflow-x: auto; width: 100%; margin-top: 16px; padding-bottom: 2px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .lnc-colhero__chips::-webkit-scrollbar { display: none; }
  .lnc-colhero__chip { flex: 0 0 auto; height: 40px; padding: 0 16px; font-size: 13px; }
}
/* END_SECTION:lnc-collection-hero */

/* START_SECTION:lnc-collection-promo (INDEX:29) */
.lnc-cpromo { padding-block: var(--pt, 0px) var(--pb, 72px); }
.lnc-cpromo__wrap { max-width: var(--lnc-page-width, 1280px); margin: 0 auto; padding-inline: var(--lnc-gutter, 40px); }
.lnc-cpromo__card { position: relative; overflow: hidden; display: grid; grid-template-columns: 1.1fr 1fr; background: var(--lnc-ink); border-radius: 20px; }
.lnc-cpromo__card--media-left { grid-template-columns: 1fr 1.1fr; }
.lnc-cpromo__card--media-left .lnc-cpromo__text { order: 2; }
.lnc-cpromo__card--media-left .lnc-cpromo__media { order: 1; }
.lnc-cpromo__text { padding: clamp(36px, 4.5vw, 56px); display: flex; flex-direction: column; justify-content: center; position: relative; z-index: 2; }
.lnc-cpromo__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--lnc-accent-on-dark); }
.lnc-cpromo__h { margin: 16px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(30px, 3.6vw, 40px); line-height: 1.04; letter-spacing: -.025em; color: var(--lnc-cream); }
.lnc-cpromo__accent { font-weight: 500; color: var(--lnc-accent-on-dark); }
.lnc-cpromo__body { margin: 16px 0 0; font-family: var(--lnc-font-serif); font-size: 16px; line-height: 1.65; color: var(--lnc-on-dark-soft); max-width: 42ch; }
.lnc-cpromo__cta { align-self: flex-start; margin-top: 26px; }
.lnc-cpromo__media { position: relative; min-height: 320px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; padding-block: 40px; }
.lnc-cpromo__glow { position: absolute; inset: 0; background: radial-gradient(ellipse at 45% 55%, color-mix(in srgb, var(--lnc-accent) 38%, transparent), transparent 68%); }
/* Catalogue shots are white-background JPEGs — frame them as a deliberate rounded product
   card (white tile + radius + soft shadow) instead of a raw rectangle floating on the ink. */
.lnc-cpromo__img { position: relative; width: min(64%, 380px); height: auto; aspect-ratio: 1; object-fit: contain; background: var(--lnc-white); border-radius: 18px; padding: 4.5%; box-shadow: 0 30px 50px rgba(0,0,0,.35); }
.lnc-cpromo__pcard { position: relative; display: inline-flex; align-items: baseline; gap: 12px; text-decoration: none; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); border-radius: 999px; padding: 9px 18px; transition: background .2s ease; }
.lnc-cpromo__pcard:hover { background: rgba(255,255,255,.12); }
.lnc-cpromo__pname { font-family: var(--lnc-font-body); font-weight: 700; font-size: 13.5px; color: var(--lnc-cream); }
.lnc-cpromo__pprice { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12.5px; color: var(--lnc-accent-on-dark); }
@media (max-width: 749px) {
  /* Design "08 — Flagship promo band": image band on top, copy beneath,
     heading 29px, CTA full-width so it reads as the section's one action. */
  .lnc-cpromo__card, .lnc-cpromo__card--media-left { grid-template-columns: 1fr; }
  /* Image first on mobile whichever side it takes on desktop — the desktop
     alternation is a rhythm that reads as inconsistency in one column. */
  .lnc-cpromo__text { order: 2; }
  .lnc-cpromo__media { order: 1; }
  /* Design measurements, 390px phone: 350-wide card, 210px image band, copy
     block padded 22px so eyebrow / heading / body / CTA all share one 306px
     column. Ours was padded 36px while the product pill was inset only 13px, so
     the pill visibly overhung the copy on both sides. Everything below now lines
     up on the same 22px gutter. */
  .lnc-cpromo__media { min-height: 0; padding: 17px 22px 0; gap: 12px; }
  .lnc-cpromo__img { width: auto; max-width: 100%; height: 176px; padding: 12px; border-radius: 14px; box-shadow: 0 18px 32px rgba(0,0,0,.3); }
  .lnc-cpromo__pcard { width: 100%; justify-content: center; }
  .lnc-cpromo__text { padding: 18px 22px 26px; }
  .lnc-cpromo__h { font-size: 29px; }
  .lnc-cpromo__cta { align-self: stretch; justify-content: center; margin-top: 20px; }
}
/* END_SECTION:lnc-collection-promo */

/* START_SECTION:lnc-collection (INDEX:30) */
.lnc-col { padding-block: var(--pt, 30px) var(--pb, 64px); }

/* Sort bar (lives at the top of the grid column, per design) */
/* Optional grid header (sale page eyebrow + heading) */
.lnc-col__header { margin-bottom: 26px; }
.lnc-col__header-eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-col__header-h { margin: 12px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: 36px; letter-spacing: -.025em; color: var(--lnc-ink); }
.lnc-col__header-accent { font-weight: 500; color: var(--lnc-accent-deep); }

.lnc-col__sortbar { display: block; }
.lnc-col__sortbar .facets-vertical-form { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 18px; }
.lnc-col__count { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); display: inline-flex; align-items: center; gap: 10px; }
.lnc-col__sort { display: flex; align-items: center; gap: 10px; }
.lnc-col__sortlabel { font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-col__select { position: relative; display: inline-flex; align-items: center; }
.lnc-col__sortselect { -webkit-appearance: none; appearance: none; font-family: var(--lnc-font-body); font-weight: 600; font-size: 13.5px; color: var(--lnc-ink); background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 10px; padding: 9px 34px 9px 12px; outline: none; cursor: pointer; }
.lnc-col__caret { position: absolute; right: 11px; pointer-events: none; display: inline-flex; }
.lnc-col__caret svg { width: 11px; height: 11px; }

/* Layout */
.lnc-col__layout { max-width: var(--lnc-wrap, 1280px); margin: 0 auto; padding-inline: clamp(20px, 3.5vw, 40px); display: grid; grid-template-columns: 248px minmax(0, 1fr); gap: 36px; align-items: start; }
.lnc-col__main { min-width: 0; }
.lnc-col__filters { position: sticky; top: 106px; }

/* Restyle Dawn vertical facets to Premium look */
.lnc-col__filters .facets-container { background: transparent; }
/* Flex column so groups can be visually reordered: the app emits price first,
   the design puts Type first and Price last. The details sit inside
   #FacetsWrapperDesktop, not directly under the form. */
.lnc-col__filters .facets__form-vertical { display: flex; flex-direction: column; }
.lnc-col__filters #FacetsWrapperDesktop { display: flex; flex-direction: column; }
.lnc-col__filters .facets__disclosure-vertical[id*="price"] { order: 90; }
/* the slider's $ labels already state the range — drop Dawn's sentence */
.lnc-col__filters .facets__header-vertical .facets__selected { display: none; }
.lnc-col__filters .facets__reset { display: none; }
/* Mobile: Dawn's drawer facets take over below 990px; the vertical form is desktop-only */
@media (min-width: 990px) { .lnc-col__filters .mobile-facets__wrapper { display: none; } }
@media (max-width: 989px) {
  .lnc-col__filters .facets__form-vertical { display: none; }
  .lnc-col__filters .mobile-facets__wrapper { display: block; margin: 0 0 4px; }
  .lnc-col__filters .mobile-facets__open { display: inline-flex; align-items: center; gap: 8px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 13px; color: var(--lnc-ink-deep); background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 10px 18px; cursor: pointer; }
  .lnc-col__filters .mobile-facets__open-label { font-size: 13px; }
  /* drawer surface on brand */
  .mobile-facets__inner { background: var(--lnc-paper); }
  .mobile-facets__header { border-bottom: 1px solid var(--lnc-line); }
  .mobile-facets__heading { font-family: var(--lnc-font-display); font-weight: 600; color: var(--lnc-ink); }
  .mobile-facets__summary .svg-wrapper { color: var(--lnc-ink); }
  .mobile-facets .facets__summary-label, .mobile-facets__summary span { font-family: var(--lnc-font-body); color: var(--lnc-ink); }
  .mobile-facets__footer { background: var(--lnc-paper); border-top: 1px solid var(--lnc-line); }
  .mobile-facets__footer .button:not(.button--secondary) { background: var(--lnc-ink); color: var(--lnc-cream); border-radius: var(--lnc-radius-pill); }
  .mobile-facets__footer .button--secondary, .mobile-facets__clear { border-radius: var(--lnc-radius-pill); }
}
.lnc-col__filters .facets__disclosure-vertical { border-top: 1px solid var(--lnc-line); margin-top: 18px; padding-top: 0; }
.lnc-col__filters .facets__summary { list-style: none; cursor: default; pointer-events: none; padding: 16px 0 8px; }
.lnc-col__filters .facets__summary::-webkit-details-marker { display: none; }
.lnc-col__filters .facets__summary > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.lnc-col__filters .facets__summary-label { font-family: var(--lnc-font-display); font-weight: 600; font-size: 14.5px; color: var(--lnc-ink); }
.lnc-col__filters .facets__summary .facets__selected,
.lnc-col__filters .facets__and-helptext,
.lnc-col__filters .facets__summary .icon-caret { display: none; }
.lnc-col__filters .facets__display-vertical { padding: 0 0 6px; box-shadow: none; border: none; background: transparent; position: static; }
.lnc-col__filters .facets-wrap-vertical { border: none; padding: 0; margin: 0; }
.lnc-col__filters .facets__list--vertical { display: flex; flex-direction: column; gap: 2px; }
.lnc-col__filters .facets__item { margin: 0; }
/* Curated Category group (lnc-category-filter snippet) — link rows, count right-aligned */
.lnc-col__filters .lnc-catfilter__list { margin: 0; padding: 0 0 6px; }
.lnc-col__filters .lnc-catfilter__link { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 6px 0; font-family: var(--lnc-font-body); font-size: 14px; color: var(--lnc-body); text-decoration: none; }
.lnc-col__filters .lnc-catfilter__link:hover .lnc-catfilter__label { color: var(--lnc-ink); text-decoration: underline; text-underline-offset: 3px; }
.lnc-col__filters .lnc-catfilter__count { font-family: var(--lnc-font-mono); font-size: 11.5px; color: var(--lnc-muted); }
.lnc-col__filters .facet-checkbox { display: flex; align-items: center; gap: 10px; padding: 6px 0; font-family: var(--lnc-font-body); font-size: 14px; color: var(--lnc-body); cursor: pointer; }
.lnc-col__filters .facet-checkbox:hover { color: var(--lnc-ink); }
.lnc-col__filters .facet-checkbox input[type="checkbox"] { position: absolute; opacity: 0; width: 17px; height: 17px; margin: 0; cursor: pointer; }
.lnc-col__filters .facet-checkbox > svg,
.lnc-col__filters .facet-checkbox > .svg-wrapper { display: none; } /* hide Dawn's square + checkmark; box drawn on __text::before/::after */
/* flex-start + label flex:1 — NOT space-between: with the colour dot as a third
   child, space-between floated the label to the middle of the row with dead
   space either side (owner screenshot). Design row: box · (dot) · label · count
   hard right, 6px vertical padding, ~33px tall. */
.lnc-col__filters .facet-checkbox__text { flex: 1; display: flex; align-items: center; justify-content: flex-start; gap: 0; position: relative; padding-left: 27px; min-height: 21px; }
.lnc-col__filters .facet-checkbox__text-label { flex: 0 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* bare right-aligned count, no parens (design) */
.lnc-col__filters .facet-count { flex: 0 0 auto; margin-left: auto; padding-left: 8px; font-family: var(--lnc-font-mono); font-size: 10.5px; color: #A89F92; }
/* colour filter values get a real dot (design filter sheet "Colour" chips) —
   sized so the row stays the standard height */
.lnc-col__filters .facet-dot { display: inline-block; flex: 0 0 auto; align-self: center; width: 20px; height: 20px; border-radius: 50%; box-shadow: 0 0 0 1px var(--lnc-line); margin-right: 9px; }
.lnc-col__filters .facet-checkbox__text-label { font-family: var(--lnc-font-body); font-size: 14px; color: var(--lnc-body); transition: color .15s; }
.lnc-col__filters .facet-checkbox:hover .facet-checkbox__text-label { color: var(--lnc-ink); }
.lnc-col__filters .facet-checkbox.active .facet-checkbox__text-label { color: var(--lnc-ink); font-weight: 600; }
.lnc-col__filters .facet-checkbox__text::before { content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 17px; height: 17px; border-radius: 5px; border: 1.5px solid #C7BBA6; background: var(--lnc-white); transition: background .18s, border-color .18s; } /* #C7BBA6 per design (no matching --lnc-* token; --lnc-taupe is #B2A793) */
.lnc-col__filters .facet-checkbox input[type="checkbox"]:checked + .facet-checkbox__text::before,
.lnc-col__filters .facet-checkbox.active .facet-checkbox__text::before { background: var(--lnc-accent); border-color: var(--lnc-accent); }
.lnc-col__filters .facet-checkbox__text::after { content: ''; position: absolute; left: 5px; top: 50%; width: 7px; height: 4px; border-left: 2px solid var(--lnc-white); border-bottom: 2px solid var(--lnc-white); transform: translateY(-70%) rotate(-45deg); opacity: 0; transition: opacity .15s; }
.lnc-col__filters .facet-checkbox input[type="checkbox"]:checked + .facet-checkbox__text::after,
.lnc-col__filters .facet-checkbox.active .facet-checkbox__text::after { opacity: 1; }
.lnc-col__filters .facet-checkbox.active { color: var(--lnc-ink); font-weight: 600; }
/* "Filter" heading row: mono label left, Clear all right (design: 11px/.16em + 10px/.08em) */
.lnc-col__filters .active-facets.active-facets-desktop { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
/* Dawn also ships its own mobile chip row (medium-hide large-up-hide), which
   duplicated our [data-lnc-mchips] rail below 750px. The rail is built from the
   desktop row, so this one is pure duplication — hide it at every width. */
.lnc-col__filters .active-facets.active-facets-mobile { display: none; }
.lnc-col__filters .active-facets-vertical-filter { display: flex; width: 100%; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0; }
.lnc-col__filters .facets__heading--vertical { margin: 0; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: var(--lnc-muted); }
/* Active-filter chips (design toolbar chips: accent-wash pill, 12px/600, accent-deep ×) */
.lnc-col__filters .active-facets__button { display: inline-flex; margin: 0; padding: 0; text-decoration: none; }
.lnc-col__filters .active-facets__button--light .active-facets__button-inner { font-family: var(--lnc-font-body); font-weight: 600; font-size: 12px; color: var(--lnc-ink-deep); background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 6px 12px; text-transform: none; letter-spacing: 0; box-shadow: none; min-height: 0; min-width: 0; display: inline-flex; align-items: center; gap: 7px; }
.lnc-col__filters .active-facets__button:hover .active-facets__button-inner { box-shadow: none; border-color: var(--lnc-accent); }
.lnc-col__filters .active-facets__button--light .active-facets__button-inner .svg-wrapper { color: var(--lnc-accent-deep); width: 12px; height: 12px; display: inline-flex; }
.lnc-col__filters .active-facets__button--light .active-facets__button-inner .svg-wrapper svg { width: 100%; height: 100%; }
/* Clear all (design: only shown when a filter is active) */
.lnc-col__filters .active-facets__button-wrapper { padding: 0; margin: 0; display: inline-flex; }
.lnc-col__filters .active-facets__button-wrapper * { font-size: inherit; letter-spacing: inherit; }
.lnc-col__filters .active-facets:not(:has(.active-facets__button)) .active-facets__button-wrapper { display: none; }
.lnc-col__filters .active-facets__button-remove { margin: 0; padding: 0; font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-accent-deep); text-decoration: none; }
.lnc-col__filters .active-facets__button-remove:hover { color: var(--lnc-accent); }
/* Availability (in/out of stock) adds noise, not value, for this catalogue — hidden.
   Re-enable by deleting this rule; richer filters (colour, type, brand) come from the
   Search & Discovery app's storewide filter config. */
#main-collection-filters details[id^="Details-filter.v.availability"] { display: none; }
/* Price range (Dawn price-facet), restyled to the sort-select recipe: white / --lnc-line / radius 10 / 9px 12px */
.lnc-col__filters .facets__header-vertical { padding: 0 0 10px; font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); border: none; }
.lnc-col__filters .facets__price { display: flex; align-items: center; gap: 6px; padding: 0 0 6px; }
.lnc-col__filters .facets__price .field { flex: 1; min-width: 0; display: flex; align-items: center; }
.lnc-col__filters .facets__price .field__input { width: 100%; font-family: var(--lnc-font-body); font-weight: 600; font-size: 13.5px; color: var(--lnc-ink); background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 10px; padding: 9px 12px; box-shadow: none; outline: none; }
.lnc-col__filters .facets__price .field__input:focus { border-color: var(--lnc-accent); }
/* Dawn draws its own dark square ring on .field::after — kill it so only our bordered input shows */
.lnc-col__filters .facets__price .field::before,
.lnc-col__filters .facets__price .field::after { display: none; }
.lnc-col__filters .facets__price .field-currency { font-family: var(--lnc-font-body); font-size: 13px; color: var(--lnc-muted); }
.lnc-col__filters .facets__price .field__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* Dual-thumb price slider (fields below stay editable and remain facets.js's source of truth) */
/* 44px tall so the $ labels (top:24) clear the min/max fields below — at 34px
   they overlapped the field tops (owner screenshot) */
.lnc-pslider { position: relative; height: 44px; margin: 4px 2px 0; }
.lnc-pslider__track { position: absolute; left: 0; right: 0; top: 12px; height: 4px; border-radius: 4px; background: var(--lnc-line); }
/* display:block beats Dawn's div:empty{display:none} — this div is empty */
.lnc-pslider__track > .lnc-pslider__fill { display: block; position: absolute; top: 0; height: 100%; border-radius: 4px; background: var(--lnc-accent); }
.lnc-pslider__thumb { position: absolute; left: 0; right: 0; top: 4px; width: 100%; margin: 0; height: 20px; background: transparent; -webkit-appearance: none; appearance: none; pointer-events: none; }
.lnc-pslider__thumb::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; pointer-events: auto; width: 18px; height: 18px; border-radius: 50%; background: var(--lnc-white); border: 2px solid var(--lnc-accent); box-shadow: 0 2px 6px rgba(27,40,50,.18); cursor: grab; }
.lnc-pslider__thumb::-moz-range-thumb { pointer-events: auto; width: 16px; height: 16px; border-radius: 50%; background: var(--lnc-white); border: 2px solid var(--lnc-accent); box-shadow: 0 2px 6px rgba(27,40,50,.18); cursor: grab; }
.lnc-pslider__thumb::-moz-range-track { background: transparent; }
.lnc-pslider__labels { position: absolute; left: 0; right: 0; top: 24px; display: flex; justify-content: space-between; font-family: var(--lnc-font-mono); font-size: 10.5px; color: var(--lnc-muted); }
.lnc-col__filters .facets__price { margin-top: 12px; }
/* "Show more" toggle, kept in the mono voice */
.lnc-col__filters .button-show-more { margin: 4px 0 0; padding: 0; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-accent-deep); text-decoration: none; background: none; border: none; cursor: pointer; }
.lnc-col__filters #ProductCount { display: none; }

/* Safety card */
.lnc-col__safety { background: var(--lnc-cloud); border: 1px solid var(--lnc-line); border-radius: 14px; padding: 20px; margin-top: 22px; }
.lnc-col__safety-head { display: flex; align-items: center; gap: 9px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-col__safety-head svg { color: var(--lnc-accent-deep); }
.lnc-col__safety-body { margin: 10px 0 0; font-family: var(--lnc-font-serif); font-size: 13.5px; line-height: 1.6; color: var(--lnc-body); }
.lnc-col__safety-link { display: inline-block; margin-top: 10px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); }

/* Buying-guide editorial tile (design: gradient wash card in grid position 3) */
.lnc-guide { height: 100%; min-height: 340px; display: flex; flex-direction: column; justify-content: space-between; background: linear-gradient(160deg, var(--lnc-accent-wash), var(--lnc-cloud) 75%); border: 1px solid var(--lnc-accent-line); border-radius: 14px; padding: 28px 26px; }
.lnc-guide__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-guide__h { margin-top: 14px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 24px; line-height: 1.1; letter-spacing: -.02em; color: var(--lnc-ink); }
.lnc-guide__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-guide__p { margin: 12px 0 0; font-family: var(--lnc-font-serif); font-size: 14.5px; line-height: 1.65; color: var(--lnc-body); }
.lnc-col .lnc-guide__cta { align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; text-decoration: none; font-family: var(--lnc-font-body); font-weight: 700; font-size: 13px; color: var(--lnc-ink-deep); background: var(--lnc-white); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 11px 19px; margin-top: 16px; }

/* Grid */
.lnc-col__gridcol { position: relative; min-width: 0; }
.lnc-col__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.lnc-col__item { margin: 0; min-width: 0; }
.lnc-col__pagination { margin-top: 40px; }
.lnc-col__empty { text-align: center; padding: 64px 20px; border: 1px dashed #C7BBA6; border-radius: 14px; background: var(--lnc-cloud); } /* #C7BBA6 per design (no matching --lnc-* token) */
.lnc-col__empty-h { font-family: var(--lnc-font-display); font-weight: 600; font-size: 20px; color: var(--lnc-ink); }
.lnc-col__empty-p { margin: 10px 0 18px; font-family: var(--lnc-font-serif); font-size: 15px; color: var(--lnc-body); }
.lnc-col__empty .lnc-cta { padding: 12px 24px; font-size: 14px; }
.lnc-col__empty .lnc-cta-outline { box-shadow: inset 0 0 0 1px var(--lnc-accent); } /* design: 1px solid accent */

/* Mobile-only chrome: hidden at desktop widths */
.lnc-mbar, .lnc-mchips, .lnc-loadmore { display: none; }
.lnc-msheet[hidden] { display: none; }

/* Sort bottom sheet (only ever opened from the mobile toolbar) */
.lnc-msheet { position: fixed; inset: 0; z-index: 70; }
/* No fade — the design's sheets snap the scrim on (and a transition can render
   as never-dimmed if the compositor stalls); the panel still slides.
   display:block is load-bearing: Dawn's base.css hides EMPTY divs globally
   (div:empty{display:none}) and both the scrim and the drag handle are empty. */
.lnc-msheet .lnc-msheet__overlay { display: block; position: absolute; inset: 0; background: rgba(15,24,32,.55); }
.lnc-msheet__panel { position: absolute; left: 0; right: 0; bottom: 0; background: var(--lnc-paper); border-radius: 22px 22px 0 0; box-shadow: 0 -20px 50px rgba(15,24,32,.28); padding-bottom: calc(20px + env(safe-area-inset-bottom, 6px)); transform: translateY(105%); transition: transform .32s var(--lnc-ease); }
.lnc-msheet.is-open .lnc-msheet__panel { transform: translateY(0); }
.lnc-msheet .lnc-msheet__handle { display: block; width: 44px; height: 4px; border-radius: 99px; background: #D6CBB8; margin: 10px auto 2px; }
.lnc-msheet__head { display: flex; align-items: center; justify-content: space-between; padding: 8px 20px 12px; border-bottom: 1px solid var(--lnc-line); font-family: var(--lnc-font-display); font-weight: 600; font-size: 21px; letter-spacing: -.02em; color: var(--lnc-ink); }
.lnc-msheet__x { width: 44px; height: 44px; margin-right: -10px; display: inline-flex; align-items: center; justify-content: center; background: none; border: none; color: var(--lnc-ink); cursor: pointer; }
.lnc-msheet__x svg { width: 18px; height: 18px; }
.lnc-msheet__opts { padding: 6px 20px 0; }
.lnc-msheet__opt { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; padding: 16px 0; background: none; border: none; border-bottom: 1px solid #E7DFD1; font-family: var(--lnc-font-body); font-size: 16px; color: var(--lnc-body); cursor: pointer; text-align: left; }
.lnc-msheet__opt:last-child { border-bottom: none; }
.lnc-msheet__opt.is-active { font-weight: 700; color: var(--lnc-ink); }
.lnc-msheet__check { display: none; width: 22px; height: 22px; border-radius: 50%; background: var(--lnc-accent-deep); color: #fff; align-items: center; justify-content: center; flex: 0 0 auto; }
.lnc-msheet__check svg { width: 12px; height: 12px; }
.lnc-msheet__opt.is-active .lnc-msheet__check { display: inline-flex; }

@media (max-width: 989px) {
  .lnc-col__layout { grid-template-columns: minmax(0, 1fr); }
  .lnc-col__filters { position: static; }
  .lnc-col__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 749px) {
  .lnc-col { padding-top: 0; }
  .lnc-col__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }

  /* Design 03: the desktop count/sort row and the sidebar safety card go —
     count moves into the chips rail, sort into its sheet, and the safety card
     was pushing the first product two screens down. */
  /* .lnc-col ancestor needed: the element also carries Dawn's .facets class and
     component-facets.css (a later body stylesheet) sets .facets{display:block} —
     a bare class here ties and loses on order. */
  .lnc-col .lnc-col__sortbar { display: none; }
  .lnc-col .lnc-col__safety { display: none; }
  /* Dawn's own Filter pill stays functional (our toolbar proxies a click to it)
     but never renders */
  .lnc-col__filters summary.mobile-facets__open-wrapper { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

  /* Sticky toolbar, pinned under the 64px mobile header */
  .lnc-mbar { display: flex; align-items: center; gap: 8px; position: sticky; top: 64px; z-index: 30; background: color-mix(in srgb, var(--lnc-paper) 97%, transparent); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid var(--lnc-line); padding: 9px 20px; margin-inline: 0; }
  .lnc-mbar__filter { flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 44px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 14px; color: var(--lnc-cream); background: var(--lnc-ink); border: none; border-radius: var(--lnc-radius-pill); cursor: pointer; }
  .lnc-mbar__filter svg { width: 16px; height: 16px; }
  .lnc-mbar__count { font-family: var(--lnc-font-mono); font-size: 11px; font-weight: 600; color: var(--lnc-ink-deep); background: var(--lnc-spark); border-radius: 999px; padding: 1px 7px; }
  .lnc-mbar__sortbtn { flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 44px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 14px; color: var(--lnc-ink); background: var(--lnc-white); border: 1px solid #DDD0BC; border-radius: var(--lnc-radius-pill); cursor: pointer; min-width: 0; }
  .lnc-mbar__sortbtn span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .lnc-mbar__sortbtn svg { width: 14px; height: 14px; flex: 0 0 auto; }

  /* Applied chips rail — one line, scrolls, never wraps */
  .lnc-mchips { display: flex; align-items: center; gap: 8px; overflow-x: auto; padding: 12px 20px 0; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .lnc-mchips::-webkit-scrollbar { display: none; }
  .lnc-mchips[hidden] { display: none; }
  .lnc-mchips__count { flex: 0 0 auto; font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-muted); }
  .lnc-mchips__chip { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 7px; font-family: var(--lnc-font-body); font-size: 12.5px; font-weight: 600; color: var(--lnc-ink-deep); background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 10px 12px; cursor: pointer; }
  .lnc-mchips__chip span { color: var(--lnc-accent-deep); }
  .lnc-mchips__clear { flex: 0 0 auto; font-family: var(--lnc-font-body); font-size: 12.5px; color: var(--lnc-muted); text-decoration: underline; background: none; border: none; padding: 10px 4px; cursor: pointer; }

  /* Buying-guide tile: full width, after two complete rows (design position 5).
     The tile is DOM child 3; ordering the first four products to -1 floats them
     above it without a second Liquid insertion point. */
  .lnc-col__guide { grid-column: 1 / -1; }
  .lnc-col__item:not(.lnc-col__guide):nth-child(-n+5) { order: -1; }
  .lnc-guide { min-height: 0; padding: 22px 20px 24px; }

  /* Numbered pagination → Load more with progress (design 07) */
  .lnc-col__pagination { display: none; }
  .lnc-loadmore { display: block; text-align: center; padding: 26px 20px 6px; }
  .lnc-loadmore__count { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--lnc-muted); }
  .lnc-loadmore__bar { position: relative; width: 110px; height: 3px; background: var(--lnc-line); border-radius: 2px; margin: 10px auto 0; overflow: hidden; }
  .lnc-loadmore__bar span { position: absolute; inset: 0 auto 0 0; background: var(--lnc-accent); }
  .lnc-loadmore__btn { display: inline-flex; align-items: center; justify-content: center; margin-top: 18px; height: 52px; padding: 0 34px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 15px; color: var(--lnc-ink); border: 1px solid var(--lnc-ink); border-radius: var(--lnc-radius-pill); text-decoration: none; }
  .lnc-loadmore__btn.is-loading { opacity: .55; pointer-events: none; }

  /* Dawn's facets drawer, restyled into the design's bottom sheet. The
     #main-collection-filters id out-specifies component-facets.css, which
     loads after this compiled stylesheet. */
  #main-collection-filters .mobile-facets__inner { position: fixed; left: 0; right: 0; bottom: 0; top: auto; width: 100%; max-width: none; height: auto; max-height: 82dvh; background: var(--lnc-paper); border-radius: 22px 22px 0 0; box-shadow: 0 -20px 50px rgba(15,24,32,.28); transform: translateY(105%); transition: transform .34s var(--lnc-ease); display: flex; flex-direction: column; overflow: hidden; }
  #main-collection-filters .menu-opening .mobile-facets__inner { transform: translateY(0); }
  .js #main-collection-filters .disclosure-has-popup:not(.menu-opening) .mobile-facets__inner { transform: translateY(105%); }
  #main-collection-filters .mobile-facets__inner::before { content: ''; display: block; flex: 0 0 auto; width: 44px; height: 4px; border-radius: 99px; background: #D6CBB8; margin: 10px auto 2px; }
  #main-collection-filters .mobile-facets__header { border-bottom: 1px solid var(--lnc-line); padding: 6px 20px 12px; position: relative; }
  #main-collection-filters .mobile-facets__header-inner { display: block; text-align: left; }
  #main-collection-filters .mobile-facets__heading { font-family: var(--lnc-font-display); font-weight: 600; font-size: 21px; letter-spacing: -.02em; color: var(--lnc-ink); margin: 0; }
  #main-collection-filters .mobile-facets__count { margin: 2px 0 0; font-size: 12.5px; color: var(--lnc-muted); }
  /* No bottom padding: the sticky footer's `bottom: 0` resolves to the padding
     edge, so any padding here leaves a strip under the bar where list rows show
     through. The footer supplies its own bottom spacing. */
  #main-collection-filters .mobile-facets__main { flex: 1; overflow-y: auto; padding: 0 20px; }
  #main-collection-filters .mobile-facets__footer { flex: 0 0 auto; border-top: 1px solid var(--lnc-line); background: var(--lnc-paper); padding: 12px 20px calc(18px + env(safe-area-inset-bottom, 12px)); }

  /* ---- FLAT sheet (design): every group visible at once — no drill-in.
     Summaries become group headings; the submenus render statically. ---- */
  #main-collection-filters .mobile-facets__details { border-bottom: 1px solid #E7DFD1; }
  #main-collection-filters .mobile-facets__details:last-of-type { border-bottom: none; }
  #main-collection-filters .mobile-facets__summary { pointer-events: none; padding: 0; }
  #main-collection-filters .mobile-facets__summary > div { display: block; padding: 18px 0 2px; }
  #main-collection-filters .mobile-facets__summary > div > span:first-child { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-muted); }
  #main-collection-filters .mobile-facets__arrow { display: none; }
  #main-collection-filters .mobile-facets__submenu { position: static !important; transform: none !important; visibility: visible !important; opacity: 1 !important; width: 100%; height: auto; padding: 0; background: transparent; overflow: visible; display: block; box-shadow: none; border: 0; }
  #main-collection-filters .mobile-facets__close-button { display: none; }
  #main-collection-filters .mobile-facets__submenu .mobile-facets__footer { display: none; }
  /* Sort lives in its own sheet — hide the drawer's sort select */
  #main-collection-filters .mobile-facets__details[id^="Details-Mobile-SortBy"] { display: none; }

  /* Rows: single custom checkbox (the shared .facet-checkbox__text box), Dawn's
     square+checkmark svgs hidden — both were rendering, the "double checkbox". */
  #main-collection-filters .mobile-facets__list { padding: 4px 0 14px; }
  #main-collection-filters .mobile-facets__item { margin: 0; }
  #main-collection-filters .mobile-facets__label { display: flex; align-items: center; width: 100%; padding: 10px 0; margin: 0; }
  #main-collection-filters .mobile-facets__label > svg,
  #main-collection-filters .mobile-facets__label .svg-wrapper,
  #main-collection-filters .mobile-facets__label .mobile-facets__highlight { display: none; }
  #main-collection-filters .mobile-facets__checkbox { position: absolute; opacity: 0; width: 17px; height: 17px; margin: 0; }
  #main-collection-filters .mobile-facets .facet-checkbox__text { width: 100%; }
  #main-collection-filters .mobile-facets .facet-checkbox__text-label { font-size: 15px; }
  /* Checked state. The shared desktop rules key off `.facet-checkbox` + an
     ADJACENT `+ .facet-checkbox__text`; the mobile row is `.mobile-facets__label`
     and Dawn puts a highlight span and two svgs between the input and the text,
     so neither half matched and the box never filled — the filter applied, but
     the control the shopper tapped never changed. `~` for instant feedback,
     `.active` for the state the server re-renders with. */
  #main-collection-filters .mobile-facets__label .mobile-facets__checkbox:checked ~ .facet-checkbox__text::before,
  #main-collection-filters .mobile-facets__label.active .facet-checkbox__text::before { background: var(--lnc-accent); border-color: var(--lnc-accent); }
  #main-collection-filters .mobile-facets__label .mobile-facets__checkbox:checked ~ .facet-checkbox__text::after,
  #main-collection-filters .mobile-facets__label.active .facet-checkbox__text::after { opacity: 1; }
  #main-collection-filters .mobile-facets__label .mobile-facets__checkbox:checked ~ .facet-checkbox__text .facet-checkbox__text-label,
  #main-collection-filters .mobile-facets__label.active .facet-checkbox__text-label { color: var(--lnc-ink); font-weight: 600; }
  #main-collection-filters .mobile-facets .facets__price { margin-top: 14px; padding: 0 0 10px; }
  /* 16px minimum, or iOS Safari zooms the whole page the moment the shopper
     taps a price box — and never zooms back out. */
  #main-collection-filters .mobile-facets .facets__price .field__input { font-size: 16px; }
  /* the slider labels already show the range — Dawn's sentence doubles it */
  #main-collection-filters .mobile-facets__info { display: none; }

  /* Footer: Clear all as outline pill, primary flex-1 ink pill ("Show N results"
     text injected by JS).
     It is sticky INSIDE the padded scroll container, so without the negative
     margins its background box is inset 20px each side and stops 12px short of
     the sheet floor — it reads as a squared-off panel floating over the list,
     with rows showing through underneath. Bleed it to the sheet edges. */
  #main-collection-filters .mobile-facets__main > .mobile-facets__footer { display: flex; align-items: center; gap: 10px; margin: 0 -20px; }
  /* Last group clears the bar instead — scrollable, not hidden behind it. */
  #main-collection-filters .mobile-facets__details:last-of-type { padding-bottom: 8px; }
  #main-collection-filters .mobile-facets__main > .mobile-facets__footer .mobile-facets__clear-wrapper { flex: 0 0 auto; }
  #main-collection-filters .mobile-facets__main > .mobile-facets__footer .mobile-facets__clear { display: inline-flex; align-items: center; justify-content: center; height: 52px; padding: 0 22px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 15px; color: var(--lnc-ink); border: 1px solid var(--lnc-ink); border-radius: var(--lnc-radius-pill); text-decoration: none; }
  #main-collection-filters .mobile-facets__main > .mobile-facets__footer .button--primary { flex: 1; display: inline-flex; align-items: center; justify-content: center; height: 52px; margin: 0; font-family: var(--lnc-font-body); font-weight: 700; font-size: 15.5px; color: var(--lnc-cream); background: var(--lnc-ink); border: none; border-radius: var(--lnc-radius-pill); cursor: pointer; }
  #main-collection-filters .mobile-facets__main > .mobile-facets__footer .button--primary::after { box-shadow: none; }
  /* Header close X (injected by JS, proxies the drawer summary) */
  .lnc-fsheet-x { position: absolute; top: 2px; right: 10px; width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; background: none; border: none; color: var(--lnc-ink); cursor: pointer; }
  .lnc-fsheet-x svg { width: 18px; height: 18px; }
}
/* END_SECTION:lnc-collection */

/* START_SECTION:lnc-complete-set (INDEX:31) */
.lnc-cset__wrap { max-width: 1280px; margin: 0 auto; padding: 72px 40px 72px; }
.lnc-cset__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-cset__h { margin: 12px 0 24px; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(26px, 3vw, 30px); letter-spacing: -.025em; color: var(--lnc-ink); }
.lnc-cset__accent { font-family: var(--lnc-font-serif); font-style: italic; font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-cset__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.lnc-cset__card { background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 14px; overflow: hidden; transition: box-shadow .25s var(--lnc-ease, ease), transform .25s var(--lnc-ease, ease); }
.lnc-cset__card:hover { box-shadow: 0 18px 40px rgba(27,40,50,.10); transform: translateY(-3px); }
.lnc-cset__media { display: flex; align-items: center; justify-content: center; background: var(--lnc-white); aspect-ratio: 1/1; }
.lnc-cset__media img { width: 82%; height: 82%; object-fit: contain; mix-blend-mode: multiply; }
.lnc-cset__body { padding: 16px 18px; border-top: 1px solid var(--lnc-line-soft); }
.lnc-cset__title { display: block; font-family: var(--lnc-font-display); font-weight: 500; font-size: 15px; color: var(--lnc-ink); text-decoration: none; }
.lnc-cset__row { display: flex; align-items: center; gap: 8px; margin-top: 10px; }
.lnc-cset__price { font-family: var(--lnc-font-display); font-weight: 600; font-size: 15px; color: var(--lnc-ink); }
.lnc-cset__form, .lnc-cset__addform { display: contents; }
.lnc-cset__add { margin-left: auto; font-family: var(--lnc-font-body); font-weight: 700; font-size: 12px; color: var(--lnc-ink); background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 8px 15px; cursor: pointer; text-decoration: none; transition: transform .2s ease; }
.lnc-cset__add:hover { transform: translateY(-1px); }
@media (max-width: 899px) { .lnc-cset__wrap { padding: 48px 24px 48px; } .lnc-cset__grid { grid-template-columns: repeat(2, 1fr); } }
/* Design mobile-product 10: snap rail, 160px cards, third card peeks —
   the cut-off edge is what tells a thumb there's more. */
@media (max-width: 749px) {
  .lnc-cset__wrap { padding: 30px 0 24px; }
  .lnc-cset__eyebrow, .lnc-cset__h { padding-inline: var(--lnc-gutter, 20px); }
  .lnc-cset__h { margin: 9px 0 0; font-size: 25px; }
  .lnc-cset__grid { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; padding: 14px var(--lnc-gutter, 20px) 6px; }
  .lnc-cset__grid::-webkit-scrollbar { display: none; }
  .lnc-cset__card { flex: 0 0 170px; scroll-snap-align: start; }
  .lnc-cset__card:hover { transform: none; box-shadow: none; }
  .lnc-cset__body { padding: 12px 13px 14px; }
  .lnc-cset__title { font-size: 14.5px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .lnc-cset__row { margin-top: 9px; }
  .lnc-cset__price { font-size: 15px; }
  .lnc-cset__add { height: 34px; padding: 0 14px; display: inline-flex; align-items: center; font-size: 12.5px; background: transparent; border: 1px solid var(--lnc-ink); color: var(--lnc-ink); }
}
/* END_SECTION:lnc-complete-set */

/* START_SECTION:lnc-contact (INDEX:32) */
.lnc-contact { padding-block: var(--pt, 68px) var(--pb, 72px); }
.lnc-contact__head { max-width: 900px; margin: 0 auto 52px; text-align: center; }
.lnc-contact__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-contact__heading { margin: 20px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(40px, 4.6vw, 58px); line-height: 1; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-contact__accent { font-family: var(--lnc-font-serif); font-style: italic; font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-contact__subtitle { margin: 20px auto 0; font-family: var(--lnc-font-serif); font-size: 18px; line-height: 1.65; color: var(--lnc-body); max-width: 58ch; }

.lnc-contact__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 24px; align-items: start; }

.lnc-contact__panel { background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 16px; padding: 38px 40px; }
.lnc-contact__title { font-family: var(--lnc-font-display); font-weight: 600; font-size: 22px; color: var(--lnc-ink); }
.lnc-contact__intro { margin: 8px 0 0; font-family: var(--lnc-font-serif); font-size: 14.5px; color: var(--lnc-body); }

.lnc-contact__fields { display: grid; gap: 14px; margin-top: 24px; }
.lnc-contact__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.lnc-contact__field { display: flex; flex-direction: column; }
/* Labels are kept for accessibility but visually hidden — the design is placeholder-only. */
.lnc-contact__label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.lnc-contact__input,
.lnc-contact__select,
.lnc-contact__textarea {
  width: 100%; font-family: var(--lnc-font-body); font-size: 14.5px; color: var(--lnc-ink);
  background: var(--lnc-cloud); border: 1px solid var(--lnc-line); border-radius: 10px;
  padding: 14px 16px; outline: none; transition: border-color .2s ease;
}
.lnc-contact__input::placeholder,
.lnc-contact__textarea::placeholder { color: var(--lnc-muted); }
.lnc-contact__input:focus,
.lnc-contact__select:focus,
.lnc-contact__textarea:focus { border-color: var(--lnc-accent); }
.lnc-contact__select { font-weight: 600; font-size: 14px; cursor: pointer; padding: 14px 12px; }
.lnc-contact__textarea { line-height: 1.6; resize: vertical; }

.lnc-contact__foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 6px; flex-wrap: wrap; }
.lnc-contact__note { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); max-width: 42ch; }
.lnc-contact__submit { white-space: nowrap; font-size: 15px; padding: 15px 34px; }

.lnc-contact__sent { text-align: center; padding: 44px 20px; }
.lnc-contact__sent-icon { display: inline-flex; align-items: center; justify-content: center; width: 58px; height: 58px; border-radius: 50%; background: var(--lnc-accent-wash); color: var(--lnc-accent-deep); }
.lnc-contact__sent-icon svg { width: 26px; height: 26px; }
.lnc-contact__sent-title { margin-top: 20px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 24px; color: var(--lnc-ink); }
.lnc-contact__sent-copy { margin: 10px auto 0; font-family: var(--lnc-font-serif); font-size: 15.5px; line-height: 1.65; color: var(--lnc-body); max-width: 38ch; }
.lnc-contact__errors { margin-top: 16px; font-family: var(--lnc-font-body); font-size: 13.5px; color: var(--lnc-rust); }
.lnc-contact__errors ul { margin: 0; padding-left: 18px; }

.lnc-contact__aside { display: flex; flex-direction: column; gap: 16px; }
.lnc-contact__card { background: var(--lnc-cloud); border: 1px solid var(--lnc-line); border-radius: 16px; padding: 28px 30px; }
.lnc-contact__card-label { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-contact__card-value { margin-top: 10px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 18px; line-height: 1.25; color: var(--lnc-ink); }
.lnc-contact__card-value--lg { font-size: 22px; }
.lnc-contact__card-note { margin-top: 6px; font-family: var(--lnc-font-body); font-size: 13.5px; color: var(--lnc-body); }
.lnc-contact__dir { display: inline-block; margin-top: 12px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); text-decoration: none; }
.lnc-contact__aside-note { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); padding: 0 6px; }

@media (max-width: 749px) {
  .lnc-contact__grid { grid-template-columns: 1fr; }
  .lnc-contact__row { grid-template-columns: 1fr; }
  .lnc-contact__panel { padding: 28px 24px; }
}
/* END_SECTION:lnc-contact */

/* START_SECTION:lnc-cta-band (INDEX:33) */
/* The band is a rounded card inside the page (design: max-width 1280, radius 20, inner 76px 40px) */
.lnc-ctaband { padding-block: var(--pt, 16px) var(--pb, 80px); }
.lnc-ctaband__wrap { max-width: var(--lnc-wrap, 1280px); margin-inline: auto; padding-inline: var(--lnc-gutter); }
.lnc-ctaband__band { text-align: center; border-radius: 20px; padding: 76px 40px; }
.lnc-ctaband__band.lnc-ctaband--light { background: var(--lnc-accent-wash); color: var(--lnc-ink); }

/* Plain (no band): in-page centered CTA, design safety.html "Safety CTA" — max 900 incl. gutters */
.lnc-ctaband--flat .lnc-ctaband__wrap { max-width: 900px; }
.lnc-ctaband__band.lnc-ctaband--plain { background: transparent; border-radius: 0; padding: 0; }
.lnc-ctaband--plain .lnc-ctaband__eyebrow { color: var(--lnc-accent-deep); }
.lnc-ctaband--plain .lnc-ctaband__h { color: var(--lnc-ink); }
.lnc-ctaband--plain .lnc-serif { color: var(--lnc-accent-deep); }
.lnc-ctaband--plain .lnc-ctaband__sub { color: var(--lnc-body); font-size: 18px; max-width: 56ch; }
.lnc-ctaband--plain .lnc-ctaband__eyebrow + .lnc-ctaband__sub, .lnc-ctaband--plain .lnc-ctaband__h + .lnc-ctaband__sub { margin-top: 18px; }
.lnc-ctaband--plain .lnc-ctaband__sub:first-child { margin-top: 0; }
.lnc-ctaband--plain .lnc-ctaband__ctas { gap: 12px; margin-top: 26px; }
.lnc-ctaband--plain .lnc-ctaband__cta1 { font-size: 15px; padding: 15px 30px; }
.lnc-ctaband--plain .lnc-ctaband__cta2 { font-size: 15px; padding: 14px 28px; }

/* Eyebrow — mono, wide tracking (kept from the design at .24em) */
.lnc-ctaband__eyebrow { margin: 0; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .24em; text-transform: uppercase; }
.lnc-ctaband__band.lnc-bg-ink .lnc-ctaband__eyebrow { color: var(--lnc-accent-on-dark); }
.lnc-ctaband--light .lnc-ctaband__eyebrow { color: var(--lnc-accent-deep); }

/* Heading — Outfit, large. Colour set explicitly (do NOT rely on base .lnc-h2). */
.lnc-ctaband__h { margin: 20px auto 0; max-width: 22ch; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(36px, 4.4vw, 56px); line-height: 1.03; letter-spacing: -.03em; }
.lnc-ctaband__band.lnc-bg-ink .lnc-ctaband__h { color: var(--lnc-cream); }
.lnc-ctaband--light .lnc-ctaband__h { color: var(--lnc-ink); }

/* Italic accent word (Newsreader) inside the heading */
.lnc-ctaband__h .lnc-serif { font-weight: 500; }
.lnc-ctaband__band.lnc-bg-ink .lnc-serif { color: var(--lnc-accent-on-dark); }
.lnc-ctaband--light .lnc-serif { color: var(--lnc-accent-deep); }

/* Optional subtext — Newsreader */
.lnc-ctaband__sub { margin: 18px auto 0; max-width: 46ch; font-family: var(--lnc-font-serif); font-size: clamp(15px, 1.5vw, 18px); line-height: 1.65; }
.lnc-ctaband__band.lnc-bg-ink .lnc-ctaband__sub { color: var(--lnc-on-dark-soft); }
.lnc-ctaband--light .lnc-ctaband__sub { color: var(--lnc-body); }

/* Buttons — design: primary cream pill 16px 32px, secondary translucent-cream outline 14.5px 30px, both 15px text */
.lnc-ctaband__ctas { display: flex; gap: 14px; justify-content: center; margin-top: 32px; flex-wrap: wrap; }
.lnc-ctaband__cta1 { font-size: 15px; padding: 16px 32px; }
.lnc-ctaband__cta2 { font-size: 15px; padding: 14.5px 30px; }
.lnc-ctaband__band.lnc-bg-ink .lnc-ctaband__cta2 { box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--lnc-cream) 40%, transparent); }

/* Light/plain band: the primary button becomes solid ink so it stays legible on the wash */
:is(.lnc-ctaband--light, .lnc-ctaband--plain) .lnc-cta-ink { color: var(--lnc-cream); background: var(--lnc-ink); }
:is(.lnc-ctaband--light, .lnc-ctaband--plain) .lnc-cta-ink::before { background: var(--lnc-accent-deep); }
:is(.lnc-ctaband--light, .lnc-ctaband--plain) .lnc-cta-ink:is(:hover, :focus-visible) { color: var(--lnc-white); }
/* Light/plain band: the secondary outline reads in accent tones instead of cream */
.lnc-ctaband--light .lnc-cta-cream { color: var(--lnc-accent-deep); box-shadow: inset 0 0 0 1.5px var(--lnc-accent-line); }
.lnc-ctaband--plain .lnc-cta-cream { color: var(--lnc-accent-deep); box-shadow: inset 0 0 0 1px var(--lnc-accent); }
:is(.lnc-ctaband--light, .lnc-ctaband--plain) .lnc-cta-cream::before { background: var(--lnc-accent-deep); }
:is(.lnc-ctaband--light, .lnc-ctaband--plain) .lnc-cta-cream:is(:hover, :focus-visible) { color: var(--lnc-white); }

@media (max-width: 749px) {
  .lnc-ctaband__ctas { flex-direction: column; align-items: center; }
  .lnc-ctaband__cta { width: 100%; max-width: 320px; justify-content: center; }
}
/* END_SECTION:lnc-cta-band */

/* START_SECTION:lnc-deep-dive (INDEX:34) */
.lnc-dive--white { background: var(--lnc-white); border-top: 1px solid var(--lnc-line); border-bottom: 1px solid var(--lnc-line); }
.lnc-dive__wrap { max-width: 1280px; margin: 0 auto; padding: 0 40px; }
.lnc-dive__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; min-height: 520px; }
.lnc-dive--left .lnc-dive__text { order: 2; }
.lnc-dive--left .lnc-dive__media { order: 1; }
.lnc-dive__text { padding: 72px 0; }
.lnc-dive__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-dive__h { margin: 16px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(26px, 2.6vw, 32px); line-height: 1.08; letter-spacing: -.025em; color: var(--lnc-ink); }
.lnc-dive__accent { font-family: var(--lnc-font-serif); font-style: italic; font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-dive__body { margin: 16px 0 0; font-family: var(--lnc-font-serif); font-size: 16.5px; line-height: 1.7; color: var(--lnc-body); max-width: 44ch; }
.lnc-dive__stats { display: flex; gap: 32px; margin-top: 28px; flex-wrap: wrap; }
.lnc-dive__statval { font-family: var(--lnc-font-display); font-weight: 600; font-size: 28px; line-height: 1.26; color: var(--lnc-ink); }
/* design 08: the unit rides small against the number — "6.9kg", not "6.9 kg" */
.lnc-dive__statunit { font-size: .57em; margin-left: 1px; }
.lnc-dive__statlabel { font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-muted); margin-top: 4px; }
.lnc-dive__checks { display: flex; flex-direction: column; gap: 12px; margin-top: 24px; }
.lnc-dive__check { display: flex; align-items: center; gap: 12px; font-size: 14.5px; color: var(--lnc-body); }
.lnc-dive__check svg { color: var(--lnc-accent-deep); flex-shrink: 0; }
.lnc-dive__media--cover { align-self: stretch; position: relative; background: var(--lnc-paper); border-left: 1px solid var(--lnc-line); border-right: 1px solid var(--lnc-line); overflow: hidden; }
.lnc-dive__media--cover img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lnc-dive__media--contain { align-self: stretch; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 20px; margin: 40px 0; display: flex; align-items: center; justify-content: center; overflow: hidden; min-height: 380px; }
.lnc-dive__media--contain img { width: 80%; height: 80%; object-fit: contain; mix-blend-mode: multiply; }
@media (max-width: 899px) {
  .lnc-dive__wrap { padding: 0 24px; }
  .lnc-dive__grid { grid-template-columns: 1fr; gap: 0; min-height: 0; }
  .lnc-dive--left .lnc-dive__text { order: 1; }
  .lnc-dive--left .lnc-dive__media { order: 2; }
  .lnc-dive__text { padding: 44px 0 32px; }
  .lnc-dive__media--cover { border: 1px solid var(--lnc-line); border-radius: 16px; min-height: 320px; margin-bottom: 44px; }
  .lnc-dive__media--contain { margin: 0 0 44px; min-height: 300px; }
}

/* Mobile (design mobile-product 08): each dive is ONE bordered white card on
   the paper ground — image band on top ALWAYS (alternation dropped), copy under
   a hairline. Stats stay on one row. */
@media (max-width: 749px) {
  .lnc-dive, .lnc-dive--white { background: transparent; border: 0; }
  .lnc-dive { padding: 28px var(--lnc-gutter, 20px) 0; }
  .lnc-dive + .lnc-dive { padding-top: 14px; }
  .lnc-dive__wrap { padding: 0; }
  /* stretch, not the desktop's centering — centred children shrink to content
     width, which left the copy block (and its top hairline) 20px short of the
     card edges at widths above 390. */
  .lnc-dive__grid { display: flex; flex-direction: column; align-items: stretch; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 16px; overflow: hidden; }
  .lnc-dive__media, .lnc-dive--left .lnc-dive__media { order: -1; }
  /* Measured off the design's live phone: image band 230, body inset 21 with
     23/24 vertical padding, eyebrow 10/1.3, H3 27/1.06, serif body 16/1.68,
     stats number 23 + small unit, label 9px mono. */
  .lnc-dive__media--cover { border: 0; border-radius: 0; min-height: 0; height: 230px; margin: 0; }
  .lnc-dive__media--portrait { height: auto; aspect-ratio: 4 / 5; }
  .lnc-dive__media--contain { border: 0; border-radius: 0; min-height: 0; height: 230px; margin: 0; }
  .lnc-dive__media--contain img { width: 82%; height: 82%; }
  .lnc-dive__text, .lnc-dive--left .lnc-dive__text { order: 2; padding: 23px 20px 24px; border-top: 1px solid var(--lnc-line-soft); }
  .lnc-dive__eyebrow { font-size: 10px; line-height: 1.3; }
  .lnc-dive__h { margin-top: 12px; font-size: 27px; line-height: 1.06; }
  .lnc-dive__body { margin-top: 12px; font-size: 16px; line-height: 1.68; }
  .lnc-dive__stats { gap: 24px; margin-top: 19px; flex-wrap: nowrap; }
  .lnc-dive__statval { font-size: 23px; }
  .lnc-dive__statlabel { font-size: 9px; margin-top: 3px; line-height: 1.3; }
  .lnc-dive__checks { gap: 10px; margin-top: 18px; }
  .lnc-dive__check { font-size: 14.5px; }
}
/* END_SECTION:lnc-deep-dive */

/* START_SECTION:lnc-duo-cards (INDEX:35) */
.lnc-duo { padding-block: var(--pt, 56px) var(--pb, 56px); }
.lnc-duo__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.lnc-duo__card { position: relative; overflow: hidden; border-radius: 18px; padding: 44px 46px; border: 1px solid var(--lnc-line); }
.lnc-duo__inner { position: relative; }
.lnc-duo__card--warm_gradient { background: linear-gradient(135deg, #EFE9DE 0%, #E7E9E3 100%); border-color: #E0D8C9; }
.lnc-duo__card--warm_gradient .lnc-duo__body { color: #7A6A52; }
.lnc-duo__card--white { background: var(--lnc-white); }
.lnc-duo__card--outline { background: transparent; border-color: var(--lnc-accent-line); }
.lnc-duo__card--ink { background: var(--lnc-dark); border-color: transparent; }
.lnc-duo__card--accent_wash { background: var(--lnc-accent-wash); border-color: var(--lnc-accent-line); }
.lnc-duo__glow { position: absolute; top: -30px; right: -30px; width: 150px; height: 150px; border-radius: 50%; background: radial-gradient(circle, color-mix(in srgb, var(--lnc-spark) 20%, transparent), transparent 70%); pointer-events: none; }
.lnc-duo__eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px; font-size: 10.5px; letter-spacing: .14em; }
.lnc-duo__heart { display: inline-flex; align-items: center; color: var(--lnc-spark); }
.lnc-duo__title { margin: 0; font-size: 26px; }
.lnc-duo__body { margin-top: 12px; font-family: var(--lnc-font-serif); font-size: 16px; line-height: 1.6; color: var(--lnc-body); max-width: 38ch; }
.lnc-duo__body p { margin: 0; }
.lnc-duo__cta { margin-top: 22px; font-size: 14px; padding: 13px 26px; }
.lnc-duo__cta.lnc-cta-outline { box-shadow: inset 0 0 0 1px var(--lnc-accent); }
.lnc-duo__card--ink .lnc-duo__title { color: var(--lnc-on-dark); }
.lnc-duo__card--ink .lnc-duo__body { color: var(--lnc-on-dark-soft); }
@media (max-width: 749px) {
  .lnc-duo__grid { grid-template-columns: 1fr; }
  .lnc-duo__card { padding: 32px 26px; }
}
/* END_SECTION:lnc-duo-cards */

/* START_SECTION:lnc-editorial (INDEX:36) */
.lnc-editorial { padding-block: var(--pt, 84px) var(--pb, 84px); }
.lnc-editorial__col { max-width: var(--maxw, 900px); margin-inline: auto; padding-inline: var(--lnc-gutter); text-align: center; }
.lnc-editorial__eyebrow { margin: 0; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-editorial__h { margin: 18px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: 38px; line-height: 1.1; letter-spacing: -.025em; color: var(--lnc-ink); }
.lnc-editorial__h .lnc-serif { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-editorial__lead { margin: 20px auto 0; max-width: 56ch; font-family: var(--lnc-font-serif); font-size: 18px; line-height: 1.7; color: var(--lnc-body); }
.lnc-editorial__lead p { margin: 0 0 12px; }
.lnc-editorial__lead p:last-child { margin-bottom: 0; }
@media (max-width: 749px) {
  .lnc-editorial__h { font-size: 30px; }
  /* PDP highlights heading (design mobile-product 07): top half of the white
     band — reordered above the 2×2 feature grid via lnc-base.css. */
  .lnc-editorial.lnc-editorial--product { background: var(--lnc-white); border-top: 1px solid var(--lnc-line); margin-top: 26px; padding: 30px 0 28px; }
  .lnc-editorial--product .lnc-editorial__eyebrow { font-size: 10.5px; }
  .lnc-editorial--product .lnc-editorial__h { margin-top: 14px; font-size: 29px; line-height: 1.08; }
  .lnc-editorial--product .lnc-editorial__lead { margin-top: 14px; font-size: 16.5px; line-height: 1.7; }
}
/* END_SECTION:lnc-editorial */

/* START_SECTION:lnc-expo (INDEX:37) */
.lnc-expo { padding-block: var(--pt, 80px) var(--pb, 80px); }
.lnc-expo__panel { position: relative; overflow: hidden; border-radius: var(--lnc-radius-lg); color: var(--lnc-on-dark); }
.lnc-expo__glow { position: absolute; right: -8%; top: 50%; width: 52vw; max-width: 680px; height: 130%; transform: translateY(-50%); background: radial-gradient(ellipse at 60% 50%, color-mix(in srgb, var(--lnc-accent) 34%, transparent), transparent 66%); pointer-events: none; }
.lnc-expo__grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.1fr 1fr; gap: 32px; align-items: center; padding: 52px 56px; }
.lnc-expo__eyebrow { color: var(--lnc-accent-on-dark); font-size: 11.5px; }
.lnc-expo__panel.lnc-bg-ink .lnc-expo__heading { margin: 16px 0 0; font-size: clamp(30px, 3.6vw, 46px); line-height: 1.04; color: var(--lnc-white); }
.lnc-expo__accent { color: var(--lnc-accent-on-dark); }
.lnc-expo__body { margin-top: 16px; font-family: var(--lnc-font-serif); font-size: 16.5px; line-height: 1.6; color: #C7CDD2; max-width: 44ch; }
.lnc-expo__body p { margin: 0; }
.lnc-expo__cta { margin-top: 24px; font-size: 14px; padding: 14px 28px; }
.lnc-expo__events { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.lnc-expo__event { display: flex; align-items: center; justify-content: space-between; gap: 16px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); border-radius: 12px; padding: 16px 20px; }
.lnc-expo__event-info { display: flex; flex-direction: column; gap: 3px; }
.lnc-expo__city { font-family: var(--lnc-font-display); font-weight: 600; font-size: 16px; color: var(--lnc-white); }
.lnc-expo__venue { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; color: #8FA6A4; }
.lnc-expo__dates { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .04em; color: var(--lnc-accent-on-dark); white-space: nowrap; text-align: right; }
@media (max-width: 749px) {
  /* mobile card scale per mobile.dc.html expo card metrics (kept on the
     existing navy panel pending a decision on the accent-wash redesign) */
  .lnc-expo { padding-block: 30px 0; }
  .lnc-expo__grid { grid-template-columns: 1fr; gap: 20px; padding: 24px 22px; }
  .lnc-expo__glow { width: 100%; max-width: none; }
  .lnc-expo__eyebrow { font-size: 9.5px; letter-spacing: .14em; }
  .lnc-expo__panel.lnc-bg-ink .lnc-expo__heading { margin-top: 12px; font-size: 25px; line-height: 1.08; }
  .lnc-expo__body { margin-top: 14px; font-size: 15px; }
  .lnc-expo__panel .lnc-expo__cta { margin-top: 18px; justify-content: center; text-align: center; font-size: 15px; padding: 15px 24px; display: flex; }
  .lnc-expo__event { padding: 14px 16px; }
}
/* END_SECTION:lnc-expo */

/* START_SECTION:lnc-faq (INDEX:38) */
.lnc-faq__a .lnc-policy-table { width: 100%; border-collapse: collapse; margin: 14px 0 4px; font-size: 13.5px; }
.lnc-faq__a .lnc-policy-table th, .lnc-faq__a .lnc-policy-table td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--lnc-line); vertical-align: top; }
.lnc-faq__a .lnc-policy-table thead th { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-faq__a .lnc-policy-table tbody th { font-family: var(--lnc-font-mono); font-weight: 600; font-size: 12px; white-space: nowrap; }

.lnc-faq { padding-block: var(--pt, 40px) var(--pb, 64px); }
.lnc-faq__wrap { max-width: 820px; margin: 0 auto; padding-inline: var(--lnc-gutter, 40px); }
.lnc-faq__h { font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(24px, 3vw, 32px); letter-spacing: -.02em; color: var(--lnc-ink); margin: 0 0 24px; text-align: center; }
.lnc-faq__search { display: flex; align-items: center; gap: 10px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-pill); padding: 7px 7px 7px 22px; box-shadow: 0 12px 30px rgba(27,40,50,.08); max-width: 560px; margin: 0 auto 18px; }
.lnc-faq__search svg { color: var(--lnc-muted); flex-shrink: 0; }
.lnc-faq__searchinput { flex: 1; min-width: 0; font-family: var(--lnc-font-body); font-size: 15px; color: var(--lnc-ink); border: 0; outline: none; background: transparent; padding: 12px 0; }
.lnc-faq__cats { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; margin-bottom: 40px; }
.lnc-faq__catchip { font-family: var(--lnc-font-body); font-weight: 700; font-size: 12.5px; color: var(--lnc-ink); background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-pill); padding: 9px 16px; cursor: pointer; transition: background .2s var(--lnc-ease), border-color .2s var(--lnc-ease), color .2s var(--lnc-ease); }
.lnc-faq__catchip:hover { border-color: var(--lnc-accent-line); }
.lnc-faq__catchip.is-active { color: var(--lnc-ink-deep); background: var(--lnc-accent-wash); border-color: var(--lnc-accent-line); }
.lnc-faq__list { display: flex; flex-direction: column; gap: 12px; }
.lnc-faq__item[hidden] { display: none; }
.lnc-faq__empty { text-align: center; padding: 48px 20px; border: 1px dashed var(--lnc-taupe); border-radius: 14px; background: var(--lnc-cloud); margin-top: 12px; }
.lnc-faq__empty-h { font-family: var(--lnc-font-display); font-weight: 600; font-size: 18px; color: var(--lnc-ink); }
.lnc-faq__empty-p { margin: 8px 0 0; font-family: var(--lnc-font-serif); font-size: 14.5px; color: var(--lnc-body); }
.lnc-faq__item { background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 14px; overflow: hidden; }
.lnc-faq__q { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 16px; cursor: pointer; padding: 20px 26px; }
.lnc-faq__q::-webkit-details-marker { display: none; }
.lnc-faq__cat { display: block; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 9.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-faq__question { display: block; font-family: var(--lnc-font-display); font-weight: 600; font-size: 17px; color: var(--lnc-ink); margin-top: 5px; }
.lnc-faq__cat + .lnc-faq__question { margin-top: 5px; }
.lnc-faq__icon { font-family: var(--lnc-font-mono); font-size: 16px; color: var(--lnc-accent-deep); flex-shrink: 0; transition: transform .3s var(--lnc-ease); line-height: 1; }
.lnc-faq__item[open] .lnc-faq__icon { transform: rotate(45deg); }
.lnc-faq__a { padding: 0 26px 22px; font-family: var(--lnc-font-serif); font-size: 15.5px; line-height: 1.7; color: var(--lnc-body); }
.lnc-faq__a p { margin: 0 0 10px; }
.lnc-faq__a p:last-child { margin-bottom: 0; }
.lnc-faq__foot { display: flex; align-items: center; justify-content: center; gap: 12px; margin-top: 36px; flex-wrap: wrap; }
.lnc-faq__foot-text { font-family: var(--lnc-font-serif); font-size: 15.5px; color: var(--lnc-body); }
.lnc-faq__foot .lnc-cta { font-size: 14px; padding: 13px 26px; }
.lnc-faq__foot .lnc-cta-outline { padding: 12px 24px; box-shadow: inset 0 0 0 1px var(--lnc-accent); }
/* END_SECTION:lnc-faq */

/* START_SECTION:lnc-feature-grid (INDEX:39) */
.lnc-fg { padding-block: var(--pt, 64px) var(--pb, 0px); }
.lnc-fg__head { margin-bottom: 32px; }
.lnc-fg__h { margin-top: 14px; }
.lnc-fg--boxed .lnc-fg__card { background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-lg); padding: 44px 48px; }
.lnc-fg__grid { display: grid; grid-template-columns: repeat(var(--cols, 4), 1fr); gap: 32px; }
.lnc-fg__icon { display: inline-flex; align-items: center; justify-content: center; color: var(--lnc-accent-deep); line-height: 1; font-size: 26px; }
.lnc-fg__icon svg { width: 30px; height: 30px; }
.lnc-fg__title { margin-top: 16px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 17px; color: var(--lnc-ink); }
.lnc-fg__body { margin-top: 8px; font-family: var(--lnc-font-serif); font-style: normal; font-size: 14.5px; line-height: 1.6; color: var(--lnc-body); }
.lnc-fg__body p { margin: 0 0 8px; }
.lnc-fg__body p:last-child { margin-bottom: 0; }
@media (max-width: 749px) {
  .lnc-fg__grid { grid-template-columns: 1fr; gap: 26px; }
  .lnc-fg--boxed .lnc-fg__card { padding: 30px 24px; }
  /* PDP highlights (design mobile-product 07): the grid half of the white
     band — 2×2, all four visible at once, compact type. The heading half is
     the editorial section, reordered above this one in lnc-base.css. */
  .lnc-fg.lnc-fg--product { background: var(--lnc-white); padding: 0 0 34px; border-bottom: 1px solid var(--lnc-line); }
  .lnc-fg--product .lnc-fg__card { background: transparent; border: 0; border-radius: 0; padding: 0; }
  .lnc-fg--product .lnc-fg__grid { grid-template-columns: 1fr 1fr; gap: 20px 14px; }
  .lnc-fg--product .lnc-fg__icon svg { width: 26px; height: 26px; }
  /* line-height 1.3, not the inherited 1.8 — the design tile title is 20px tall */
  .lnc-fg--product .lnc-fg__title { margin-top: 10px; font-size: 15.5px; line-height: 1.3; }
  .lnc-fg--product .lnc-fg__body { margin-top: 6px; font-size: 14px; line-height: 1.55; }
}
/* END_SECTION:lnc-feature-grid */

/* START_SECTION:lnc-flag-anatomy (INDEX:40) */
.lnc-fana { background: var(--lnc-paper); }
.lnc-fana__inner { padding: clamp(80px, 12vh, 150px) clamp(24px, 6vw, 80px); max-width: 1200px; margin: 0 auto; }
.lnc-fana__head { text-align: center; margin-bottom: clamp(40px, 6vw, 72px); }
.lnc-fana__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-fana__h { margin: 14px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(32px, 4.4vw, 56px); line-height: 1.04; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-fana__accent { font-family: var(--lnc-font-serif); font-style: italic; font-weight: 500; color: var(--lnc-accent-deep); }

.lnc-fana__row { display: grid; grid-template-columns: 1fr 1.1fr 1fr; align-items: center; gap: clamp(20px, 3vw, 48px); }
.lnc-fana__col { display: flex; flex-direction: column; gap: clamp(28px, 4vw, 56px); }
.lnc-fana__col--left .lnc-fana__item { text-align: right; }

.lnc-fana__num { font-family: var(--lnc-font-mono); font-weight: 600; font-size: 12px; color: var(--lnc-accent-deep); }
.lnc-fana__title { font-family: var(--lnc-font-display); font-weight: 600; font-size: 18px; color: var(--lnc-ink); margin-top: 4px; }
.lnc-fana__desc { font-size: 14px; line-height: 1.6; color: var(--lnc-ink-soft); margin-top: 4px; }

.lnc-fana__card { position: relative; background: var(--lnc-white); border: 1px solid var(--lnc-accent-line); border-radius: 24px; aspect-ratio: 4/5; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.lnc-fana__img { width: 88%; height: 88%; object-fit: contain; mix-blend-mode: multiply; }
.lnc-fana__card .placeholder { width: 88%; height: 88%; }

.lnc-fana__hs { position: absolute; width: 14px; height: 14px; border-radius: 50%; background: var(--lnc-accent); box-shadow: 0 0 0 5px color-mix(in srgb, var(--lnc-accent) 22%, transparent); }
.lnc-fana__hs--1 { top: 16%; left: 18%; }
.lnc-fana__hs--2 { top: 52%; right: 20%; }
.lnc-fana__hs--3 { bottom: 12%; left: 30%; }
.lnc-fana__hs--4 { top: 40%; left: 12%; }

@media (max-width: 749px) {
  .lnc-fana__row { grid-template-columns: 1fr; }
  .lnc-fana__card { order: -1; }
  .lnc-fana__col--left .lnc-fana__item { text-align: left; }
}
/* END_SECTION:lnc-flag-anatomy */

/* START_SECTION:lnc-flag-build (INDEX:41) */
.lnc-fbuild { background: var(--lnc-paper); border-top: 1px solid var(--lnc-line); padding: clamp(72px, 11vh, 130px) clamp(24px, 6vw, 80px); }
.lnc-fbuild__inner { max-width: 1240px; margin: 0 auto; }
.lnc-fbuild__head { text-align: center; max-width: 640px; margin: 0 auto; }
.lnc-fbuild__eyebrow { display: inline-block; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-fbuild__h { margin: 14px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(30px, 3.6vw, 44px); line-height: 1.05; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-fbuild__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-fbuild__sub { margin: 14px 0 0; font-family: var(--lnc-font-serif); font-size: 16px; line-height: 1.65; color: var(--lnc-body); }
.lnc-fbuild__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(206px, 1fr)); gap: 18px; margin-top: clamp(36px, 5vh, 56px); }
.lnc-fbuild__card { display: flex; flex-direction: column; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 16px; padding: 16px 16px 18px; transition: box-shadow .25s var(--lnc-ease), transform .25s var(--lnc-ease); }
.lnc-fbuild__card:hover { box-shadow: 0 14px 34px rgba(27,40,50,.10); transform: translateY(-2px); }
.lnc-fbuild__card[hidden] { display: none; }
.lnc-fbuild__media { display: flex; align-items: center; justify-content: center; aspect-ratio: 1; background: var(--lnc-cloud); border-radius: 12px; overflow: hidden; }
.lnc-fbuild__media img { width: 84%; height: 84%; object-fit: contain; mix-blend-mode: multiply; }
.lnc-fbuild__name { margin-top: 13px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 15.5px; line-height: 1.25; color: var(--lnc-ink); min-height: 2.5em; }
.lnc-fbuild__name a { color: inherit; text-decoration: none; }
.lnc-fbuild__name a:hover { color: var(--lnc-accent-deep); }
.lnc-fbuild__meta { display: flex; align-items: center; gap: 8px; margin-top: 4px; }
.lnc-fbuild__price { font-family: var(--lnc-font-body); font-weight: 700; font-size: 14.5px; color: var(--lnc-ink); }
.lnc-fbuild__chip { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-accent-deep); background: color-mix(in srgb, var(--lnc-accent) 14%, transparent); border-radius: var(--lnc-radius-pill); padding: 3px 9px; }
.lnc-fbuild__formwrap { display: block; margin-top: auto; }
.lnc-fbuild__form { margin-top: 12px; }
.lnc-fbuild__add { width: 100%; justify-content: center; font-size: 13px; padding: 11px 10px; color: var(--lnc-ink); background: transparent; box-shadow: inset 0 0 0 1.5px var(--lnc-ink); border-radius: var(--lnc-radius-pill); }
.lnc-fbuild__add::before { background: var(--lnc-ink); }
.lnc-fbuild__add:is(:hover, :focus-visible) { color: var(--lnc-white); }
.lnc-fbuild__add[disabled] { opacity: .45; cursor: not-allowed; letter-spacing: normal; }
.lnc-fbuild__add[disabled]::before { display: none; }
@media (max-width: 749px) {
  .lnc-fbuild { padding-inline: var(--lnc-gutter, 20px); }
  .lnc-fbuild__grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .lnc-fbuild__card { padding: 12px 12px 14px; border-radius: 14px; }
  .lnc-fbuild__name { font-size: 14px; }
}
/* END_SECTION:lnc-flag-build */

/* START_SECTION:lnc-flag-buybar (INDEX:42) */
.lnc-fbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 85; transform: translateY(110%); transition: transform .45s cubic-bezier(.22,.61,.36,1); background: color-mix(in srgb, var(--lnc-cloud) 92%, transparent); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-top: 1px solid var(--lnc-accent-line); padding: 12px clamp(16px, 4vw, 48px); display: block; }
.lnc-fbar[hidden] { display: block; }
.lnc-fbar.is-visible { transform: translateY(0); }
.lnc-fbar__form { display: flex; align-items: center; gap: 20px; }
.lnc-fbar__thumb { width: 46px; height: 46px; object-fit: contain; mix-blend-mode: multiply; flex-shrink: 0; }
.lnc-fbar__meta { min-width: 0; }
.lnc-fbar__title { font-family: var(--lnc-font-display); font-weight: 600; font-size: 15px; color: var(--lnc-ink); line-height: 1.1; }
.lnc-fbar__prices { display: flex; align-items: baseline; gap: 7px; }
.lnc-fbar__price { font-family: var(--lnc-font-display); font-weight: 600; font-size: 14px; color: var(--lnc-accent-deep); }
/* Selected colour, spelled out — swatch hover tooltips don't exist on touch. */
.lnc-fbar__colour { font-family: var(--lnc-font-body); font-weight: 600; font-size: 12px; color: var(--lnc-ink-soft); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 130px; }
.lnc-fbar__dot { color: var(--lnc-ink-soft); font-size: 12px; }
.lnc-fbar__prices { display: flex; align-items: center; gap: 6px; min-width: 0; }
.lnc-fbar__was { font-size: 11px; color: var(--lnc-ink-soft); text-decoration: line-through; }
.lnc-fbar__form .lnc-fbar__variants { margin-left: auto; display: flex; align-items: center; gap: 14px; }
.lnc-fbar__values { display: flex; align-items: center; gap: 9px; }
.lnc-fbar__swatch { position: relative; width: 26px; height: 26px; border-radius: 50%; background: var(--sw, var(--lnc-cloud)); cursor: pointer; box-shadow: 0 0 0 1px var(--lnc-line-soft, rgba(0,0,0,.14)); transition: box-shadow .2s var(--lnc-ease), transform .2s var(--lnc-ease); overflow: hidden; display: inline-flex; flex-shrink: 0; }
.lnc-fbar__swatch:hover { transform: translateY(-2px); }
.lnc-fbar__swatch input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.lnc-fbar__swatch-img { position: absolute; inset: 0; background-size: cover; background-position: center; }
.lnc-fbar__swatch.is-selected { box-shadow: 0 0 0 2px var(--lnc-paper), 0 0 0 4px var(--lnc-accent); }
.lnc-fbar__swatch--pill { width: auto; height: auto; border-radius: var(--lnc-radius-pill); background: var(--lnc-cloud); padding: 6px 12px; }
.lnc-fbar__swatch--pill.is-selected { box-shadow: 0 0 0 1.5px var(--lnc-ink); }
.lnc-fbar__swatch-txt { font-family: var(--lnc-font-body); font-weight: 600; font-size: 12.5px; color: var(--lnc-ink); position: relative; }
/* Button rides the site-wide .lnc-cta wipe-fill; only sizing is overridden here. */
.lnc-fbar__form .lnc-fbar__btn { margin-left: auto; font-size: 14px; padding: 13px clamp(20px, 3vw, 32px); white-space: nowrap; }
/* When swatches are present they take the auto margin, so the button hugs the right edge beside them. */
.lnc-fbar__form .lnc-fbar__variants + .lnc-fbar__btn { margin-left: 0; }
.lnc-fbar__form .lnc-fbar__btn[disabled] { opacity: .5; cursor: not-allowed; letter-spacing: normal; }
.lnc-fbar__form .lnc-fbar__btn[disabled]::before { display: none; }
@media (max-width: 749px) {
  /* Two-row layout: title + colour/price across the top, swatches left and a
     full-size button right underneath — one squeezed row read as broken. */
  .lnc-fbar { padding: 10px 16px 12px; }
  .lnc-fbar__form { display: grid; grid-template-columns: 1fr; gap: 8px; align-items: center; }
  .lnc-fbar__thumb { display: none; }
  .lnc-fbar__meta { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
  .lnc-fbar__variants, .lnc-fbar__values { display: flex; flex-wrap: wrap; gap: 8px; }
  .lnc-fbar__title { font-size: 13.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
  .lnc-fbar__prices { flex-shrink: 0; }
  .lnc-fbar__swatch:not(.lnc-fbar__swatch--pill) { width: 28px; height: 28px; }
  .lnc-fbar__swatch--pill { padding: 7px 12px; }
  .lnc-fbar__swatch-txt { font-size: 12px; }
  .lnc-fbar__form .lnc-fbar__btn, .lnc-fbar__form .lnc-fbar__variants + .lnc-fbar__btn { margin-left: 0; width: 100%; justify-self: stretch; padding: 13px 22px; font-size: 14px; }
}
/* END_SECTION:lnc-flag-buybar */

/* START_SECTION:lnc-flag-cinematic (INDEX:43) */
.lnc-fcin {
  position: relative;
  min-height: 96vh; min-height: 96svh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  text-align: center;
  padding-block: var(--pt, 0px) var(--pb, 0px);
}
.lnc-fcin.lnc-bg-ink { background: var(--lnc-dark); }
.lnc-fcin__glow {
  position: absolute;
  right: -6vw;
  top: 50%;
  width: 64vw;
  max-width: 860px;
  height: 84vh;
  transform: translateY(-50%);
  background: radial-gradient(ellipse at 62% 50%, color-mix(in srgb, var(--lnc-accent-on-dark) 16%, transparent), transparent 64%);
  pointer-events: none;
}
.lnc-fcin__inner {
  position: relative;
  z-index: 2;
  padding: 0 clamp(24px, 6vw, 80px);
  max-width: 1000px;
}
.lnc-fcin__eyebrow {
  display: inline-block;
  font-family: var(--lnc-font-mono);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--lnc-accent-on-dark);
}
.lnc-fcin__statement {
  margin: 26px 0 0;
  font-family: var(--lnc-font-serif);
  font-size: clamp(28px, 4.4vw, 58px);
  line-height: 1.24;
  letter-spacing: -.01em;
  color: var(--lnc-on-dark);
  text-wrap: balance;
}
.lnc-fcin__statement p { margin: 0; }
.lnc-fcin__statement em { font-style: italic; color: var(--lnc-accent-on-dark); }
.lnc-fcin__stats {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(28px, 5vw, 72px);
  margin-top: 56px;
  flex-wrap: wrap;
}
.lnc-fcin__stat-value {
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: clamp(28px, 3.2vw, 44px);
  color: var(--lnc-on-dark);
}
.lnc-fcin__stat-label {
  font-family: var(--lnc-font-mono);
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--lnc-on-dark-mute);
  margin-top: 6px;
}
/* END_SECTION:lnc-flag-cinematic */

/* START_SECTION:lnc-flag-colorways (INDEX:44) */
.lnc-fcol {
  background: var(--lnc-cloud);
  border-top: 1px solid var(--lnc-accent-line);
  padding: clamp(80px, 12vh, 150px) clamp(24px, 6vw, 80px);
}
.lnc-fcol__head {
  text-align: center;
  margin-bottom: clamp(36px, 5vw, 60px);
}
.lnc-fcol__eyebrow {
  font-family: var(--lnc-font-mono);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--lnc-accent-deep);
}
.lnc-fcol__h {
  margin: 14px 0 0;
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: clamp(32px, 4.4vw, 56px);
  line-height: 1.04;
  letter-spacing: -.03em;
  color: var(--lnc-ink);
}
.lnc-fcol__accent {
  font-family: var(--lnc-font-serif);
  font-style: italic;
  font-weight: 500;
  color: var(--lnc-accent-deep);
}
.lnc-fcol__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(16px, 2.5vw, 28px);
  max-width: 1200px;
  margin: 0 auto;
}
.lnc-fcol__card {
  text-align: center;
}
.lnc-fcol__panel {
  position: relative;
  border-radius: 20px;
  aspect-ratio: 4 / 5;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.lnc-fcol__img {
  width: 82%;
  height: 82%;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.lnc-fcol__img--ph {
  width: 70%;
  height: 70%;
  opacity: .5;
  mix-blend-mode: normal;
}
.lnc-fcol__name {
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: 18px;
  color: var(--lnc-ink);
  margin-top: 16px;
}
.lnc-fcol__desc {
  font-family: var(--lnc-font-mono);
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--lnc-ink-soft);
  margin-top: 3px;
}
@media (max-width: 749px) {
  .lnc-fcol__grid { grid-template-columns: 1fr; }
}
/* END_SECTION:lnc-flag-colorways */

/* START_SECTION:lnc-flag-colour-gallery (INDEX:45) */
.lnc-fcg { background: var(--lnc-paper); border-top: 1px solid var(--lnc-line); padding: clamp(72px, 11vh, 130px) clamp(24px, 6vw, 80px); }
.lnc-fcg__inner { max-width: 1160px; margin: 0 auto; }
.lnc-fcg__head { text-align: center; max-width: 640px; margin: 0 auto; }
.lnc-fcg__eyebrow { display: inline-block; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-fcg__h { margin: 14px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(30px, 3.6vw, 44px); line-height: 1.05; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-fcg__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-fcg__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: clamp(36px, 5vh, 56px); }
/* single-colour products: one centred gallery card instead of a lopsided half-grid */
.lnc-fcg__grid:has(> .lnc-fcg__cell:only-child) { grid-template-columns: 1fr; max-width: 720px; margin-inline: auto; margin-top: clamp(36px, 5vh, 56px); }
.lnc-fcg__cell { background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 18px; padding: 14px 14px 16px; }
.lnc-fcg__stage { position: relative; aspect-ratio: 1.15; background: var(--lnc-white); border-radius: 12px; overflow: hidden; }
.lnc-fcg__slide { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; opacity: 0; transition: opacity .3s var(--lnc-ease); }
.lnc-fcg__slide.is-active { opacity: 1; }
.lnc-fcg__nav { position: absolute; z-index: 3; top: 50%; transform: translateY(-50%); width: 38px; height: 38px; border-radius: 50%; background: var(--lnc-cloud); border: 1px solid var(--lnc-line-soft); color: var(--lnc-ink); display: flex; align-items: center; justify-content: center; cursor: pointer; opacity: .92; box-shadow: 0 2px 10px rgba(27,40,50,.08); transition: opacity .2s var(--lnc-ease), transform .2s var(--lnc-ease), color .2s var(--lnc-ease); }
.lnc-fcg__nav--prev { left: 12px; }
.lnc-fcg__nav--next { right: 12px; }
.lnc-fcg__nav:hover { transform: translateY(calc(-50% - 2px)); color: var(--lnc-accent-deep); }
.lnc-fcg__label { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-top: 12px; padding: 0 4px; }
.lnc-fcg__name { font-family: var(--lnc-font-display); font-weight: 600; font-size: 16.5px; color: var(--lnc-ink); }
.lnc-fcg__count { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .08em; color: var(--lnc-muted); }
@media (max-width: 749px) {
  .lnc-fcg { padding-inline: var(--lnc-gutter, 20px); }
  .lnc-fcg__grid { grid-template-columns: 1fr; gap: 16px; }
  .lnc-fcg__nav { width: 34px; height: 34px; }
}
/* END_SECTION:lnc-flag-colour-gallery */

/* START_SECTION:lnc-flag-cta (INDEX:46) */
.lnc-fcta { position: relative; min-height: 92vh; min-height: 92svh; display: flex; align-items: center; justify-content: center; overflow: hidden; background: var(--lnc-dark2); text-align: center; padding-block: clamp(56px, 8vh, 96px); }
.lnc-fcta__glow { position: absolute; left: 50%; top: 46%; width: 80vw; max-width: 920px; height: 72vh; transform: translate(-50%, -50%); background: radial-gradient(ellipse at center, color-mix(in srgb, var(--lnc-accent-on-dark) 20%, transparent), transparent 62%); pointer-events: none; }
.lnc-fcta__inner { position: relative; z-index: 2; padding: 0 clamp(24px, 6vw, 80px); }
.lnc-fcta__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .3em; text-transform: uppercase; color: var(--lnc-accent-on-dark); }
.lnc-fcta__h { margin: 22px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(44px, 7vw, 104px); line-height: .96; letter-spacing: -.03em; color: var(--lnc-on-dark); }
.lnc-fcta__accent { font-weight: 500; color: var(--lnc-accent-on-dark); }
.lnc-fcta__prices { display: flex; align-items: baseline; justify-content: center; gap: 12px; margin-top: 22px; }
.lnc-fcta__price { font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(26px, 3vw, 38px); color: var(--lnc-on-dark); }
.lnc-fcta__was { font-size: 18px; color: var(--lnc-on-dark-mute); text-decoration: line-through; }
.lnc-fcta__ctas { display: flex; gap: 14px; justify-content: center; margin-top: 26px; flex-wrap: wrap; }
.lnc-fcta__form { display: inline-block; }
/* Buttons ride the site-wide .lnc-cta wipe-fill animation; these rules only recolour it for the dark band. */
.lnc-fcta__ctas .lnc-fcta__btn { font-size: 15px; justify-content: center; }
.lnc-fcta__ctas .lnc-fcta__btn--solid { color: var(--lnc-dark2); background: var(--lnc-on-dark); padding: 17px 36px; }
.lnc-fcta__ctas .lnc-fcta__btn--solid::before { background: var(--lnc-accent-on-dark); }
.lnc-fcta__ctas .lnc-fcta__btn--solid:is(:hover, :focus-visible) { color: var(--lnc-dark2); }
.lnc-fcta__ctas .lnc-fcta__btn[disabled] { opacity: .5; cursor: not-allowed; letter-spacing: normal; }
.lnc-fcta__ctas .lnc-fcta__btn[disabled]::before { display: none; }
.lnc-fcta__ctas .lnc-fcta__btn--outline { color: var(--lnc-on-dark); background: transparent; box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--lnc-on-dark) 55%, transparent); padding: 15.5px 30px; }
.lnc-fcta__ctas .lnc-fcta__btn--outline::before { background: var(--lnc-on-dark); }
.lnc-fcta__ctas .lnc-fcta__btn--outline:is(:hover, :focus-visible) { color: var(--lnc-dark2); }

/* Variant photo bubble — floats above the hovered/tapped swatch (CTA band + sticky buy bar) */
.lnc-fswatch-bubble { position: fixed; z-index: 120; pointer-events: none; background: #fff; border-radius: 14px; padding: 8px; box-shadow: 0 18px 40px rgba(27, 40, 50, .22); opacity: 0; transform: translate(-50%, calc(-100% - 4px)) scale(.92); transition: opacity .2s var(--lnc-ease), transform .2s var(--lnc-ease); }
.lnc-fswatch-bubble.is-on { opacity: 1; transform: translate(-50%, calc(-100% - 12px)) scale(1); }
.lnc-fswatch-bubble::after { content: ''; position: absolute; left: 50%; bottom: -6px; width: 12px; height: 12px; background: #fff; transform: translateX(-50%) rotate(45deg); border-radius: 2px; }
.lnc-fswatch-bubble img { display: block; width: clamp(110px, 12vw, 150px); height: clamp(110px, 12vw, 150px); object-fit: contain; }
@media (prefers-reduced-motion: reduce) { .lnc-fswatch-bubble { transition: opacity .2s ease; transform: translate(-50%, calc(-100% - 12px)); } }

/* Variant swatches (dark band variant of the PDP picker) */
.lnc-fcta__variants { margin-top: 20px; }
.lnc-fcta__option + .lnc-fcta__option { margin-top: 14px; }
.lnc-fcta__optlabel { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-on-dark-mute); }
.lnc-fcta__optlabel span { color: var(--lnc-on-dark); }
.lnc-fcta__values { display: flex; gap: 12px; margin-top: 12px; flex-wrap: wrap; justify-content: center; }
.lnc-fcta__swatch { position: relative; width: 36px; height: 36px; border-radius: 50%; background: var(--sw, rgba(255,255,255,.14)); cursor: pointer; box-shadow: 0 0 0 1px rgba(255,255,255,.25); transition: box-shadow .2s var(--lnc-ease); overflow: hidden; display: inline-flex; }
.lnc-fcta__swatch input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.lnc-fcta__swatch-img { position: absolute; inset: 0; background-size: cover; background-position: center; }
.lnc-fcta__swatch.is-selected { box-shadow: 0 0 0 2px var(--lnc-dark2), 0 0 0 4px var(--lnc-accent-on-dark); }
.lnc-fcta__swatch--pill { width: auto; height: auto; border-radius: var(--lnc-radius-pill); background: rgba(255,255,255,.10); padding: 10px 18px; }
.lnc-fcta__swatch--pill.is-selected { box-shadow: 0 0 0 1.5px var(--lnc-on-dark); }
.lnc-fcta__swatch-txt { font-family: var(--lnc-font-body); font-weight: 600; font-size: 14px; color: var(--lnc-on-dark); position: relative; }
/* END_SECTION:lnc-flag-cta */

/* START_SECTION:lnc-flag-feature (INDEX:47) */
.lnc-ffeat { position: relative; display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; gap: 0; background: var(--lnc-paper); }
.lnc-ffeat--bordered { background: var(--lnc-cloud); border-top: 1px solid var(--lnc-accent-line); border-bottom: 1px solid var(--lnc-accent-line); }
.lnc-ffeat__media { position: relative; overflow: hidden; min-height: 88vh; min-height: 88svh; display: flex; align-items: center; justify-content: center; }
.lnc-ffeat--bg-paper .lnc-ffeat__media { background: var(--lnc-paper); }
.lnc-ffeat--bg-white .lnc-ffeat__media { background: var(--lnc-white); }
.lnc-ffeat--bg-cloud .lnc-ffeat__media { background: var(--lnc-cloud); }
.lnc-ffeat--bg-wash .lnc-ffeat__media { background: var(--lnc-accent-wash); }
.lnc-ffeat__img { height: 66vh; width: auto; object-fit: contain; mix-blend-mode: multiply; will-change: transform; }
/* Configuration flick — frames stack and cycle (JS). First frame sets the box. */
.lnc-ffeat__flick { position: relative; height: 66vh; aspect-ratio: 1; max-width: 90%; }
.lnc-ffeat__flick .lnc-ffeat__flick-frame { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; opacity: 0; transition: opacity .35s var(--lnc-ease); }
.lnc-ffeat__flick .lnc-ffeat__flick-frame.is-on { opacity: 1; }
.lnc-ffeat__corner { position: absolute; top: 28px; left: 28px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-ffeat__text { display: flex; align-items: center; padding: clamp(48px, 7vw, 110px) clamp(28px, 5vw, 88px); }
.lnc-ffeat__eyebrow { display: inline-block; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-ffeat__h { margin: 16px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(34px, 4.4vw, 60px); line-height: 1.02; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-ffeat__eyebrow + .lnc-ffeat__h { margin-top: 16px; }
.lnc-ffeat__h:first-child { margin-top: 0; }
.lnc-ffeat__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-ffeat__body { margin: 22px 0 0; font-family: var(--lnc-font-serif); font-size: clamp(16px, 1.4vw, 20px); line-height: 1.7; color: var(--lnc-ink-soft); max-width: 42ch; }
.lnc-ffeat__stats { display: flex; gap: clamp(24px, 4vw, 56px); margin-top: 40px; flex-wrap: wrap; }
.lnc-ffeat__statnum { font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(30px, 3.4vw, 46px); letter-spacing: -.02em; color: var(--lnc-accent-deep); }
.lnc-ffeat__statunit { font-size: .5em; color: var(--lnc-ink-soft); }
.lnc-ffeat__statlabel { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-ink-soft); margin-top: 6px; }
.lnc-ffeat__checks { margin-top: 32px; display: flex; flex-direction: column; gap: 12px; }
.lnc-ffeat__check { display: flex; align-items: center; gap: 12px; font-size: 15px; color: var(--lnc-ink-soft); }
.lnc-ffeat__check svg { color: var(--lnc-accent); flex-shrink: 0; }
.lnc-ffeat--media-right .lnc-ffeat__media { order: 2; }
.lnc-ffeat--media-right .lnc-ffeat__text { order: 1; }
@media (max-width: 749px) {
  .lnc-ffeat { grid-template-columns: 1fr; }
  .lnc-ffeat__media { min-height: 0; padding: 56px 20px 24px; order: 1 !important; }
  .lnc-ffeat__text { order: 2 !important; }
  /* fit the whole photo on narrow screens — never crop the sides */
  .lnc-ffeat__img { height: auto; width: 100%; max-height: 58vh; }
  .lnc-ffeat__flick { height: auto; width: 100%; max-width: none; aspect-ratio: 1; }
  /* corner label sits above the photo instead of over it */
  .lnc-ffeat__corner { top: 18px; left: 20px; right: auto; bottom: auto; }
}
/* END_SECTION:lnc-flag-feature */

/* START_SECTION:lnc-flag-film (INDEX:48) */
.lnc-ffilm {
  background: var(--lnc-cloud);
  border-top: 1px solid var(--lnc-accent-line);
  padding: clamp(80px, 12vh, 150px) clamp(24px, 6vw, 80px);
}
.lnc-ffilm__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.lnc-ffilm__head {
  text-align: center;
  margin-bottom: clamp(32px, 5vw, 56px);
}
.lnc-ffilm__eyebrow {
  font-family: var(--lnc-font-mono);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--lnc-accent-deep);
}
.lnc-ffilm__title {
  margin: 14px 0 0;
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: clamp(32px, 4.4vw, 56px);
  line-height: 1.04;
  letter-spacing: -.03em;
  color: var(--lnc-ink);
}
.lnc-ffilm__title em {
  font-family: var(--lnc-font-serif);
  font-style: italic;
  font-weight: 500;
  color: var(--lnc-accent-deep);
}
.lnc-ffilm__frame {
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background: var(--lnc-dark);
  box-shadow: 0 30px 70px rgba(15, 24, 32, .22);
}
.lnc-ffilm__media {
  position: absolute;
  inset: 0;
}
.lnc-ffilm__media video,
.lnc-ffilm__media iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  object-fit: cover;
  background: rgba(0, 0, 0, 1);
}
.lnc-ffilm__poster {
  position: absolute;
  inset: 0;
  transition: opacity .45s var(--lnc-ease, ease);
}
.lnc-ffilm__poster-img,
.lnc-ffilm__poster img,
.lnc-ffilm__poster svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.lnc-ffilm__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  pointer-events: none;
  background: linear-gradient(to top, rgba(10, 20, 22, .42), rgba(10, 20, 22, .08));
  transition: opacity .45s var(--lnc-ease, ease);
}
.lnc-ffilm__play {
  pointer-events: auto;
  width: clamp(64px, 7vw, 88px);
  height: clamp(64px, 7vw, 88px);
  border-radius: 50%;
  border: none;
  background: rgba(255, 255, 255, .94);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .28);
  transition: transform .2s ease;
}
.lnc-ffilm__play:hover {
  transform: scale(1.06);
}
.lnc-ffilm__play svg {
  width: 30%;
  height: 30%;
  margin-left: 8%;
  fill: var(--lnc-dark);
}
.lnc-ffilm__watch {
  pointer-events: none;
  font-family: var(--lnc-font-mono);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .9);
}
.lnc-ffilm__frame[data-loaded="true"] .lnc-ffilm__poster,
.lnc-ffilm__frame[data-loaded="true"] .lnc-ffilm__overlay {
  opacity: 0;
  pointer-events: none;
}
.lnc-ffilm__note {
  text-align: center;
  margin: 16px 0 0;
  font-family: var(--lnc-font-mono);
  font-size: 11px;
  letter-spacing: .06em;
  color: var(--lnc-ink-soft);
}
/* END_SECTION:lnc-flag-film */

/* START_SECTION:lnc-flag-footer (INDEX:49) */
.lnc-ffoot { background: var(--lnc-dark2); border-top: 1px solid rgba(255,255,255,.08); color: var(--lnc-on-dark-soft); padding: 34px clamp(24px, 6vw, 80px); display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; }
.lnc-ffoot__logo { height: 20px; width: auto; display: block; }
.lnc-ffoot__kicker { font-family: var(--lnc-font-mono); font-size: 9.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-on-dark-mute); }
.lnc-ffoot__home { display: inline-block; font-family: var(--lnc-font-body); font-weight: 700; font-size: 13px; color: var(--lnc-accent-on-dark); text-decoration: none; transition: color .2s ease; }
.lnc-ffoot__home:hover { color: var(--lnc-on-dark); }
/* END_SECTION:lnc-flag-footer */

/* START_SECTION:lnc-flag-gallery (INDEX:50) */
.lnc-fgal {
  background: var(--lnc-paper);
}

/* 1 · intro */
.lnc-fgal__intro {
  max-width: 1280px;
  margin-inline: auto;
  padding: clamp(80px, 12vh, 150px) clamp(24px, 6vw, 80px) clamp(32px, 5vh, 56px);
  text-align: center;
}
.lnc-fgal__eyebrow {
  font-family: var(--lnc-font-mono);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--lnc-accent-deep);
}
.lnc-fgal__title {
  margin: 14px 0 0;
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: clamp(32px, 4.4vw, 56px);
  line-height: 1.04;
  letter-spacing: -.03em;
  color: var(--lnc-ink);
}
.lnc-fgal__accent {
  font-family: var(--lnc-font-serif);
  font-style: italic;
  font-weight: 500;
  color: var(--lnc-accent-deep);
}
.lnc-fgal__lead {
  max-width: 54ch;
  margin: 16px auto 0;
  font-family: var(--lnc-font-serif);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.65;
  color: var(--lnc-ink-soft);
}

/* 2 · full-bleed band */
.lnc-fgal__band {
  position: relative;
  width: 100%;
  height: clamp(420px, 78vh, 860px);
  overflow: hidden;
  background: var(--lnc-accent-wash);
}
.lnc-fgal__band-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center var(--band-focus, center);
  display: block;
}
/* product packshots (auto-populated fallbacks) sit contained on white, like the design's product frames */
.lnc-fgal__band-img--product { object-fit: contain; background: var(--lnc-white); padding: clamp(24px, 4vw, 56px); mix-blend-mode: multiply; }
.lnc-fgal__band-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: clamp(24px, 4vw, 60px);
  pointer-events: none;
  background: linear-gradient(to top, rgba(10, 20, 22, .52), rgba(10, 20, 22, 0));
}
.lnc-fgal__band-kicker {
  font-family: var(--lnc-font-mono);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .72);
}
.lnc-fgal__band-caption {
  margin-top: 10px;
  max-width: 22ch;
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: clamp(24px, 3.4vw, 44px);
  line-height: 1.04;
  letter-spacing: -.02em;
  color: var(--lnc-white);
}

/* 3a · two-up captioned */
.lnc-fgal__duo-wrap {
  max-width: 1280px;
  margin-inline: auto;
  padding: clamp(24px, 4vw, 44px) clamp(24px, 6vw, 80px) 0;
}
.lnc-fgal__duo-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(16px, 2.5vw, 28px);
}
.lnc-fgal__duo-text {
  margin-top: 18px;
  max-width: 40ch;
}
.lnc-fgal__duo-title {
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: clamp(18px, 1.6vw, 22px);
  color: var(--lnc-ink);
}
.lnc-fgal__duo-caption {
  margin: 8px 0 0;
  font-family: var(--lnc-font-serif);
  font-size: 15px;
  line-height: 1.65;
  color: var(--lnc-ink-soft);
}

/* 3b · detail trio */
.lnc-fgal__trio-wrap {
  max-width: 1280px;
  margin-inline: auto;
  padding: clamp(20px, 3vw, 32px) clamp(24px, 6vw, 80px) clamp(60px, 9vh, 110px);
}
.lnc-fgal__trio-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(12px, 2vw, 20px);
}

/* shared framed images (duo 4/5 · tile 1/1) */
.lnc-fgal__frame {
  position: relative;
  overflow: hidden;
  background: var(--lnc-cloud);
  border: 1px solid var(--lnc-accent-line);
}
.lnc-fgal__frame--duo {
  aspect-ratio: 4 / 5;
  border-radius: 20px;
}
.lnc-fgal__frame--tile {
  aspect-ratio: 1 / 1;
  border-radius: 16px;
}
.lnc-fgal__frame-img--product { object-fit: contain !important; background: var(--lnc-white); padding: clamp(16px, 2.5vw, 32px); mix-blend-mode: multiply; }
/* "Show whole image" block option: infographics and text graphics must never be cover-cropped */
.lnc-fgal__frame-img--contain { object-fit: contain !important; background: var(--lnc-white); padding: clamp(10px, 1.5vw, 18px); }
.lnc-fgal__frame-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* mobile */
@media (max-width: 749px) {
  .lnc-fgal__band {
    height: clamp(320px, 56vh, 480px);
  }
  .lnc-fgal__duo-grid,
  .lnc-fgal__trio-grid {
    grid-template-columns: 1fr;
  }
}
/* END_SECTION:lnc-flag-gallery */

/* START_SECTION:lnc-flag-header (INDEX:51) */
.lnc-fprogress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 90; background: transparent; pointer-events: none; }
.lnc-fprogress__fill { display: block; height: 100%; width: 0%; background: var(--lnc-accent); transition: width .1s linear; }
.lnc-fhdr { position: fixed; top: 0; left: 0; right: 0; z-index: 80; height: 74px; display: flex; align-items: center; justify-content: space-between; padding: 0 clamp(20px, 4vw, 52px); border-bottom: 1px solid transparent; background: transparent; transition: background-color .4s ease, border-color .4s ease, backdrop-filter .4s ease; }
.lnc-fhdr.is-past { background: color-mix(in srgb, var(--lnc-paper) 88%, transparent); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-bottom-color: var(--lnc-accent-line); }
.lnc-fhdr__left { display: flex; align-items: center; gap: 22px; }
.lnc-fhdr__back { display: inline-flex; align-items: center; gap: 7px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-ink); text-decoration: none; transition: color .2s ease; }
.lnc-fhdr__back:hover { color: var(--lnc-accent-deep); }
/* Flagship pages sit on the design's full-bleed paper ground (constrained sections must not expose white).
   Scoped via the body class theme.liquid adds for flagship templates — section stylesheet CSS compiles globally. */
body.lnc-flagship-body { background: var(--lnc-paper); }
.lnc-fhdr__back-arrow { font-size: 15px; line-height: 1; }
.lnc-fhdr__logo { height: 46px; width: auto; display: block; }
.lnc-fhdr__nav { display: flex; gap: 26px; font-family: var(--lnc-font-body); font-weight: 600; font-size: 14px; opacity: 0; transform: translateY(-8px); pointer-events: none; transition: opacity .34s ease, transform .34s ease; }
.lnc-fhdr__nav a { color: var(--lnc-ink); text-decoration: none; }
.lnc-fhdr__nav a:hover { color: var(--lnc-accent-deep); }
.lnc-fhdr:hover .lnc-fhdr__nav, .lnc-fhdr:focus-within .lnc-fhdr__nav, .lnc-fhdr.is-past .lnc-fhdr__nav { opacity: 1; transform: none; pointer-events: auto; }
.lnc-fhdr__right { display: flex; align-items: center; gap: 16px; }
/* Price pill rides the site's .lnc-cta wipe-fill, sized down for the header. */
.lnc-fhdr__cta { position: relative; overflow: hidden; z-index: 0; isolation: isolate; font-family: var(--lnc-font-body); font-weight: 700; font-size: 13px; color: var(--lnc-ink); background: transparent; border: 1px solid currentColor; border-radius: var(--lnc-radius-pill); padding: 9px 18px; text-decoration: none; transition: color .35s ease, letter-spacing .35s ease; }
.lnc-fhdr__cta::before { content: ''; position: absolute; inset: 0; z-index: -1; background: var(--lnc-ink); transform: scaleX(0); transform-origin: center; transition: transform .42s var(--lnc-ease-cta); border-radius: var(--lnc-radius-pill); }
.lnc-fhdr__cta:is(:hover, :focus-visible)::before { transform: scaleX(1); }
.lnc-fhdr__cta:is(:hover, :focus-visible) { color: var(--lnc-paper); letter-spacing: .03em; }
.lnc-fhdr__cart { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; color: var(--lnc-ink); transition: transform .2s var(--lnc-ease), color .2s ease; }
.lnc-fhdr__cart:hover { transform: translateY(-2px); color: var(--lnc-accent-deep); }
.lnc-fhdr__count { position: absolute; top: 2px; right: 0; min-width: 17px; height: 17px; padding: 0 4px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; background: var(--lnc-accent); color: var(--lnc-paper, #fff); font-family: var(--lnc-font-mono); font-size: 10px; font-weight: 600; line-height: 1; }
.lnc-fhdr__count--empty { display: none !important; } /* !important: Dawn's .cart-count-bubble rules win otherwise */
@media (max-width: 749px) {
  .lnc-fhdr__nav { display: none; }
  .lnc-fhdr__logo { height: 36px; }
  /* The price pill can't fit beside Back + logo + cart on a phone — it crowded the
     row and shoved the logo. The sticky buy bar and closing CTA carry the price. */
  .lnc-fhdr__cta { display: none; }
  .lnc-fhdr__left { gap: 14px; }
  /* Logo dead-centre between Back and the cart */
  .lnc-fhdr__left > a[aria-label] { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }
}
/* END_SECTION:lnc-flag-header */

/* START_SECTION:lnc-flag-hero (INDEX:52) */
.lnc-fhero { position: relative; height: 100vh; height: 100svh; min-height: 640px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: clamp(10px, 2vh, 24px); padding: 96px 24px; overflow: hidden; background: linear-gradient(180deg, var(--lnc-accent-wash) 0%, var(--lnc-paper) 100%); }
.lnc-fhero__blob { position: absolute; border-radius: 50%; filter: blur(8px); pointer-events: none; }
.lnc-fhero__blob--a { width: 62vw; height: 62vw; left: -14vw; top: -16vw; background: radial-gradient(circle at center, color-mix(in srgb, var(--lnc-accent) 22%, transparent), transparent 68%); }
.lnc-fhero__blob--b { width: 48vw; height: 48vw; right: -12vw; bottom: -16vw; background: radial-gradient(circle at center, color-mix(in srgb, var(--lnc-spark) 16%, transparent), transparent 70%); }
.lnc-fhero__video { position: absolute; inset: 0; z-index: 0; }
.lnc-fhero__video video { width: 100%; height: 100%; object-fit: cover; }
.lnc-fhero__scrim { position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(18,26,24,.34) 0%, rgba(18,26,24,.16) 44%, rgba(18,26,24,.68) 100%); }
.lnc-fhero__eyebrow { order: 1; position: relative; z-index: 3; margin-bottom: -16px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 13px; letter-spacing: .34em; text-transform: uppercase; color: var(--lnc-accent-deep); pointer-events: none; text-align: center; animation: lncHeroEyeIn .7s cubic-bezier(.22,.61,.36,1) .05s both; }
.lnc-fhero__img { order: 2; position: relative; height: auto; max-height: 62vh; width: auto; max-width: 94vw; object-fit: contain; mix-blend-mode: multiply; z-index: 2; will-change: transform; animation: lncHeroImgIn .9s cubic-bezier(.22,.61,.36,1) .12s both; }
.lnc-fhero__title { order: 3; position: relative; z-index: 3; margin: 0; text-align: center; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(32px, 4.8vw, 74px); line-height: 1.0; letter-spacing: -.03em; color: var(--lnc-ink); pointer-events: none; animation: lncHeroTitleIn .9s cubic-bezier(.22,.61,.36,1) .32s both; }
.lnc-fhero__title--ondark { color: var(--lnc-on-dark); }
.lnc-fhero__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-fhero__title--ondark .lnc-fhero__accent { color: var(--lnc-accent-on-dark); }
.lnc-fhero__eyebrow, .lnc-fhero__cue { will-change: transform; }
.lnc-fhero__cue { position: absolute; bottom: 22px; left: 0; right: 0; z-index: 4; display: flex; flex-direction: column; align-items: center; gap: 6px; color: var(--lnc-ink-soft); pointer-events: none; }
.lnc-fhero__cue span { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; }
.lnc-fhero__cue svg { width: 20px; height: 20px; animation: lncCueBob 1.8s ease-in-out infinite; }
@keyframes lncHeroEyeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: none; } }
@keyframes lncHeroImgIn { from { opacity: 0; transform: translateY(28px) scale(.93); } to { opacity: 1; transform: none; } }
@keyframes lncHeroTitleIn { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
@keyframes lncCueBob { 0%, 100% { transform: translateY(0); opacity: .55; } 50% { transform: translateY(7px); opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .lnc-fhero__eyebrow, .lnc-fhero__img, .lnc-fhero__title, .lnc-fhero__cue svg { animation: none; } }
.lnc-fhero__img, .lnc-fhero__title, .lnc-fhero__blob { will-change: transform; }
/* END_SECTION:lnc-flag-hero */

/* START_SECTION:lnc-flag-keypoints (INDEX:53) */
.lnc-fkp { background: var(--lnc-white); border-top: 1px solid var(--lnc-line); padding: clamp(72px, 11vh, 130px) clamp(24px, 6vw, 80px); }
.lnc-fkp__inner { max-width: 1200px; margin: 0 auto; }
.lnc-fkp__head { text-align: center; max-width: 640px; margin: 0 auto; }
.lnc-fkp__eyebrow { display: inline-block; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-fkp__h { margin: 14px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(30px, 3.6vw, 44px); line-height: 1.05; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-fkp__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-fkp__grid { display: grid; grid-template-columns: 1fr minmax(300px, 460px) 1fr; gap: clamp(24px, 4vw, 56px); align-items: center; margin-top: clamp(36px, 5vh, 60px); }
.lnc-fkp__media { display: flex; align-items: center; justify-content: center; }
.lnc-fkp__img { width: 100%; height: auto; object-fit: contain; mix-blend-mode: multiply; }
.lnc-fkp__col { display: flex; flex-direction: column; gap: clamp(28px, 5vh, 48px); }
.lnc-fkp__col--left { text-align: right; align-items: flex-end; }
.lnc-fkp__col--right { text-align: left; align-items: flex-start; }
.lnc-fkp__point { max-width: 30ch; }
.lnc-fkp__num { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .16em; color: var(--lnc-accent-deep); }
.lnc-fkp__t { margin: 8px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: 17.5px; line-height: 1.25; color: var(--lnc-ink); }
.lnc-fkp__b { margin: 6px 0 0; font-family: var(--lnc-font-serif); font-size: 15px; line-height: 1.6; color: var(--lnc-body); }
@media (max-width: 899px) {
  .lnc-fkp { padding-inline: var(--lnc-gutter, 20px); }
  .lnc-fkp__grid { grid-template-columns: 1fr; gap: 8px; }
  .lnc-fkp__media { order: -1; max-width: 420px; margin: 0 auto 18px; }
  .lnc-fkp__col--left, .lnc-fkp__col--right { text-align: left; align-items: flex-start; gap: 22px; }
  .lnc-fkp__col--left { margin-bottom: 22px; }
  .lnc-fkp__point { max-width: none; }
}
/* END_SECTION:lnc-flag-keypoints */

/* START_SECTION:lnc-flag-manifesto (INDEX:54) */
.lnc-fman {
  padding-block: var(--pt, clamp(90px, 15vh, 180px)) var(--pb, clamp(90px, 15vh, 180px));
  padding-inline: clamp(24px, 6vw, 80px);
  max-width: 1100px;
  margin-inline: auto;
  text-align: center;
  background: var(--lnc-paper);
}
.lnc-fman__statement p {
  margin: 0;
  font-family: var(--lnc-font-serif);
  font-size: clamp(26px, 3.6vw, 46px);
  line-height: 1.32;
  letter-spacing: -.01em;
  color: var(--lnc-ink);
  text-wrap: balance;
}
.lnc-fman__statement em {
  font-style: italic;
  color: var(--lnc-accent-deep);
}
.lnc-fman__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 44px;
}
.lnc-fman__rule {
  width: 44px;
  height: 1px;
  background: var(--lnc-accent-line);
}
.lnc-fman__est {
  font-family: var(--lnc-font-mono);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--lnc-accent-deep);
}
/* END_SECTION:lnc-flag-manifesto */

/* START_SECTION:lnc-flag-review (INDEX:55) */
.lnc-frev {
  padding-block: var(--pt, clamp(90px, 14vh, 170px)) var(--pb, clamp(90px, 14vh, 170px));
  padding-inline: clamp(24px, 6vw, 80px);
  max-width: 1000px;
  margin-inline: auto;
  text-align: center;
  background: var(--lnc-paper);
}
.lnc-frev__stars {
  color: var(--lnc-spark);
  font-size: 20px;
  letter-spacing: 3px;
}
.lnc-frev__quote p {
  margin: 26px 0 0;
  font-family: var(--lnc-font-serif);
  font-style: italic;
  font-size: clamp(24px, 3.4vw, 42px);
  line-height: 1.34;
  letter-spacing: -.01em;
  color: var(--lnc-ink);
  text-wrap: balance;
}
.lnc-frev__attr {
  margin-top: 28px;
  font-family: var(--lnc-font-mono);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--lnc-ink-soft);
}
/* END_SECTION:lnc-flag-review */

/* START_SECTION:lnc-flag-specs (INDEX:56) */
.lnc-fspecs { background: var(--lnc-cloud); border-top: 1px solid var(--lnc-accent-line); padding: clamp(80px, 12vh, 150px) clamp(24px, 6vw, 80px); scroll-margin-top: 84px; }
.lnc-fspecs__warn { margin-top: 26px; background: #FFF9EA; border: 1px solid #EDD9A3; border-left: 5px solid #F6B40E; border-radius: 10px; padding: 16px 20px; }
.lnc-fspecs__warnhead { display: flex; align-items: center; gap: 9px; font-family: var(--lnc-font-mono); font-weight: 700; font-size: 13px; letter-spacing: .24em; text-transform: uppercase; color: var(--lnc-ink); }
.lnc-fspecs__warnhead .lnc-warn-tri { flex: 0 0 auto; display: block; }
.lnc-fspecs__warnlist { margin: 10px 0 0; padding-left: 16px; display: flex; flex-direction: column; gap: 5px; }
.lnc-fspecs__warnlist li { font-family: var(--lnc-font-body); font-size: 13px; line-height: 1.55; color: var(--lnc-body); }
.lnc-fspecs__warnnote { margin: 12px 0 0; padding-top: 10px; border-top: 1px dashed #EDD9A3; font-family: var(--lnc-font-body); font-size: 12.5px; line-height: 1.6; color: var(--lnc-body); }
.lnc-fspecs__inner { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(36px, 6vw, 90px); align-items: start; }
.lnc-fspecs__eyebrow { display: inline-block; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-fspecs__h { margin: 14px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(32px, 4.4vw, 56px); line-height: 1.04; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-fspecs__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-fspecs__desc { margin-top: 22px; font-family: var(--lnc-font-serif); font-size: clamp(15.5px, 1.3vw, 18px); line-height: 1.7; color: var(--lnc-ink-soft); max-width: 54ch; }
.lnc-fspecs__desc p { margin: 0 0 14px; }
.lnc-fspecs__desc strong { font-family: var(--lnc-font-body); font-weight: 700; font-size: .92em; color: var(--lnc-ink); }
.lnc-fspecs__desc ul { margin: 0 0 14px; padding-left: 20px; }
.lnc-fspecs__desc li { margin: 5px 0; }
.lnc-fspecs__table { border-top: 1.5px solid var(--lnc-ink); padding-top: 6px; }
.lnc-fspecs__row { display: flex; justify-content: space-between; align-items: baseline; gap: 24px; padding: 15px 0; border-bottom: 1px solid var(--lnc-accent-line); }
.lnc-fspecs__label { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-ink-soft); flex-shrink: 0; }
.lnc-fspecs__value { font-family: var(--lnc-font-body); font-weight: 600; font-size: 15px; color: var(--lnc-ink); text-align: right; }
.lnc-fspecs__note { margin-top: 16px; font-family: var(--lnc-font-serif); font-style: italic; font-size: 14px; color: var(--lnc-ink-soft); }
.lnc-fspecs__dl { font-family: var(--lnc-font-body); font-weight: 600; font-size: 15px; color: var(--lnc-accent-deep); text-decoration: none; border-bottom: 1px solid var(--lnc-accent-line); transition: color .2s ease, border-color .2s ease; }
.lnc-fspecs__dl:hover { color: var(--lnc-ink); border-color: var(--lnc-ink); }
@media (max-width: 899px) {
  .lnc-fspecs__inner { grid-template-columns: 1fr; gap: 36px; }
  .lnc-fspecs__value { text-align: left; }
}
/* END_SECTION:lnc-flag-specs */

/* START_SECTION:lnc-flag-ugc (INDEX:57) */
.lnc-fugc {
  padding-block: 0 clamp(20px, 4vw, 40px);
  background: var(--lnc-paper);
}
.lnc-fugc__head {
  text-align: center;
  padding: 0 24px 24px;
}
.lnc-fugc__hash {
  font-family: var(--lnc-font-mono);
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--lnc-accent-deep);
}
.lnc-fugc__scroll {
  display: flex;
  gap: 14px;
  overflow-x: auto;
  padding: 0 clamp(20px, 5vw, 60px) 12px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
.lnc-fugc__scroll::-webkit-scrollbar {
  width: 0;
  height: 0;
}
.lnc-fugc__tile {
  scroll-snap-align: center;
  flex: 0 0 auto;
  width: clamp(220px, 26vw, 320px);
  aspect-ratio: 4 / 5;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
  background: var(--lnc-cloud);
}
.lnc-fugc__tile--ph1 {
  background: repeating-linear-gradient(135deg, #E3DCCE, #E3DCCE 13px, #EEE8DC 13px, #EEE8DC 26px);
}
.lnc-fugc__tile--ph2 {
  background: repeating-linear-gradient(135deg, #ECEAE6, #ECEAE6 13px, #E9EEE7 13px, #E9EEE7 26px);
}
.lnc-fugc__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.lnc-fugc__handle {
  position: absolute;
  bottom: 12px;
  left: 12px;
  font-family: var(--lnc-font-mono);
  font-size: 10px;
  color: var(--lnc-ink-soft);
  background: rgba(255, 255, 255, .85);
  padding: 4px 8px;
  border-radius: 5px;
}
/* END_SECTION:lnc-flag-ugc */

/* START_SECTION:lnc-footer (INDEX:58) */
.lnc-footer { padding-block: 56px 22px; margin-top: auto; }
.lnc-footer__top { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 32px; }
.lnc-footer__logo img { display: block; height: 42px; width: auto; }
.lnc-footer__tag { font-family: var(--lnc-font-serif); font-size: 14.5px; line-height: 1.6; color: var(--lnc-on-dark-soft); max-width: 34ch; margin: 16px 0 0; }
.lnc-footer__contact { display: flex; flex-direction: column; gap: 6px; margin-top: 18px; font-family: var(--lnc-font-mono); font-size: 11.5px; letter-spacing: .04em; color: var(--lnc-on-dark-soft); }
.lnc-footer__contact a { color: inherit; text-decoration: none; }
.lnc-footer__contact a:hover { color: var(--lnc-on-dark); }
/* Column headings must READ as headings — the old 11px mono treatment blended
   into the links (owner feedback). Now: display face, cream, clearly larger
   than the 14px muted links, with a short accent underline. */
.lnc-footer__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 16px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 16.5px; letter-spacing: -.01em; color: var(--lnc-cream, #F4EEE4); list-style: none; cursor: default; }
.lnc-footer__head::-webkit-details-marker { display: none; }
.lnc-footer__head > span:first-child { position: relative; padding-bottom: 8px; }
.lnc-footer__head > span:first-child::after { content: ''; position: absolute; left: 0; bottom: 0; width: 26px; height: 2px; border-radius: 2px; background: var(--lnc-accent-on-dark); }
.lnc-footer__accmark { display: none; font-family: var(--lnc-font-body); font-weight: 400; font-size: 20px; color: var(--lnc-on-dark-mute); transition: transform .25s var(--lnc-ease); }
.lnc-footer__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 11px; }
.lnc-footer__list a { color: var(--lnc-on-dark-soft); font-size: 14px; text-decoration: none; }
.lnc-footer__list a:hover { color: var(--lnc-on-dark); }
.lnc-footer__social { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 44px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); }
.lnc-footer__followlabel { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-on-dark-mute); }
.lnc-footer__icons { display: flex; gap: 8px; }
.lnc-footer__icon { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: rgba(255,255,255,.08); color: var(--lnc-on-dark); transition: transform .2s var(--lnc-ease), background .2s var(--lnc-ease); }
.lnc-footer__icon:hover { transform: translateY(-2px); background: var(--lnc-accent); }
.lnc-footer__handle { font-family: var(--lnc-font-serif); font-style: italic; font-size: 15px; color: var(--lnc-on-dark-soft); }
/* Inline email capture (design: input pill + cream Join button; input ≥16px or iOS zooms) */
.lnc-footer__nl { margin: 18px 0 0; max-width: 380px; }
.lnc-footer__nl-row { display: flex; gap: 8px; }
.lnc-footer__nl-input { flex: 1; min-width: 0; height: 46px; padding: 0 16px; font-family: var(--lnc-font-body); font-size: 16px; color: #FDFBF7; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.2); border-radius: var(--lnc-radius-pill); outline: none; transition: border-color .18s var(--lnc-ease); }
.lnc-footer__nl-input::placeholder { color: rgba(255,255,255,.45); }
.lnc-footer__nl-input:focus { border-color: var(--lnc-accent-on-dark); }
.lnc-footer__nl-btn { flex: 0 0 auto; height: 46px; padding: 0 24px; border: 0; border-radius: var(--lnc-radius-pill); font-family: var(--lnc-font-body); font-weight: 700; font-size: 14.5px; color: var(--lnc-ink); background: #F4EEE4; cursor: pointer; }
.lnc-footer__nl-btn:hover { background: #FFFFFF; }
.lnc-footer__nl-ok { margin: 18px 0 0; font-family: var(--lnc-font-serif); font-size: 15px; color: var(--lnc-accent-on-dark); }
.lnc-footer__nl-err { margin: 0 0 8px; font-family: var(--lnc-font-body); font-size: 13px; color: #E8A090; }
.lnc-footer__nl-note { margin: 10px 0 0; font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-spark); }
.lnc-footer__legal { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; margin-top: 22px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.12); font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-on-dark-mute); }
.lnc-footer__legal a { color: var(--lnc-on-dark-soft); text-decoration: none; }
.lnc-footer__links { display: inline-flex; gap: 14px; }
.lnc-footer__pay { margin-left: auto; display: inline-flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; align-items: center; }
.lnc-footer__pay .lnc-pay-icon { height: 22px; width: auto; border-radius: 3px; }
.lnc-footer__paychip { font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .04em; text-transform: uppercase; color: var(--lnc-on-dark-soft); background: rgba(255,255,255,.08); border-radius: 6px; padding: 5px 10px; }
/* Desktop + tablet: details behave as plain headed columns (summary inert) */
@media (min-width: 750px) {
  .lnc-footer__col .lnc-footer__head { pointer-events: none; }
}
@media (max-width: 989px) { .lnc-footer__top { grid-template-columns: 1fr 1fr; gap: 30px 24px; } .lnc-footer__brand { grid-column: 1 / -1; } }
@media (max-width: 749px) {
  /* Accordions: one full-width column per menu, 48px+ rows, closed by default
     (the inline script strips `open` at this width). */
  .lnc-footer__top { grid-template-columns: 1fr; gap: 0; }
  .lnc-footer__brand { margin-bottom: 22px; }
  .lnc-footer__col { border-top: 1px solid rgba(255,255,255,.12); }
  .lnc-footer__col:last-of-type { border-bottom: 1px solid rgba(255,255,255,.12); }
  .lnc-footer__head { margin: 0; min-height: 52px; font-size: 15.5px; cursor: pointer; }
  .lnc-footer__head > span:first-child { padding-bottom: 0; }
  .lnc-footer__head > span:first-child::after { display: none; }
  .lnc-footer__accmark { display: inline-block; }
  .lnc-footer__col[open] .lnc-footer__accmark { transform: rotate(45deg); color: var(--lnc-accent-on-dark); }
  .lnc-footer__list { padding: 2px 0 18px; gap: 0; }
  .lnc-footer__list a { display: inline-flex; align-items: center; min-height: 42px; font-size: 14.5px; }
}
@media (max-width: 599px) { .lnc-footer__pay { margin-left: 0; } }
@media (max-width: 749px) {
  /* owner: the email field + Join button span the full mobile width */
  .lnc-footer__nl { max-width: none; }
}
/* END_SECTION:lnc-footer */

/* START_SECTION:lnc-guide-list (INDEX:59) */
.lnc-guides { padding-block: var(--pt, 64px) var(--pb, 72px); }
.lnc-guides__wrap { max-width: 860px; }
.lnc-guides__eyebrow { text-align: center; }
.lnc-guides__h { margin: 12px 0 22px; text-align: center; }
.lnc-guides__search { display: flex; align-items: center; gap: 10px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-pill); padding: 7px 7px 7px 22px; box-shadow: 0 12px 30px rgba(27,40,50,.08); max-width: 560px; margin: 0 auto 26px; }
.lnc-guides__search svg { color: var(--lnc-muted); flex-shrink: 0; }
.lnc-guides__searchinput { flex: 1; min-width: 0; font-family: var(--lnc-font-body); font-size: 15px; color: var(--lnc-ink); border: 0; outline: none; background: transparent; padding: 12px 0; }
.lnc-guides__list { border-top: 1px solid var(--lnc-line); }
.lnc-guides__row { display: flex; align-items: center; gap: 14px; padding: 16px 6px; border-bottom: 1px solid var(--lnc-line-soft); text-decoration: none; transition: background .15s ease; }
.lnc-guides__row:hover { background: var(--lnc-cloud); }
.lnc-guides__icon { display: inline-flex; color: var(--lnc-accent-deep); flex-shrink: 0; }
.lnc-guides__title { font-family: var(--lnc-font-display); font-weight: 600; font-size: 15.5px; color: var(--lnc-ink); }
.lnc-guides__cat { font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); background: var(--lnc-cloud); border: 1px solid var(--lnc-line); border-radius: 999px; padding: 4px 10px; }
.lnc-guides__dl { margin-left: auto; font-family: var(--lnc-font-body); font-weight: 700; font-size: 13px; color: var(--lnc-accent-deep); white-space: nowrap; }
.lnc-guides__empty { text-align: center; padding: 40px 16px; }
.lnc-guides__empty-h { font-family: var(--lnc-font-display); font-weight: 600; font-size: 18px; color: var(--lnc-ink); }
.lnc-guides__empty-p { margin: 8px 0 0; font-family: var(--lnc-font-serif); font-size: 15px; color: var(--lnc-body); }
@media (max-width: 749px) {
  .lnc-guides__row { display: grid; grid-template-columns: 20px 1fr auto; grid-template-areas: "icon title dl" "icon cat dl"; align-items: center; column-gap: 12px; row-gap: 6px; padding: 14px 4px; }
  .lnc-guides__icon { grid-area: icon; align-self: start; margin-top: 2px; }
  .lnc-guides__title { grid-area: title; font-size: 15px; line-height: 1.3; }
  .lnc-guides__cat { grid-area: cat; justify-self: start; font-size: 9.5px; padding: 3px 8px; }
  .lnc-guides__dl { grid-area: dl; margin-left: 0; align-self: center; }
}
/* END_SECTION:lnc-guide-list */

/* START_SECTION:lnc-header (INDEX:60) */
.lnc-header { display: block; position: relative; z-index: 40; }
.lnc-header--sticky { position: sticky; top: 0; }
.lnc-header__bar { position: relative; background: color-mix(in srgb, var(--lnc-paper) 90%, transparent); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-bottom: 1px solid var(--lnc-line); transition: background .28s var(--lnc-ease), border-color .28s var(--lnc-ease); }
.lnc-header__inner { max-width: 1480px; margin-inline: auto; padding-inline: clamp(20px, 3.5vw, 72px); height: 82px; display: flex; align-items: center; gap: 20px; }
lnc-header .lnc-header__burger { display: none; }
.lnc-header__logo { display: inline-flex; align-items: center; flex: 0 0 auto; }
.lnc-header__logo-img { height: 46px; width: auto; display: block; }
.lnc-header__logo-light { display: none; }
.lnc-header__nav { display: flex; align-items: center; gap: 4px; margin-inline: auto; font-family: var(--lnc-font-body); font-weight: 600; font-size: 14.5px; }
.lnc-header__navitem { position: static; }
.lnc-item { color: var(--lnc-ink); }
.lnc-item--sale { color: var(--lnc-accent-deep); }
.lnc-header__utils { display: flex; align-items: center; gap: 18px; flex: 0 0 auto; }
.lnc-header__util { color: var(--lnc-ink); position: relative; }
.lnc-header__cart { position: relative; }
lnc-header .lnc-header__count { position: absolute; top: -6px; right: -8px; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 999px; background: var(--lnc-spark); color: var(--lnc-ink-deep); font-family: var(--lnc-font-mono); font-weight: 600; font-size: 10px; line-height: 1; display: inline-flex; align-items: center; justify-content: center; }
lnc-header .lnc-header__count--empty { display: none; }

/* ---- Mega panels ---- */
.lnc-mega { position: absolute; left: 0; right: 0; top: 100%; background: #fff; border: 1px solid var(--lnc-line-soft); border-top: 0; border-radius: 0 0 18px 18px; box-shadow: 0 30px 60px rgba(27,40,50,.12); padding: 38px clamp(24px, 3.5vw, 72px); opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity .24s var(--lnc-ease), transform .24s var(--lnc-ease), visibility .24s; z-index: 39; }
.lnc-mega.is-open { opacity: 1; visibility: visible; transform: none; }
.lnc-mega__inner { max-width: 1480px; margin-inline: auto; display: grid; grid-template-columns: minmax(200px, 1.1fr) minmax(150px, 1fr) minmax(170px, 1fr) minmax(220px, 380px); gap: clamp(20px, 3vw, 72px); align-items: start; }
.lnc-mega__inner--links { grid-template-columns: minmax(200px, 1.1fr) 1fr 1fr 1fr; }
.lnc-mega__title { font-family: var(--lnc-font-display); font-weight: 600; font-size: 22px; letter-spacing: -.01em; color: var(--lnc-ink); margin: 0; }
.lnc-mega__lead { font-family: var(--lnc-font-serif); font-style: italic; font-weight: 400; font-size: 15.5px; line-height: 1.6; color: var(--lnc-body); max-width: 30ch; margin: 10px 0 16px; }
.lnc-mega__explore { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-mega__colhead { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-muted); margin: 0 0 14px; }
.lnc-mega__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; font-size: 14px; }
.lnc-mega__ctawrap { margin-top: 6px; }
.lnc-mega__card { display: block; justify-self: end; width: 100%; max-width: 380px; text-decoration: none; background: var(--lnc-cloud); border: 1px solid var(--lnc-line-soft); border-radius: 14px; padding: 16px; transition: transform .3s var(--lnc-ease), box-shadow .3s var(--lnc-ease); }
.lnc-mega__card:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(27,40,50,.10); }
.lnc-mega__cardmedia { display: flex; aspect-ratio: 4 / 3; background: #fff; border-radius: 10px; overflow: clip; align-items: center; justify-content: center; }
.lnc-mega__cardmedia img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; padding: 12px; }
.lnc-mega__cardbadge { display: inline-block; margin-top: 12px; font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-mega__cardtitle { display: block; margin-top: 6px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 18px; color: var(--lnc-ink); }
.lnc-mega__cardprice { display: block; margin-top: 4px; font-size: 14px; }

/* ---- Header over a full-bleed video hero: fixed overlay, transparent at the very top ---- */
.lnc-header__inner { z-index: 1; }
/* When the current page has a transparent video hero, the header floats over it (fixed) and the
   announcement bar is hidden so the video reads full-bleed — matches the design's Video hero. */
body:has([data-lnc-hero-overlay]) .lnc-announcement { display: none; }
body:has([data-lnc-hero-overlay]) .lnc-header--sticky { position: fixed; top: 0; left: 0; right: 0; z-index: 45; }
/* transparent + white contents at the very top (not scrolled, no mega open) */
body:has([data-lnc-hero-overlay]) .lnc-header:not(.is-solid):not(.is-mega) .lnc-header__bar { background: transparent; border-bottom-color: transparent; backdrop-filter: none; -webkit-backdrop-filter: none; }
body:has([data-lnc-hero-overlay]) .lnc-header:not(.is-solid):not(.is-mega) .lnc-header__bar::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 150px; background: linear-gradient(180deg, rgba(8,16,14,.42), transparent); pointer-events: none; z-index: 0; }
body:has([data-lnc-hero-overlay]) .lnc-header:not(.is-solid):not(.is-mega) .lnc-item,
body:has([data-lnc-hero-overlay]) .lnc-header:not(.is-solid):not(.is-mega) .lnc-header__util,
body:has([data-lnc-hero-overlay]) .lnc-header:not(.is-solid):not(.is-mega) .lnc-header__burger { color: #fff; }
body:has([data-lnc-hero-overlay]) .lnc-header:not(.is-solid):not(.is-mega) .lnc-item::after { background: #fff; }
body:has([data-lnc-hero-overlay]) .lnc-header:not(.is-solid):not(.is-mega) .lnc-item--sale { color: #fff; }
body:has([data-lnc-hero-overlay]) .lnc-header:not(.is-solid):not(.is-mega) .lnc-header__logo-dark { display: none; }
body:has([data-lnc-hero-overlay]) .lnc-header:not(.is-solid):not(.is-mega) .lnc-header__logo-light { display: block; }
/* Default logo: filter the already-loaded ink logo to pure white — instant, no second image request,
   so the logo is white from the very first paint. (A custom uploaded light logo still uses the swap.) */
body:has([data-lnc-hero-overlay]) .lnc-header--autolight:not(.is-solid):not(.is-mega) .lnc-header__logo-dark { display: block; filter: brightness(0) invert(1); }
body:has([data-lnc-hero-overlay]) .lnc-header--autolight:not(.is-solid):not(.is-mega) .lnc-header__logo-light { display: none; }

/* ---- Mega open: bar turns solid white so the bar + panel read as one connected surface ---- */
.lnc-header.is-mega .lnc-header__bar { background: var(--lnc-white); border-bottom-color: var(--lnc-line-soft); backdrop-filter: none; -webkit-backdrop-filter: none; }
.lnc-header.is-mega .lnc-item, .lnc-header.is-mega .lnc-header__util, .lnc-header.is-mega .lnc-header__burger { color: var(--lnc-ink); }
.lnc-header.is-mega .lnc-item::after { background: var(--lnc-accent); }

/* ---- Mobile drawer (design mobile.dc.html “02 · Menu drawer”) ---- */
.lnc-drawer { position: fixed; inset: 0; z-index: 60; visibility: hidden; }
.lnc-drawer.is-open { visibility: visible; }
.lnc-drawer__overlay { position: absolute; inset: 0; background: rgba(15,24,32,.52); backdrop-filter: blur(2px); -webkit-backdrop-filter: blur(2px); opacity: 0; transition: opacity .3s var(--lnc-ease); }
.lnc-drawer.is-open .lnc-drawer__overlay { opacity: 1; }
.lnc-drawer__panel { position: absolute; top: 0; bottom: 0; left: 0; width: min(336px, 88vw); background: var(--lnc-paper); box-shadow: 24px 0 60px rgba(15,24,32,.3); display: flex; flex-direction: column; transform: translateX(-105%); transition: transform .34s var(--lnc-ease); }
.lnc-drawer.is-open .lnc-drawer__panel { transform: none; }
.lnc-drawer__top { display: flex; align-items: center; justify-content: space-between; padding: 14px 16px 0; }
/* Logo aligns with the search pill + nav below (16px gutter — the old 4px margin
   pushed it to 20px and it read misaligned), and 32px matches the header's weight. */
.lnc-drawer__logolink { display: inline-flex; align-items: center; min-height: 44px; }
.lnc-drawer__top img { height: 32px; width: auto; display: block; }
.lnc-drawer__close { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; background: none; border: 0; color: var(--lnc-ink); cursor: pointer; }
.lnc-drawer__search { display: flex; align-items: center; gap: 10px; height: 48px; margin: 14px 16px 0; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 12px; padding: 0 14px; text-decoration: none; }
.lnc-drawer__search:focus-within { border-color: var(--lnc-accent); }
.lnc-drawer__search svg { color: var(--lnc-muted); flex-shrink: 0; }
.lnc-drawer__searchinput { flex: 1; min-width: 0; font-family: var(--lnc-font-body); font-size: 16px; color: var(--lnc-ink); background: transparent; border: none; outline: none; padding: 0; }
.lnc-drawer__searchinput::placeholder { color: var(--lnc-muted); }
.lnc-drawer__searchinput::-webkit-search-decoration, .lnc-drawer__searchinput::-webkit-search-cancel-button { -webkit-appearance: none; }
.lnc-drawer__searchtext { flex: 1; min-width: 0; font-family: var(--lnc-font-body); font-size: 16px; color: var(--lnc-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lnc-drawer__search { cursor: text; }
.lnc-drawer__nav { flex: 1; overflow-y: auto; padding: 18px 16px 0; scrollbar-width: none; }
.lnc-drawer__nav::-webkit-scrollbar { display: none; }
.lnc-drawer__acc { border-bottom: 1px solid #E7DFD1; }
.lnc-drawer__parent { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 16px 4px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 19px; letter-spacing: -.01em; color: var(--lnc-ink); text-decoration: none; cursor: pointer; list-style: none; }
.lnc-drawer__parent::-webkit-details-marker { display: none; }
.lnc-drawer__parent--link { border-bottom: 1px solid #E7DFD1; }
.lnc-drawer__chev { display: inline-flex; color: var(--lnc-muted); transform: rotate(-90deg); transition: transform .24s var(--lnc-ease), color .24s var(--lnc-ease); }
.lnc-drawer__chev--link { transform: none; }
.lnc-drawer__acc[open] > .lnc-drawer__parent .lnc-drawer__chev { transform: rotate(-180deg); color: var(--lnc-accent-deep); }
.lnc-drawer__children { display: flex; flex-direction: column; padding: 0 4px 14px; }
.lnc-drawer__child { padding: 12px 0; font-size: 15.5px; color: var(--lnc-body); text-decoration: none; }
.lnc-drawer__shopall { padding: 12px 0 4px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); text-decoration: none; }
.lnc-drawer__parent.is-sale > span:first-child { color: var(--lnc-rust); }
.lnc-drawer__salebadge { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 9px; letter-spacing: .08em; text-transform: uppercase; color: #fff; background: var(--lnc-rust); border-radius: var(--lnc-radius-pill); padding: 5px 9px; }
.lnc-drawer__card { display: flex; align-items: center; gap: 14px; margin-top: 18px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 14px; padding: 12px 14px; text-decoration: none; }
.lnc-drawer__card img { width: 56px; height: 56px; object-fit: contain; mix-blend-mode: multiply; }
.lnc-drawer__cardeyebrow { display: block; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 9px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-drawer__cardtitle { display: block; font-family: var(--lnc-font-display); font-weight: 600; font-size: 15.5px; color: var(--lnc-ink); margin-top: 4px; }
.lnc-drawer__secondary { display: flex; flex-direction: column; padding: 16px 4px 8px; margin-top: 8px; border-top: 1px solid #E7DFD1; }
.lnc-drawer__secondary a { padding: 11px 0; font-size: 15px; color: var(--lnc-body); text-decoration: none; }
.lnc-drawer__foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid var(--lnc-line); background: var(--lnc-cloud); padding: 14px 20px calc(16px + env(safe-area-inset-bottom, 10px)); }
.lnc-drawer__account { display: inline-flex; align-items: center; gap: 10px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 14.5px; color: var(--lnc-ink); text-decoration: none; }
.lnc-drawer__account svg { color: var(--lnc-accent-deep); }
.lnc-drawer__phone { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-accent-deep); text-decoration: none; }


/* PDP back chevron: mobile-only (desktop keeps the full nav).
   Needs the lnc-header prefix: base.css `.lnc-iconbtn{display:inline-flex}`
   loads AFTER compiled section CSS and would win at equal specificity. */
lnc-header .lnc-header__back { display: none; }

@media (max-width: 989px) {
  lnc-header .lnc-header__burger { display: inline-flex; }
  /* On the PDP the back chevron replaces the burger (design mobile-product 01) */
  lnc-header .lnc-header__back { display: inline-flex; color: var(--lnc-ink); }
  lnc-header .lnc-header__inner:has(.lnc-header__back) .lnc-header__burger { display: none; }
  .lnc-header__nav { display: none; }
  /* position:relative so the absolute logo anchors to THIS 64px row — anchored
     to the bar, it would sink when the search bar opens below and adds height. */
  .lnc-header__inner { height: 64px; gap: 12px; position: relative; }
  /* Logo centred to the DEVICE, not to the leftover flex space — with one icon
     left and two right, margin:auto sat it visibly off-centre. */
  .lnc-header__logo { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); margin-inline: 0; }
  .lnc-header__logo-img { height: 38px; }
  /* With the logo out of the flex flow, nothing pushes the icons right —
     without this they huddle next to the burger. */
  .lnc-header__utils { margin-left: auto; }
  /* Search + cart only on mobile (account lives in the drawer foot). The extra
     .lnc-header__utils ancestor is required: this compiled CSS loads BEFORE
     lnc-base.css, so a bare class here loses to .lnc-iconbtn{display:inline-flex}. */
  .lnc-header__utils .lnc-header__util--account { display: none; }
  .lnc-mega { display: none; }
}
/* ---- Search overlay (snippets/lnc-search-overlay; opened by assets/lnc-search.js) ----
   Desktop: panel drops from the top over a dimmed page. Mobile: full-screen takeover.
   Zero state (recent / popular / browse) shows until Dawn's predictive-search sets [open]. */
html.lnc-so-lock { overflow: hidden; }
.lnc-so { position: fixed; inset: 0; z-index: 70; }
.lnc-so[hidden] { display: none; }
.lnc-so__backdrop { position: absolute; inset: 0; background: rgba(15,24,32,.52); backdrop-filter: blur(2px); -webkit-backdrop-filter: blur(2px); opacity: 0; transition: opacity .3s var(--lnc-ease); }
.lnc-so.is-open .lnc-so__backdrop { opacity: 1; }
.lnc-so__panel { position: absolute; left: 0; right: 0; top: 0; max-height: min(88vh, 780px); display: flex; flex-direction: column; background: var(--lnc-paper); border-bottom: 1px solid var(--lnc-line); box-shadow: 0 30px 60px rgba(27,40,50,.18); opacity: 0; transform: translateY(-14px); transition: opacity .3s var(--lnc-ease), transform .32s var(--lnc-ease); }
.lnc-so.is-open .lnc-so__panel { opacity: 1; transform: none; }
.lnc-so__ps, .lnc-so__form { display: flex; flex-direction: column; min-height: 0; }
.lnc-so__bar { display: flex; align-items: center; gap: 14px; width: 100%; max-width: 1080px; margin: 0 auto; padding: 26px clamp(20px, 3.5vw, 72px) 14px; box-sizing: border-box; }
.lnc-so__back { display: none; }
.lnc-so__field { flex: 1; min-width: 0; display: flex; align-items: center; gap: 12px; height: 60px; background: var(--lnc-white); border: 1px solid var(--lnc-accent); border-radius: var(--lnc-radius-pill); padding: 0 8px 0 22px; box-shadow: 0 18px 40px rgba(27,40,50,.10); cursor: text; transition: box-shadow .2s var(--lnc-ease); }
.lnc-so__field:focus-within { box-shadow: 0 0 0 4px var(--lnc-accent-wash), 0 18px 40px rgba(27,40,50,.10); }
.lnc-so__icon { display: inline-flex; color: var(--lnc-accent-deep); flex-shrink: 0; }
.lnc-so__input { flex: 1; min-width: 0; font-family: var(--lnc-font-body); font-size: 18px; color: var(--lnc-ink); background: transparent; border: 0; outline: 0; padding: 0; }
.lnc-so__input::placeholder { color: var(--lnc-muted); }
.lnc-so__input:focus, .lnc-so__input:focus-visible { outline: none; box-shadow: none; }
.lnc-so__input::-webkit-search-decoration, .lnc-so__input::-webkit-search-cancel-button { -webkit-appearance: none; }
.lnc-so__clear { flex: 0 0 auto; width: 32px; height: 32px; border-radius: 50%; border: 0; background: var(--lnc-cloud); color: var(--lnc-ink); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.lnc-so__clear:hover { background: var(--lnc-accent-wash); }
.lnc-so__go { flex: 0 0 auto; width: 44px; height: 44px; border-radius: 50%; border: 0; background: var(--lnc-ink); color: var(--lnc-cream); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; transition: background .2s var(--lnc-ease); }
.lnc-so__go:hover { background: var(--lnc-ink-deep); }
.lnc-so__x { flex: 0 0 auto; width: 48px; height: 48px; border-radius: 50%; border: 1px solid var(--lnc-line); background: var(--lnc-white); color: var(--lnc-ink); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; transition: background .2s var(--lnc-ease), color .2s var(--lnc-ease), border-color .2s var(--lnc-ease); }
.lnc-so__x:hover { background: var(--lnc-ink); color: var(--lnc-cream); border-color: var(--lnc-ink); }
/* thin strip under the bar while a suggestion fetch is in flight */
.lnc-so__progress { height: 2px; width: 100%; max-width: 1080px; margin: 0 auto; opacity: 0; background: linear-gradient(90deg, transparent, var(--lnc-accent), transparent) no-repeat; background-size: 40% 100%; transition: opacity .2s; }
predictive-search[loading] .lnc-so__progress { opacity: 1; animation: lnc-so-progress 1s linear infinite; }
@keyframes lnc-so-progress { from { background-position: -40% 0; } to { background-position: 140% 0; } }
.lnc-so__body { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; width: 100%; max-width: 1080px; margin: 0 auto; padding: 10px clamp(20px, 3.5vw, 72px) 34px; box-sizing: border-box; }
/* zero state <-> suggestions */
.lnc-so__zero { display: grid; grid-template-columns: 1.2fr 1fr; gap: 26px 48px; }
.lnc-so__zgroup--recent { grid-column: 1 / -1; }
predictive-search[open] .lnc-so__zero { display: none; }
.lnc-so__results { display: none; outline: none; }
predictive-search[open] .lnc-so__results { display: block; }
.lnc-so__h, .lnc-ps__h { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-muted); margin: 0 0 12px; }
.lnc-so__zhead { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.lnc-so__zhead .lnc-so__h { margin: 0; }
.lnc-so__zclear { background: none; border: 0; padding: 0; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); cursor: pointer; }
.lnc-so__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.lnc-so__chip { display: inline-flex; align-items: center; gap: 7px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 13px; color: var(--lnc-ink); background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 8px 14px; text-decoration: none; transition: transform .2s var(--lnc-ease), box-shadow .24s var(--lnc-ease); }
.lnc-so__chip:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(27,40,50,.12); }
.lnc-so__chip--recent { background: var(--lnc-white); border-color: var(--lnc-line); color: var(--lnc-body); font-weight: 600; }
.lnc-so__chip--recent svg { color: var(--lnc-muted); }
.lnc-so__browse { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; }
.lnc-so__browse a { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--lnc-line-soft); font-family: var(--lnc-font-body); font-weight: 600; font-size: 14px; color: var(--lnc-ink); text-decoration: none; }
.lnc-so__browse a svg { flex-shrink: 0; color: var(--lnc-muted); transition: transform .2s var(--lnc-ease), color .2s var(--lnc-ease); }
.lnc-so__browse a:hover svg { color: var(--lnc-accent-deep); transform: translateX(3px); }

/* ---- Predictive results (sections/predictive-search.liquid — overlay + search-page hero) ---- */
.lnc-ps__groups { display: grid; grid-template-columns: minmax(230px, 1fr) minmax(0, 1.7fr); gap: 8px 44px; align-items: start; }
.lnc-ps__groups--noprod, .lnc-ps__groups--noside { grid-template-columns: 1fr; }
.lnc-ps__group + .lnc-ps__group { margin-top: 22px; }
.lnc-ps__list { list-style: none; margin: 0; padding: 0; }
.lnc-ps__item { margin: 0; }
.lnc-ps__link { display: flex; align-items: center; gap: 10px; padding: 9px 10px; margin: 0 -10px; border-radius: 10px; font-family: var(--lnc-font-body); font-size: 14.5px; color: var(--lnc-ink); text-decoration: none; transition: background .15s; }
.lnc-ps__link > svg { flex-shrink: 0; color: var(--lnc-muted); }
.lnc-ps__item:hover .lnc-ps__link, .lnc-ps__item[aria-selected="true"] .lnc-ps__link { background: var(--lnc-accent-wash); }
.lnc-ps__qtext { font-weight: 700; }
.lnc-ps__qtext mark { background: none; color: inherit; font-weight: 400; }
.lnc-ps__ctitle { flex: 1; min-width: 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: 15px; }
.lnc-ps__kind { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 9.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--lnc-accent-deep); white-space: nowrap; }
.lnc-ps__link--edit { align-items: flex-start; }
.lnc-ps__eicon { flex: 0 0 auto; width: 30px; height: 30px; border-radius: 50%; background: var(--lnc-accent-wash); color: var(--lnc-accent-deep); display: inline-flex; align-items: center; justify-content: center; }
.lnc-ps__ebody { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.lnc-ps__etitle { font-family: var(--lnc-font-display); font-weight: 600; font-size: 14px; line-height: 1.3; }
.lnc-ps__list--products { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 18px; }
.lnc-ps__product { display: flex; align-items: center; gap: 14px; padding: 8px; margin: 0 -8px; border-radius: 12px; text-decoration: none; transition: background .15s, box-shadow .2s; }
.lnc-ps__item:hover .lnc-ps__product, .lnc-ps__item[aria-selected="true"] .lnc-ps__product { background: var(--lnc-white); box-shadow: 0 10px 24px rgba(27,40,50,.08); }
.lnc-ps__thumb { flex: 0 0 64px; width: 64px; height: 64px; border-radius: 10px; background: var(--lnc-white); border: 1px solid var(--lnc-line-soft); display: inline-flex; align-items: center; justify-content: center; overflow: hidden; color: var(--lnc-taupe); }
.lnc-ps__thumb img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; padding: 4px; box-sizing: border-box; }
.lnc-ps__pbody { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.lnc-ps__ptitle { font-family: var(--lnc-font-display); font-weight: 600; font-size: 14.5px; line-height: 1.25; color: var(--lnc-ink); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.lnc-ps__price { font-family: var(--lnc-font-mono); font-weight: 600; font-size: 12.5px; color: var(--lnc-ink); }
.lnc-ps__was { color: var(--lnc-taupe); font-weight: 400; margin-left: 6px; }
.lnc-ps__soldout { color: var(--lnc-muted); font-weight: 500; }
.lnc-ps__empty { padding: 6px 0 2px; }
.lnc-ps__empty-h { margin: 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: 18px; color: var(--lnc-ink); }
.lnc-ps__empty-p { margin: 6px 0 0; font-family: var(--lnc-font-serif); font-size: 15px; color: var(--lnc-body); }
.lnc-ps__all { list-style: none; margin: 22px 0 0; padding: 18px 0 0; border-top: 1px solid var(--lnc-line-soft); }
.lnc-ps__allbtn { display: inline-flex; align-items: center; gap: 10px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 14px; color: var(--lnc-cream); background: var(--lnc-ink); border-radius: var(--lnc-radius-pill); padding: 12px 22px; text-decoration: none; transition: background .2s var(--lnc-ease), gap .2s var(--lnc-ease); }
.lnc-ps__item--all:hover .lnc-ps__allbtn, .lnc-ps__item--all[aria-selected="true"] .lnc-ps__allbtn { background: var(--lnc-ink-deep); gap: 14px; }

@media (max-width: 989px) {
  .lnc-so__backdrop { display: none; }
  .lnc-so__panel { bottom: 0; max-height: none; border-bottom: 0; box-shadow: none; transform: translateY(10px); }
  .lnc-so__bar { padding: 8px 14px 8px 2px; gap: 4px; }
  .lnc-so__back { display: inline-flex; flex: 0 0 auto; width: 44px; height: 44px; align-items: center; justify-content: center; background: none; border: 0; padding: 0; color: var(--lnc-ink); cursor: pointer; }
  .lnc-so__x { display: none; }
  .lnc-so__field { height: 48px; gap: 10px; padding: 0 5px 0 14px; border-color: var(--lnc-line); box-shadow: none; }
  .lnc-so__field:focus-within { border-color: var(--lnc-accent); box-shadow: none; }
  .lnc-so__icon svg { width: 18px; height: 18px; }
  .lnc-so__input { font-size: 16px; } /* 16px: iOS doesn't zoom the page on focus */
  .lnc-so__clear { width: 28px; height: 28px; }
  .lnc-so__go { width: 38px; height: 38px; }
  .lnc-so__body { padding: 6px 16px calc(28px + env(safe-area-inset-bottom, 0px)); }
  .lnc-so__zero { grid-template-columns: 1fr; gap: 22px; }
  .lnc-so__browse { grid-template-columns: 1fr; }
  .lnc-ps__groups { grid-template-columns: 1fr; gap: 18px; }
  .lnc-ps__list--products { grid-template-columns: 1fr; gap: 2px; }
  .lnc-ps__all { position: sticky; bottom: 0; margin-top: 16px; padding: 12px 0 4px; background: var(--lnc-paper); }
  .lnc-ps__allbtn { width: 100%; justify-content: center; box-sizing: border-box; }
}
/* END_SECTION:lnc-header */

/* START_SECTION:lnc-hero (INDEX:61) */
.lnc-hero { position: relative; }
.lnc-hero .lnc-cta { font-size: 15px; }
/* Two-class selector: base .lnc-eyebrow (muted taupe) loads after this sheet and was
   winning the tie — the eyebrow rendered near-invisible over the hero video. */
.lnc-hero .lnc-eyebrow.lnc-hero__eyebrow { color: #FFFFFF; letter-spacing: .24em; }

/* ---- Video ---- */
.lnc-hero--video { height: 100vh; height: 100svh; min-height: 640px; overflow: hidden; background: var(--lnc-ink-deep); }
.lnc-hero__video, .lnc-hero__video video, .lnc-hero__video img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lnc-hero__scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(16,27,26,calc(.42 * var(--scrim, .72) / .72)) 0%, rgba(16,27,26,calc(.40 * var(--scrim, .72) / .72)) 45%, rgba(16,27,26,var(--scrim, .72)) 100%); }
.lnc-hero__inner--center { position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; max-width: 1040px; margin-inline: auto; padding-inline: var(--lnc-gutter); will-change: transform, opacity; }
.lnc-hero--video .lnc-hero__video { will-change: transform; }
.lnc-hero--video .lnc-hero__h1 { color: #fff; text-shadow: 0 1px 3px rgba(8,16,14,.35), 0 3px 26px rgba(8,16,14,.55); max-width: 20ch; margin-top: 16px; }
.lnc-hero--video .lnc-hero__h1 .lnc-serif { color: #BFDBD6; text-shadow: 0 1px 3px rgba(8,16,14,.45), 0 3px 26px rgba(8,16,14,.6); }
.lnc-hero--video .lnc-hero__eyebrow, .lnc-hero--video .lnc-hero__body, .lnc-hero--video .lnc-hero-rating { text-shadow: 0 1px 3px rgba(8,16,14,.5), 0 2px 20px rgba(8,16,14,.55); }
.lnc-hero--video .lnc-hero__body { color: rgba(255,255,255,.96); max-width: 46ch; }
.lnc-hero--video .lnc-hero__ctas .lnc-cta { padding: 16px 32px; }
.lnc-hero__glass { background: rgba(255,255,255,.12); box-shadow: inset 0 0 0 1.5px rgba(255,255,255,.55); backdrop-filter: blur(4px); }
.lnc-hero__cue { position: absolute; left: 0; right: 0; bottom: 26px; z-index: 3; display: flex; flex-direction: column; align-items: center; gap: 7px; color: rgba(255,255,255,.92); pointer-events: none; }
.lnc-hero__cue .lnc-mono { font-size: 10.5px; letter-spacing: .28em; }
.lnc-hero__cue svg { animation: lnc-bob 1.8s ease-in-out infinite; }
@keyframes lnc-bob { 0%,100% { transform: translateY(0); opacity: .7; } 50% { transform: translateY(7px); opacity: 1; } }

/* Shared headline / body / ctas / rating */
.lnc-hero__h1 { font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(44px, 6vw, 84px); line-height: .98; letter-spacing: -.035em; color: var(--lnc-ink); margin: 0; }
.lnc-hero__body { font-family: var(--lnc-font-serif); font-size: clamp(16px, 1.4vw, 20px); line-height: 1.6; color: var(--lnc-body); margin: 20px 0 0; }
.lnc-hero__ctas { display: flex; gap: 12px; margin-top: 30px; flex-wrap: wrap; }
.lnc-hero__inner--center .lnc-hero__ctas { justify-content: center; }
.lnc-hero-rating { display: flex; align-items: center; gap: 10px; margin-top: 26px; font-size: 14px; }
.lnc-hero__inner--center .lnc-hero-rating { justify-content: center; color: rgba(255,255,255,.96); }
.lnc-hero-rating__stars { color: var(--lnc-spark); font-size: 15px; letter-spacing: 1px; }
.lnc-hero--video .lnc-hero-rating__stars { color: #E9BE62; filter: drop-shadow(0 1px 3px rgba(8,16,14,.6)); }
.lnc-hero-rating strong { color: inherit; }
.lnc-hero--video .lnc-hero-rating strong { color: #fff; }

/* ---- Static ---- */
.lnc-hero--static { padding-top: 48px; }
.lnc-hero--static .lnc-eyebrow { letter-spacing: .22em; }
.lnc-hero__split { display: grid; grid-template-columns: 1fr 1.05fr; gap: 36px; align-items: stretch; }
.lnc-hero__col { display: flex; flex-direction: column; justify-content: center; padding: 20px 8px 40px; }
.lnc-hero--static .lnc-hero__h1 { font-size: clamp(40px, 5.4vw, 68px); margin-top: 22px; }
.lnc-hero--static .lnc-hero__body { max-width: 44ch; margin-top: 24px; font-size: 19px; }
.lnc-hero--static .lnc-hero__ctas { margin-top: 32px; }
.lnc-hero--static .lnc-hero__ctas .lnc-cta { padding: 16px 30px; }
.lnc-hero--static .lnc-hero__ctas .lnc-cta-outline { padding: 16px 29px; }
.lnc-hero--static .lnc-hero-rating { margin-top: 28px; }
.lnc-hero__well { position: relative; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-lg); overflow: hidden; min-height: 480px; display: flex; align-items: center; justify-content: center; }
.lnc-hero__well img { width: 76%; height: auto; max-height: 88%; object-fit: contain; mix-blend-mode: multiply; }
.lnc-hero__welllabel { position: absolute; top: 22px; left: 24px; font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-hero__wellbadge { position: absolute; top: 22px; right: 24px; font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: #fff; background: var(--lnc-accent); border-radius: var(--lnc-radius-pill); padding: 7px 13px; }

/* ---- Carousel (v1 + v2) ---- */
.lnc-hero__carousel { position: relative; height: 88vh; min-height: 580px; overflow: hidden; background: var(--lnc-cloud); }
.lnc-hero--carousel_v2 .lnc-hero__carousel { height: 100vh; height: 100svh; min-height: 640px; background: radial-gradient(130% 100% at 50% 10%, var(--lnc-white) 0%, var(--lnc-cloud) 54%, var(--lnc-accent-wash) 100%); }
.lnc-hero__scene { position: absolute; inset: 0; opacity: 0; transition: opacity .9s ease; display: grid; grid-template-columns: 1fr 1fr; pointer-events: none; }
.lnc-hero__scene.is-active { opacity: 1; pointer-events: auto; }
.lnc-hero__scenetext { display: flex; flex-direction: column; justify-content: center; padding: 0 clamp(28px, 5vw, 88px); background: var(--lnc-paper); border-right: 1px solid var(--lnc-accent-line); }
.lnc-hero--carousel_v2 .lnc-hero__scenetext { background: transparent; border-right: 0; }
.lnc-hero__ceyebrow { display: inline-flex; align-self: flex-start; align-items: center; gap: 8px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11.5px; letter-spacing: .18em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-hero--carousel_v2 .lnc-hero__ceyebrow { font-size: 12px; letter-spacing: .24em; color: var(--lnc-accent-on-dark); }
.lnc-hero__ctick { width: 22px; height: 2px; background: var(--lnc-spark); display: inline-block; }
.lnc-hero--carousel_v2 .lnc-hero__ctick { display: none; }
.lnc-hero__ch { font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(38px, 4.6vw, 64px); line-height: 1; letter-spacing: -.03em; color: var(--lnc-ink); margin: 18px 0 0; }
.lnc-hero--carousel_v2 .lnc-hero__ch { font-size: clamp(46px, 6.4vw, 104px); line-height: .94; letter-spacing: -.035em; margin-top: 16px; max-width: 14ch; }
.lnc-hero--carousel_v2 .lnc-hero__ch .lnc-serif { color: var(--lnc-accent-on-dark); }
.lnc-hero__cbody { font-family: var(--lnc-font-serif); font-size: 18px; line-height: 1.6; color: var(--lnc-body); max-width: 40ch; margin: 18px 0 0; }
.lnc-hero__cprice { display: flex; align-items: baseline; gap: 12px; margin-top: 22px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 26px; color: var(--lnc-ink); }
.lnc-hero__cprice .lnc-price-was { font-size: 16px; font-weight: 400; }
.lnc-hero__scenetext .lnc-cta { align-self: flex-start; margin-top: 28px; padding: 15px 30px; }
.lnc-hero--carousel_v2 .lnc-hero__scenetext .lnc-cta { margin-top: 24px; padding: 16px 32px; }
.lnc-hero__scenemedia { position: relative; display: flex; align-items: center; justify-content: center; background: radial-gradient(circle at 58% 46%, var(--lnc-accent-wash), #fff 70%); }
.lnc-hero--carousel_v2 .lnc-hero__scenemedia { background: none; }
.lnc-hero__scenemedia img { width: 76%; height: auto; max-height: 82%; object-fit: contain; mix-blend-mode: multiply; }
.lnc-hero__bar { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: rgba(128,128,128,.18); z-index: 6; }
.lnc-hero__barfill { display: block; height: 100%; width: 0; background: var(--lnc-spark); }
.lnc-hero__dots { position: absolute; left: 0; right: 0; bottom: 26px; z-index: 6; display: flex; gap: 10px; justify-content: center; }
.lnc-hero__dot { width: 34px; height: 4px; border-radius: 999px; border: 0; background: var(--lnc-accent-deep); opacity: .3; cursor: pointer; padding: 0; transition: opacity .3s; }
.lnc-hero__dot.is-active { opacity: 1; }
.lnc-hero--carousel_v2 .lnc-hero__dots { bottom: 30px; }
.lnc-hero--carousel_v2 .lnc-hero__dot { width: 40px; background: var(--lnc-accent-on-dark); }

@media (max-width: 749px) {
  .lnc-hero--video { min-height: 560px; }
  .lnc-hero__h1 { font-size: clamp(32px, 9vw, 48px); }
  .lnc-hero__split { grid-template-columns: 1fr; gap: 20px; }
  .lnc-hero__col { padding: 8px 0 24px; text-align: left; }
  /* Mobile design: CTAs stack full-width, one line each (mobile.dc.html hero) */
  .lnc-hero__ctas { flex-direction: column; align-items: stretch; gap: 10px; width: 100%; max-width: 340px; }
  .lnc-hero__inner--center .lnc-hero__ctas { margin-left: auto; margin-right: auto; }
  .lnc-hero__ctas .lnc-cta { flex: none; width: 100%; justify-content: center; text-align: center; white-space: nowrap; font-size: 16px; padding: 16px 24px; }
  .lnc-hero__scene { grid-template-columns: 1fr; }
  .lnc-hero__scenetext { border-right: 0; border-bottom: 1px solid var(--lnc-accent-line); padding: 32px 24px; text-align: center; align-items: center; }
  .lnc-hero__ceyebrow, .lnc-hero__scenetext .lnc-cta { align-self: center; }
  .lnc-hero__scenemedia { order: -1; }
  .lnc-hero--carousel_v2 .lnc-hero__ch { font-size: clamp(38px, 12vw, 60px); }
}
/* END_SECTION:lnc-hero */

/* START_SECTION:lnc-icon-cards (INDEX:62) */
.lnc-iconcards { padding-block: var(--pt, 84px) var(--pb, 84px); }
.lnc-iconcards--narrow .lnc-wrap { max-width: 900px; }
.lnc-iconcards--narrow .lnc-iconcards__grid { gap: 16px; }
.lnc-iconcards__head { max-width: 60ch; margin-bottom: 44px; }
.lnc-iconcards__h { margin-top: 14px; }
.lnc-iconcards__accent { color: var(--lnc-accent-deep); }
.lnc-iconcards__sub { margin-top: 18px; max-width: 58ch; font-family: var(--lnc-font-serif); font-size: clamp(15px, 1.4vw, 17px); line-height: 1.65; color: var(--lnc-body); }
.lnc-iconcards__grid { display: grid; grid-template-columns: repeat(var(--cols, 3), 1fr); gap: 18px; }
.lnc-iconcards__card { border-radius: var(--lnc-radius); }
.lnc-iconcards--bordered .lnc-iconcards__card { background: var(--lnc-white); border: 1px solid var(--lnc-line); padding: 34px; }
/* White band (About "Values"): band gets hairline top/bottom borders, cards go cloud */
.lnc-iconcards.lnc-bg-white { border-top: 1px solid var(--lnc-line); border-bottom: 1px solid var(--lnc-line); }
.lnc-iconcards.lnc-bg-white.lnc-iconcards--bordered .lnc-iconcards__card { background: var(--lnc-cloud); }
.lnc-iconcards__icon { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 50%; background: var(--lnc-accent-wash); color: var(--lnc-accent-deep); }
.lnc-iconcards__icon svg { width: 21px; height: 21px; }
.lnc-iconcards__title { margin-top: 20px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 21px; letter-spacing: 0; color: var(--lnc-ink); }
.lnc-iconcards__body { margin-top: 10px; font-family: var(--lnc-font-serif); font-size: 15.5px; line-height: 1.65; color: var(--lnc-body); }
@media (max-width: 749px) {
  .lnc-iconcards__grid { grid-template-columns: 1fr; }
  .lnc-iconcards--bordered .lnc-iconcards__card { padding: 28px 24px; }
}
/* END_SECTION:lnc-icon-cards */

/* START_SECTION:lnc-info-table (INDEX:63) */
.lnc-infotable { padding-block: var(--pt, 56px) var(--pb, 0px); }
.lnc-infotable__wrap { max-width: 900px; margin: 0 auto; padding-inline: var(--lnc-gutter, 40px); }
.lnc-infotable__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-infotable__h { margin: 14px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(24px, 3vw, 32px); line-height: 1.05; letter-spacing: -.02em; color: var(--lnc-ink); }
.lnc-infotable__intro { margin: 16px 0 0; font-family: var(--lnc-font-serif); font-size: clamp(15px, 1.3vw, 18px); line-height: 1.65; color: var(--lnc-body); }
.lnc-infotable__intro p { margin: 0 0 10px; }
.lnc-infotable__intro p:last-child { margin-bottom: 0; }
.lnc-infotable__panel { margin-top: 20px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 14px; overflow: hidden; }
.lnc-infotable__head, .lnc-infotable__row { display: grid; grid-template-columns: 1.3fr .8fr 1.2fr; }
.lnc-infotable__head { background: var(--lnc-ink); color: var(--lnc-line-soft); }
.lnc-infotable__hcell { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; padding: 14px 18px; }
.lnc-infotable__row { border-top: 1px solid var(--lnc-line-soft); }
.lnc-infotable__panel > .lnc-infotable__row:first-child { border-top: 0; }
.lnc-infotable__row.is-alt { background: var(--lnc-cloud); }
.lnc-infotable__cell { padding: 15px 18px; }
.lnc-infotable__label { font-family: var(--lnc-font-display); font-weight: 600; font-size: 15px; line-height: 1.4; color: var(--lnc-ink); }
.lnc-infotable__value { font-family: var(--lnc-font-body); font-weight: 600; font-size: 14px; line-height: 1.4; color: var(--lnc-ink); }
.lnc-infotable__note { font-family: var(--lnc-font-body); font-weight: 400; font-size: 14px; line-height: 1.4; color: var(--lnc-body); }
.lnc-infotable__foot { margin-top: 12px; font-family: var(--lnc-font-mono); font-weight: 400; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-taupe); }
.lnc-infotable__foot p { margin: 0 0 6px; }
.lnc-infotable__foot p:last-child { margin-bottom: 0; }
@media (max-width: 600px) {
  .lnc-infotable__head { display: none; }
  .lnc-infotable__row { grid-template-columns: 1fr; }
  .lnc-infotable__cell { padding: 4px 18px; }
  .lnc-infotable__cell:first-child { padding-top: 14px; }
  .lnc-infotable__cell:last-child { padding-bottom: 14px; }
}
/* END_SECTION:lnc-info-table */

/* START_SECTION:lnc-media-text (INDEX:64) */
.lnc-mt__caption { margin: 10px 2px 0; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-mt { padding-block: var(--pt, 84px) var(--pb, 84px); border-top: 1px solid var(--lnc-line); border-bottom: 1px solid var(--lnc-line); }
.lnc-mt.lnc-bg-white { }
.lnc-mt__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; align-items: center; }
.lnc-mt--img-right .lnc-mt__media { order: 2; }
.lnc-mt--img-right .lnc-mt__text { order: 1; }
.lnc-mt__media { align-self: start; }
.lnc-mt__frame { border-radius: 18px; overflow: hidden; aspect-ratio: 4 / 3; background: var(--lnc-cloud); }
.lnc-mt__img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lnc-mt__placeholder { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; background: repeating-linear-gradient(135deg, #EDE3D2, #EDE3D2 14px, var(--lnc-cream) 14px, var(--lnc-cream) 28px); }
.lnc-mt__phlabel { background: rgba(255, 255, 255, .82); color: var(--lnc-muted); letter-spacing: .06em; padding: 7px 13px; border-radius: 8px; }
.lnc-mt__h { margin-top: 16px; font-size: clamp(28px, 3.4vw, 36px); }
.lnc-mt__body { margin-top: 18px; font-family: var(--lnc-font-serif); font-size: 17px; line-height: 1.7; color: var(--lnc-body); max-width: 48ch; }
.lnc-mt__body p { margin: 0 0 12px; }
.lnc-mt__body p:last-child { margin-bottom: 0; }
.lnc-mt__cta { margin-top: 24px; font-size: 15px; padding: 14px 28px; }
@media (max-width: 749px) {
  /* mobile.dc.html "Our promise": white band 34px below the previous section,
     30/34 vertical padding, image (radius 16) on top, left-aligned text under it.
     Overrides are scoped .lnc-mt … so they beat lnc-base ties (load order). */
  .lnc-mt { margin-top: 34px; padding-block: 30px 34px; }
  .lnc-mt__grid { grid-template-columns: 1fr; gap: 22px; }
  .lnc-mt--img-right .lnc-mt__media { order: 0; }
  .lnc-mt--img-right .lnc-mt__text { order: 0; }
  .lnc-mt__frame { border-radius: 16px; }
  .lnc-mt .lnc-eyebrow { font-size: 10.5px; letter-spacing: .18em; }
  .lnc-mt .lnc-mt__h { margin-top: 10px; font-size: 27px; line-height: 1.06; }
  .lnc-mt__body { margin-top: 12px; font-size: 16px; line-height: 1.68; max-width: none; }
  .lnc-mt__cta { margin-top: 18px; font-size: 15px; padding: 14px 26px; }
  /* design shows an ink-filled pill here; .lnc-cta-ink is the cream on-dark
     variant and disappears against this band's white background */
  .lnc-mt__cta.lnc-cta-ink { color: var(--lnc-cream); background: var(--lnc-ink); }
}
/* END_SECTION:lnc-media-text */

/* START_SECTION:lnc-newsletter (INDEX:65) */
.lnc-news { padding-block: clamp(48px, 6vw, var(--pt, 72px)) clamp(48px, 6vw, var(--pb, 72px)); border-top: 1px solid var(--lnc-line); border-bottom: 1px solid var(--lnc-line); }
.lnc-news__grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 36px; align-items: center; }
.lnc-news__badge { display: inline-flex; align-items: center; gap: 9px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--lnc-ink-deep); background: var(--lnc-spark); border-radius: var(--lnc-radius-pill); padding: 7px 14px; }
.lnc-news__heading { margin-top: 18px; font-size: clamp(30px, 3.4vw, 44px); line-height: 1.04; }
.lnc-news__body { margin-top: 14px; font-family: var(--lnc-font-serif); font-size: 16.5px; line-height: 1.6; color: var(--lnc-body); max-width: 42ch; }
.lnc-news__body p { margin: 0; }
.lnc-news__field { display: flex; gap: 8px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-pill); padding: 7px; box-shadow: 0 12px 30px rgba(27, 40, 50, .10); }
.lnc-news__input { flex: 1; min-width: 0; font-family: var(--lnc-font-body); font-size: 15px; color: var(--lnc-ink); border: none; outline: none; padding: 14px 20px; background: transparent; }
.lnc-news__submit { background: var(--lnc-spark); color: var(--lnc-ink-deep); border: none; white-space: nowrap; padding: 14px 26px; }
.lnc-news__disclaimer { margin-top: 12px; color: var(--lnc-muted); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.lnc-news__success { display: inline-flex; align-items: center; gap: 8px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 15px; color: var(--lnc-sage); background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-pill); padding: 14px 22px; }
.lnc-news__error { margin-top: 10px; font-family: var(--lnc-font-body); font-size: 13px; color: var(--lnc-rust); }
@media (max-width: 749px) {
  .lnc-news__grid { grid-template-columns: 1fr; gap: 24px; }
}
/* END_SECTION:lnc-newsletter */

/* START_SECTION:lnc-page-hero (INDEX:66) */
.lnc-phero { padding-block: var(--pt, 68px) var(--pb, 0px); }
.lnc-phero--band { background: var(--lnc-accent-wash); padding-block: clamp(56px, 8vw, 96px); }
.lnc-phero__wrap { max-width: 900px; margin: 0 auto; padding-inline: var(--lnc-gutter, 40px); }
.lnc-phero--center .lnc-phero__wrap { text-align: center; }
.lnc-phero__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-phero__h { margin: 20px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(38px, 4.6vw, 58px); line-height: 1; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-phero__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-phero__sub { margin: 20px 0 0; font-family: var(--lnc-font-serif); font-size: clamp(16px, 1.4vw, 18px); line-height: 1.65; color: var(--lnc-body); }
.lnc-phero--center .lnc-phero__sub { margin-left: auto; margin-right: auto; max-width: 54ch; }
.lnc-phero__ctas { display: flex; gap: 12px; margin-top: 28px; flex-wrap: wrap; }
.lnc-phero--center .lnc-phero__ctas { justify-content: center; }

/* ---- Split layout (About "Raised by Australian families." hero) ---- */
.lnc-phero--split .lnc-phero__wrap { max-width: var(--lnc-wrap, 1280px); text-align: left; }
.lnc-phero--split .lnc-phero__grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 56px; align-items: center; }
.lnc-phero--split .lnc-phero__eyebrow { display: inline-flex; align-items: center; gap: 9px; font-size: 11.5px; letter-spacing: .2em; color: var(--lnc-accent-deep); }
.lnc-phero__heart { width: 15px; height: 15px; fill: var(--lnc-spark); animation: lnc-phero-heart 2.6s ease-in-out infinite; }
@keyframes lnc-phero-heart { 0%, 100% { transform: scale(1); } 12% { transform: scale(1.14); } 24% { transform: scale(1); } }
.lnc-phero--split .lnc-phero__h { margin-top: 22px; font-size: clamp(48px, 5vw, 72px); line-height: .98; letter-spacing: -.035em; }
.lnc-phero--split .lnc-phero__sub { margin-top: 24px; font-size: 19px; max-width: 46ch; }
.lnc-phero--split .lnc-phero__ctas { margin-top: 30px; }
.lnc-phero--split .lnc-phero__cta1 { font-size: 15px; padding: 16px 30px; }
.lnc-phero--split .lnc-phero__cta2 { font-size: 15px; padding: 15px 28px; color: var(--lnc-accent-deep); box-shadow: inset 0 0 0 1px var(--lnc-accent); }
.lnc-phero__media-col { position: relative; }
.lnc-phero__media { border-radius: 20px; overflow: hidden; aspect-ratio: 4 / 4.6; box-shadow: 0 30px 60px rgba(27, 40, 50, .14); background: var(--lnc-cloud); }
.lnc-phero__media img, .lnc-phero__media svg { width: 100%; height: 100%; object-fit: cover; display: block; }
.lnc-phero__statcard { position: absolute; left: -26px; bottom: 34px; background: var(--lnc-cloud); border: 1px solid var(--lnc-line); border-radius: 14px; padding: 18px 22px; box-shadow: 0 18px 40px rgba(27, 40, 50, .12); max-width: 250px; }
.lnc-phero__statval { font-family: var(--lnc-font-display); font-weight: 600; font-size: 30px; letter-spacing: -.02em; color: var(--lnc-ink); }
.lnc-phero__statcap { font-weight: 400; font-size: 10.5px; letter-spacing: .1em; color: var(--lnc-muted); margin-top: 4px; }
@media (max-width: 899px) {
  .lnc-phero--split .lnc-phero__grid { grid-template-columns: 1fr; gap: 40px; }
  .lnc-phero__statcard { left: 16px; bottom: 16px; }
}
/* END_SECTION:lnc-page-hero */

/* START_SECTION:lnc-people (INDEX:67) */
.lnc-people { padding-block: var(--pt, 84px) var(--pb, 84px); }
.lnc-people__grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 56px; align-items: center; }
.lnc-people__h { margin-top: 16px; line-height: 1.05; }
.lnc-people__body { margin-top: 20px; font-family: var(--lnc-font-serif); font-size: 17px; line-height: 1.75; color: var(--lnc-body); max-width: 50ch; }
.lnc-people__body p { margin: 0 0 14px; }
.lnc-people__body p:last-child { margin-bottom: 0; }
.lnc-people__rows { display: flex; flex-direction: column; gap: 12px; margin-top: 26px; max-width: 420px; }
.lnc-people__row { display: flex; align-items: center; justify-content: space-between; gap: 16px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 12px; padding: 16px 20px; }
.lnc-people__row-title { font-family: var(--lnc-font-display); font-weight: 600; font-size: 15px; color: var(--lnc-ink); }
.lnc-people__row-cap { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-muted); margin-top: 3px; }
.lnc-people__row-link { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); white-space: nowrap; }
.lnc-people__collage { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.lnc-people__tile { border-radius: 16px; overflow: hidden; aspect-ratio: 3 / 4; background: var(--lnc-cloud); }
.lnc-people__tile:nth-child(2) { margin-top: 28px; }
.lnc-people__tile img, .lnc-people__tile svg { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 899px) {
  .lnc-people__grid { grid-template-columns: 1fr; gap: 40px; }
}
/* END_SECTION:lnc-people */

/* START_SECTION:lnc-product-buy (INDEX:68) */
.lnc-pdp__exclusive { display: grid; gap: 6px; margin: 22px 0 8px; padding: 18px 20px; border: 1px solid var(--lnc-line, #e5e0d8); border-radius: var(--lnc-radius, 14px); background: var(--lnc-paper, #faf7f2); }
.lnc-pdp__exclusive strong { font-family: var(--lnc-font-display); font-size: 16px; color: var(--lnc-ink); }
.lnc-pdp__exclusive span { font-size: 14px; color: var(--lnc-muted); line-height: 1.5; }
.lnc-pdp { padding-block: 0 8px; }
.lnc-pdp__crumb { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); padding: 22px 0 0; display: flex; gap: 8px; flex-wrap: wrap; }
.lnc-pdp__crumb a { color: var(--lnc-muted); text-decoration: none; }
.lnc-pdp__crumb a:hover { color: var(--lnc-accent-deep); }
.lnc-pdp__crumb-cur { color: var(--lnc-ink); }
.lnc-pdp__grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 48px; align-items: start; padding-top: 24px; }

/* Gallery */
.lnc-pdp__slide[hidden], .lnc-pdp__thumb[hidden] { display: none !important; }
.lnc-pdp__gallery { position: sticky; top: 106px; display: grid; grid-template-columns: 76px 1fr; grid-template-areas: 'thumbs stage'; gap: 12px; align-items: start; }
.lnc-pdp__gallery:not(:has(.lnc-pdp__thumbs)) { grid-template-columns: 1fr; grid-template-areas: 'stage'; }
.lnc-pdp__stage { grid-area: stage; position: relative; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 18px; aspect-ratio: 1/1; overflow: hidden; }
.lnc-pdp__badge { position: absolute; z-index: 6; top: 16px; left: 16px; font-weight: 500; font-size: 10.5px; letter-spacing: .08em; padding: 7px 13px; }
.lnc-pdp__wish { position: absolute; z-index: 6; top: 14px; right: 16px; width: 40px; height: 40px; border-radius: 50%; background: var(--lnc-cloud); border: 1px solid var(--lnc-line-soft); display: flex; align-items: center; justify-content: center; color: var(--lnc-muted); cursor: pointer; transition: color .2s var(--lnc-ease); }
.lnc-pdp__wish:hover { color: var(--lnc-rust); }
.lnc-pdp__slide { position: absolute; inset: 0; display: none; align-items: center; justify-content: center; }
.lnc-pdp__slide.is-active { display: flex; }
.lnc-pdp__slide img { width: 94%; height: 94%; object-fit: contain; mix-blend-mode: multiply; transition: transform .12s var(--lnc-ease); will-change: transform; }
.lnc-pdp__stage { cursor: zoom-in; }
.lnc-pdp__stage.is-zooming .lnc-pdp__slide.is-active img { transition: none; }
.lnc-pdp__stage.is-zooming .lnc-pdp__zoomhint, .lnc-pdp__stage.is-zooming .lnc-pdp__badge { opacity: 0; }
/* wish + arrows stay interactive while zooming — hovering them releases the zoom (JS) */
.lnc-pdp__stage.is-zooming .lnc-pdp__wish { opacity: .55; }
.lnc-pdp__zoomhint, .lnc-pdp__wish, .lnc-pdp__badge { transition: opacity .2s var(--lnc-ease); }
.lnc-pdp__slide iframe, .lnc-pdp__slide video { width: 100%; height: 100%; object-fit: cover; border: 0; }
.lnc-pdp__zoomhint { position: absolute; bottom: 14px; right: 16px; display: inline-flex; align-items: center; gap: 6px; font-family: var(--lnc-font-mono); font-size: 9.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); background: var(--lnc-cloud); border: 1px solid var(--lnc-line-soft); border-radius: var(--lnc-radius-pill); padding: 6px 11px; }
@media (hover: none) { .lnc-pdp__zoomhint { display: none; } }
.lnc-pdp__thumbs { grid-area: thumbs; display: flex; flex-direction: column; gap: 10px; max-height: min(560px, 46vw); overflow-y: auto; scrollbar-width: none; padding: 4px; }
.lnc-pdp__thumbs::-webkit-scrollbar { display: none; }
.lnc-pdp__thumb { flex: 0 0 auto; width: 100%; position: relative; background: var(--lnc-white); border: 0; box-shadow: 0 0 0 1px var(--lnc-line-soft); border-radius: 12px; aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; overflow: hidden; cursor: pointer; padding: 0; transition: box-shadow .2s var(--lnc-ease); }
.lnc-pdp__thumb img { width: 78%; height: 78%; object-fit: contain; mix-blend-mode: multiply; }
.lnc-pdp__thumb.is-active { box-shadow: 0 0 0 2px var(--lnc-white), 0 0 0 3.5px var(--lnc-accent); }
.lnc-pdp__thumb-play { position: absolute; right: 5px; bottom: 5px; width: 20px; height: 20px; border-radius: 50%; background: var(--lnc-ink); color: var(--lnc-cream, #FBF7F0); display: flex; align-items: center; justify-content: center; padding-left: 1px; box-shadow: 0 2px 6px rgba(18,24,28,.3); }
/* gallery arrows */
.lnc-pdp__nav { position: absolute; z-index: 5; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border-radius: 50%; background: var(--lnc-cloud); border: 1px solid var(--lnc-line-soft); color: var(--lnc-ink); display: flex; align-items: center; justify-content: center; cursor: pointer; opacity: .92; box-shadow: 0 2px 10px rgba(27,40,50,.08); transition: opacity .2s var(--lnc-ease), transform .2s var(--lnc-ease), color .2s var(--lnc-ease); }
.lnc-pdp__nav--prev { left: 14px; }
.lnc-pdp__nav--next { right: 14px; }
.lnc-pdp__nav:hover { transform: translateY(calc(-50% - 2px)); color: var(--lnc-accent-deep); }
.lnc-pdp__stage.is-zooming .lnc-pdp__nav { opacity: .55; }

/* Info */
.lnc-pdp__info { padding-top: 4px; }
{%- comment -%} The section inherits body { line-height: 1.8 }, which was inflating
    every one-line row in the buy box (design mobile-product 03: eyebrow 13px tall,
    meta 20, price row 41, afterpay 15 — we measured 18/44/58/52). Each row sets
    its own tight line-height instead. {%- endcomment -%}
.lnc-pdp__type { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-muted); margin: 0; line-height: 1.3; }
.lnc-pdp__title { font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(32px, 3.6vw, 44px); line-height: 1; letter-spacing: -.03em; color: var(--lnc-ink); margin: 10px 0 0; }
.lnc-pdp__meta { display: flex; align-items: center; gap: 10px; margin-top: 14px; font-size: 14px; line-height: 1.4; color: var(--lnc-body); flex-wrap: wrap; }
.lnc-pdp__meta .lnc-rating__meta { font-family: var(--lnc-font-body); font-size: 14px; letter-spacing: 0; color: var(--lnc-body); }
/* Design 03: the review count is an underlined jump link to the reviews band */
.lnc-pdp__meta .lnc-rating__count--link { color: inherit; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.lnc-pdp__meta .lnc-rating__count--link:hover { color: var(--lnc-ink); }
.lnc-pdp__dot { width: 4px; height: 4px; border-radius: 50%; background: var(--lnc-taupe); }
.lnc-pdp__stock--out { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-pdp__prices { display: flex; align-items: baseline; gap: 12px; margin-top: 22px; flex-wrap: wrap; }
.lnc-pdp__price { font-family: var(--lnc-font-display); font-weight: 600; font-size: 34px; line-height: 1.15; color: var(--lnc-ink); }
.lnc-pdp__prices .lnc-price-was { font-size: 17px; }
.lnc-pdp__prices .lnc-save { font-weight: 500; font-size: 10.5px; letter-spacing: .08em; padding: 6px 12px; }
{%- comment -%} letter-spacing normal matters: the inherited .6px tracking made the
    line 358px wide in a 350px column, wrapping it to two lines on every phone. {%- endcomment -%}
.lnc-pdp__afterpay { letter-spacing: normal; margin: 12px 0 0; }
.lnc-pdp__desc { font-family: var(--lnc-font-serif); font-size: 16.5px; line-height: 1.65; color: var(--lnc-body); margin: 22px 0 0; max-width: 50ch; }
.lnc-pdp__desc p { margin: 0 0 10px; }

/* Variants */
.lnc-pdp__variants { display: block; margin-top: 26px; }
.lnc-pdp__option + .lnc-pdp__option { margin-top: 20px; }
.lnc-pdp__optlabel { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-muted); line-height: 1.3; }
.lnc-pdp__optlabel span { color: var(--lnc-ink); }
.lnc-pdp__values { display: flex; gap: 12px; margin-top: 12px; flex-wrap: wrap; }
.lnc-pdp__swatch { position: relative; width: 36px; height: 36px; border-radius: 50%; background: var(--sw, var(--lnc-cloud)); cursor: pointer; box-shadow: 0 0 0 1px var(--lnc-line); transition: box-shadow .2s var(--lnc-ease); overflow: hidden; display: inline-flex; }
.lnc-pdp__swatch input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.lnc-pdp__swatch-img { position: absolute; inset: 0; background-size: cover; background-position: center; }
.lnc-pdp__swatch.is-selected { box-shadow: 0 0 0 2px var(--lnc-white), 0 0 0 4px var(--lnc-accent); }
.lnc-pdp__swatch--pill { width: auto; height: auto; border-radius: var(--lnc-radius-pill); background: var(--lnc-white); padding: 10px 18px; }
.lnc-pdp__swatch--pill.is-selected { box-shadow: 0 0 0 1.5px var(--lnc-ink); }
.lnc-pdp__swatch-txt { font-family: var(--lnc-font-body); font-weight: 600; font-size: 14px; color: var(--lnc-ink); position: relative; }

/* Buy */
.lnc-pdp__form { display: block; margin-top: 26px; }
.lnc-pdp__buyrow { display: flex; gap: 12px; align-items: stretch; }
.lnc-pdp__qty { display: inline-flex; align-items: center; border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-pill); overflow: hidden; background: var(--lnc-white); }
.lnc-pdp__qtybtn { border: 0; background: transparent; padding: 0 18px; color: var(--lnc-ink); cursor: pointer; display: inline-flex; align-items: center; height: 100%; }
.lnc-pdp__qtyinput { width: 26px; text-align: center; border: 0; background: transparent; font-family: var(--lnc-font-body); font-weight: 700; font-size: 16px; color: var(--lnc-ink); -moz-appearance: textfield; }
.lnc-pdp__qtyinput::-webkit-outer-spin-button, .lnc-pdp__qtyinput::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.lnc-pdp__add { flex: 1; justify-content: center; font-size: 15px; padding: 16px 24px; }
.lnc-pdp__add[disabled] { opacity: .5; cursor: not-allowed; }
.lnc-pdp__fitting { width: 100%; justify-content: center; margin-top: 12px; padding: 14px 24px; box-shadow: inset 0 0 0 1px var(--lnc-accent); }
/* Dynamic checkout (Shop Pay / Buy it now) — keep wallet branding, shape it to the house pill.
   Dawn's .button ::after paints a 1px ring and the wrapper gets a focus border — both killed. */
.lnc-pdp__form .shopify-payment-button { margin-top: 12px; }
.lnc-pdp__form .shopify-payment-button__button, .lnc-pdp__form .shopify-payment-button__button--unbranded { border-radius: var(--lnc-radius-pill); font-family: var(--lnc-font-body); font-weight: 700; min-height: 52px; border: 0; outline: none; box-shadow: none; overflow: hidden; }
.lnc-pdp__form .shopify-payment-button__button::after { box-shadow: none !important; }
.lnc-pdp__form .shopify-payment-button__button--unbranded { position: relative; z-index: 0; isolation: isolate; background: var(--lnc-accent-deep); color: var(--lnc-cream, #FBF7F0); transition: color .35s ease, letter-spacing .35s ease; }
/* canonical .lnc-cta wipe (ink sweep + letter-spacing), incl. .lnc-hover-test hook for QA */
.lnc-pdp__form .shopify-payment-button__button--unbranded::before { content: ''; position: absolute; inset: 0; z-index: -1; background: var(--lnc-ink); transform: scaleX(0); transform-origin: center; transition: transform .42s cubic-bezier(.77,0,.18,1); box-shadow: none !important; }
.lnc-pdp__form .shopify-payment-button__button--unbranded:is(:hover, :focus-visible, .lnc-hover-test)::before { transform: scaleX(1); }
.lnc-pdp__form .shopify-payment-button__button--unbranded:is(:hover, :focus-visible, .lnc-hover-test) { letter-spacing: .03em; color: var(--lnc-cream, #FBF7F0); }
.lnc-pdp__form .shopify-payment-button__button--hidden { display: none; }
.lnc-pdp__form .shopify-payment-button__more-options { font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-pdp__features { list-style: none; margin: 26px 0 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.lnc-pdp__features li { display: flex; align-items: center; gap: 12px; font-size: 14.5px; color: var(--lnc-body); }
.lnc-pdp__features svg { color: var(--lnc-accent-deep); flex-shrink: 0; }
.lnc-pdp__trust { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 26px; padding-top: 24px; border-top: 1px solid var(--lnc-line); }
.lnc-pdp__trustitem { display: flex; align-items: center; gap: 10px; }
.lnc-pdp__trusticon { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; background: var(--lnc-accent-wash); color: var(--lnc-accent-deep); flex-shrink: 0; font-size: 14px; }
.lnc-pdp__trusttext { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .04em; text-transform: uppercase; color: var(--lnc-body); line-height: 1.3; }

/* ---- Mobile-only elements, hidden on desktop ---- */
.lnc-pdp__track { display: contents; }
.lnc-pdp__count, .lnc-pdp__dots, .lnc-pdp__chips, .lnc-pdp__trustitem--ship, .lnc-pdp__videojump { display: none; }
.lnc-buybar { display: none; }

/* ---- Tap-to-zoom lightbox (opened by JS on mobile taps) ---- */
.lnc-zoom { position: fixed; inset: 0; z-index: 80; background: var(--lnc-white); display: flex; flex-direction: column; }
.lnc-zoom[hidden] { display: none; }
.lnc-zoom__close { position: absolute; top: 14px; right: 14px; z-index: 2; width: 44px; height: 44px; border-radius: 50%; background: var(--lnc-cloud); border: 1px solid var(--lnc-line); color: var(--lnc-ink); font-size: 26px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.lnc-zoom__stage { flex: 1; overflow: hidden; display: flex; align-items: center; justify-content: center; touch-action: none; }
.lnc-zoom__img { width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; will-change: transform; transition: opacity .16s ease; }
.lnc-zoom__count { position: absolute; bottom: calc(18px + env(safe-area-inset-bottom, 0px)); left: 50%; transform: translateX(-50%); z-index: 2; padding: 6px 14px; border-radius: 999px; background: var(--lnc-cloud); border: 1px solid var(--lnc-line); font-family: var(--lnc-font-mono); font-size: 12px; letter-spacing: .08em; color: var(--lnc-ink); pointer-events: none; }
.lnc-zoom__count:empty { display: none; }
.lnc-zoom__stage { padding: 56px 10px calc(52px + env(safe-area-inset-bottom, 0px)); box-sizing: border-box; }
html.lnc-zoom-open { overflow: hidden; }

@media (max-width: 989px) {
  .lnc-pdp__grid { grid-template-columns: 1fr; gap: 28px; }
  .lnc-pdp__gallery { position: static; grid-template-columns: 1fr; grid-template-areas: 'stage' 'thumbs'; }
  .lnc-pdp__thumbs { flex-direction: row; max-height: none; overflow-x: auto; overflow-y: hidden; }
  .lnc-pdp__thumb { width: 72px; }
  .lnc-pdp__nav { opacity: 1; width: 36px; height: 36px; }
}

/* ============================================================================
   Mobile PDP ≤749px — design "Love N Care Mobile - Product.dc.html".
   Full-bleed swipe gallery with dots + counter, one-column buy box in the
   design's decision order, 56px ATC row, trust CARD, chips rail, sticky bar.
   ============================================================================ */
@media (max-width: 749px) {
  /* Breadcrumb: 9.5px mono, single line (orientation, not navigation) */
  .lnc-pdp__crumb { font-size: 9.5px; letter-spacing: .1em; padding-top: 14px; gap: 6px; flex-wrap: nowrap; white-space: nowrap; overflow: hidden; }
  .lnc-pdp__crumb a { overflow: hidden; text-overflow: ellipsis; flex-shrink: 1; min-width: 0; }
  .lnc-pdp__crumb-cur { overflow: hidden; text-overflow: ellipsis; }
  /* Block layout: a 1fr grid track still grows to the carousel's min-content
     width (the 12-slide flex row) and blows the page out sideways — block caps
     the gallery at the wrap width regardless of what the track contains. */
  .lnc-pdp__grid { display: block; padding-top: 12px; }

  /* Gallery: full-bleed white band, scroll-snap carousel, media ≈ square */
  .lnc-pdp__gallery { display: block; margin-inline: calc(-1 * var(--lnc-gutter)); background: var(--lnc-white); border-top: 1px solid var(--lnc-line-soft); border-bottom: 1px solid var(--lnc-line-soft); }
  .lnc-pdp__stage { position: relative; border: 0; border-radius: 0; aspect-ratio: auto; overflow: hidden; background: var(--lnc-white); cursor: default; }
  .lnc-pdp__track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .lnc-pdp__track::-webkit-scrollbar { display: none; }
  .lnc-pdp__slide { display: flex !important; position: static; flex: 0 0 100%; scroll-snap-align: center; height: min(100vw, 440px); align-items: center; justify-content: center; }
  /* will-change:auto — the desktop hover-zoom layer hint would otherwise promote every
     slide to its own GPU texture on phones (12 photos x ~1000px² x DPR3 ≈ tens of MB). */
  .lnc-pdp__slide img { width: 96%; height: 96%; will-change: auto; }
  .lnc-pdp__nav, .lnc-pdp__thumbs, .lnc-pdp__zoomhint { display: none !important; }
  .lnc-pdp__badge { top: 14px; left: 14px; font-size: 9.5px; padding: 6px 11px; }
  .lnc-pdp__wish { top: 10px; right: 12px; }
  .lnc-pdp__count { display: inline-block; position: absolute; z-index: 6; bottom: 10px; right: 14px; font-family: var(--lnc-font-mono); font-size: 9.5px; letter-spacing: .1em; color: var(--lnc-muted); background: color-mix(in srgb, var(--lnc-cloud) 92%, transparent); border: 1px solid var(--lnc-line-soft); border-radius: var(--lnc-radius-pill); padding: 5px 10px; }
  /* Dots (design 02): 6px circles, 6px apart, the active one widens to an 18px
     pill. Each dot is a button whose box is invisible — the visible dot is a
     centred ::before, so the tap area (24×36) never changes what you see.
     Scoped under .lnc-pdp__dots: the buy box reuses the bare .lnc-pdp__dot class
     as its meta-row separator. */
  .lnc-pdp__dots { display: flex; align-items: center; justify-content: center; gap: 0; padding: 2px 0 4px; }
  .lnc-pdp__dots .lnc-pdp__dot { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 36px; padding: 0; border: 0; background: transparent; border-radius: 0; cursor: pointer; -webkit-tap-highlight-color: transparent; }
  .lnc-pdp__dots .lnc-pdp__dot::before { content: ''; width: 6px; height: 6px; border-radius: 99px; background: var(--lnc-accent-deep); opacity: .25; transition: width .22s var(--lnc-ease), opacity .22s var(--lnc-ease); }
  .lnc-pdp__dots .lnc-pdp__dot.is-active::before { width: 18px; opacity: 1; }
  /* A video's dot is a small play glyph — footage is visible at a glance. */
  .lnc-pdp__dots .lnc-pdp__dot--video::before { display: none; }
  .lnc-pdp__dots .lnc-pdp__dot--video { color: var(--lnc-accent-deep); opacity: .35; transition: opacity .22s var(--lnc-ease); }
  .lnc-pdp__dots .lnc-pdp__dot--video.is-active { opacity: 1; }
  .lnc-pdp__dots .lnc-pdp__dot--video svg { width: 10px; height: 10px; }
  /* "Watch" chip — top-left of the stage, mirroring the tap-to-zoom pill bottom-left */
  /* Bottom-left — the slot the tap-to-zoom pill used to occupy, mirroring the
     1/N counter bottom-right. Top-left is the SAVE badge's corner; putting the
     chip there stacked the two. */
  .lnc-pdp__videojump { display: inline-flex; align-items: center; gap: 6px; position: absolute; z-index: 6; bottom: 10px; left: 14px; font-family: var(--lnc-font-mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-ink); background: color-mix(in srgb, var(--lnc-cloud) 92%, transparent); border: 1px solid var(--lnc-line-soft); border-radius: var(--lnc-radius-pill); padding: 7px 12px; cursor: pointer; }
  .lnc-pdp__slide--video { display: flex; align-items: center; justify-content: center; background: var(--lnc-ink); }
  .lnc-pdp__slide--video video, .lnc-pdp__slide--video iframe { width: 100%; height: 100%; object-fit: contain; }
  /* While the video slide is showing, the image overlays are clutter over the player */
  .lnc-pdp__stage.is-on-video .lnc-pdp__badge,
  .lnc-pdp__stage.is-on-video .lnc-pdp__wish,
  .lnc-pdp__stage.is-on-video .lnc-pdp__videojump { opacity: 0; pointer-events: none; }
  .lnc-pdp__badge, .lnc-pdp__wish, .lnc-pdp__videojump { transition: opacity .25s var(--lnc-ease); }
  .lnc-pdp__gallery:not(:has(.lnc-pdp__dots)) .lnc-pdp__stage { padding-bottom: 0; }

  /* Buy box — the design's decision order: title → rating → price → variant →
     buttons → trust card → description → features → chip rail */
  .lnc-pdp__info { display: flex; flex-direction: column; padding-top: 22px; }
  .lnc-pdp__type { order: 1; font-size: 10px; }
  .lnc-pdp__title { order: 2; font-size: 34px; line-height: 1.02; margin-top: 9px; }
  .lnc-pdp__meta { order: 3; margin-top: 12px; gap: 9px; }
  .lnc-pdp__meta .lnc-rating__meta { font-size: 13.5px; }
  .lnc-pdp__prices { order: 4; margin-top: 18px; gap: 10px; }
  .lnc-pdp__price { font-size: 32px; }
  .lnc-pdp__prices .lnc-price-was { font-size: 15px; }
  .lnc-pdp__prices .lnc-save { font-size: 9.5px; padding: 5px 10px; }
  .lnc-pdp__afterpay { order: 5; margin-top: 7px; }
  .lnc-pdp__variants { order: 6; margin-top: 22px; }
  .lnc-pdp__optlabel { font-size: 10.5px; }
  .lnc-pdp__values { gap: 14px; margin-top: 12px; }
  .lnc-pdp__swatch { width: 44px; height: 44px; }
  .lnc-pdp__swatch.is-selected { box-shadow: 0 0 0 2px var(--lnc-paper), 0 0 0 3.5px var(--lnc-ink); }
  .lnc-pdp__swatch--pill { width: auto; height: 44px; align-items: center; }
  /* 36px, not 22 — the qty − / + sit in the same columns as the colour swatches
     above them; with a small gap, low thumb-taps on a swatch hit the qty buttons. */
  .lnc-pdp__form { order: 7; margin-top: 36px; }
  .lnc-pdp__exclusive { order: 7; margin-top: 26px; }
  .lnc-pdp__buyrow { flex-wrap: nowrap; gap: 10px; }
  .lnc-pdp__qty { flex: 0 0 auto; height: 56px; }
  .lnc-pdp__qtybtn { width: 44px; padding: 0; justify-content: center; }
  .lnc-pdp__qtyinput { width: 20px; font-size: 16px; }
  .lnc-pdp__add { flex: 1 1 0; flex-basis: 0; height: 56px; padding: 0 18px; font-size: 16px; white-space: nowrap; }
  .lnc-pdp__form .shopify-payment-button { margin-top: 10px; }
  .lnc-pdp__form .shopify-payment-button__button, .lnc-pdp__form .shopify-payment-button__button--unbranded { min-height: 52px; font-size: 14.5px; }
  .lnc-pdp__form .shopify-payment-button__more-options { display: block; width: 100%; margin-top: 11px; text-align: center; font-size: 9.5px; letter-spacing: .1em; }
  .lnc-pdp__fitting { height: 50px; padding: 0 24px; align-items: center; justify-content: center; font-size: 14.5px; }

  /* Trust CARD under the buttons (design 05) — replaces the desktop icon row */
  .lnc-pdp__trust { order: 8; display: flex; flex-direction: column; grid-template-columns: none; gap: 12px; margin-top: 20px; padding: 15px 16px; border-top: 0; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 14px; }
  .lnc-pdp__trustitem { gap: 12px; }
  .lnc-pdp__trustitem--ship { display: flex; }
  .lnc-pdp__trusticon { width: auto; height: auto; background: transparent; border-radius: 0; color: var(--lnc-accent-deep); font-size: 16px; }
  .lnc-pdp__trusticon svg { width: 19px; height: 19px; }
  .lnc-pdp__trusttext { font-family: var(--lnc-font-body); font-size: 14.5px; letter-spacing: 0; text-transform: none; color: var(--lnc-body); line-height: 1.45; }

  .lnc-pdp__desc { order: 9; margin-top: 20px; max-width: none; }
  .lnc-pdp__features { order: 10; margin-top: 16px; gap: 11px; }
  .lnc-pdp__features li { font-size: 14.5px; }
  .lnc-pdp__features svg { width: 17px; height: 17px; }

  /* Trust-chip rail (design: skimmable pills after the buy box) */
  .lnc-pdp__chips { order: 11; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; margin-inline: calc(-1 * var(--lnc-gutter)); padding: 20px var(--lnc-gutter) 4px; }
  .lnc-pdp__chips::-webkit-scrollbar { display: none; }
  .lnc-pdp__chip { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-pill); padding: 10px 14px; font-family: var(--lnc-font-mono); font-size: 9.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-body); white-space: nowrap; }
  .lnc-pdp__chip svg { color: var(--lnc-accent-deep); flex-shrink: 0; }
  .lnc-pdp__chip-star { color: var(--lnc-spark); }

  /* Sticky buy bar (design 06): thumbnail + variant + price + one action */
  .lnc-buybar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 24; display: flex; align-items: center; gap: 12px; background: color-mix(in srgb, var(--lnc-paper) 97%, transparent); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-top: 1px solid var(--lnc-line); padding: 11px 16px calc(11px + env(safe-area-inset-bottom, 0px)); transform: translateY(102%); transition: transform .18s ease; }
  .lnc-buybar[hidden] { display: none; }
  .lnc-buybar.is-visible { transform: none; }
  .lnc-buybar__img { width: 44px; height: 44px; object-fit: contain; mix-blend-mode: multiply; flex-shrink: 0; }
  .lnc-buybar__meta { flex: 1; min-width: 0; }
  .lnc-buybar__title { display: block; font-family: var(--lnc-font-display); font-weight: 500; font-size: 13.5px; color: var(--lnc-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .lnc-buybar__price { display: block; font-family: var(--lnc-font-display); font-weight: 600; font-size: 14px; color: var(--lnc-ink); }
  .lnc-buybar__btn { flex: 0 0 auto; height: 48px; padding: 0 24px; background: var(--lnc-ink); color: var(--lnc-cream, #FBF7F0); border: 0; border-radius: var(--lnc-radius-pill); font-family: var(--lnc-font-body); font-weight: 700; font-size: 15px; cursor: pointer; }
  .lnc-buybar__btn[disabled] { background: var(--lnc-cloud); color: var(--lnc-muted); border: 1px solid var(--lnc-line); }

  /* Footer clearance so the bar never covers the legal links (design 14) */
  body:has([data-lnc-buybar]) .lnc-footer { padding-bottom: 120px; }
}

/* 360px devices: keep "Add to bag — $X" on one line beside the stepper */
@media (max-width: 389px) {
  .lnc-pdp__qtybtn { width: 38px; }
  .lnc-pdp__add { font-size: 15px; padding: 0 12px; }
}
/* END_SECTION:lnc-product-buy */

/* START_SECTION:lnc-product-collection (INDEX:69) */
.lnc-pc { padding-block: var(--pt, 64px) var(--pb, 64px); }
.lnc-pc__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.lnc-pc__head .lnc-h2 { margin-top: 12px; font-size: clamp(28px, 3.2vw, 36px); }
.lnc-pc__viewall { white-space: nowrap; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; display: inline-flex; align-items: center; gap: 6px; }
.lnc-pc__grid { display: grid; grid-template-columns: repeat(var(--cols, 4), 1fr); gap: 18px; }
.lnc-pc__grid--rail { grid-auto-flow: column; grid-auto-columns: minmax(240px, 1fr); grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 8px; scrollbar-width: thin; }
.lnc-pc__grid--rail > * { scroll-snap-align: start; }

/* Equal-height cards — matches design-reference bestsellers rail exactly.
   Mixed product-photo ratios sit in a fixed 1:1 white box (object-fit: contain),
   and card text is pinned to a shared rhythm so rows align. Scoped to .lnc-pc. */
.lnc-pc .lnc-pcard { height: 100%; display: flex; flex-direction: column; }
.lnc-pc .lnc-pcard__media { aspect-ratio: 1 / 1; background: var(--lnc-white); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.lnc-pc .lnc-pcard__img { width: 100%; height: 100%; object-fit: contain; padding: 14px; mix-blend-mode: multiply; }
.lnc-pc .lnc-pcard__body { flex: 1; display: flex; flex-direction: column; padding: 18px 20px; }
.lnc-pc .lnc-pcard__title { font-size: 17px; line-height: 1.2; margin-top: 7px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.4em; }
.lnc-pc .lnc-pcard__colour { font-size: 13px; margin-top: 2px; }
.lnc-pc .lnc-pcard__price { margin-top: auto; padding-top: 12px; display: flex; align-items: center; gap: 9px; }
.lnc-pc .lnc-pcard__now { font-size: 17px; }
.lnc-pc__progress { display: none; }
/* per-card <script> tags are real flex/grid items — without this each one adds
   a phantom gap in the rail and an empty cell in the desktop grid */
.lnc-pc__grid > script { display: none; }
.lnc-pcard__rating--five { display: none; }
@media (max-width: 989px) { .lnc-pc__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 749px) {
  /* mobile.dc.html — bestsellers become a snap carousel: 216px cards that bleed
     to the screen edge, text order title → stars → price, progress bar below */
  .lnc-pc { padding-block: 34px 0; }
  .lnc-pc__head { flex-direction: column; align-items: flex-start; gap: 0; margin-bottom: 14px; }
  .lnc-pc .lnc-eyebrow { font-size: 10.5px; letter-spacing: .18em; }
  .lnc-pc__head .lnc-h2 { margin-top: 9px; font-size: 26px; }
  .lnc-pc__viewall { display: none; }
  .lnc-pc__grid, .lnc-pc__grid--rail {
    display: flex; gap: 12px; overflow-x: auto;
    margin-inline: calc(var(--lnc-gutter) * -1);
    padding: 4px var(--lnc-gutter) 6px;
    scroll-snap-type: x mandatory; scrollbar-width: none;
    /* without this, mandatory snap aligns card 1 to the scrollport edge on load,
       swallowing the 20px inset — cards must never touch the screen edge */
    scroll-padding-inline: var(--lnc-gutter);
  }
  .lnc-pc__grid::-webkit-scrollbar { display: none; }
  .lnc-pc__grid > * { flex: 0 0 216px; scroll-snap-align: start; }
  .lnc-pc .lnc-pcard__img { padding: 12px; }
  .lnc-pc .lnc-pcard__badge { top: 10px; left: 10px; font-size: 9px; padding: 5px 9px; }
  .lnc-pc .lnc-pcard__heart { display: none; }
  .lnc-pc .lnc-pcard__body { padding: 13px 14px 15px; }
  /* uniform card rhythm: every title reserves two lines and the price is pinned
     to the card foot, so 1-line vs 2-line titles and rated vs unrated products
     all produce identical-height, aligned cards */
  .lnc-pc .lnc-pcard__title { order: 1; margin-top: 0; min-height: 2.4em; font-size: 16px; font-weight: 500; }
  /* the desktop hover lift + image zoom reads as jank inside a snap rail
     (clipped shadow, jitter on tap) — flat cards on mobile */
  .lnc-pc .lnc-pcard:hover { transform: none; box-shadow: none; }
  .lnc-pc .lnc-pcard:hover .lnc-pcard__img { transform: none; }
  .lnc-pc .lnc-pcard__meta { order: 2; margin-top: 5px; justify-content: flex-start; }
  .lnc-pc .lnc-pcard__eyebrow { display: none; }
  .lnc-pc .lnc-pcard__variant { display: none; }
  .lnc-pc .lnc-pcard__rating--five { display: inline-flex; align-items: center; gap: 6px; }
  .lnc-pc .lnc-pcard__count { font-size: 11.5px; color: var(--lnc-muted); }
  .lnc-pc .lnc-pcard__price { order: 3; margin-top: auto; padding-top: 8px; }
  .lnc-pc .lnc-pcard__madd { order: 4; }
  .lnc-pc .lnc-pcard__swatches { display: none; }
  .lnc-pc .lnc-pcard__now { font-size: 16.5px; }
  .lnc-pc .lnc-pcard__was { font-size: 12.5px; }
  .lnc-pc__progress { display: flex; align-items: center; gap: 12px; padding-top: 8px; }
  .lnc-pc__ptrack { flex: 1; height: 2px; background: var(--lnc-line); border-radius: 2px; position: relative; overflow: hidden; }
  .lnc-pc__pfill { position: absolute; left: 0; top: 0; bottom: 0; width: 38%; background: var(--lnc-accent); border-radius: 2px; transition: width .15s linear; }
  .lnc-pc__pshop { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); text-decoration: none; white-space: nowrap; }
}
/* END_SECTION:lnc-product-collection */

/* START_SECTION:lnc-product-faq (INDEX:70) */
.lnc-pfaq { background: var(--lnc-white); border-top: 1px solid var(--lnc-line); }
.lnc-pfaq__wrap { max-width: 900px; margin: 0 auto; padding: 72px 40px; }
.lnc-pfaq__head { text-align: center; margin-bottom: 36px; }
.lnc-pfaq__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-pfaq__h { margin: 14px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(26px, 3vw, 32px); letter-spacing: -.025em; color: var(--lnc-ink); }
.lnc-pfaq__item { border-top: 1px solid var(--lnc-line); }
.lnc-pfaq__item:last-child { border-bottom: 1px solid var(--lnc-line); }
.lnc-pfaq__q { display: flex; justify-content: space-between; align-items: center; gap: 20px; cursor: pointer; padding: 22px 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: 17px; color: var(--lnc-ink); list-style: none; }
.lnc-pfaq__q::-webkit-details-marker { display: none; }
.lnc-pfaq__chev { flex-shrink: 0; color: var(--lnc-accent-deep); transition: transform .2s var(--lnc-ease, ease); }
.lnc-pfaq__item[open] .lnc-pfaq__chev { transform: rotate(180deg); }
.lnc-pfaq__a { padding: 0 0 22px; font-family: var(--lnc-font-serif); font-size: 15.5px; line-height: 1.7; color: var(--lnc-body); max-width: 64ch; }
.lnc-pfaq__contact { text-align: center; margin-top: 20px; font-size: 14.5px; color: var(--lnc-body); }
.lnc-pfaq__contact a { font-weight: 700; color: var(--lnc-accent-deep); text-decoration: none; border-bottom: 1px solid var(--lnc-accent-soft, var(--lnc-accent-line)); }
/* Design mobile-product 13: + / − glyphs (clearer than chevrons at this size),
   marks top-aligned against two-line questions, tighter rhythm. */
@media (max-width: 749px) {
  .lnc-pfaq__wrap { padding: 28px 20px 32px; }
  .lnc-pfaq__head { margin-bottom: 6px; }
  .lnc-pfaq__h { margin-top: 12px; font-size: 25px; }
  .lnc-pfaq__q { align-items: flex-start; gap: 14px; padding: 17px 2px; font-size: 16px; line-height: 1.3; }
  .lnc-pfaq__chev { display: none; }
  .lnc-pfaq__q::after { content: '+'; flex-shrink: 0; color: var(--lnc-accent-deep); font-size: 19px; line-height: 1.1; font-family: var(--lnc-font-body); font-weight: 400; }
  .lnc-pfaq__item[open] .lnc-pfaq__q::after { content: '−'; }
  .lnc-pfaq__a { padding: 0 2px 18px; }
  .lnc-pfaq__contact { margin-top: 18px; }
}
/* END_SECTION:lnc-product-faq */

/* START_SECTION:lnc-product-reviews (INDEX:71) */
.lnc-prev__wrap { max-width: 1280px; margin: 0 auto; padding: 72px 40px; }
.lnc-prev__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 56px; align-items: start; }
.lnc-prev__summary { position: sticky; top: 106px; }
.lnc-prev__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-prev__scorerow { display: flex; align-items: baseline; gap: 10px; margin-top: 14px; }
.lnc-prev__score { font-family: var(--lnc-font-display); font-weight: 600; font-size: 52px; color: var(--lnc-ink); }
.lnc-prev__based { font-family: var(--lnc-font-serif); font-size: 14.5px; color: var(--lnc-body); margin-top: 4px; }
.lnc-prev__bars { display: flex; flex-direction: column; gap: 7px; margin-top: 22px; max-width: 280px; }
.lnc-prev__bar { display: flex; align-items: center; gap: 10px; font-size: 12px; color: var(--lnc-muted); }
.lnc-prev__barlabel { width: 28px; }
.lnc-prev__track { flex: 1; height: 7px; background: var(--lnc-line-soft); border-radius: var(--lnc-radius-pill); overflow: hidden; }
/* design 12: "Bars stay brass — the only place besides ratings where brass appears in bulk" */
.lnc-prev__track > .lnc-prev__fill { display: block; height: 100%; background: var(--lnc-spark); border-radius: var(--lnc-radius-pill); }
.lnc-prev__pct { width: 34px; text-align: right; }
.lnc-prev__cards { display: flex; flex-direction: column; gap: 16px; }
.lnc-prev__card[hidden] { display: none; }
/* sort chips (design 12) */
.lnc-prev__chips { display: flex; gap: 10px; flex-wrap: wrap; order: -1; }
.lnc-prev__chip { font-family: var(--lnc-font-body); font-weight: 700; font-size: 13.5px; color: var(--lnc-ink); background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-pill); padding: 11px 20px; cursor: pointer; transition: background .18s var(--lnc-ease), border-color .18s var(--lnc-ease); }
.lnc-prev__chip:hover { border-color: var(--lnc-accent); }
.lnc-prev__chip.is-active { background: var(--lnc-accent-wash); border-color: var(--lnc-accent-line); color: var(--lnc-ink-deep); }
/* star rows are filters */
button.lnc-prev__bar { width: 100%; background: none; border: 0; padding: 4px 0; cursor: pointer; border-radius: 6px; }
button.lnc-prev__bar:hover .lnc-prev__barlabel, button.lnc-prev__bar:hover .lnc-prev__pct { color: var(--lnc-ink); }
button.lnc-prev__bar.is-active .lnc-prev__barlabel, button.lnc-prev__bar.is-active .lnc-prev__pct { color: var(--lnc-ink); font-weight: 700; }
button.lnc-prev__bar.is-active .lnc-prev__fill { background: var(--lnc-accent-deep); }
.lnc-prev__readall { order: 998; align-self: stretch; justify-content: center; text-align: center; background: transparent; color: var(--lnc-ink); border: 1px solid var(--lnc-ink); border-radius: var(--lnc-radius-pill); padding: 15px 24px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 15px; cursor: pointer; margin-top: 4px; }
.lnc-prev__readall:hover { background: var(--lnc-ink); color: var(--lnc-cream, #F4EEE4); }
.lnc-prev__readall[hidden] { display: none; }
.lnc-prev__empty { order: 999; font-family: var(--lnc-font-serif); font-size: 15px; color: var(--lnc-muted); margin: 4px 0 0; }
.lnc-prev__card { background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 14px; padding: 26px 28px; }
.lnc-prev__cardhead { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.lnc-prev__verified { font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .04em; text-transform: uppercase; color: var(--lnc-taupe, var(--lnc-muted)); }
.lnc-prev__cardtitle { font-family: var(--lnc-font-display); font-weight: 600; font-size: 16px; color: var(--lnc-ink); margin-top: 12px; }
.lnc-prev__cardbody { margin: 8px 0 0; font-family: var(--lnc-font-serif); font-size: 15.5px; line-height: 1.65; color: var(--lnc-body); }
.lnc-prev__author { margin-top: 14px; font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-muted); }
@media (max-width: 899px) {
  .lnc-prev__wrap { padding: 48px 24px; }
  .lnc-prev__grid { grid-template-columns: 1fr; gap: 32px; }
  .lnc-prev__summary { position: static; }
}
/* Design mobile-product 12: compact summary header (big average beside the
   distribution bars), then borderless review rows split by hairlines —
   cards inside a card at 390px is too much chrome. */
@media (max-width: 749px) {
  .lnc-prev__wrap { padding: 28px var(--lnc-gutter, 20px) 32px; }
  .lnc-prev__grid { gap: 4px; }
  .lnc-prev__summary { display: grid; grid-template-columns: auto 1fr; grid-template-areas: 'eye eye' 'score bars' 'based based'; column-gap: 16px; align-items: center; }
  .lnc-prev__eyebrow { grid-area: eye; }
  .lnc-prev__scorerow { grid-area: score; flex-direction: column; align-items: flex-start; gap: 5px; margin-top: 14px; }
  .lnc-prev__score { font-size: 40px; line-height: 1; }
  .lnc-prev__based { grid-area: based; margin-top: 8px; font-size: 13.5px; }
  .lnc-prev__bars { grid-area: bars; margin-top: 14px; max-width: none; gap: 5px; }
  .lnc-prev__track { height: 6px; }
  .lnc-prev__track > .lnc-prev__fill { background: var(--lnc-spark); }
  .lnc-prev__cards { gap: 0; margin-top: 10px; }
  .lnc-prev__card { background: transparent; border: 0; border-radius: 0; border-top: 1px solid var(--lnc-line); padding: 18px 0; }
  .lnc-prev__cardtitle { font-size: 15.5px; margin-top: 10px; }
  .lnc-prev__cardbody { font-size: 15px; line-height: 1.62; }
  .lnc-prev__author { margin-top: 10px; font-size: 9.5px; }
  .lnc-prev__verified { font-size: 9px; color: var(--lnc-sage); }
}
/* END_SECTION:lnc-product-reviews */

/* START_SECTION:lnc-prose (INDEX:72) */
.lnc-prose { padding-block: var(--pt, 64px) var(--pb, 64px); }
.lnc-prose--band { background: var(--lnc-cloud); }
.lnc-prose__wrap { max-width: var(--maxw, 820px); margin: 0 auto; padding-inline: var(--lnc-gutter, 40px); }
.lnc-prose--center .lnc-prose__wrap { text-align: center; }
.lnc-prose__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-prose__h { margin: 14px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(26px, 3.4vw, 40px); line-height: 1.08; letter-spacing: -.025em; color: var(--lnc-ink); }
.lnc-prose__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-prose__body { margin: 18px 0 0; font-family: var(--lnc-font-serif); font-size: clamp(16px, 1.3vw, 18px); line-height: 1.75; color: var(--lnc-body); }
.lnc-prose__body p { margin: 0 0 14px; }
.lnc-prose__body p:last-child { margin-bottom: 0; }
.lnc-prose__body h3 { font-family: var(--lnc-font-display); font-weight: 600; font-size: 19px; color: var(--lnc-ink); margin: 26px 0 0; }
.lnc-prose__body strong { color: var(--lnc-ink); }
.lnc-prose__body a { color: var(--lnc-accent-deep); }
.lnc-prose__body ul, .lnc-prose__body ol { margin: 14px 0; padding-left: 22px; }
.lnc-prose__body li { margin: 6px 0; }
.lnc-prose__cta { margin-top: 26px; }
.lnc-prose--center .lnc-prose__cta { display: inline-flex; }

/* ---- Split-image layout (About "It started with a simple promise." band) ---- */
.lnc-prose--split { background: var(--lnc-white); border-top: 1px solid var(--lnc-line); border-bottom: 1px solid var(--lnc-line); }
.lnc-prose--split .lnc-prose__wrap { max-width: var(--lnc-wrap, 1280px); text-align: left; }
.lnc-prose--split .lnc-prose__grid { display: grid; grid-template-columns: 1fr 1.05fr; gap: 56px; align-items: center; }
.lnc-prose__media-col { position: relative; }
.lnc-prose__media { border-radius: 18px; overflow: hidden; aspect-ratio: 4 / 3; background: var(--lnc-cloud); }
.lnc-prose__media img, .lnc-prose__media svg { width: 100%; height: 100%; object-fit: cover; display: block; }
.lnc-prose__badge { position: absolute; right: -14px; top: -14px; background: var(--lnc-spark); color: var(--lnc-ink-deep); font-size: 10px; letter-spacing: .14em; border-radius: 999px; padding: 8px 14px; transform: rotate(3deg); }
.lnc-prose--split .lnc-prose__eyebrow { font-size: 12px; letter-spacing: .2em; color: var(--lnc-muted); }
.lnc-prose--split .lnc-prose__h { margin-top: 16px; font-size: clamp(30px, 3.2vw, 38px); line-height: 1.05; letter-spacing: -.025em; }
.lnc-prose--split .lnc-prose__body { margin-top: 20px; font-size: 17px; line-height: 1.75; max-width: 52ch; }
.lnc-prose--split .lnc-prose__body p { margin: 0 0 16px; }
.lnc-prose--split .lnc-prose__body p:last-child { margin-bottom: 0; }
.lnc-prose__quote { display: flex; align-items: center; gap: 14px; margin-top: 26px; }
.lnc-prose__quote-rule { flex: none; width: 44px; height: 2px; background: var(--lnc-spark); }
.lnc-prose__quote-text { font-size: 17px; font-weight: 400; color: var(--lnc-accent-deep); }
@media (max-width: 899px) {
  .lnc-prose--split .lnc-prose__grid { grid-template-columns: 1fr; gap: 36px; }
  .lnc-prose__badge { right: 10px; top: -12px; }
}
/* END_SECTION:lnc-prose */

/* START_SECTION:lnc-reviews (INDEX:73) */
.lnc-reviews { padding-block: var(--pt, 56px) var(--pb, 56px); }
.lnc-reviews__head { text-align: center; margin-bottom: 30px; }
.lnc-reviews__stars { display: inline-flex; gap: 3px; color: var(--lnc-spark); letter-spacing: 2px; }
.lnc-reviews__head .lnc-eyebrow { margin-top: 12px; }
.lnc-reviews__head .lnc-h2 { margin-top: 12px; font-size: 30px; letter-spacing: -.02em; }
.lnc-reviews__grid { display: grid; grid-template-columns: repeat(var(--cols, 3), 1fr); gap: 18px; }
.lnc-reviews__card { margin: 0; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius); padding: 28px; }
.lnc-reviews__cardstars { display: inline-flex; gap: 2px; color: var(--lnc-spark); }
.lnc-reviews__quote { margin: 14px 0 0; font-family: var(--lnc-font-serif); font-size: 16px; line-height: 1.6; color: var(--lnc-ink); }
.lnc-reviews__author { margin-top: 18px; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-muted); }
@media (max-width: 989px) { .lnc-reviews__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 749px) {
  /* mobile.dc.html — reviews become a centre-snapping rail of 286px cards */
  .lnc-reviews { padding-block: 30px 0; }
  .lnc-reviews__head { margin-bottom: 14px; }
  .lnc-reviews__stars svg { width: 16px; height: 16px; }
  .lnc-reviews__head .lnc-h2 { margin-top: 10px; font-size: 24px; }
  .lnc-reviews__grid {
    display: flex; gap: 12px; overflow-x: auto;
    margin-inline: calc(var(--lnc-gutter) * -1);
    padding: 4px var(--lnc-gutter) 6px;
    scroll-snap-type: x mandatory; scroll-padding-inline: var(--lnc-gutter);
    scrollbar-width: none;
  }
  .lnc-reviews__grid::-webkit-scrollbar { display: none; }
  .lnc-reviews__grid > * { flex: 0 0 286px; scroll-snap-align: center; }
  .lnc-reviews__card { padding: 20px; }
  .lnc-reviews__cardstars svg { width: 12px; height: 12px; }
  .lnc-reviews__quote { margin-top: 12px; font-size: 15.5px; }
  .lnc-reviews__author { margin-top: 14px; font-size: 10px; }
}
/* END_SECTION:lnc-reviews */

/* START_SECTION:lnc-sale-hero (INDEX:74) */
.lnc-salehero { background: var(--lnc-ink); }
.lnc-salehero__wrap { max-width: var(--lnc-wrap, 1280px); margin: 0 auto; padding: clamp(48px, 6vw, 76px) var(--lnc-gutter, 40px) clamp(44px, 5vw, 68px); display: grid; grid-template-columns: 1.15fr 1fr; gap: 44px; align-items: center; }
.lnc-salehero__eyebrow { display: inline-flex; align-items: center; gap: 8px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11.5px; letter-spacing: .18em; text-transform: uppercase; color: var(--lnc-accent-on-dark); }
.lnc-salehero__tick { width: 22px; height: 2px; background: var(--lnc-spark); display: inline-block; }
.lnc-salehero__h { margin: 18px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(48px, 5.6vw, 80px); line-height: .96; letter-spacing: -.035em; color: var(--lnc-cream); }
.lnc-salehero__accent { font-weight: 500; color: var(--lnc-accent-on-dark); }
.lnc-salehero__body { margin: 20px 0 0; font-family: var(--lnc-font-serif); font-size: 17.5px; line-height: 1.65; color: var(--lnc-on-dark-soft); max-width: 46ch; }
.lnc-salehero__ctas { display: flex; gap: 12px; margin-top: 30px; flex-wrap: wrap; }
.lnc-salehero__cta1 { text-decoration: none; font-family: var(--lnc-font-body); font-weight: 700; font-size: 15px; color: var(--lnc-ink-deep); background: var(--lnc-cream); border-radius: var(--lnc-radius-pill); padding: 16px 32px; }
.lnc-salehero__cta2 { text-decoration: none; font-family: var(--lnc-font-body); font-weight: 700; font-size: 15px; color: var(--lnc-cream); background: rgba(255,255,255,.12); box-shadow: none; border: 1.5px solid rgba(255,255,255,.55); border-radius: var(--lnc-radius-pill); padding: 14.5px 30px; backdrop-filter: blur(4px); }
.lnc-salehero__cta2:is(:hover, :focus-visible) { border-color: var(--lnc-cream); }
.lnc-salehero__timer { display: flex; flex-direction: column; gap: 14px; }
.lnc-salehero__timerlabel { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .18em; text-transform: uppercase; color: var(--lnc-on-dark-mute); text-align: center; }
.lnc-salehero__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.lnc-salehero__unit { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); border-radius: 14px; padding: 22px 10px; text-align: center; }
.lnc-salehero__num { font-family: var(--lnc-font-display); font-weight: 600; font-size: 44px; line-height: 1; color: var(--lnc-cream); }
.lnc-salehero__unitlabel { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-accent-on-dark); margin-top: 8px; }
.lnc-salehero__fine { font-family: var(--lnc-font-serif); font-style: italic; font-size: 14.5px; color: var(--lnc-on-dark-mute); text-align: center; }
@media (max-width: 749px) { .lnc-salehero__wrap { grid-template-columns: 1fr; } }
/* END_SECTION:lnc-sale-hero */

/* START_SECTION:lnc-search (INDEX:75) */
.lnc-search { padding-bottom: 72px; }
.lnc-search__hero { max-width: 900px; margin: 0 auto; padding: 56px 40px 0; }
.lnc-search__head { text-align: center; }
.lnc-search__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-search__h { margin: 18px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(36px, 4vw, 50px); line-height: 1; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-search__accent { font-weight: 500; color: var(--lnc-accent-deep); }
/* hero field = <predictive-search>; the dropdown hangs off the form */
.lnc-search__ps { display: block; position: relative; z-index: 5; margin-top: 30px; }
.lnc-search__form { position: relative; display: flex; gap: 10px; background: var(--lnc-white); border: 1px solid var(--lnc-accent); border-radius: var(--lnc-radius-pill); padding: 8px 8px 8px 24px; box-shadow: 0 18px 40px rgba(27,40,50,.10); align-items: center; }
.lnc-search__form:focus-within { box-shadow: 0 0 0 4px var(--lnc-accent-wash), 0 18px 40px rgba(27,40,50,.10); }
.lnc-search__icon { display: inline-flex; color: var(--lnc-accent-deep); flex-shrink: 0; }
.lnc-search__input { flex: 1; min-width: 0; font-family: var(--lnc-font-body); font-size: 16px; color: var(--lnc-ink); border: none; outline: none; background: transparent; padding: 13px 0; }
.lnc-search__input:focus, .lnc-search__input:focus-visible { outline: none; box-shadow: none; }
.lnc-search__input::-webkit-search-decoration, .lnc-search__input::-webkit-search-cancel-button { -webkit-appearance: none; }
.lnc-search__clear { flex: 0 0 auto; width: 32px; height: 32px; border-radius: 50%; border: 0; background: var(--lnc-cloud); color: var(--lnc-ink); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.lnc-search__clear:hover { background: var(--lnc-accent-wash); }
.lnc-search__submit { flex-shrink: 0; width: 44px; height: 44px; border-radius: 50%; border: 0; background: var(--lnc-ink); color: var(--lnc-cream); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; transition: background .2s var(--lnc-ease); }
.lnc-search__submit:hover { background: var(--lnc-ink-deep); }
.lnc-search__dd { display: none; position: absolute; left: 0; right: 0; top: calc(100% + 10px); z-index: 30; background: var(--lnc-paper); border: 1px solid var(--lnc-line); border-radius: 18px; box-shadow: 0 30px 60px rgba(27,40,50,.16); padding: 22px 26px 24px; max-height: min(68vh, 640px); overflow-y: auto; overscroll-behavior: contain; text-align: left; outline: none; }
predictive-search[open] .lnc-search__dd { display: block; }
.lnc-search__popular { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 16px; justify-content: center; align-items: center; }
.lnc-search__poplabel { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-search__chip { display: inline-flex; text-decoration: none; font-family: var(--lnc-font-body); font-weight: 700; font-size: 12px; color: var(--lnc-ink-deep); background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 7px 14px; }
/* results */
.lnc-search__results { max-width: var(--lnc-wrap, 1280px); margin: 0 auto; padding: 44px 40px 0; }
.lnc-search__summary { font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-muted); margin-bottom: 18px; }
.lnc-search__layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 36px; align-items: start; }
.lnc-search__layout--filters { grid-template-columns: 248px minmax(0, 1fr); }
.lnc-search__main { min-width: 0; }
.lnc-search__gridcol { position: relative; }
.lnc-search__gridcol .collection { position: relative; }
.lnc-search__gridcol .loading-overlay { display: none; }
.lnc-search__gridcol .collection.loading .loading-overlay { display: block; position: absolute; inset: 0; z-index: 2; background: rgba(250,247,242,.55); }
.lnc-search__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.lnc-search__layout--filters .lnc-search__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lnc-search__grid--none { display: none; }
.lnc-search__grid > li { margin: 0; min-width: 0; }
.lnc-search__subhead { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-accent-deep); margin: 36px 0 14px; }
.lnc-search__subhead--first { margin-top: 0; }
.lnc-search__articles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.lnc-search__acard { display: flex; align-items: center; gap: 16px; background: var(--lnc-cloud); border: 1px solid var(--lnc-line); border-radius: 12px; padding: 18px 20px; text-decoration: none; transition: box-shadow .25s var(--lnc-ease), transform .25s var(--lnc-ease); }
.lnc-search__acard:hover { box-shadow: 0 18px 40px rgba(27,40,50,.10); transform: translateY(-3px); }
.lnc-search__aicon { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: var(--lnc-accent-wash); color: var(--lnc-accent-deep); flex-shrink: 0; }
.lnc-search__akind { display: block; font-family: var(--lnc-font-mono); font-size: 9.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-search__atitle { display: block; font-family: var(--lnc-font-display); font-weight: 600; font-size: 14.5px; color: var(--lnc-ink); margin-top: 4px; }
.lnc-search__pagination { margin-top: 40px; }
.lnc-search__empty { text-align: center; padding: 64px 20px; border: 1px dashed var(--lnc-taupe); border-radius: 14px; background: var(--lnc-cloud); }
.lnc-search__empty-h { font-family: var(--lnc-font-display); font-weight: 600; font-size: 20px; color: var(--lnc-ink); }
.lnc-search__empty-p { margin: 10px 0 18px; font-family: var(--lnc-font-serif); font-size: 15px; color: var(--lnc-body); }
.lnc-search__empty .lnc-cta { font-size: 14px; padding: 12px 24px; box-shadow: inset 0 0 0 1px var(--lnc-accent); }
@media (max-width: 989px) {
  /* Single column; the aside stays (position static) because Dawn's mobile facets
     drawer lives inside it — lnc-collection's .lnc-col__filters rules hide the desktop
     list and show the drawer wrapper below 990px. */
  .lnc-search__layout--filters { grid-template-columns: 1fr; }
  .lnc-search__filters { position: static; }
  .lnc-search__grid, .lnc-search__layout--filters .lnc-search__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lnc-search__articles { grid-template-columns: 1fr; }
  .lnc-search__dd { padding: 16px 16px 18px; border-radius: 14px; max-height: 60vh; }
}
@media (max-width: 749px) {
  .lnc-search__grid { gap: 12px; }
  /* Design 03: count + sort move into the sticky toolbar / sort sheet; the rail
     and bar bleed to the screen edge like the collection page. */
  .lnc-search .lnc-search__sortbar { display: none; }
  .lnc-search .lnc-mbar--search, .lnc-search .lnc-mchips--search { margin-inline: calc(-1 * var(--lnc-gutter)); }
  .lnc-search .lnc-mchips--search { padding-bottom: 4px; }
  .lnc-search .lnc-mbar--search + .lnc-search__layout, .lnc-search .lnc-mchips--search + .lnc-search__layout { margin-top: 14px; }
  /* The 40px gutter above is a desktop value; on phones it left search results
     visibly narrower than every other page. Fall back to the site-wide gutter token. */
  .lnc-search__hero, .lnc-search__results { padding-inline: var(--lnc-gutter); }
  .lnc-search__form { padding-left: 16px; }
  .lnc-search__dd { left: calc(-1 * var(--lnc-gutter) + 8px); right: calc(-1 * var(--lnc-gutter) + 8px); }
}
/* END_SECTION:lnc-search */

/* START_SECTION:lnc-seo-content (INDEX:76) */
.lnc-seo { background: var(--lnc-white); border-top: 1px solid var(--lnc-line); border-bottom: 1px solid var(--lnc-line); }
.lnc-seo__wrap { max-width: 900px; margin: 0 auto; padding: 64px 40px; }
.lnc-seo__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-seo__h { margin: 14px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(24px, 3vw, 30px); letter-spacing: -.025em; color: var(--lnc-ink); }
.lnc-seo__accent { font-weight: 500; color: var(--lnc-accent-deep); }
.lnc-seo__clip { position: relative; max-height: var(--collapsed, 240px); overflow: hidden; transition: max-height .6s cubic-bezier(.22,.61,.36,1); margin-top: 18px; }
.lnc-seo__clip.is-open { max-height: 4000px; }
.lnc-seo__rte { font-family: var(--lnc-font-serif); font-size: 16px; line-height: 1.75; color: var(--lnc-body); }
.lnc-seo__rte p { margin: 0; }
.lnc-seo__rte p + p, .lnc-seo__rte h3 + p { margin-top: 12px; }
.lnc-seo__rte h3 { margin: 26px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: 19px; color: var(--lnc-ink); }
.lnc-seo__rte strong { color: var(--lnc-ink); }
.lnc-seo__rte a { color: var(--lnc-accent-deep); }
.lnc-seo__fade { position: absolute; left: 0; right: 0; bottom: 0; height: 80px; background: linear-gradient(180deg, transparent, var(--lnc-white)); pointer-events: none; transition: opacity .4s ease; }
.lnc-seo__clip.is-open .lnc-seo__fade { opacity: 0; }
.lnc-seo__toggle { margin-top: 16px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--lnc-accent-deep); background: none; border: none; cursor: pointer; padding: 0; display: inline-flex; align-items: center; gap: 6px; }
/* Design "09 — Collection description": tighter mobile frame, ~6-line clamp,
   44px toggle target */
@media (max-width: 749px) {
  .lnc-seo__wrap { padding: 30px 20px 32px; }
  .lnc-seo__h { font-size: 26px; }
  .lnc-seo__clip { max-height: min(var(--collapsed, 240px), 214px); }
  .lnc-seo__clip.is-open { max-height: 4000px; }
  .lnc-seo__toggle { min-height: 44px; }
}
.lnc-seo__chev { transition: transform .3s ease; display: inline-block; }
.lnc-seo__toggle[aria-expanded="true"] .lnc-seo__chev { transform: rotate(180deg); }
/* END_SECTION:lnc-seo-content */

/* START_SECTION:lnc-specs (INDEX:77) */
.lnc-specs { padding-block: var(--pt, 72px) var(--pb, 72px); border-top: 1px solid var(--lnc-line); }
.lnc-specs__grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 56px; }
.lnc-specs__grid--single { grid-template-columns: 1fr; max-width: 760px; }
.lnc-specs .lnc-specs__eyebrow { font-size: 12px; letter-spacing: .2em; }
/* .lnc-h2 in base.css loads later and wins same-specificity — scope through .lnc-specs */
.lnc-specs .lnc-specs__h { margin: 12px 0 24px; font-size: 30px; letter-spacing: -.025em; line-height: 1.1; }
.lnc-specs__list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 40px; }
.lnc-specs__row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--lnc-line-soft); }
.lnc-specs__label { font-family: var(--lnc-font-body); font-size: 14px; color: var(--lnc-muted); }
.lnc-specs__value { font-family: var(--lnc-font-body); font-weight: 600; font-size: 14px; color: var(--lnc-ink); text-align: right; }
.lnc-specs__box { background: var(--lnc-cloud); border: 1px solid var(--lnc-line); border-radius: 16px; padding: 24px 28px; }
.lnc-specs__inc { display: flex; align-items: center; gap: 12px; padding: 11px 0; font-family: var(--lnc-font-body); font-size: 15px; color: var(--lnc-body); }
.lnc-specs__dot { flex: 0 0 auto; width: 6px; height: 6px; border-radius: 50%; background: var(--lnc-accent); }
/* Mandatory safety warnings panel — amber triangle + WARNING label (safety-label convention) */
.lnc-specs__warn { margin-top: 40px; background: #FFF9EA; border: 1px solid #EDD9A3; border-left: 5px solid #F6B40E; border-radius: 12px; padding: 20px 26px; }
.lnc-specs__warnhead { display: flex; align-items: center; gap: 10px; font-family: var(--lnc-font-mono); font-weight: 700; font-size: 14px; letter-spacing: .24em; text-transform: uppercase; color: var(--lnc-ink); }
.lnc-warn-tri { flex: 0 0 auto; display: block; }
.lnc-specs__warnlist { margin: 12px 0 0; padding: 0 0 0 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 6px 32px; }
.lnc-specs__warnlist li { font-family: var(--lnc-font-body); font-size: 13.5px; line-height: 1.55; color: var(--lnc-body); }
.lnc-specs__warnnote { margin: 14px 0 0; padding-top: 12px; border-top: 1px dashed #EDD9A3; font-family: var(--lnc-font-body); font-size: 13px; line-height: 1.6; color: var(--lnc-body); }
.lnc-specs__warnnote::first-line { font-weight: 700; }
/* Official tip-over label sits beside the wording (desktop) / above it (mobile) */
.lnc-specs__warn--label { display: grid; grid-template-columns: 220px 1fr; gap: 26px; align-items: start; }
.lnc-specs__warnlabel { margin: 0; }
.lnc-specs__warnlabel img { display: block; width: 100%; height: auto; border-radius: 8px; box-shadow: 0 1px 2px rgba(20,20,20,.12), 0 0 0 1px rgba(20,20,20,.06); background: #fff; }
.lnc-specs__warn--label .lnc-specs__warnlist { grid-template-columns: 1fr; }
.lnc-specs__warnlabel--mobile { display: none; }
/* Mobile accordions live in their own block — desktop never shows them */
.lnc-specs__acc { display: none; }

@media (max-width: 749px) {
  .lnc-specs__grid { grid-template-columns: 1fr; gap: 40px; }
  .lnc-specs__list { grid-template-columns: 1fr; gap: 0; }
  /* product mode (design mobile-product 09): grid → four accordions */
  .lnc-specs--product { padding-block: 28px 32px; border-top: 0; background: var(--lnc-paper); }
  .lnc-specs--product .lnc-specs__grid { display: none; }
  .lnc-specs--product .lnc-specs__warn { display: none; }
  .lnc-specs__acc .lnc-specs__warnlist { margin: 4px 0 0; grid-template-columns: 1fr; gap: 8px; padding-left: 16px; }
  .lnc-specs__acc .lnc-specs__warnnote { margin: 12px 0 4px; font-size: 12.5px; }
  .lnc-specs__warnlabel--mobile { display: block; margin: 8px auto 14px; max-width: 240px; }
  .lnc-specs__accitem--warn { background: #FFF9EA; border-top-color: #EDD9A3; margin: 0 -12px; padding: 0 12px; border-left: 4px solid #F6B40E; border-radius: 8px; }
  .lnc-specs__accitem--warn + .lnc-specs__accitem, .lnc-specs__accitem--warn:last-of-type { border-top: 1px solid var(--lnc-line); }
  .lnc-specs__accwarnlabel { display: inline-flex; align-items: center; gap: 9px; font-family: var(--lnc-font-mono); font-weight: 700; font-size: 13.5px; letter-spacing: .22em; text-transform: uppercase; color: var(--lnc-ink); }
  .lnc-specs--product .lnc-specs__acc { display: block; }
  .lnc-specs__acc .lnc-specs__eyebrow { font-size: 10.5px; letter-spacing: .2em; }
  .lnc-specs__acc .lnc-specs__acch { margin: 10px 0 4px; font-size: 25px; }
  .lnc-specs__accitem { border-top: 1px solid var(--lnc-line); }
  .lnc-specs__accitem:last-of-type { border-bottom: 1px solid var(--lnc-line); }
  .lnc-specs__accq { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 17px 2px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 16.5px; color: var(--lnc-ink); cursor: pointer; list-style: none; }
  .lnc-specs__accq::-webkit-details-marker { display: none; }
  .lnc-specs__accmark { flex-shrink: 0; color: var(--lnc-muted); font-size: 19px; line-height: 1; }
  .lnc-specs__accmark::before { content: '+'; }
  .lnc-specs__accitem[open] .lnc-specs__accmark::before { content: '−'; }
  .lnc-specs__accbody { padding: 0 2px 14px; }
  .lnc-specs__accrow { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--lnc-line-soft); font-size: 14px; }
  .lnc-specs__accrow:last-child { border-bottom: 0; }
  .lnc-specs__acclabel { color: var(--lnc-muted); }
  .lnc-specs__accval { font-weight: 600; color: var(--lnc-ink); text-align: right; }
  .lnc-specs__accbody--list { display: flex; flex-direction: column; gap: 10px; padding-bottom: 18px; }
  .lnc-specs__accbody--list .lnc-specs__inc { padding: 0; font-size: 14.5px; }
  .lnc-specs__accbody--prose { padding: 4px 2px 18px; font-family: var(--lnc-font-serif); font-size: 15.5px; line-height: 1.68; color: var(--lnc-body); }
  .lnc-specs__accbody--prose p { margin: 0 0 10px; }
  .lnc-specs__accbody--prose p:last-child { margin-bottom: 0; }
}
/* END_SECTION:lnc-specs */

/* START_SECTION:lnc-spotlight (INDEX:78) */
.lnc-spotlight { padding-block: var(--pt, 48px) var(--pb, 48px); }
.lnc-spot__panel { display: grid; grid-template-columns: 1.05fr 1fr; background: var(--lnc-ink); border-radius: var(--lnc-radius-lg); overflow: hidden; }
.lnc-spot__panel--media-left { grid-template-columns: 1fr 1.05fr; }
.lnc-spot__panel--media-left .lnc-spot__text { order: 2; }
.lnc-spot__panel--media-left .lnc-spot__media { order: 1; }
.lnc-spot__text { padding: clamp(32px, 4.5vw, 56px); display: flex; flex-direction: column; justify-content: center; }
.lnc-spot__eyebrow { color: var(--lnc-accent-on-dark); margin: 0; letter-spacing: .18em; }
.lnc-spotlight .lnc-spot__h { margin: 18px 0 0; font-size: clamp(30px, 4vw, 44px); line-height: 1.02; letter-spacing: -.025em; color: var(--lnc-cream); }
.lnc-spotlight .lnc-spot__accent { color: var(--lnc-accent-on-dark); }
.lnc-spot__body { margin: 18px 0 0; font-family: var(--lnc-font-serif); font-size: 16.5px; line-height: 1.65; color: var(--lnc-on-dark-soft); max-width: 40ch; }
.lnc-spot__body p { margin: 0; }
.lnc-spot__body p + p { margin-top: 12px; }
.lnc-spot__prices { display: flex; align-items: baseline; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.lnc-spot__price { font-family: var(--lnc-font-display); font-weight: 600; font-size: 32px; color: var(--lnc-cream); }
.lnc-spot__was { font-size: 17px; color: var(--lnc-on-dark-mute); text-decoration: line-through; }
.lnc-spot__save { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-white); background: var(--lnc-rust); border-radius: var(--lnc-radius-pill); padding: 6px 12px; }
.lnc-spot__cta { align-self: flex-start; margin-top: 28px; font-size: 15px; padding: 15px 30px; }
.lnc-spot__media { padding: clamp(24px, 2.4vw, 30px); display: flex; align-items: center; justify-content: center; }
.lnc-spot__inset { background: var(--lnc-white); border-radius: 16px; width: 100%; height: 100%; min-height: 340px; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.lnc-spot__img { width: 82%; height: auto; object-fit: contain; mix-blend-mode: multiply; }
.lnc-spot__inset .placeholder { width: 82%; height: auto; }
@media (max-width: 749px) {
  /* mobile.dc.html — white product inset on TOP (12px margin, 206px tall),
     text under it, inline price row with rust badge, full-width cream CTA */
  .lnc-spotlight { padding-block: 32px 0; }
  .lnc-spot__panel, .lnc-spot__panel--media-left { display: flex; flex-direction: column; border-radius: 18px; }
  .lnc-spot__media, .lnc-spot__panel--media-left .lnc-spot__media { order: 1; padding: 12px; }
  .lnc-spot__text, .lnc-spot__panel--media-left .lnc-spot__text { order: 2; padding: 6px 22px 26px; }
  .lnc-spot__inset { min-height: 0; height: 206px; border-radius: 12px; }
  .lnc-spot__img { width: 76%; height: 86%; }
  .lnc-spot__eyebrow { font-size: 10px; }
  .lnc-spotlight .lnc-spot__h { margin-top: 12px; font-size: 32px; }
  .lnc-spot__body { margin-top: 12px; font-size: 15.5px; line-height: 1.6; }
  .lnc-spot__prices { gap: 10px; margin-top: 16px; }
  .lnc-spot__price { font-size: 26px; }
  .lnc-spot__was { font-size: 14px; }
  .lnc-spot__save { font-size: 9.5px; padding: 5px 10px; }
  .lnc-spot__cta { align-self: stretch; justify-content: center; text-align: center; margin-top: 20px; font-size: 15.5px; padding: 16px 24px; }
}
/* END_SECTION:lnc-spotlight */

/* START_SECTION:lnc-stat-row (INDEX:79) */
.lnc-statrow { padding-block: var(--pt, 64px) var(--pb, 64px); }
.lnc-statrow__grid {
  display: grid;
  grid-template-columns: repeat(var(--cols, 4), 1fr);
  gap: 1px;
  background: var(--lnc-line-soft);
  border: 1px solid var(--lnc-line);
  border-radius: 16px;
  overflow: hidden;
}
.lnc-statrow__item { background: var(--lnc-white); padding: 32px 28px; }
.lnc-statrow__value {
  font-family: var(--lnc-font-display);
  font-weight: 600;
  font-size: 34px;
  letter-spacing: -.02em;
  color: var(--lnc-ink);
}
.lnc-statrow__label {
  font-size: 10.5px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--lnc-muted);
  margin-top: 6px;
}
@media (max-width: 749px) {
  .lnc-statrow__grid { grid-template-columns: 1fr 1fr; }
  .lnc-statrow__item { padding: 24px 20px; }
}
/* END_SECTION:lnc-stat-row */

/* START_SECTION:lnc-steps (INDEX:80) */
.lnc-steps { padding-block: var(--pt, 56px) var(--pb, 72px); }
.lnc-steps--narrow .lnc-wrap { max-width: 900px; }
.lnc-steps__head { margin-bottom: 20px; }
.lnc-steps__h { margin-top: 14px; }
.lnc-steps__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--cols, 3), 1fr); gap: 16px; }
.lnc-steps__item { background: var(--lnc-cloud); border: 1px solid var(--lnc-line); border-radius: 14px; padding: 28px; }
.lnc-steps__num { display: block; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .14em; line-height: 1; color: var(--lnc-accent-deep); }
.lnc-steps__title { margin-top: 12px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 17px; color: var(--lnc-ink); }
.lnc-steps__body { margin: 8px 0 0; font-family: var(--lnc-font-serif); font-size: 14.5px; line-height: 1.6; color: var(--lnc-body); }
.lnc-steps__foot { text-align: center; margin-top: 36px; }
.lnc-steps__foot .lnc-cta { font-size: 15px; padding: 15px 30px; }
@media (max-width: 749px) {
  .lnc-steps__grid { grid-template-columns: 1fr; gap: 14px; }
}
/* END_SECTION:lnc-steps */

/* START_SECTION:lnc-stockist-marquee (INDEX:81) */
.lnc-smarquee { padding-block: var(--pt, 56px) var(--pb, 56px); overflow: hidden; }
.lnc-smarquee--paper { background: var(--lnc-paper); }
.lnc-smarquee--white { background: var(--lnc-white); }
.lnc-smarquee--cloud { background: var(--lnc-cloud); }
/* Clone row: not focusable, not clickable (fallback for browsers without `inert`) */
.lnc-smarquee__row--clone a { pointer-events: none; }


.lnc-smarquee__head { text-align: center; margin-bottom: 34px; }
.lnc-smarquee__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-smarquee__h { margin: 10px 0 0; }
.lnc-smarquee__sub { max-width: 560px; margin: 12px auto 0; font-family: var(--lnc-font-serif); font-size: 15.5px; line-height: 1.6; color: var(--lnc-body); }

.lnc-smarquee__rail { position: relative; }
/* Soft fade at both edges so tiles emerge from nothing */
.lnc-smarquee__rail::before,
.lnc-smarquee__rail::after { content: ""; position: absolute; top: 0; bottom: 0; width: clamp(40px, 8vw, 140px); z-index: 2; pointer-events: none; }
.lnc-smarquee--paper .lnc-smarquee__rail::before { background: linear-gradient(90deg, var(--lnc-paper), transparent); left: 0; }
.lnc-smarquee--paper .lnc-smarquee__rail::after { background: linear-gradient(270deg, var(--lnc-paper), transparent); right: 0; }
.lnc-smarquee--white .lnc-smarquee__rail::before { background: linear-gradient(90deg, var(--lnc-white), transparent); left: 0; }
.lnc-smarquee--white .lnc-smarquee__rail::after { background: linear-gradient(270deg, var(--lnc-white), transparent); right: 0; }
.lnc-smarquee--cloud .lnc-smarquee__rail::before { background: linear-gradient(90deg, var(--lnc-cloud), transparent); left: 0; }
.lnc-smarquee--cloud .lnc-smarquee__rail::after { background: linear-gradient(270deg, var(--lnc-cloud), transparent); right: 0; }

.lnc-smarquee__track { display: flex; width: max-content; animation: lnc-smarquee-roll var(--speed, 34s) linear infinite; }
.lnc-smarquee__rail:hover .lnc-smarquee__track { animation-play-state: paused; }
.lnc-smarquee__row { display: flex; align-items: stretch; gap: 18px; list-style: none; margin: 0; padding: 0 9px; }
.lnc-smarquee__item { flex-shrink: 0; }
.lnc-smarquee__tile { display: flex; align-items: center; justify-content: center; min-width: 170px; height: 92px; padding: 18px 28px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius); text-decoration: none; transition: transform .25s ease, box-shadow .25s ease; }
a.lnc-smarquee__tile:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(27, 40, 50, .1); }

.lnc-smarquee .lnc-slogo--img,
.lnc-smarquee .lnc-slogo--lg { width: auto; height: auto; border: none; background: transparent; padding: 0; display: inline-flex; align-items: center; }
.lnc-smarquee .lnc-slogo img { max-height: 52px; max-width: 150px; width: auto; object-fit: contain; }
.lnc-smarquee .lnc-slogo--word { font-family: var(--lnc-font-display); font-weight: 700; font-size: 19px; letter-spacing: .01em; color: var(--lnc-ink); white-space: nowrap; }

@keyframes lnc-smarquee-roll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
  .lnc-smarquee__track { animation: none; overflow-x: auto; max-width: 100%; }
  .lnc-smarquee__row[aria-hidden="true"] { display: none; }
}

@media (max-width: 649px) {
  .lnc-smarquee__tile { min-width: 140px; height: 78px; padding: 14px 20px; }
  .lnc-smarquee .lnc-slogo img { max-height: 42px; max-width: 120px; }
  .lnc-smarquee .lnc-slogo--word { font-size: 16px; }
}
/* END_SECTION:lnc-stockist-marquee */

/* START_SECTION:lnc-stockists (INDEX:82) */
.lnc-stockists { padding-block: var(--pt, 44px) var(--pb, 24px); }

.lnc-stockists__search { max-width: 680px; margin: 0 auto; }
.lnc-stockists__searchbox { display: flex; align-items: center; gap: 10px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-pill); padding: 7px 7px 7px 22px; box-shadow: 0 12px 30px rgba(27, 40, 50, .08); }
.lnc-stockists__searchbox > svg { width: 18px; height: 18px; flex-shrink: 0; color: var(--lnc-muted); }
.lnc-stockists__input { flex: 1; min-width: 0; font-family: var(--lnc-font-body); font-size: 15px; color: var(--lnc-ink); border: none; outline: none; background: transparent; padding: 12px 0; }
.lnc-stockists__input::placeholder { color: var(--lnc-muted); }
.lnc-stockists__input::-webkit-search-cancel-button { -webkit-appearance: none; }
.lnc-stockists__geo { display: inline-flex; align-items: center; gap: 7px; flex-shrink: 0; font-family: var(--lnc-font-body); font-weight: 700; font-size: 13px; color: var(--lnc-white); background: var(--lnc-accent-deep); border: none; border-radius: var(--lnc-radius-pill); padding: 11px 18px; cursor: pointer; transition: transform .2s ease, opacity .2s ease; }
.lnc-stockists__geo svg { width: 16px; height: 16px; }
.lnc-stockists__geo:hover { transform: translateY(-1px); }
.lnc-stockists__geo[disabled] { opacity: .6; cursor: wait; transform: none; }

.lnc-stockists__chips { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 18px; justify-content: center; }
.lnc-stockists__chip { font-family: var(--lnc-font-body); font-weight: 700; font-size: 12.5px; color: var(--lnc-ink-deep); background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 9px 16px; cursor: pointer; transition: all .2s ease; }
.lnc-stockists__chip:hover { transform: translateY(-1px); }
.lnc-stockists__chip.is-active { color: var(--lnc-white); background: var(--lnc-accent-deep); border-color: var(--lnc-accent-deep); }

.lnc-stockists__count { display: flex; align-items: center; justify-content: center; gap: 14px; flex-wrap: wrap; text-align: center; margin: 16px 0 0; font-family: var(--lnc-font-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-stockists__reset { font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-accent-deep); background: transparent; border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 6px 12px; cursor: pointer; transition: all .2s ease; }
.lnc-stockists__reset:hover { background: var(--lnc-accent-wash); }
.lnc-stockists__reset[hidden] { display: none; }

.lnc-stockists__grid { list-style: none; margin: 24px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
/* An explicit display value overrides the UA [hidden] rule, so the filter JS can't hide these — re-assert it. */
.lnc-stockists__grid[hidden] { display: none; }
.lnc-stockist-card { background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius); padding: 24px 26px; display: flex; flex-direction: column; }
.lnc-stockist-card[hidden] { display: none; }
.lnc-stockist-card__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.lnc-stockist-card__id { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; }
/* Card context: logos render frameless at natural width so wordmarks stay legible */
.lnc-stockist-card .lnc-slogo--img { width: auto; height: 30px; background: transparent; border: none; border-radius: 0; padding: 0; }
.lnc-stockist-card .lnc-slogo--img img { height: 30px; max-height: 30px; width: auto; max-width: 132px; object-fit: contain; object-position: left center; border-radius: 6px; }
.lnc-stockist-card .lnc-slogo--mono { width: 34px; height: 34px; border-radius: 10px; font-size: 12.5px; }
.lnc-stockist-card__retailer { display: inline-block; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); text-decoration: none; }
.lnc-stockist-card__suburb { font-family: var(--lnc-font-display); font-weight: 600; font-size: 18px; color: var(--lnc-ink); margin-top: 8px; }
.lnc-stockist-card__state { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 9.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-ink-deep); background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 5px 10px; flex-shrink: 0; }
.lnc-stockist-card__address { font-family: var(--lnc-font-serif); font-size: 14px; line-height: 1.55; color: var(--lnc-body); margin-top: 10px; flex: 1; }
.lnc-stockist-card__foot { display: flex; align-items: center; gap: 16px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--lnc-line-soft); flex-wrap: wrap; }
.lnc-stockist-card__km { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .06em; color: var(--lnc-white); background: var(--lnc-accent-deep); border-radius: var(--lnc-radius-pill); padding: 4px 10px; }
.lnc-stockist-card__km[hidden] { display: none; }
.lnc-stockist-card__phone { font-family: var(--lnc-font-mono); font-size: 11.5px; letter-spacing: .04em; color: var(--lnc-ink); text-decoration: none; }
.lnc-stockist-card__dir { margin-left: auto; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); text-decoration: none; }

/* Retailer logo / monogram chip (shared with the partner marquee) */
.lnc-slogo { flex-shrink: 0; }
.lnc-slogo--img { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; background: var(--lnc-white); border: 1px solid var(--lnc-line-soft); border-radius: 12px; padding: 6px; }
.lnc-slogo--img img { max-width: 100%; max-height: 100%; object-fit: contain; }
.lnc-slogo--mono { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: 12px; font-family: var(--lnc-font-display); font-weight: 700; font-size: 15px; letter-spacing: .04em; color: var(--lnc-accent-deep); }

.lnc-stockists__empty { text-align: center; padding: 56px 20px; border: 1px dashed var(--lnc-taupe); border-radius: var(--lnc-radius); background: var(--lnc-cloud); margin-top: 24px; }
.lnc-stockists__empty-h { font-family: var(--lnc-font-display); font-weight: 600; font-size: 19px; color: var(--lnc-ink); }
.lnc-stockists__empty-p { margin: 8px 0 0; font-family: var(--lnc-font-serif); font-size: 15px; color: var(--lnc-body); }

@media (max-width: 989px) {
  .lnc-stockists__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 649px) {
  .lnc-stockists__grid { grid-template-columns: 1fr; gap: 14px; }
  .lnc-stockists__searchbox { padding-left: 16px; }
  .lnc-stockists__geo span { display: none; }
  .lnc-stockists__geo { padding: 12px; }
}
/* END_SECTION:lnc-stockists */

/* START_SECTION:lnc-terms-note (INDEX:83) */
.lnc-note { padding-block: var(--pt, 24px) var(--pb, 72px); }
.lnc-note__wrap { max-width: 900px; margin: 0 auto; padding-inline: var(--lnc-gutter, 40px); text-align: center; }
.lnc-note__body { font-family: var(--lnc-font-serif); font-size: 16px; line-height: 1.75; color: var(--lnc-body); }
.lnc-note__body strong { color: var(--lnc-ink); }
.lnc-note__fine { margin-top: 18px; font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-taupe); }
/* END_SECTION:lnc-terms-note */

/* START_SECTION:lnc-timeline (INDEX:84) */
.lnc-timeline { padding-block: var(--pt, 84px) var(--pb, 84px); }

/* ---- Heading ---- */
.lnc-timeline__head { max-width: 60ch; margin: 0 auto 56px; text-align: center; }
.lnc-timeline__eyebrow { color: var(--lnc-muted); }
.lnc-timeline__h { margin-top: 14px; }
.lnc-timeline__accent { color: var(--lnc-accent-deep); }

/* ---- Track + centre line ---- */
.lnc-timeline__track { position: relative; max-width: var(--track, 900px); margin-inline: auto; }
.lnc-timeline__track::before {
  content: ""; position: absolute; left: 50%; top: 6px; bottom: 6px; width: 2px;
  transform: translateX(-50%);
  background: linear-gradient(180deg, var(--lnc-accent-line), var(--lnc-accent) 50%, var(--lnc-accent-line));
}

/* ---- Entry row ---- */
.lnc-timeline__entry { position: relative; display: grid; grid-template-columns: 1fr 64px 1fr; align-items: center; margin-bottom: 44px; }
.lnc-timeline__entry:last-child { margin-bottom: 0; }
.lnc-timeline__dot {
  grid-column: 2; justify-self: center;
  width: 18px; height: 18px; border-radius: 50%;
  background: var(--lnc-accent);
  box-shadow: 0 0 0 4px var(--lnc-paper), 0 0 0 5px var(--lnc-accent-line);
}
.lnc-timeline__entry:nth-child(odd) .lnc-timeline__card { grid-column: 1; justify-self: end; text-align: left; }
.lnc-timeline__entry:nth-child(even) .lnc-timeline__card { grid-column: 3; justify-self: start; }

/* ---- Card ---- */
.lnc-timeline__card {
  display: inline-block; background: var(--lnc-white); border: 1px solid var(--lnc-line);
  border-radius: 14px; padding: 24px 28px; max-width: 380px;
}
/* Last milestone ("Today") is highlighted, as in the design */
.lnc-timeline__entry:last-child .lnc-timeline__card { background: var(--lnc-accent-wash); border-color: var(--lnc-accent-line); }
.lnc-timeline__entry:last-child .lnc-timeline__dot { background: var(--lnc-spark); }
.lnc-timeline__year { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-timeline__title { margin-top: 10px; font-family: var(--lnc-font-display); font-weight: 600; font-size: 19px; color: var(--lnc-ink); }
.lnc-timeline__body { margin-top: 8px; font-family: var(--lnc-font-serif); font-size: 14.5px; line-height: 1.6; color: var(--lnc-body); }
.lnc-timeline__body p { margin: 0 0 8px; }
.lnc-timeline__body p:last-child { margin-bottom: 0; }

/* ---- Mobile: single-column stack, line pinned left ---- */
@media (max-width: 749px) {
  .lnc-timeline__head { margin-bottom: 40px; }
  .lnc-timeline__track::before { left: 14px; transform: none; }
  .lnc-timeline__entry { grid-template-columns: 28px 1fr; column-gap: 14px; align-items: start; margin-bottom: 24px; }
  .lnc-timeline__dot { grid-column: 1; justify-self: center; margin-top: 4px; }
  .lnc-timeline__entry:nth-child(odd) .lnc-timeline__card,
  .lnc-timeline__entry:nth-child(even) .lnc-timeline__card { grid-column: 2; justify-self: stretch; text-align: left; max-width: none; }
}
/* END_SECTION:lnc-timeline */

/* START_SECTION:lnc-trust-strip (INDEX:85) */
.lnc-trust { }
.lnc-trust--ruled { border-top: 1px solid var(--lnc-line); border-bottom: 1px solid var(--lnc-line); }
.lnc-trust .lnc-trust__inner { display: grid; grid-template-columns: repeat(var(--cols, 4), 1fr); gap: 0; padding-inline: 0; overflow: hidden; }
.lnc-trust__item { display: flex; align-items: center; gap: 14px; padding: 24px 26px; }
.lnc-trust__item:not(:last-child) { border-right: 1px solid var(--lnc-line-soft); }
.lnc-trust__icon { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: var(--lnc-accent-wash); color: var(--lnc-accent-deep); font-size: 16px; }
.lnc-trust__text { display: flex; flex-direction: column; gap: 3px; }
.lnc-trust__label { font-family: var(--lnc-font-display); font-weight: 600; font-size: 14px; color: var(--lnc-ink); }
.lnc-trust__sub { font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .04em; text-transform: uppercase; color: var(--lnc-muted); }
@media (max-width: 749px) {
  /* Mobile design (mobile.dc.html): horizontally scrollable pill rail */
  .lnc-trust .lnc-trust__inner { display: flex; gap: 8px; overflow-x: auto; padding: 14px 20px; scroll-snap-type: x proximity; scrollbar-width: none; }
  .lnc-trust .lnc-trust__inner::-webkit-scrollbar { display: none; }
  .lnc-trust .lnc-trust__item { flex: 0 0 auto; scroll-snap-align: start; display: inline-flex; align-items: center; gap: 8px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: var(--lnc-radius-pill); padding: 9px 14px; }
  .lnc-trust .lnc-trust__item:not(:last-child) { border-right: 1px solid var(--lnc-line); }
  .lnc-trust .lnc-trust__icon { width: auto; height: auto; background: transparent; font-size: 13px; }
  .lnc-trust .lnc-trust__icon svg { width: 13px; height: 13px; }
  .lnc-trust .lnc-trust__text { flex-direction: row; gap: 6px; align-items: baseline; }
  .lnc-trust .lnc-trust__label { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 9.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-body); white-space: nowrap; }
  .lnc-trust .lnc-trust__sub { display: none; }
}
/* END_SECTION:lnc-trust-strip */

/* START_SECTION:lnc-ugc-grid (INDEX:86) */
.lnc-ugc { padding-block: var(--pt, 72px) var(--pb, 72px); border-top: 1px solid var(--lnc-line); border-bottom: 1px solid var(--lnc-line); }

.lnc-ugc__head { text-align: center; margin-bottom: 36px; }
.lnc-ugc__eyebrow { color: var(--lnc-accent-deep); }
.lnc-ugc__h { margin: 14px 0 0; font-family: var(--lnc-font-display); font-weight: 600; font-size: 32px; letter-spacing: -.025em; color: var(--lnc-ink); }
.lnc-ugc__body { margin: 12px auto 0; font-family: var(--lnc-font-serif); font-size: 16px; line-height: 1.6; color: var(--lnc-body); max-width: 48ch; }
.lnc-ugc__body strong { color: var(--lnc-ink); }

.lnc-ugc__grid { display: grid; grid-template-columns: repeat(var(--cols, 6), 1fr); gap: 12px; }

.lnc-ugc__tile { position: relative; aspect-ratio: 1 / 1; border-radius: 12px; overflow: hidden; background: var(--lnc-cloud); }
.lnc-ugc__tile--warm { background: repeating-linear-gradient(135deg, var(--lnc-accent-wash), var(--lnc-accent-wash) 10px, var(--lnc-cream) 10px, var(--lnc-cream) 20px); }
.lnc-ugc__tile--cool { background: repeating-linear-gradient(135deg, var(--lnc-cloud), var(--lnc-cloud) 10px, var(--lnc-paper) 10px, var(--lnc-paper) 20px); }
.lnc-ugc__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.lnc-ugc__handle { position: absolute; bottom: 8px; left: 8px; font-family: var(--lnc-font-mono); font-size: 9px; letter-spacing: .04em; color: var(--lnc-muted); background: rgba(255, 255, 255, .8); padding: 3px 7px; border-radius: 5px; }

.lnc-ugc__note { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .04em; text-transform: uppercase; color: var(--lnc-ink-soft); text-align: center; margin-top: 20px; }

/* Scroll rail variant */
.lnc-ugc--scroll-rail .lnc-ugc__grid { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; padding-bottom: 4px; }
.lnc-ugc--scroll-rail .lnc-ugc__tile { flex: 0 0 calc((100% - (var(--cols, 6) - 1) * 12px) / var(--cols, 6)); scroll-snap-align: start; }

@media (max-width: 749px) {
  /* Design mobile-product 11: the grid becomes a snap rail at ~150px tiles —
     a 6-up grid at 390px means 60px thumbnails, useless. Applies to both
     layout modes on mobile. */
  .lnc-ugc { padding-block: 28px 30px; }
  .lnc-ugc__grid, .lnc-ugc--scroll-rail .lnc-ugc__grid { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; margin-inline: calc(-1 * var(--lnc-gutter)); padding: 0 var(--lnc-gutter) 4px; }
  .lnc-ugc__grid::-webkit-scrollbar { display: none; }
  .lnc-ugc__tile, .lnc-ugc--scroll-rail .lnc-ugc__tile { flex: 0 0 150px; scroll-snap-align: start; }
  .lnc-ugc__head { margin-bottom: 18px; }
  .lnc-ugc__h { margin-top: 10px; font-size: 25px; }
  .lnc-ugc__body { margin-top: 9px; font-size: 15.5px; }
  .lnc-ugc__note { margin-top: 12px; }
}
/* END_SECTION:lnc-ugc-grid */

/* START_SECTION:main-cart-items (INDEX:94) */
.lnc-cartpage { display: block; background: var(--lnc-paper); }
.lnc-cartpage__wrap { max-width: 1280px; margin: 0 auto; padding: 40px clamp(24px, 3.5vw, 72px) 76px; }

/* empty state */
.lnc-cartpage .lnc-cartpage__warnings { display: none; }
.lnc-cartpage.is-empty .lnc-cartpage__warnings { display: block; max-width: 520px; margin: 0 auto; padding: 76px 20px 60px; text-align: center; }
.lnc-cartpage.is-empty .lnc-cartpage__contents { display: none; }
.lnc-cartpage__emptyh { font-family: var(--lnc-font-display); font-weight: 600; font-size: 26px; letter-spacing: -.02em; color: var(--lnc-ink); }
.lnc-cartpage__emptyp { margin: 12px 0 0; font-family: var(--lnc-font-serif); font-size: 16px; line-height: 1.6; color: var(--lnc-body); }
.lnc-cartpage__emptyctas { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-top: 24px; }
.lnc-cartpage .lnc-cartpage__emptycta { text-decoration: none; font-family: var(--lnc-font-body); font-weight: 700; font-size: 14.5px; border-radius: var(--lnc-radius-pill); padding: 15px 28px; }
.lnc-cartpage .lnc-cartpage__emptycta--ink { color: #F4EEE4; background: var(--lnc-ink); }
.lnc-cartpage .lnc-cartpage__emptycta--line { color: var(--lnc-accent-deep); background: transparent; border: 1px solid var(--lnc-accent); }

/* header */
.lnc-cartpage__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; flex-wrap: wrap; padding-bottom: 24px; border-bottom: 1px solid var(--lnc-line); }
.lnc-cartpage__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-cartpage__h { margin: 14px 0 0; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; font-family: var(--lnc-font-display); font-weight: 600; font-size: clamp(34px, 3.4vw, 44px); line-height: 1; letter-spacing: -.03em; color: var(--lnc-ink); }
.lnc-cartpage__countpill { display: inline-flex; align-items: center; gap: 7px; font-family: var(--lnc-font-mono); font-weight: 500; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #12242A; background: var(--lnc-spark-soft, #D8B87E); border-radius: var(--lnc-radius-pill); padding: 8px 15px; }
.lnc-cartpage__countdot { width: 6px; height: 6px; border-radius: 50%; background: #12242A; display: inline-block; }
.lnc-cartpage__note { margin: 13px 0 0; font-family: var(--lnc-font-serif); font-size: 16px; line-height: 1.6; color: var(--lnc-body); max-width: 54ch; }
.lnc-cartpage .lnc-cartpage__keep { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-accent-deep); text-decoration: none; }

/* free-shipping bar */
.lnc-cartpage__shipbar { margin-top: 22px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 14px; padding: 15px 20px; display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.lnc-cartpage__shiplabel { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .13em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-cartpage__shiptrack { flex: 1; min-width: 180px; height: 6px; background: var(--lnc-line-soft); border-radius: var(--lnc-radius-pill); overflow: hidden; display: block; }
.lnc-cartpage__shipfill { display: block; height: 100%; background: var(--lnc-spark, #C2984E); border-radius: var(--lnc-radius-pill); transition: width .5s cubic-bezier(.22, .61, .36, 1); }
.lnc-cartpage__shipmeta { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .13em; text-transform: uppercase; color: var(--lnc-accent-deep); }

/* grid */
.lnc-cartgrid { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(320px, 382px); gap: clamp(28px, 3.4vw, 60px); align-items: start; margin-top: 34px; }
.lnc-cartgrid__side { position: sticky; top: 104px; }

/* column headings */
.lnc-cartpage__colhead { display: grid; grid-template-columns: minmax(0, 1fr) 108px 104px; gap: 18px; padding-bottom: 12px; border-bottom: 1px solid var(--lnc-line); font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: #A89F92; }
.lnc-cartpage__colhead-total { text-align: right; }

/* item rows */
.lnc-cartpage .lnc-cartrow { display: grid; grid-template-columns: minmax(0, 1fr) 108px 104px; gap: 18px; align-items: start; padding: 24px 0; border-bottom: 1px solid var(--lnc-line-soft); position: relative; }
.lnc-cartrow__item { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 18px; align-items: start; min-width: 0; }
.lnc-cartrow__media { display: block; background: var(--lnc-white); border: 1px solid var(--lnc-line-soft); border-radius: 12px; aspect-ratio: 1 / 1; overflow: hidden; }
.lnc-cartrow__media img { width: 100%; height: 100%; object-fit: contain; padding: 8px; mix-blend-mode: multiply; }
.lnc-cartrow__details { min-width: 0; }
.lnc-cartpage .lnc-cartrow__name { font-family: var(--lnc-font-display); font-weight: 600; font-size: 17px; letter-spacing: -.01em; color: var(--lnc-ink); text-decoration: none; }
.lnc-cartrow__variant { font-size: 13px; color: var(--lnc-muted); margin-top: 3px; }
.lnc-cartrow__stock { display: flex; align-items: center; gap: 7px; margin-top: 11px; font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.lnc-cartrow__stockdot { width: 6px; height: 6px; border-radius: 50%; display: inline-block; }
.lnc-cartrow__stock--in { color: #4A7355; }
.lnc-cartrow__stock--in .lnc-cartrow__stockdot { background: #5F8F6B; }
.lnc-cartrow__stock--low { color: #8A6A24; }
.lnc-cartrow__stock--low .lnc-cartrow__stockdot { background: #C2984E; }
.lnc-cartrow__lead { font-size: 12.5px; color: var(--lnc-muted); margin-top: 6px; line-height: 1.5; }
.lnc-cartrow__discount { font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--lnc-accent-deep); margin-top: 6px; }
.lnc-cartrow__removewrap { display: flex; margin-top: 14px; }
.lnc-cartpage .lnc-cartrow__remove { font-family: var(--lnc-font-mono); font-size: 9.5px; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; color: #A89F92; text-decoration: none; cursor: pointer; padding: 0; }

/* qty pill */
.lnc-cartrow__qtycell { position: relative; }
.lnc-cartpage .lnc-cartrow__qty { display: inline-flex; align-items: center; border: 1px solid #DDD0BC; border-radius: var(--lnc-radius-pill); background: var(--lnc-white); width: auto; min-height: 0; }
.lnc-cartpage .lnc-cartrow__qtybtn { border: none; background: transparent; width: 40px; height: 44px; font-size: 17px; color: var(--lnc-ink); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; padding: 0; }
.lnc-cartpage .lnc-cartrow__qtyinput { font-family: var(--lnc-font-body); font-weight: 700; font-size: 14px; width: 24px; min-width: 0; text-align: center; border: none; background: transparent; color: var(--lnc-ink); padding: 0; -moz-appearance: textfield; appearance: textfield; opacity: 1; }
.lnc-cartpage .lnc-cartrow__qtyinput::-webkit-outer-spin-button, .lnc-cartpage .lnc-cartrow__qtyinput::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.lnc-cartrow__each { font-family: var(--lnc-font-mono); font-size: 10.5px; color: #A89F92; margin-top: 9px; }
.lnc-cartpage .lnc-cartrow .loading__spinner { position: absolute; top: 6px; left: 100%; margin-left: 8px; width: 18px; height: 18px; }
.lnc-cartpage .lnc-cartrow .loading__spinner.hidden { display: none; }
#main-cart-items.cart__items--disabled { pointer-events: none; opacity: .65; }

/* line totals */
.lnc-cartrow__totalcell { text-align: right; }
.lnc-cartrow__was { display: block; font-family: var(--lnc-font-mono); font-size: 11px; color: #A89F92; }
.lnc-cartrow__linetotal { font-family: var(--lnc-font-display); font-weight: 600; font-size: 18px; color: var(--lnc-ink); }
.lnc-cartpage .cart-item__error { grid-column: 1 / -1; }
.lnc-cartpage .cart-item__error-text { color: #A8574C; font-size: 12px; }
.lnc-cartpage .cart-item__error-text:empty { display: none; }

/* cross-sell */
.lnc-cross { margin-top: 34px; }
.lnc-cross__eyebrow { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--lnc-accent-deep); }
.lnc-cross__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; margin-top: 14px; }
.lnc-cross__card { display: flex; align-items: center; gap: 14px; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 12px; padding: 12px 14px; }
.lnc-cross__thumb { width: 56px; height: 56px; background: var(--lnc-white); border: 1px solid var(--lnc-line-soft); border-radius: 9px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; overflow: hidden; }
.lnc-cross__thumb img { width: 84%; height: 84%; object-fit: contain; mix-blend-mode: multiply; }
.lnc-cross__meta { flex: 1; min-width: 0; }
.lnc-cross__name { display: block; font-family: var(--lnc-font-display); font-weight: 600; font-size: 14px; color: var(--lnc-ink); text-decoration: none; }
.lnc-cross__price { font-family: var(--lnc-font-mono); font-size: 11.5px; color: var(--lnc-muted); margin-top: 3px; }
.lnc-cartpage .lnc-cross__add { font-family: var(--lnc-font-body); font-weight: 700; font-size: 12px; color: var(--lnc-accent-deep); background: transparent; border: 1px solid var(--lnc-accent); border-radius: var(--lnc-radius-pill); padding: 10px 18px; cursor: pointer; flex-shrink: 0; text-decoration: none; }

/* summary card */
.lnc-summary { background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 16px; padding: 24px 24px 26px; }
.lnc-summary__h { font-family: var(--lnc-font-display); font-weight: 600; font-size: 19px; letter-spacing: -.01em; color: var(--lnc-ink); }
.lnc-summary__row { display: flex; justify-content: space-between; align-items: baseline; margin-top: 11px; font-size: 14.5px; color: var(--lnc-body); }
.lnc-summary__row--subtotal { margin-top: 18px; }
.lnc-summary__row--discount { color: var(--lnc-accent-deep); }
.lnc-summary__count { font-family: var(--lnc-font-mono); font-size: 11px; color: #A89F92; }
.lnc-summary__val { font-family: var(--lnc-font-display); font-weight: 600; font-size: 15.5px; color: var(--lnc-ink); white-space: nowrap; }
.lnc-summary__row--discount .lnc-summary__val { color: inherit; }
.lnc-summary__val--delivery.is-unset { color: #A89F92; }
.lnc-summary__inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--lnc-line-soft); }
.lnc-summary__inputlabel { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10px; letter-spacing: .13em; text-transform: uppercase; color: var(--lnc-muted); }
.lnc-summary__field { position: relative; margin-top: 8px; }
.lnc-summary .lnc-summary__input { width: 100%; font-family: var(--lnc-font-body); font-size: 13px; color: var(--lnc-ink); background: var(--lnc-white); border: 1px solid #DDD0BC; border-radius: var(--lnc-radius-pill); padding: 12px 44px 12px 15px; outline: none; }
.lnc-summary .lnc-summary__input--mono { font-family: var(--lnc-font-mono); letter-spacing: .08em; }
.lnc-summary .lnc-summary__input:focus { border-color: var(--lnc-accent); }
.lnc-summary .lnc-summary__input::placeholder { color: #A89F92; }
.lnc-summary__go { position: absolute; top: 4px; right: 4px; width: 34px; height: 34px; border-radius: 50%; border: none; background: var(--lnc-accent-wash); color: var(--lnc-accent-deep); font-size: 14px; cursor: pointer; transition: background .2s var(--lnc-ease, ease), color .2s var(--lnc-ease, ease); }
.lnc-summary__go:hover { background: var(--lnc-accent); color: #FFFFFF; }
.lnc-summary__err { margin-top: 7px; font-size: 11.5px; line-height: 1.45; color: #A8574C; }
.lnc-summary__pclabel { margin-top: 9px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 13.5px; color: var(--lnc-ink); }
.lnc-summary .lnc-summary__change { display: inline-block; margin-top: 5px; font-family: var(--lnc-font-mono); font-size: 9.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--lnc-accent-deep); background: none; border: none; cursor: pointer; padding: 12px 0; line-height: 1.25; }
.lnc-summary .lnc-summary__change.lnc-tlink::after { bottom: 9px; }
.lnc-summary .lnc-summary__cancel { color: var(--lnc-muted); margin-left: 12px; }
.lnc-summary__promochip { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 9px; background: var(--lnc-accent-wash); border: 1px solid var(--lnc-accent-line); border-radius: var(--lnc-radius-pill); padding: 9px 8px 9px 14px; }
.lnc-summary__promocode { font-family: var(--lnc-font-mono); font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--lnc-accent-deep); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lnc-summary__promoclear { background: none; border: none; font-size: 15px; line-height: 1; color: var(--lnc-accent-deep); cursor: pointer; padding: 0 4px; }
.lnc-summary__promonote { margin-top: 6px; font-family: var(--lnc-font-mono); font-size: 9.5px; letter-spacing: .08em; text-transform: uppercase; color: #A89F92; }

/* delivery options */
.lnc-summary__opts { display: flex; flex-direction: column; gap: 8px; margin-top: 14px; }
.lnc-summary .lnc-shipopt { display: grid; grid-template-columns: 16px minmax(0, 1fr) auto; gap: 11px; align-items: start; text-align: left; background: var(--lnc-white); border: 1px solid var(--lnc-line); border-radius: 10px; padding: 12px 13px; cursor: pointer; font-family: var(--lnc-font-body); transition: border-color .2s var(--lnc-ease, ease), background .2s var(--lnc-ease, ease); width: 100%; }
.lnc-summary .lnc-shipopt.is-active { background: var(--lnc-accent-wash); border-color: var(--lnc-accent); }
.lnc-shipopt__dot { width: 15px; height: 15px; border-radius: 50%; border: 1.5px solid #C8BCA6; background: #FFFFFF; display: flex; align-items: center; justify-content: center; margin-top: 1px; }
.lnc-shipopt.is-active .lnc-shipopt__dot { border-color: var(--lnc-accent); }
.lnc-shipopt__dotfill { width: 7px; height: 7px; border-radius: 50%; background: transparent; display: block; }
.lnc-shipopt.is-active .lnc-shipopt__dotfill { background: var(--lnc-accent-deep); }
.lnc-shipopt__name { display: block; font-weight: 700; font-size: 13px; color: var(--lnc-ink); }
.lnc-shipopt__eta { display: block; font-size: 12px; color: var(--lnc-muted); margin-top: 3px; line-height: 1.45; }
.lnc-shipopt__price { font-family: var(--lnc-font-mono); font-size: 11.5px; color: var(--lnc-ink); white-space: nowrap; }
.lnc-shipopt__price.is-free { color: var(--lnc-accent-deep); }
.lnc-summary__optnote { font-size: 12px; color: var(--lnc-muted); }
/* Delivery preference (authority to leave) */
.lnc-atl { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--lnc-line-soft); }
.lnc-atl__label { font-family: var(--lnc-font-mono); font-weight: 500; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--lnc-muted); margin-bottom: 8px; }
.lnc-atl__opts { display: flex; flex-wrap: wrap; gap: 8px; }
.lnc-atl__opt { position: relative; cursor: pointer; }
.lnc-atl__opt input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.lnc-atl__pill { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 1px solid var(--lnc-line); border-radius: 999px; background: var(--lnc-white); font-family: var(--lnc-font-body); font-weight: 600; font-size: 13px; color: var(--lnc-ink); transition: border-color .15s, background .15s; }
.lnc-atl__dot { width: 12px; height: 12px; border-radius: 50%; border: 1.5px solid var(--lnc-line-strong, #C9C4BD); background: var(--lnc-white); box-sizing: border-box; }
.lnc-atl__opt input:checked + .lnc-atl__pill { border-color: var(--lnc-accent-deep); background: var(--lnc-accent-wash, #EEF3F2); }
.lnc-atl__opt input:checked + .lnc-atl__pill .lnc-atl__dot { border: 4px solid var(--lnc-accent-deep); }
.lnc-atl__opt input:focus-visible + .lnc-atl__pill { outline: 2px solid var(--lnc-accent-deep); outline-offset: 2px; }
.lnc-atl__note { margin: 8px 0 0; font-family: var(--lnc-font-serif); font-size: 12.5px; line-height: 1.5; color: var(--lnc-muted); }
/* chosen option collapses the list — chevron hints it re-opens */
.lnc-summary .lnc-shipopt.is-collapsed { grid-template-columns: 16px minmax(0, 1fr) auto 14px; }
.lnc-shipopt__chev { color: var(--lnc-accent-deep); font-size: 11px; line-height: 1.4; }

/* total + checkout */
.lnc-summary__totalrow { display: flex; justify-content: space-between; align-items: baseline; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--lnc-line); }
.lnc-summary__totallabel { font-family: var(--lnc-font-display); font-weight: 600; font-size: 17px; color: var(--lnc-ink); }
.lnc-summary__totalval { font-family: var(--lnc-font-display); font-weight: 600; font-size: 27px; letter-spacing: -.02em; color: var(--lnc-ink); }
.lnc-summary__gst { font-family: var(--lnc-font-mono); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; color: #A89F92; margin-top: 5px; }
/* Design update: brass checkout pill; hover = base .lnc-cta accent-deep wipe → white text */
.lnc-summary .lnc-summary__checkout { display: block; width: 100%; margin-top: 18px; font-family: var(--lnc-font-body); font-weight: 700; font-size: 15px; color: var(--lnc-ink); background: var(--lnc-spark, #C2984E); border: none; border-radius: var(--lnc-radius-pill); padding: 17px 24px; cursor: pointer; text-align: center; }
.lnc-summary .lnc-summary__checkout:disabled { opacity: .5; cursor: not-allowed; }
.lnc-summary .lnc-summary__checkout.lnc-hover-test::before { transform: scaleX(1); }
.lnc-summary .lnc-summary__checkout.lnc-hover-test { color: #fff; letter-spacing: .03em; }
.lnc-summary__ticks { display: flex; flex-direction: column; gap: 9px; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--lnc-line-soft); font-size: 12.5px; color: var(--lnc-body); }
.lnc-summary__tick { display: flex; gap: 9px; align-items: flex-start; }
.lnc-summary__tickmark { color: var(--lnc-accent-deep); }
.lnc-cartpage__phonenote { margin-top: 14px; text-align: center; font-family: var(--lnc-font-serif); font-style: italic; font-size: 14px; color: var(--lnc-muted); }
.lnc-cartpage__errors { text-align: center; color: #A8574C; font-size: 12.5px; margin-top: 8px; }
.lnc-cartpage__errors:empty { display: none; }

@media (max-width: 1180px) {
  .lnc-cartgrid { grid-template-columns: minmax(0, 1fr); }
  .lnc-cartgrid__side { position: static; }
}
@media (max-width: 560px) {
  .lnc-cartpage .lnc-cartrow { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .lnc-cartrow__totalcell { text-align: left; }
  .lnc-cartpage__colhead { display: none; }
  .lnc-cartpage__wrap { padding-bottom: 48px; }
}
/* END_SECTION:main-cart-items */