/* Nest English — integrated atmospheric homepage background
   One continuous visual world for the hero + opening sections. */
#landing-section.nest-home-world{
  --nest-world-light:#f4f0e4;
  --nest-world-light-2:#e8eee7;
  --nest-world-ink:#123f31;
  --nest-world-accent:#0c6d4f;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    linear-gradient(180deg,
      rgba(247,243,232,.42) 0%,
      rgba(244,240,228,.88) 31%,
      var(--nest-world-light) 56%,
      var(--nest-world-light-2) 84%,
      #e7eee8 100%);
  color:#182f28;
}
#landing-section.nest-home-world::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:34%;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(231,238,232,0),rgba(231,238,232,.72) 56%,rgba(231,238,232,.96));
}
.nest-home-world-bg{
  position:absolute;
  inset:0 0 auto;
  height:clamp(980px,138vh,1620px);
  z-index:-5;
  pointer-events:none;
  overflow:hidden;
}
.nest-home-world-media{
  position:absolute;
  inset:0;
  display:block;
}
.nest-home-world-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
.nest-home-world-light{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,
      rgba(244,240,228,.10) 0%,
      rgba(244,240,228,.16) 20%,
      rgba(244,240,228,.45) 45%,
      rgba(244,240,228,.83) 66%,
      rgba(244,240,228,.98) 86%);
}
.nest-home-world-transition{
  position:absolute;
  inset:auto 0 0;
  height:42%;
  background:linear-gradient(180deg,rgba(244,240,228,0),var(--nest-world-light) 65%,var(--nest-world-light-2));
}
.nest-home-hero{
  isolation:isolate;
  min-height:clamp(620px,76vh,820px);
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.nest-home-hero > .nest-home-hero-media{display:none !important}
.nest-home-hero::before,
.nest-home-hero::after{display:none !important}
.nest-home-hero > #hero-text-wrap,
.nest-home-hero > .glass-panel{position:relative;z-index:2}
.nest-home-hero #hero-text-wrap h1,
.nest-home-hero #hero-text-wrap p,
.nest-home-hero #hero-text-wrap .hero-fineprint{ text-shadow:0 1px 0 rgba(255,255,255,.30); }
.nest-home-hero #hero-text-wrap h1{color:var(--nest-world-ink)}
.nest-home-hero #hero-text-wrap .gradient-text{
  background-image:linear-gradient(110deg,#0b6e4f 0%,#123f31 55%,#2f644d 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.nest-home-hero .glass-panel{
  background:rgba(250,248,240,.64) !important;
  border-color:rgba(18,63,46,.13) !important;
  box-shadow:0 24px 54px -28px rgba(18,63,46,.30),0 2px 0 rgba(255,255,255,.44) inset !important;
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}
/* Make the first content bands feel like part of the same world rather than a new page. */
#landing-section.nest-home-world > .nest-divider,
#landing-section.nest-home-world > section,
#landing-section.nest-home-world > div:not(.nest-home-world-bg):not(.nest-divider){
  position:relative;
  z-index:1;
}
#landing-section.nest-home-world > section .glass-panel,
#landing-section.nest-home-world > section > div > .glass-panel{
  background:rgba(249,247,240,.66) !important;
  border-color:rgba(18,63,46,.10) !important;
  box-shadow:0 18px 44px -28px rgba(18,63,46,.24),0 1px 0 rgba(255,255,255,.34) inset !important;
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}
#landing-section.nest-home-world h2,
#landing-section.nest-home-world h3{color:#183a2e}
#landing-section.nest-home-world .nest-divider{opacity:.7}

