/* Final visual polish: coherent spacing, readable dark panels, and photo-first framing. */
html.lm-theme-root,
body.lm-theme{overflow-x:clip}
.lm-theme main,
.lm-theme main *{min-width:0}
.lm-theme main img{max-width:100%}
.lm-theme main :is(p,li){text-wrap:pretty}
.lm-theme main :is(h1,h2,h3){text-wrap:balance}
.lm-theme .mobile-destination .mobile-page-back{display:none}

/* Dark sections keep the light typography they were designed for. */
.lm-theme main #ventilation,
.lm-theme .mobile-destination .mobile-document .home-hero{
  --background:#0b1722;
  --surface:#0f2030;
  --ink:#f8f5ed;
  --text:#f8f5ed;
  --cream:#f8f5ed;
  --muted:#d5dadc;
  --gold:#dfc78e;
  --brass:#dfc78e;
  --line:#ffffff32;
  background:#0b1722!important;
  color:#f8f5ed;
  color-scheme:dark;
}
.lm-theme main #ventilation :is(h1,h2,h3,h4),
.lm-theme .mobile-destination .mobile-document .home-hero :is(h1,h2,h3){color:#f8f5ed!important}
.lm-theme main #ventilation :is(p,li,figcaption),
.lm-theme .mobile-destination .mobile-document .home-hero :is(p,li,figcaption){color:#d5dadc!important}
.lm-theme main #ventilation :is(.eyebrow,.text-link),
.lm-theme .mobile-destination .mobile-document .home-hero :is(.eyebrow,.text-link){color:#dfc78e!important}

/* Replace the oversized raster hero lockup with crisp, responsive type. */
.lm-theme .install-hero{
  background-image:linear-gradient(90deg,rgba(7,16,24,.94) 0%,rgba(7,16,24,.76) 48%,rgba(7,16,24,.28) 100%),url('/assets/client-photos/black-kitchen-installation-1600.webp')!important;
  background-position:center 48%!important;
  background-size:cover!important;
}
.lm-theme .install-hero .last-artwork,
.lm-theme .install-hero .last-checkmark{display:none!important}
.lm-theme .install-hero .installation-signature{width:min(100%,760px);margin-bottom:20px}
.lm-theme .install-hero .installation-signature h1{max-width:10ch;margin:0;font-size:clamp(62px,7.2vw,96px);line-height:.94;letter-spacing:-.035em}
.lm-theme .install-hero .installation-signature h1 .visually-hidden{
  position:static;
  width:auto;
  height:auto;
  margin:0;
  overflow:visible;
  clip:auto;
  clip-path:none;
  white-space:normal;
  color:#dfc78e;
  font-style:italic;
}
.lm-theme .install-hero .installation-assurance{margin:0 0 20px;color:#f3e3bb!important;letter-spacing:.12em}
.lm-theme .install-hero :is(.hero-tagline,.hero-description){color:#eef0ed!important;text-shadow:0 1px 18px rgba(0,0,0,.45)}

/* Photography follows the source proportions instead of stretching into arbitrary boxes. */
.lm-theme .workmanship .installation-feature img,
.lm-theme .installation-gallery-feature .gallery-feature-photo img,
.lm-theme .photo-story>img,
.lm-theme .design-plan img{
  width:100%;
  height:auto!important;
}
.lm-theme .workmanship .installation-feature img{aspect-ratio:1852/849;object-fit:cover}
.lm-theme .ventilation-feature.downdraft-feature figure>img{width:100%;height:auto!important;aspect-ratio:1600/687;object-fit:cover!important}
.lm-theme .hood-feature figure>img{width:100%;height:auto!important;aspect-ratio:293/595;object-fit:cover}
.lm-theme .makeup-air-photo{width:100%;height:auto!important;aspect-ratio:4/5;object-fit:cover;object-position:50% 30%}
.lm-theme .replacement-hero figure img{width:100%;height:auto!important;aspect-ratio:4/5;object-fit:cover;object-position:50% 24%}

/* Give dense brand directories the pace of a curated collection. */
.lm-theme .appliance-brand-grid li,
.lm-theme .appliance-brand-grid li>a{min-width:0}
.lm-theme .appliance-brand-grid li>a{transition:background .2s ease,border-color .2s ease}

@media(max-width:760px){
  .lm-theme main .section{padding-block:clamp(52px,14vw,68px)}
  .lm-theme main .section-intro{gap:18px;margin-bottom:30px}
  .lm-theme main .section-intro>p{max-width:42rem;font-size:13px;line-height:1.75}

  /* The legacy mobile home now reads as a deliberate navy arrival. */
  .lm-theme .mobile-destination .mobile-document .home-hero .hero-content{padding-block:42px 38px}
  .lm-theme .mobile-destination .mobile-document .home-hero .project-slideshow{aspect-ratio:1852/849!important;background:#07121c}
  .lm-theme .mobile-destination .mobile-document .home-hero .project-slide img{width:100%;height:100%!important;aspect-ratio:auto!important;object-fit:cover}
  .lm-theme .mobile-destination .mobile-document .home-hero .hero-photo{margin-top:30px}
  .lm-theme .mobile-destination .mobile-document .home-hero .hero-photo figcaption{color:#dfc78e!important}

  /* Installation hero: concise, legible, and centered on the work. */
  .lm-theme .install-hero{
    background-image:linear-gradient(180deg,rgba(7,16,24,.72) 0%,rgba(7,16,24,.88) 54%,#071018 100%),url('/assets/client-photos/black-kitchen-installation-1600.webp')!important;
    background-position:54% center!important;
  }
  .lm-theme .install-hero .hero-content{padding-block:58px 64px!important}
  .lm-theme .install-hero .hero-content>*{animation:none!important;opacity:1!important;transform:none!important}
  .lm-theme .install-hero .installation-signature{margin-bottom:17px}
  .lm-theme .install-hero .installation-signature h1{font-size:clamp(54px,15vw,69px)!important;max-width:8ch;line-height:.94}
  .lm-theme .install-hero .hero-tagline{font-size:20px;line-height:1.35;margin-top:0}
  .lm-theme .install-hero .hero-description{font-size:13px;line-height:1.75;max-width:34rem}
  .lm-theme .install-hero .hero-actions{margin-top:24px}

  /* Keep the brand catalog useful without letting it dominate the page. */
  .lm-theme #luxury-brands .appliance-brand-grid,
  .lm-theme .ventilation-brands .appliance-brand-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:9px!important;
  }
  .lm-theme .appliance-brand-grid li{min-height:0!important}
  .lm-theme .appliance-brand-grid li>a{min-height:78px!important;padding:10px 7px!important;gap:7px!important}
  .lm-theme .appliance-brand-grid img{height:23px!important;max-width:88px}
  .lm-theme .appliance-brand-grid .brand-family-logos{height:28px;gap:2px}
  .lm-theme .appliance-brand-grid .brand-family-logos img{height:12px!important;max-width:78px}
  .lm-theme .appliance-brand-grid span{font-size:7.5px;line-height:1.25}
  .lm-theme .appliance-brand-grid .brand-site-arrow{right:5px;top:3px;font-size:8px}
  .lm-theme .brand-invitation{margin-top:18px}

  /* Editorial photo shapes on phones. */
  .lm-theme .workmanship .installation-feature img{aspect-ratio:1852/849}
  .lm-theme .hood-feature figure{width:min(78%,300px)!important;margin-inline:auto!important}
  .lm-theme .hood-feature figure>img{height:auto!important;aspect-ratio:293/595!important}
  .lm-theme #makeup-air{margin-top:44px}
  .lm-theme .makeup-air-photo{aspect-ratio:4/5}
  .lm-theme .comparison-stage{aspect-ratio:602/257!important}
  .lm-theme .comparison-stage img{width:100%;height:100%!important;object-fit:cover}
  .lm-theme .replacement-hero figure{max-width:320px;margin-inline:auto}
  .lm-theme .replacement-hero figure img{aspect-ratio:4/5}

  /* A single-column installation gallery can honor every photo's real shape. */
  .lm-theme .installation-portfolio .portfolio-grid{gap:34px 15px}
}

@media(max-width:560px){
  .lm-theme .installation-portfolio .portfolio-grid{grid-template-columns:1fr!important}
  .lm-theme .installation-portfolio .portfolio-card:first-child{grid-column:auto!important}
  .lm-theme .installation-portfolio .portfolio-open{background:#0b1722}
  .lm-theme .installation-portfolio .portfolio-open img,
  .lm-theme .installation-portfolio .portfolio-card:first-child .portfolio-open img{
    display:block;
    width:100%;
    height:auto!important;
    max-height:78svh;
    aspect-ratio:auto!important;
    object-fit:contain!important;
  }
}

@media(max-width:360px){
  .lm-theme #luxury-brands .appliance-brand-grid,
  .lm-theme .ventilation-brands .appliance-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(prefers-reduced-motion:reduce){
  .lm-theme .appliance-brand-grid li>a{transition:none}
}
