/* Nest English — Homepage + Product Navigation system
   Rebuild pass: geometry first, visuals second.  No external assets. */
:root{
  --nest-home-forest:#0c7556;
  --nest-home-forest-deep:#0a4f3a;
  --nest-home-forest-soft:#dcece3;
  --nest-home-sage:#e9f0eb;
  --nest-home-ivory:#f7f5ee;
  --nest-home-paper:#fbfaf5;
  --nest-home-ink:#173126;
  --nest-home-muted:#66756d;
  --nest-home-line:rgba(23,49,38,.10);
  --nest-home-shadow:0 20px 55px rgba(18,48,35,.10);
  --nest-home-shadow-lg:0 30px 90px rgba(18,48,35,.14);
  --nest-home-nav-h:76px;
  --nest-home-sidebar:250px;
}
html.dark{
  --nest-home-forest:#3bc88e;
  --nest-home-forest-deep:#7de1b5;
  --nest-home-forest-soft:rgba(48,175,121,.14);
  --nest-home-sage:#14221d;
  --nest-home-ivory:#0b1411;
  --nest-home-paper:#101c17;
  --nest-home-ink:#eef7f1;
  --nest-home-muted:#9db0a6;
  --nest-home-line:rgba(218,244,231,.10);
  --nest-home-shadow:0 22px 65px rgba(0,0,0,.20);
  --nest-home-shadow-lg:0 35px 100px rgba(0,0,0,.30);
}