/* Dark theme: the image, world surface and cards all share one deep-forest atmosphere. */
html.dark #landing-section.nest-home-world{
  --nest-world-light:#0d251a;
  --nest-world-light-2:#0a1e15;
  --nest-world-ink:#ecf4ee;
  --nest-world-accent:#75c49d;
  background:
    linear-gradient(180deg,
      rgba(8,22,15,.54) 0%,
      rgba(9,27,19,.82) 30%,
      var(--nest-world-light) 55%,
      var(--nest-world-light-2) 84%,
      #091b13 100%);
  color:#dce9e1;
}
html.dark #landing-section.nest-home-world::after{
  background:linear-gradient(180deg,rgba(9,27,19,0),rgba(9,27,19,.86) 60%,rgba(9,27,19,.98));
}
html.dark .nest-home-world-bg::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:rgba(6,22,14,.46);
  mix-blend-mode:multiply;
}
html.dark .nest-home-world-media img{filter:brightness(.56) saturate(.78) contrast(.96)}
html.dark .nest-home-world-light{
  background:
    linear-gradient(180deg,
      rgba(5,19,12,.26) 0%,
      rgba(6,22,14,.40) 28%,
      rgba(8,26,17,.72) 55%,
      rgba(9,27,19,.94) 82%,
      rgba(9,27,19,1) 100%);
}
html.dark .nest-home-world-transition{background:linear-gradient(180deg,rgba(9,27,19,0),var(--nest-world-light) 62%,var(--nest-world-light-2))}
html.dark .nest-home-hero #hero-text-wrap h1{color:#ecf4ee}
html.dark .nest-home-hero #hero-text-wrap .gradient-text{-webkit-text-fill-color:#a7d8bc;background:none}
html.dark .nest-home-hero .glass-panel,
html.dark #landing-section.nest-home-world > section .glass-panel,
html.dark #landing-section.nest-home-world > section > div > .glass-panel{
  background:rgba(13,35,25,.62) !important;
  border-color:rgba(183,220,198,.12) !important;
  box-shadow:0 22px 50px -30px rgba(0,0,0,.42),0 1px 0 rgba(255,255,255,.035) inset !important;
}
html.dark #landing-section.nest-home-world h2,
html.dark #landing-section.nest-home-world h3{color:#eef5f0}

@media (max-width: 767px){
  #landing-section.nest-home-world{
    background:linear-gradient(180deg,#f2eee2 0%,#f2eee2 34%,#e8eee8 76%,#e4ece7 100%);
  }
  .nest-home-world-bg{height:clamp(900px,132vh,1320px)}
  .nest-home-world-media img{object-position:53% top}
  .nest-home-world-light{
    background:
      linear-gradient(180deg,
        rgba(244,240,228,.12) 0%,
        rgba(244,240,228,.34) 22%,
        rgba(244,240,228,.72) 48%,
        rgba(244,240,228,.94) 67%,
        rgba(244,240,228,.99) 88%);
  }
  .nest-home-world-transition{height:37%;background:linear-gradient(180deg,rgba(244,240,228,0),#f2eee2 58%,#e8eee8)}
  .nest-home-hero{min-height:0;padding-top:2.6rem;padding-bottom:1.5rem}
  .nest-home-hero #hero-text-wrap h1{font-size:clamp(2.35rem,11.5vw,3.75rem);line-height:1;letter-spacing:-.045em}
  .nest-home-hero .glass-panel{max-width:34rem;margin-top:.5rem}
  #landing-section.nest-home-world > section .glass-panel,
  #landing-section.nest-home-world > section > div > .glass-panel{background:rgba(249,247,240,.74) !important}
  html.dark #landing-section.nest-home-world{background:linear-gradient(180deg,#0c2419 0%,#0c2419 34%,#0a1e15 76%,#091b13 100%)}
  html.dark .nest-home-world-media img{filter:brightness(.47) saturate(.72) contrast(.96);object-position:53% top}
  html.dark .nest-home-world-light{background:linear-gradient(180deg,rgba(5,19,12,.26),rgba(7,23,15,.50) 24%,rgba(8,26,17,.82) 55%,rgba(9,27,19,.98) 84%,#091b13 100%)}
  html.dark .nest-home-world-transition{background:linear-gradient(180deg,rgba(9,27,19,0),#0c2419 58%,#0a1e15)}
  html.dark #landing-section.nest-home-world > section .glass-panel,
  html.dark #landing-section.nest-home-world > section > div > .glass-panel{background:rgba(13,35,25,.68) !important}
}
@media (max-width: 430px){
  .nest-home-hero{padding-inline:1.1rem}
  .nest-home-world-bg{height:1000px}
}
@media (prefers-reduced-motion:reduce){
  .nest-home-hero .hero-stagger > *,
  .nest-home-hero .hero-card-entrance{animation:none !important;opacity:1 !important}
}

/* Keep the chrome around the landing world in the same material language. */
body:has(#landing-section.active-section){background:#e7eee8 !important}
body:has(#landing-section.active-section) nav.glass-panel{
  background:rgba(244,240,228,.76) !important;
  border-bottom-color:rgba(18,63,46,.10) !important;
  box-shadow:0 10px 30px -24px rgba(18,63,46,.32);
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
}
html.dark body:has(#landing-section.active-section){background:#091b13 !important}
html.dark body:has(#landing-section.active-section) nav.glass-panel{
  background:rgba(9,27,19,.72) !important;
  border-bottom-color:rgba(183,220,198,.08) !important;
  box-shadow:0 10px 30px -24px rgba(0,0,0,.46);
}
