/* LANTHOME palette: warm ivory, brand navy, soft sage. */
:root {
  --lanthome-ivory: #f7f4ee;
  --lanthome-navy: #103b78;
  --lanthome-navy-hover: #092b5b;
  --lanthome-sage: #e4e8dc;
  --lanthome-ink: #303630;
  --lanthome-muted: #60685f;
  --lanthome-line: #d5dace;
}
body.template-index {
  --color-background: 247, 244, 238;
  --color-foreground: 48, 54, 48;
  background: var(--lanthome-ivory);
  color: var(--lanthome-ink);
}
.lanthome-hero-picture { display: block; width: 100%; height: 100%; }
.ppl-stat-number { font-variant-numeric: tabular-nums; }
@media(max-width:749px) { .lanthome-hero-image { object-position: right center; } }
.preview-header,.dropdown,.help-panel { background: #fff; }
.preview-header { box-shadow: 0 8px 40px #103b780b; }
.desktop-nav a,.nav-trigger { color: var(--lanthome-ink); }
.desktop-nav a:hover,.nav-trigger:hover,.mega-menu a:last-child,
.help-panel a:not(.primary-button) { color: var(--lanthome-navy); }
button:focus-visible,a:focus-visible,summary:focus-visible { outline-color: var(--lanthome-navy); }
.primary-button,.ppl-hero-btns .button--primary {
  background: var(--lanthome-navy);
  color: #fff;
  border-color: var(--lanthome-navy);
}
.primary-button:hover,.ppl-hero-btns .button--primary:hover {
  background: var(--lanthome-navy-hover);
  color: #fff;
  border-color: var(--lanthome-navy-hover);
}
.ppl-hero-btns .button--link-primary { color: var(--lanthome-navy); }
.help-launcher { background: var(--lanthome-navy); box-shadow: 0 4px 18px #103b7830; }
.help-launcher:hover { background: var(--lanthome-navy-hover); }
.ai-animated-banner-text-line-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj { color: var(--lanthome-ink); }
.ai-animated-banner-text-line-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj--animated { color: var(--lanthome-navy); }
.ai-animated-banner-cursor-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj { background-color: var(--lanthome-navy); }
.ppl-hero-section,.ppl-trust-bar { background: var(--lanthome-ivory); }
.ppl-hero-heading,.ppl-heading,.cb-heading,.rich-text__heading { color: var(--lanthome-navy); }
.ppl-hero-desc,.ppl-tier-desc,.cb-item-desc,.ppl-stat-desc { color: var(--lanthome-muted); }
.ppl-hero-eyebrow,.ppl-eyebrow,.cb-eyebrow { color: var(--lanthome-muted); }
.ppl-trust-pill { background: var(--lanthome-sage); color: var(--lanthome-navy); border-color: var(--lanthome-line); }
.ppl-trust-track a.ppl-trust-pill { text-decoration: none; cursor: pointer; transition: background-color .18s ease, color .18s ease; }
.ppl-trust-track a.ppl-trust-pill:hover { background: var(--lanthome-navy); color: #fff; border-color: var(--lanthome-navy); }
.ppl-trust-track a.ppl-trust-pill:focus-visible { outline: 2px solid var(--lanthome-navy); outline-offset: 4px; }
.ppl-wrap { background: #fff; }
.ppl-tier-card { background: var(--lanthome-ivory); }
.ppl-tier-card.ppl-center { border-color: var(--lanthome-navy); background: #f4f6f0; }
.ppl-moq,.ppl-learn-link { color: var(--lanthome-navy); }
.ppl-tier-name { color: var(--lanthome-ink); }
.ppl-arrow-btn { color: var(--lanthome-navy); }
.ppl-arrow-btn svg path { stroke: var(--lanthome-navy); }
.ppl-arrow-btn:hover { background: var(--lanthome-sage); }
.ppl-dot { background: #c2c9bd; }
.ppl-dot.ppl-active { background: var(--lanthome-navy); }
#shopify-section-template--26743097327863__collections_grid_nKxXcM { background: var(--lanthome-ivory); }
#shopify-section-template--26743097327863__collections_grid_nKxXcM .title { color: var(--lanthome-navy); }
#shopify-section-template--26743097327863__collections_grid_nKxXcM .description { color: var(--lanthome-muted); }
.collections-grid__title { color: var(--lanthome-ink); }
.cb-outer { background: #fff; }
.cb-item-title { color: var(--lanthome-ink); }
.cb-list li { border-color: #e2e6dd; }
.cb-check circle { fill: var(--lanthome-sage); }
.cb-check path { stroke: var(--lanthome-navy); }
.cb-learn { color: var(--lanthome-navy); }
/* LANTHOME product commitments: a quiet checklist with brand-colored details. */
.cb-outer { width: 100%; position: relative; left: auto; right: auto; margin: 0; padding: 60px 0 52px; background: #fff; }
.cb-inner { width: min(960px,90%); max-width: none; margin: 0 auto; padding: 0; }
.cb-intro { max-width: 840px; margin: 0 auto 30px; text-align: center; }
.cb-intro .cb-eyebrow { color: #708477; margin: 0 0 16px; letter-spacing: .18em; }
.cb-intro .cb-heading { max-width: 800px; margin: 0 auto 16px; font-size: clamp(27px,2.7vw,34px); font-weight: 600; line-height: 1.3; letter-spacing: -.025em; color: var(--lanthome-navy); text-align: center; text-wrap: balance; }
.cb-intro .cb-subhead { color: #687069; font-size: 14px; line-height: 1.8; margin: 0; text-align: center; }
.cb-list { display: block; width: 100%; max-width: none; padding: 0; margin: 0; list-style: none; border-top: 1px solid #dfe5de; }
.cb-list li,.cb-list li:last-child { display: flex; flex-direction: row; gap: 16px; align-items: flex-start; padding: 18px 6px; border: 0; border-bottom: 1px solid #e7ebe5; background: transparent; border-radius: 0; }
.cb-list li::before { content: none; }
.cb-list .cb-check { display: block; width: 26px; height: 26px; flex: 0 0 26px; margin-top: 1px; }
.cb-list .cb-check circle { fill: #eaf0e8; }
.cb-list .cb-check path { stroke: #537561; }
.cb-list li > div { min-width: 0; }
.cb-list .cb-item-title { font-size: 16px; font-weight: 600; line-height: 1.5; margin: 0 0 4px; color: var(--lanthome-navy); }
.cb-list .cb-item-desc { font-size: 14px; line-height: 1.75; color: #606760; }
.cb-inner > .cb-learn { display: block; width: fit-content; max-width: 100%; margin: 32px auto 0; padding: 8px 0; color: var(--lanthome-navy); font-size: 14px; line-height: 1.6; text-align: center; }
@media(max-width:649px) {
  .cb-outer { padding: 46px 0 38px; }
  .cb-intro { margin-bottom: 26px; }
  .cb-intro .cb-heading { font-size: 28px; }
  .cb-list li,.cb-list li:last-child { padding: 18px 0; gap: 12px; }
  .cb-list .cb-check { width: 22px; height: 22px; flex-basis: 22px; margin-top: 2px; }
}
#shopify-section-template--26743097327863__rich_text_UJEJFX,
#shopify-section-template--26743097327863__rich_text_UJEJFX .rich-text,
#shopify-section-template--26743097327863__rich_text_UJEJFX .rich-text__blocks,
#shopify-section-template--26743097327863__custom_liquid_mVJj6N,
.ppl-stats-outer { background: var(--lanthome-sage); --color-background: 228, 232, 220; }
.ppl-stat { background: #fff; }
.ppl-stat-number { color: var(--lanthome-navy); }
.ppl-stat-label { color: var(--lanthome-ink); }
.lanthome-brand-panel { background: var(--lanthome-ivory); }
.lanthome-brand-panel p,.lanthome-brand-panel span { color: var(--lanthome-navy); }
.lanthome-footer { margin-top: 0; background: var(--lanthome-navy); color: #fff; }
.lanthome-footer h2 { color: #fff; }
.lanthome-footer p,.lanthome-footer a:not(.primary-button) { color: #e0e7ef; }
.lanthome-footer a:not(.primary-button):hover { color: #fff; text-decoration: underline; }
.lanthome-footer a.lanthome-footer-logo { width: max-content; max-width: 100%; background: transparent; padding: 0; border-radius: 0; color: #fff; font-size: clamp(22px, 2.2vw, 29px); font-weight: 500; line-height: 1.2; letter-spacing: .06em; text-decoration: none; }
.lanthome-footer a.lanthome-footer-logo:hover { color: #fff; text-decoration: none; opacity: .85; }
.lanthome-footer .primary-button { background: #fff; color: var(--lanthome-navy)!important; border-color: #fff; }
.lanthome-footer .primary-button:hover { background: var(--lanthome-sage); border-color: var(--lanthome-sage); }
.lanthome-footer-bottom { color: #d6dfeb; border-color: #ffffff30; }
.lanthome-footer-contact address { max-width: 340px; margin: 0 0 18px; color: #e0e7ef; font-size: 14px; font-style: normal; line-height: 1.75; }
.lanthome-footer-contact .primary-button { margin-top: 8px; margin-bottom: 0; }
.lanthome-footer-grid { grid-template-columns: 1fr .85fr 1fr .95fr 1.5fr; gap: clamp(20px, 2.5vw, 40px); }
.lanthome-footer-grid > div { min-width: 0; }
.lanthome-footer-contact a[href^="mailto:"] { overflow-wrap: anywhere; }
.lanthome-footer-compliance h2 { text-transform: uppercase; letter-spacing: .07em; font-size: 14px; }
.lanthome-footer-compliance a { width: fit-content; }
.lanthome-footer a:focus-visible { outline: 2px solid #fff; outline-offset: 5px; border-radius: 2px; }
@media (min-width: 601px) and (max-width: 1100px) {
  .lanthome-footer-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
  .lanthome-footer-contact { grid-column: span 2; }
}
@media (max-width: 600px) {
  .lanthome-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 20px; }
  .lanthome-footer-grid > div:first-child, .lanthome-footer-contact { grid-column: 1 / -1; }
}
@media(max-width:989px) { .dropdown { border-left-color: var(--lanthome-navy); } }
@media(min-width:990px) { .desktop-nav > .nav-group:first-child { position: static; } .mega-menu { left: 24px; right: 24px; width: auto; top: calc(100% + 10px); } }
.ppl-stats-grid { grid-template-columns: 1.4fr 1fr 1fr; }
/* Keep empty and populated typewriter rows identical in the centered hero. */
.ai-animated-banner-content-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.ai-animated-banner-content-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj > * { flex: none; }
/* Give the headline a balanced share of the desktop product composition. */
@media(min-width:750px) {
  .ai-animated-banner-content-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj {
    left: 6.5%;
    top: 53%;
    width: 45%;
    max-width: 720px;
    padding: 0;
  }
  .ai-animated-banner-content-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj .ai-animated-banner-text-line-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj {
    font-size: clamp(42px,5.6vw,84px);
    line-height: 1.18;
    height: 1.18em;
    min-height: 1.18em;
    letter-spacing: -.035em;
  }
}
.ai-animated-banner-text-line-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj {
  height: 1.3em;
  white-space: nowrap;
}
.ai-animated-banner-text-line-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj--animated {
  display: flex;
  align-items: center;
}
.ai-animated-banner-cursor-adtdxykziv1bva2hjzaigenblock54a469c3fjrcj {
  display: block;
  flex: 0 0 2px;
  height: 1em;
  margin-left: 3px;
  background: currentColor;
  /* The requested typing indicator also stays animated in reduced-motion mode. */
  animation: lanthome-caret-blink 0.8s steps(1, end) infinite !important;
}
@keyframes lanthome-caret-blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}
.ppl-stat--image { position: relative; min-height: 285px; }
.ppl-stat--image .lanthome-factory-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 25% center; }
@media(max-width:768px) { .ppl-stats-grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; } .ppl-stat--image { grid-column: 1 / -1; grid-row: auto; height: auto; min-height: 0; aspect-ratio: 16 / 9; } }
/* LANTHOME split carousel: one featured pathway and two selectable previews. */
#shopify-section-template--26743097327863__custom_liquid_DPdXXY { background: #fff; }
.ppl-wrap { width: min(1200px,90%); margin: 0 auto; padding: 72px 0; display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(36px,6vw,88px); align-items: center; }
.lanthome-pathways-intro { min-width: 0; }
.lanthome-pathways-intro .ppl-eyebrow { margin: 0 0 18px; text-align: left; font-size: 11px; letter-spacing: .18em; }
.lanthome-pathways-intro .ppl-eyebrow::before { content: ''; display: inline-block; width: 28px; height: 2px; margin: 0 12px 3px 0; background: #608570; }
.lanthome-pathways-intro .ppl-heading { max-width: 360px; margin: 0 0 20px; text-align: left; font-size: clamp(32px,3.2vw,44px); line-height: 1.12; letter-spacing: -.035em; }
.lanthome-pathways-intro .ppl-subhead { max-width: 360px; margin: 0; padding: 0; text-align: left; font-size: 15px; line-height: 1.8; }
.lanthome-pathways-controls { display: flex; align-items: center; gap: 20px; margin-top: 34px; }
.lanthome-pathways-controls .ppl-arrow-btn { width: 46px; height: 46px; padding: 12px; border: 1px solid #d7ded5; border-radius: 50%; background: #fff; transition: background .2s,border-color .2s; }
.lanthome-pathways-controls .ppl-arrow-btn:hover { background: #e4e8dc; border-color: #bac8b8; }
.lanthome-pathways-controls .ppl-arrow-btn svg { width: 20px; height: 20px; }
.lanthome-pathways-controls .ppl-dot-row { gap: 8px; margin: 0; }
.lanthome-pathways-controls .ppl-dot { position: relative; width: 26px; height: 30px; background: none; border-radius: 0; }
.lanthome-pathways-controls .ppl-dot::after { content: ''; position: absolute; left: 0; right: 0; top: 13px; height: 3px; border-radius: 2px; background: #d7ded5; transition: background .2s; }
.lanthome-pathways-controls .ppl-dot.ppl-active::after { background: #103b78; }
.ppl-wrap .ppl-slider-row { min-width: 0; display: block; }
.ppl-wrap .ppl-cards-track { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; overflow: visible; align-items: stretch; }
.ppl-wrap .ppl-cards-track:focus-visible { outline: 2px solid #103b78; outline-offset: 6px; border-radius: 24px; }
.ppl-wrap .ppl-tier-card.ppl-side { position: relative; display: flex; flex-direction: column; justify-content: center; min-width: 0; min-height: 126px; padding: 24px; border: 1px solid #dce3dc; border-radius: 18px; background: #f4f6f0; opacity: 1; transform: none; cursor: pointer; transition: background .2s,border-color .2s,box-shadow .2s; }
.ppl-wrap .ppl-side .ppl-moq { display: block; margin-bottom: 10px; padding: 0; font-size: 11px; line-height: 1.5; color: #5d7165; white-space: normal; overflow: visible; }
.ppl-wrap .ppl-side .ppl-tier-name { font-size: 20px; line-height: 1.25; color: #103b78; }
.ppl-wrap .ppl-side:hover { background: #e8eee2; border-color: #93a995; box-shadow: 0 5px 16px #103b7810; }
.ppl-wrap .ppl-side:focus-visible { outline: 3px solid #103b78; outline-offset: 3px; }
.ppl-wrap .ppl-tier-card.ppl-center { grid-column: 1 / -1; order: -1; }
.ppl-wrap .ppl-tier-card.ppl-center { position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; justify-content: center; min-height: 350px; padding: 48px; border: 0; border-radius: 24px; background: #103b78; box-shadow: 0 18px 38px #103b7814; animation: pathway-arrive .35s ease both; }
.ppl-wrap .ppl-center::before { content: attr(data-step); position: absolute; z-index: -1; top: 5px; right: 24px; color: #ffffff12; font-family: Georgia,serif; font-size: 144px; line-height: 1; font-weight: 400; }
.ppl-wrap .ppl-center::after { content: ''; position: absolute; z-index: -1; right: -80px; bottom: -150px; width: 340px; height: 340px; border: 1px solid #ffffff14; border-radius: 50%; box-shadow: 0 0 0 45px #ffffff04,0 0 0 90px #ffffff03; }
.ppl-wrap .ppl-center .ppl-moq { position: relative; padding-right: 46px; margin-bottom: 16px; color: #dbe5d1; font-size: 11px; font-weight: 500; letter-spacing: .08em; white-space: normal; }
.ppl-wrap .ppl-center .ppl-tier-name { color: #fff; font-size: 32px; line-height: 1.2; letter-spacing: -.025em; }
.ppl-wrap .ppl-center .ppl-tier-desc { margin-top: 20px; color: #e2e9f0; font-size: 14px; line-height: 1.8; }
.ppl-wrap .ppl-center .ppl-learn-link { width: fit-content; margin-top: 26px; padding-bottom: 5px; color: #fff; font-size: 13px; border-bottom: 1px solid #ffffff60; text-decoration: none; }
.ppl-wrap .ppl-center .ppl-learn-link:hover { border-bottom-color: #fff; }
@keyframes pathway-arrive { from { opacity: .3; transform: translateY(9px); } to { opacity: 1; transform: translateY(0); } }
@media(max-width:989px) { .ppl-wrap { gap: 30px; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); } .ppl-wrap .ppl-tier-card.ppl-center { padding: 34px; min-height: 360px; } }
@media(max-width:749px) {
  .ppl-wrap { padding: 46px 0; grid-template-columns: 1fr; gap: 28px; }
  .lanthome-pathways-intro .ppl-heading { font-size: 34px; max-width: none; }
  .lanthome-pathways-intro .ppl-subhead { max-width: none; font-size: 14px; }
  .lanthome-pathways-controls { margin-top: 24px; }
  .ppl-wrap .ppl-tier-card.ppl-center { min-height: 350px; padding: 32px 28px; border-radius: 20px; }
  .ppl-wrap .ppl-center .ppl-tier-name { font-size: 29px; }
  .ppl-wrap .ppl-center .ppl-tier-desc { font-size: 13px; }
  .ppl-wrap .ppl-center::before { font-size: 120px; }
  .ppl-wrap .ppl-tier-card.ppl-side { padding: 18px 14px; min-height: 130px; border-radius: 16px; }
  .ppl-wrap .ppl-side .ppl-tier-name { font-size: 17px; }
}
.cb-inner > .cb-learn { display: flex; align-items: center; justify-content: center; gap: 20px; min-height: 54px; min-width: 196px; padding: 15px 28px; margin-top: 38px; border: 1px solid #103b78; border-radius: 8px; background: #103b78; color: #fff; font-size: 16px; font-weight: 600; text-decoration: none; box-shadow: 0 8px 20px #103b7826; transition: background .2s,box-shadow .2s; }
.cb-inner > .cb-learn::after { content: '\2192'; font-size: 22px; line-height: 1; }
.cb-inner > .cb-learn:hover { background: #0a2d60; color: #fff; box-shadow: 0 10px 24px #103b7838; }
.cb-inner > .cb-learn:focus-visible { outline: 3px solid #608570; outline-offset: 4px; }