/* Global frame */
body{
  background:
    radial-gradient(circle at 14% 0%,rgba(12,117,86,.08),transparent 28%),
    radial-gradient(circle at 88% 8%,rgba(93,133,111,.08),transparent 24%),
    linear-gradient(180deg,#f7f8f4 0%,#f3f6f2 52%,#f8f8f3 100%);
  color:var(--nest-home-ink);
}
html.dark body{
  background:
    radial-gradient(circle at 14% 0%,rgba(59,200,142,.06),transparent 28%),
    radial-gradient(circle at 88% 8%,rgba(77,117,96,.06),transparent 24%),
    linear-gradient(180deg,#09120f 0%,#0b1511 54%,#0c1713 100%);
}

/* New product topbar */
.nest-home-topbar{
  position:sticky;
  inset-block-start:0;
  z-index:1000;
  height:var(--nest-home-nav-h);
  border-block-end:1px solid var(--nest-home-line);
  background:color-mix(in srgb,var(--nest-home-paper) 88%,transparent);
  backdrop-filter:blur(16px) saturate(120%);
  -webkit-backdrop-filter:blur(16px) saturate(120%);
}
.nest-home-topbar-inner{
  width:min(100% - 32px,1380px);
  height:100%;
  margin-inline:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.nest-home-brand{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
  color:var(--nest-home-ink);
}
.nest-home-brand .brand-mark{width:42px;height:42px}
.nest-home-brand .brand-name{font-size:1.55rem;line-height:1;white-space:nowrap}
.nest-home-actions{display:flex;align-items:center;gap:8px;min-width:0}
.nest-home-icon-btn,
.nest-home-util-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:42px;
  border:1px solid var(--nest-home-line);
  border-radius:14px;
  background:rgba(255,255,255,.52);
  color:var(--nest-home-ink);
  cursor:pointer;
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
html.dark .nest-home-icon-btn,html.dark .nest-home-util-btn{background:rgba(17,35,29,.66)}
.nest-home-icon-btn:hover,.nest-home-util-btn:hover{transform:translateY(-1px);border-color:rgba(12,117,86,.22);box-shadow:0 8px 22px rgba(16,55,39,.08)}
.nest-home-primary{
  min-height:42px;
  padding-inline:16px;
  border:0;
  border-radius:14px;
  background:var(--nest-home-forest);
  color:white;
  font-size:.8rem;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(12,117,86,.20);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.nest-home-primary:hover{transform:translateY(-1px);filter:saturate(1.04);box-shadow:0 14px 30px rgba(12,117,86,.24)}

/* Desktop product sidebar */
.nest-home-sidebar{
  position:fixed;
  inset-block:var(--nest-home-nav-h) 0;
  inset-inline-start:0;
  z-index:900;
  width:var(--nest-home-sidebar);
  padding:18px 14px 18px;
  border-inline-end:1px solid var(--nest-home-line);
  background:color-mix(in srgb,var(--nest-home-paper) 92%,transparent);
  backdrop-filter:blur(14px) saturate(115%);
  -webkit-backdrop-filter:blur(14px) saturate(115%);
  overflow-y:auto;
}
.nest-sidebar-brandline{
  padding:6px 8px 14px;
  margin-block-end:8px;
  border-block-end:1px solid var(--nest-home-line);
}
.nest-sidebar-eyebrow{font-size:.62rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--nest-home-forest);margin-block-end:4px}
.nest-sidebar-hint{font-size:.72rem;font-weight:700;color:var(--nest-home-muted);line-height:1.45}
.nest-side-list{display:grid;gap:4px}
.nest-side-section{padding-block:9px 5px;padding-inline:10px;font-size:.61rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:var(--nest-home-muted)}
.nest-side-item{
  width:100%;
  display:flex;
  align-items:center;
  gap:11px;
  min-height:44px;
  padding:9px 12px;
  border:0;
  border-radius:13px;
  background:transparent;
  color:var(--nest-home-muted);
  font-size:.79rem;
  font-weight:850;
  text-align:start;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.nest-side-item svg,.nest-side-item i{width:16px;min-width:16px;opacity:.78}
.nest-side-item:hover{background:var(--nest-home-forest-soft);color:var(--nest-home-forest-deep);transform:translateX(2px)}
.nest-side-item.is-active{background:linear-gradient(90deg,var(--nest-home-forest-soft),rgba(12,117,86,.05));color:var(--nest-home-forest-deep);box-shadow:inset 3px 0 0 var(--nest-home-forest)}
.nest-side-cta{margin-block-start:12px;padding:12px;border-radius:17px;background:linear-gradient(160deg,var(--nest-home-forest-soft),rgba(255,255,255,.25));border:1px solid rgba(12,117,86,.10)}
html.dark .nest-side-cta{background:linear-gradient(160deg,rgba(53,197,140,.11),rgba(16,29,24,.32))}
.nest-side-cta button{width:100%;min-height:44px;border:0;border-radius:13px;background:var(--nest-home-forest);color:white;font-weight:900;cursor:pointer;box-shadow:0 10px 24px rgba(12,117,86,.18)}
.nest-side-footer{padding:14px 8px 2px;color:var(--nest-home-muted);font-size:.64rem;line-height:1.55}

/* Product content frame */
#nest-page-content{min-height:calc(100vh - var(--nest-home-nav-h));}
@media (min-width:1180px){
  #nest-page-content{margin-inline-start:var(--nest-home-sidebar);}
}

/* Hero */
#landing-section{position:relative;overflow:clip;padding-block-end:80px}
.nest-hero{
  width:min(100% - 32px,1180px);
  margin-inline:auto;
  padding-block:clamp(36px,6vw,84px) clamp(28px,5vw,64px);
}
.nest-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(340px,.94fr);
  gap:clamp(32px,6vw,84px);
  align-items:center;
}
.nest-hero-copy{position:relative;z-index:2;min-width:0}
.nest-hero-kicker{
  display:inline-flex;align-items:center;gap:7px;
  padding:8px 12px;
  border:1px solid rgba(12,117,86,.14);
  border-radius:999px;
  background:rgba(233,240,235,.82);
  color:var(--nest-home-forest-deep);
  font-size:.72rem;font-weight:900;
  box-shadow:0 8px 25px rgba(14,60,42,.05);
}
html.dark .nest-hero-kicker{background:rgba(20,49,39,.66);color:var(--nest-home-forest-deep)}
.nest-hero-title{
  margin:20px 0 0;
  max-width:12ch;
  font-family:'Lora',Georgia,var(--nest-sans),serif;
  font-size:clamp(3rem,6.7vw,6.5rem);
  line-height:.98;
  letter-spacing:-.055em;
  font-weight:700;
  color:var(--nest-home-ink);
}
.nest-hero-title .accent{color:var(--nest-home-forest)}
.nest-hero-desc{max-width:660px;margin:22px 0 0;color:var(--nest-home-muted);font-size:clamp(.98rem,1.55vw,1.14rem);line-height:1.82;font-weight:600}
.nest-hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.nest-hero-btn{min-height:54px;padding:0 20px;border-radius:15px;font-weight:900;font-size:.9rem;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.nest-hero-btn.primary{border:0;background:var(--nest-home-forest);color:white;box-shadow:0 16px 32px rgba(12,117,86,.20)}
.nest-hero-btn.primary:hover{transform:translateY(-2px);box-shadow:0 20px 38px rgba(12,117,86,.25)}
.nest-hero-btn.secondary{border:1px solid var(--nest-home-line);background:rgba(255,255,255,.60);color:var(--nest-home-ink)}
html.dark .nest-hero-btn.secondary{background:rgba(18,33,27,.72)}
.nest-hero-meta{display:flex;flex-wrap:wrap;gap:9px 14px;margin-top:18px;color:var(--nest-home-muted);font-size:.72rem;font-weight:850}
.nest-hero-meta span{display:inline-flex;align-items:center;gap:6px}
.nest-hero-bank{margin-top:15px;max-width:610px;color:var(--nest-home-muted);font-size:.71rem;line-height:1.65;font-weight:750}
.nest-hero-note{margin-top:7px;color:var(--nest-home-muted);font-size:.65rem;line-height:1.55}
.nest-hero-visual{position:relative;min-width:0;display:grid;place-items:center}
.nest-portal{
  position:relative;
  width:min(100%,510px);
  aspect-ratio:1/.92;
  padding:20px;
  border-radius:34px;
  overflow:hidden;
  border:1px solid rgba(12,117,86,.12);
  background:
    radial-gradient(circle at 50% 35%,rgba(255,255,255,.62),transparent 35%),
    linear-gradient(150deg,rgba(232,241,235,.88),rgba(247,245,238,.92));
  box-shadow:var(--nest-home-shadow-lg);
  isolation:isolate;
}
html.dark .nest-portal{background:radial-gradient(circle at 50% 35%,rgba(62,110,91,.18),transparent 38%),linear-gradient(150deg,rgba(15,32,25,.94),rgba(13,24,20,.96))}
.nest-portal::before{content:"";position:absolute;inset:18px;border:1px solid rgba(12,117,86,.12);border-radius:28px;pointer-events:none}
.nest-portal::after{content:"";position:absolute;width:320px;height:320px;inset-inline-end:-130px;inset-block-start:-110px;border-radius:50%;background:radial-gradient(circle,rgba(12,117,86,.13),transparent 68%);filter:blur(1px);z-index:-1}
.nest-portal-bough{position:absolute;inset-inline:0 auto;inset-block:0;width:55%;overflow:hidden;opacity:.66;pointer-events:none}
.nest-portal-bough::before,.nest-portal-bough::after{content:"";position:absolute;border:2px solid rgba(12,117,86,.14);border-bottom:0;border-inline-end:0;border-radius:70% 0 0 0;transform:rotate(18deg)}
.nest-portal-bough::before{width:260px;height:190px;inset-inline:-90px;inset-block:-48px}
.nest-portal-bough::after{width:300px;height:180px;inset-inline:-40px;inset-block:60px;transform:rotate(-9deg)}
.nest-portal-window{position:absolute;inset:26px 26px auto 26px;height:42%;border-radius:26px 26px 80px 80px;overflow:hidden;border:1px solid rgba(12,117,86,.12);background:linear-gradient(155deg,#e4efe8,#c9dfd2);box-shadow:inset 0 -20px 45px rgba(18,58,42,.08)}
html.dark .nest-portal-window{background:linear-gradient(155deg,#153129,#0e2219)}
.nest-portal-window::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 24%,rgba(255,255,255,.62),transparent 48%),linear-gradient(180deg,transparent 30%,rgba(23,69,50,.09) 100%)}
.nest-portal-orbits{position:absolute;inset:0;pointer-events:none}
.nest-orbit{position:absolute;border:1px solid rgba(12,117,86,.15);border-radius:50%;}
.nest-orbit.o1{width:66%;height:66%;inset:16% auto auto 17%}
.nest-orbit.o2{width:82%;height:42%;inset:28% auto auto 9%;transform:rotate(-19deg)}
.nest-orbit.o3{width:48%;height:78%;inset:10% auto auto 27%;transform:rotate(24deg)}
.nest-level-board{position:absolute;inset-inline:40px;inset-block-end:34px;padding:17px 18px;border-radius:20px;background:rgba(251,250,245,.89);border:1px solid rgba(12,117,86,.12);box-shadow:0 18px 36px rgba(16,52,38,.10);backdrop-filter:blur(10px)}
html.dark .nest-level-board{background:rgba(11,22,18,.89)}
.nest-level-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;color:var(--nest-home-muted);font-size:.63rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.nest-level-track{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}
.nest-level-track span{height:36px;border-radius:9px;display:grid;place-items:center;color:white;font-size:.63rem;font-weight:900}
.nest-level-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;font-size:.66rem;font-weight:800;color:var(--nest-home-muted)}
.nest-level-foot strong{color:var(--nest-home-forest-deep)}
.nest-visual-badge{position:absolute;inset-block-start:20px;inset-inline-end:18px;padding:8px 11px;border-radius:999px;background:rgba(251,250,245,.83);border:1px solid rgba(12,117,86,.11);color:var(--nest-home-forest-deep);font-size:.62rem;font-weight:900;box-shadow:0 10px 24px rgba(16,52,38,.07)}
html.dark .nest-visual-badge{background:rgba(14,27,22,.84)}

/* Existing sections: unify rhythm without rewriting content */
#landing-section > .nest-divider{width:min(100% - 48px,980px);height:1px;margin:12px auto;border:0;background:linear-gradient(90deg,transparent,var(--nest-home-line),transparent)}
#landing-section > section:not(.nest-legacy-compact){width:min(100% - 48px,1120px);max-width:1120px}
#landing-section .reveal-grid > div,
#landing-section .glass-panel{border-color:var(--nest-home-line)!important;box-shadow:0 14px 34px rgba(18,48,35,.055)}
#landing-section .glass-panel{background:rgba(251,250,245,.74)}
html.dark #landing-section .glass-panel{background:rgba(14,27,22,.68)}
#landing-section h2{color:var(--nest-home-ink)}
#landing-section .gradient-text{background:linear-gradient(90deg,var(--nest-home-forest-deep),var(--nest-home-forest));-webkit-background-clip:text;background-clip:text;color:transparent}

/* Safe floating widget spacing */
#owl-widget{z-index:760!important}
#owl-fab{box-shadow:0 18px 45px rgba(15,52,38,.16)!important}

/* Mobile bottom navigation */
.nest-mobile-bottom{
  position:fixed;
  inset-inline:10px;
  inset-block-end:calc(10px + env(safe-area-inset-bottom));
  z-index:1200;
  display:none;
  grid-template-columns:repeat(5,1fr);
  gap:4px;
  padding:7px;
  border:1px solid var(--nest-home-line);
  border-radius:22px;
  background:color-mix(in srgb,var(--nest-home-paper) 92%,transparent);
  box-shadow:0 18px 55px rgba(12,47,33,.14);
  backdrop-filter:blur(18px) saturate(125%);
  -webkit-backdrop-filter:blur(18px) saturate(125%);
}
html.dark .nest-mobile-bottom{box-shadow:0 22px 70px rgba(0,0,0,.34)}
.nest-bottom-item{min-height:56px;border:0;border-radius:16px;background:transparent;color:var(--nest-home-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:.57rem;font-weight:900;cursor:pointer}
.nest-bottom-item svg,.nest-bottom-item i{width:17px;min-width:17px;height:17px}
.nest-bottom-item.is-active{background:var(--nest-home-forest-soft);color:var(--nest-home-forest-deep)}
.nest-more-panel{position:fixed;inset-inline:12px;inset-block-end:calc(84px + env(safe-area-inset-bottom));z-index:1210;display:none;padding:10px;border-radius:20px;background:color-mix(in srgb,var(--nest-home-paper) 97%,transparent);border:1px solid var(--nest-home-line);box-shadow:0 22px 70px rgba(12,45,32,.16);backdrop-filter:blur(18px)}
.nest-more-panel.is-open{display:block}
.nest-more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.nest-more-grid button{min-height:46px;border:1px solid var(--nest-home-line);border-radius:14px;background:transparent;color:var(--nest-home-ink);font-weight:850;font-size:.72rem;cursor:pointer;text-align:start;padding-inline:12px}
.nest-more-grid button:hover{background:var(--nest-home-forest-soft)}
.nest-more-scrim{position:fixed;inset:0;z-index:1205;display:none;background:rgba(6,23,16,.18)}
.nest-more-scrim.is-open{display:block}

/* Tablet */
@media (max-width:1179px){
  .nest-home-sidebar{display:none}
  #nest-page-content{margin-inline:0}
  .nest-home-topbar-inner{width:min(100% - 24px,1180px)}
  .nest-home-brand .brand-mark{width:38px;height:38px}
  .nest-home-brand .brand-name{font-size:1.3rem}
  .nest-home-desktop-only{display:none!important}
}
@media (min-width:768px) and (max-width:1179px){
  .nest-hero-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:32px}
  .nest-hero-title{font-size:clamp(3rem,7vw,5rem)}
}

/* Mobile */
@media (max-width:767px){
  :root{--nest-home-nav-h:68px}
  body{padding-bottom:92px}
  .nest-home-topbar-inner{width:min(100% - 18px,600px);gap:8px}
  .nest-home-brand{gap:8px}
  .nest-home-brand .brand-mark{width:35px;height:35px}
  .nest-home-brand .brand-name{font-size:1.16rem}
  .nest-home-actions{gap:6px}
  .nest-home-util-btn,.nest-home-icon-btn{min-width:40px;height:40px;border-radius:13px}
  .nest-home-primary{display:none}
  #nav-account-widget{max-width:90px;overflow:hidden}
  #lang-dropdown-wrap{display:none!important}
  .nest-mobile-bottom{display:grid}
  #nest-page-content{padding-bottom:86px}
  .nest-hero{width:min(100% - 24px,640px);padding-block:28px 30px}
  .nest-hero-grid{grid-template-columns:1fr;gap:24px}
  .nest-hero-copy{text-align:start}
  .nest-hero-kicker{font-size:.65rem;padding:7px 10px}
  .nest-hero-title{max-width:10ch;font-size:clamp(2.65rem,13vw,4rem);line-height:1.01;letter-spacing:-.05em}
  .nest-hero-desc{font-size:.93rem;line-height:1.72;margin-top:16px}
  .nest-hero-cta{display:grid;grid-template-columns:1fr;gap:9px;margin-top:20px}
  .nest-hero-btn{width:100%;min-height:52px}
  .nest-hero-meta{gap:7px 12px;margin-top:14px;font-size:.64rem}
  .nest-hero-bank{font-size:.65rem;margin-top:12px}
  .nest-hero-note{font-size:.59rem}
  .nest-hero-visual{order:2}
  .nest-portal{width:100%;aspect-ratio:1/.94;border-radius:26px;padding:12px}
  .nest-portal-window{inset:18px 18px auto 18px;height:43%;border-radius:21px 21px 58px 58px}
  .nest-level-board{inset-inline:18px;inset-block-end:18px;padding:13px}
  .nest-level-track span{height:32px;font-size:.56rem}
  .nest-visual-badge{inset-block-start:12px;inset-inline-end:12px;font-size:.55rem;padding:7px 9px}
  #landing-section > section:not(.nest-legacy-compact){width:min(100% - 28px,640px)}
  #landing-section .reveal-grid{grid-template-columns:1fr!important}
  #landing-section > .nest-divider{width:min(100% - 40px,600px)}
  .nest-more-grid{grid-template-columns:1fr}
  #owl-widget{inset-inline-end:12px!important;top:auto!important;inset-block-end:100px!important;transform:none!important}
  #owl-fab{width:62px!important;height:62px!important}
}
@media (max-width:390px){
  .nest-home-brand .brand-name{font-size:1.04rem}
  .nest-home-icon-btn,.nest-home-util-btn{min-width:37px;height:37px}
  .nest-hero-title{font-size:clamp(2.35rem,12.8vw,3.35rem)}
  .nest-hero-desc{font-size:.88rem}
  .nest-mobile-bottom{inset-inline:7px;gap:2px}
}

@media (prefers-reduced-motion:reduce){
  .nest-home-icon-btn,.nest-home-util-btn,.nest-home-primary,.nest-side-item,.nest-hero-btn{transition:none!important}
}

/* Prevent fixed UI from covering interactive content */
.nest-home-bottom-safe{padding-bottom:110px}
