/* Home-specific layout. Shared nw-* primitives are supplied by design-system.css. */
.nw-home { background:#fff8f2; color:#3d3340; overflow:hidden; }
.nw-home *, .nw-home *::before, .nw-home *::after { box-sizing:border-box; }
.nw-home .nw-wrap { width:calc(100% - 160px); max-width:1280px; margin-inline:auto; position:relative; }
.nw-home p, .nw-home h1, .nw-home h2, .nw-home h3, .nw-home figure, .nw-home blockquote { margin:0; }
.nw-home .nw-eyebrow { color:#4e357c; font-size:13px; font-weight:600; line-height:20px; letter-spacing:1.56px; }
.nw-home .nw-home-heading { display:flex; flex-direction:column; align-items:flex-start; gap:12px; max-width:760px; }
.nw-home .nw-home-heading h2 { color:#3d3340; font-size:36px; font-weight:600; line-height:44px; letter-spacing:0; }
.nw-home .nw-home-heading > p:last-child { color:#5d5060; font-size:17px; line-height:28px; }
.nw-home .nw-section { padding:64px 0; position:relative; }
.nw-home .nw-button { display:inline-flex; justify-content:center; align-items:center; min-height:52px; padding:14px 24px; border:1px solid transparent; border-radius:999px; background:#eb8183; color:white; text-decoration:none; font-size:16px; line-height:22px; font-weight:500; text-align:center; }
.nw-home .nw-button-secondary { border-color:#4e357c; background:rgba(255,248,242,.62); color:#3d3340; }
.nw-home a:focus-visible, .nw-home button:focus-visible { outline:3px solid #4e357c; outline-offset:5px; }
.nw-home .nw-home-hero { min-height:820px; position:relative; isolation:isolate; }
.nw-home .nw-home-hero::before { content:""; position:absolute; inset:0 0 0 25%; background:linear-gradient(90deg,#fff8f2 0%,rgba(255,248,242,.9) 15%,rgba(255,248,242,0) 61%),linear-gradient(0deg,#fff8f2 0%,transparent 11%,transparent 94%,rgba(255,248,242,.8)),url('assets/design/room-morning.png') center/cover; z-index:-2; opacity:.96; }
.nw-home .nw-home-hero::after { content:""; position:absolute; width:533px; height:486px; left:-180px; top:434px; border-radius:50%; background:#cbbfed; filter:blur(300px); opacity:.44; z-index:-1; }
.nw-home .nw-home-hero-inner { display:grid; grid-template-columns:1fr 1fr; min-height:820px; }
.nw-home .nw-home-hero-inner::before { content:""; position:absolute; width:538px; height:538px; left:882px; top:-158px; background:#f3d4d7; border-radius:50%; filter:blur(300px); opacity:.68; z-index:-1; pointer-events:none; }
.nw-home .nw-home-hero-copy { padding:112px 0 70px 4px; position:relative; z-index:2; }
.nw-home h1 { font-size:64px; line-height:72px; font-weight:600; letter-spacing:-1.28px; width:650px; max-width:calc(100vw - 160px); margin-top:22px; }
.nw-home .nw-home-lede { color:#5d5060; font-size:20px; line-height:32px; max-width:570px; min-height:96px; margin-top:80px; }
.nw-home .nw-home-actions { display:flex; align-items:center; flex-wrap:wrap; gap:55px; margin-top:34px; }
.nw-home .nw-home-support { font-size:13px; color:#817784; line-height:20px; margin-top:20px; }
.nw-home .nw-home-social { margin-top:50px; }
.nw-home .nw-home-social > div { display:flex; gap:12px; margin-top:8px; }
.nw-home .nw-home-social a { display:flex; align-items:center; justify-content:center; height:44px; width:44px; border:1px solid rgba(75,47,131,.28); border-radius:50%; background:rgba(255,248,242,.82); backdrop-filter:blur(7px); box-shadow:0 4px 6px rgba(50,32,80,.1); }
.nw-home .nw-home-social img { display:block; }
.nw-home .nw-home-hero-visual { position:relative; display:flex; align-items:flex-start; justify-content:center; padding-top:95px; padding-left:66px; }
.nw-home .nw-home-device { width:300.333px; aspect-ratio:430 / 902; height:auto; display:block; max-width:100%; filter:drop-shadow(0 12px 21px rgba(31,20,38,.24)); border:0; border-radius:40px; padding:9.78px; background:#17131c; overflow:hidden; }
.nw-home .nw-home-device > img { display:block; width:100%; height:100%; object-fit:cover; border-radius:30.7px; }
.nw-home .nw-home-trust { min-height:112px; display:flex; align-items:center; justify-content:center; background:#24173e; color:#fff8f2; }
.nw-home .nw-home-trust p { font-size:15px; font-weight:500; text-align:center; padding:32px; }
.nw-home .nw-home-trust span { margin:0 10px; }
.nw-home .nw-home-overview { min-height:840px; background:#faefe7; padding-bottom:30px; }
.nw-home .nw-home-video { width:min(100%,1000px); aspect-ratio:1000 / 560; margin:54px auto 0; position:relative; border-radius:28px; overflow:hidden; background:#302842; isolation:isolate; }
.nw-home .nw-home-video video { width:100%; height:100%; display:block; object-fit:cover; }
.nw-home .nw-home-video-shade { position:absolute; inset:0; background:rgba(36,23,62,.26); pointer-events:none; }
.nw-home .nw-home-video-play { width:58px; height:58px; padding:16px; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; border-radius:50%; border:1px solid rgba(255,255,255,.72); background:linear-gradient(135deg,rgba(255,255,255,.34),rgba(255,255,255,.1) 39%,rgba(191,173,219,.05) 71%),#e3d6ed; box-shadow:0 10px 14px rgba(58,43,83,.1),inset 5px 7px 18px rgba(102,82,124,.06); cursor:pointer; }
.nw-home .nw-home-video-caption { position:absolute; left:32px; bottom:40px; font-size:14px; line-height:20px; color:white; pointer-events:none; }
.nw-home .nw-home-video.is-playing .nw-home-video-play, .nw-home .nw-home-video.is-playing .nw-home-video-shade, .nw-home .nw-home-video.is-playing .nw-home-video-caption { display:none; }
.nw-home .nw-home-problem { min-height:720px; }
.nw-home .nw-home-grid { display:grid; gap:40px; margin-top:96px; }
.nw-home .nw-home-four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.nw-home .nw-home-three { grid-template-columns:repeat(3,minmax(0,1fr)); gap:55px; }
.nw-home .nw-home-two { grid-template-columns:repeat(2,minmax(0,1fr)); gap:120px; }
.nw-home .nw-home-card, .nw-home .nw-home-stat, .nw-home .nw-home-quote { border:1px solid rgba(255,250,245,.42); border-radius:24px; background:linear-gradient(rgba(255,248,241,.76),rgba(255,248,241,.76)); box-shadow:0 10px 28px -5px rgba(58,43,83,.1),inset 5px 7px 18px -2px rgba(102,82,124,.06),inset -2px -2px 8px -1px rgba(255,255,255,.04); position:relative; }
.nw-home .nw-home-card { padding:23px; min-height:260px; }
.nw-home .nw-home-card-accent { display:block; width:44px; height:6px; border-radius:999px; background:#f6b7b8; margin-bottom:18px; }
.nw-home .nw-home-card:nth-child(2) .nw-home-card-accent { background:#91a38a; }
.nw-home .nw-home-card:nth-child(3) .nw-home-card-accent { background:#aebbff; }
.nw-home .nw-home-card:nth-child(4) .nw-home-card-accent { background:#d7bed0; }
.nw-home .nw-home-card h3 { color:#3d3340; font-size:20px; line-height:28px; font-weight:600; }
.nw-home .nw-home-card p { color:#5d5060; font-size:14px; line-height:22px; margin-top:26px; }
.nw-home .nw-home-problem .nw-home-card h3 { min-height:56px; }
.nw-home .nw-home-problem .nw-home-card p { margin-top:12px; }
.nw-home .nw-home-meet { position:relative; min-height:740px; background:#faefe7; isolation:isolate; padding:120px 0 80px; }
.nw-home .nw-home-meet::before { content:""; position:absolute; inset:0; z-index:-2; background:url('assets/design/room-morning-wide.png') center/cover; opacity:.96; }
.nw-home .nw-home-meet::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,transparent 30%,rgba(250,239,231,.22) 47%,rgba(250,239,231,.64) 67%,rgba(250,239,231,.9)),linear-gradient(0deg,rgba(250,239,231,.94),transparent 10%,transparent 93%,rgba(250,239,231,.8)); }
.nw-home .nw-home-meet-copy { width:560px; max-width:48%; margin-left:auto; padding-right:30px; }
.nw-home .nw-home-meet-note { font-size:14px; line-height:22px; color:#5d5060; margin-top:34px; }
.nw-home .nw-home-benefits { min-height:700px; }
.nw-home .nw-home-benefits .nw-home-grid { margin-top:106px; }
.nw-home .nw-home-benefit { min-height:250px; padding:28px; border-radius:28px; }
.nw-home .nw-home-icon-slot { display:block; width:44px; height:44px; border-radius:14px; background:#ded4ed; margin-bottom:14px; }
.nw-home .nw-home-benefit h3 { font-size:22px; line-height:30px; }
.nw-home .nw-home-benefit p { font-size:15px; line-height:24px; margin-top:14px; }
.nw-home .nw-home-experience { min-height:760px; background:#faefe7; }
.nw-home .nw-home-experience .nw-home-grid { margin-top:116px; }
.nw-home .nw-home-step { padding:24px; }
.nw-home .nw-home-step-number { width:44px; height:44px; display:flex; align-items:center; justify-content:center; color:white; background:#eb8183; border-radius:50%; font-size:13px; font-weight:600; margin-bottom:14px; }
.nw-home .nw-home-step p { margin-top:14px; }
.nw-home .nw-home-followup { min-height:600px; padding:40px 0 48px; }
.nw-home .nw-home-followup-inner { display:grid; grid-template-columns:1fr 1fr; gap:80px; }
.nw-home .nw-home-followup-device { padding-left:55px; }
.nw-home .nw-home-followup-device .nw-home-device { width:223.104px; }
.nw-home .nw-home-followup-device .nw-home-device { border-radius:29px; padding:7.26px; }
.nw-home .nw-home-followup-device .nw-home-device > img { border-radius:22.8px; }
.nw-home .nw-home-followup-copy { padding-top:90px; }
.nw-home .nw-home-followup-copy .nw-home-grid { margin-top:38px; }
.nw-home .nw-home-followup-copy .nw-home-card { min-height:172px; }
.nw-home .nw-home-followup-copy .nw-home-card p { margin-top:30px; }
.nw-home .nw-home-growth { min-height:610px; background:#faefe7; }
.nw-home .nw-home-stat { min-height:190px; padding:27px; }
.nw-home .nw-home-stat h3 { color:#4e357c; font-size:48px; line-height:66px; font-weight:600; letter-spacing:-1px; }
.nw-home .nw-home-stat p { color:#3d3340; font-size:15px; font-weight:500; line-height:23px; margin-top:10px; }
.nw-home .nw-home-future { position:relative; min-height:620px; background:#302842; padding:100px 0; isolation:isolate; }
.nw-home .nw-home-future::before { content:""; position:absolute; inset:0 0 0 25%; z-index:-2; background:url('assets/design/room-night.png') center/cover; opacity:.96; }
.nw-home .nw-home-future::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#302842 0%,#302842 30%,rgba(48,40,66,.72) 49%,transparent 67%),linear-gradient(0deg,rgba(48,40,66,.94),transparent 12%,transparent 92%,rgba(48,40,66,.8)); }
.nw-home .nw-home-future .nw-home-heading { max-width:720px; gap:24px; }
.nw-home .nw-home-future .nw-eyebrow { color:#cbbfed; }
.nw-home .nw-home-future h2 { color:#fff8f2; font-size:44px; line-height:54px; }
.nw-home .nw-home-future .nw-home-heading > p:last-child { color:#d7cedd; max-width:650px; margin-top:16px; }
.nw-home .nw-home-comparison { min-height:720px; background:#faefe7; }
.nw-home .nw-home-comparison .nw-home-card { min-height:300px; }
.nw-home .nw-home-comparison .nw-home-card-accent { background:#d7bed0; }
.nw-home .nw-home-comparison .nw-home-card:nth-child(2) .nw-home-card-accent { background:#eb8183; }
.nw-home .nw-home-card ul { padding-left:18px; margin-top:34px; color:#5d5060; font-size:14px; line-height:22px; }
.nw-home .nw-home-research { min-height:560px; }
.nw-home .nw-home-research .nw-home-grid { margin-top:66px; }
.nw-home .nw-home-feedback { min-height:630px; background:#faefe7; }
.nw-home .nw-home-feedback .nw-home-grid { margin-top:106px; gap:50px; }
.nw-home .nw-home-quote { padding:27px 25px; min-height:220px; border-radius:28px; display:flex; flex-direction:column; justify-content:space-between; gap:30px; }
.nw-home .nw-home-quote blockquote { font-size:18px; font-weight:500; line-height:28px; }
.nw-home .nw-home-quote figcaption { color:#817784; font-size:12px; line-height:18px; }
.nw-home .nw-home-closing { position:relative; min-height:520px; background:#fff8f2; isolation:isolate; padding:96px 0 70px; }
.nw-home .nw-home-closing::before { content:""; position:absolute; inset:0 0 0 25%; background:url('assets/design/room-morning.png') center/cover; z-index:-2; opacity:.96; }
.nw-home .nw-home-closing::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#fff8f2 0%,#fff8f2 30%,rgba(255,248,242,.72) 49%,transparent 67%),linear-gradient(0deg,rgba(255,248,242,.94),transparent 15%,transparent 90%,rgba(255,248,242,.8)); }
.nw-home .nw-home-closing .nw-home-heading { max-width:800px; gap:24px; }
.nw-home .nw-home-closing h2 { font-size:44px; line-height:56px; }
.nw-home .nw-home-closing .nw-home-heading > p:last-child { max-width:650px; }
.nw-home .nw-home-closing .nw-button { margin-top:40px; }
@media (min-width:768px) and (max-width:1199px) {
  .nw-home .nw-wrap { width:calc(100% - 80px); }
  .nw-home h1 { font-size:52px; line-height:62px; width:560px; }
  .nw-home .nw-home-hero-copy { padding-top:90px; }
  .nw-home .nw-home-hero-visual { padding-left:30px; justify-content:flex-end; }
  .nw-home .nw-home-device { width:260px; }
  .nw-home .nw-home-lede { max-width:470px; }
  .nw-home .nw-home-four { gap:22px; }
  .nw-home .nw-home-three { gap:28px; }
  .nw-home .nw-home-two { gap:50px; }
  .nw-home .nw-home-card { padding:20px; }
  .nw-home .nw-home-stat h3 { font-size:36px; }
  .nw-home .nw-home-followup-inner { gap:40px; }
}
/* Mobile reflows the same content tree and original scenes; nothing is substituted or hidden. */
@media (max-width:767px) {
  .nw-home .nw-wrap { width:calc(100% - 40px); max-width:540px; }
  .nw-home .nw-section { min-height:0; padding:48px 0; }
  .nw-home .nw-eyebrow { font-size:11px; line-height:17px; letter-spacing:1.32px; }
  .nw-home .nw-home-heading { gap:13px; width:100%; max-width:none; }
  .nw-home .nw-home-heading h2 { font-size:30px; line-height:38px; }
  .nw-home .nw-home-heading > p:last-child { font-size:15px; line-height:24px; margin-top:4px; }
  .nw-home .nw-home-hero { min-height:0; }
  .nw-home .nw-home-hero::before { inset:0; background:linear-gradient(180deg,rgba(255,248,242,.96) 0%,rgba(255,248,242,.86) 30%,rgba(255,248,242,.2) 64%,rgba(255,248,242,.8) 100%),url('assets/design/room-morning.png') center bottom/cover; }
  .nw-home .nw-home-hero::after { width:300px; height:300px; left:-160px; top:300px; filter:blur(81px); opacity:.44; }
  .nw-home .nw-home-hero-inner { display:flex; flex-direction:column; min-height:0; padding-bottom:40px; }
  .nw-home .nw-home-hero-inner::before { width:340px; height:340px; left:auto; right:-160px; top:-140px; filter:blur(81px); opacity:.68; }
  .nw-home .nw-home-hero-copy { padding:48px 0 0; }
  .nw-home h1 { width:auto; max-width:none; font-size:32px; line-height:40px; letter-spacing:-.64px; margin-top:14px; }
  .nw-home .nw-home-lede { font-size:15px; line-height:24px; min-height:0; margin-top:20px; max-width:none; }
  .nw-home .nw-home-actions { gap:12px; margin-top:26px; flex-wrap:wrap; }
  .nw-home .nw-home-actions .nw-button { min-height:50px; padding:13px 16px; font-size:14px; }
  .nw-home .nw-home-support { font-size:12px; line-height:18px; margin-top:18px; }
  .nw-home .nw-home-social { margin-top:26px; }
  .nw-home .nw-home-hero-visual { display:flex; align-items:flex-start; justify-content:center; width:100%; height:auto; background:none; border:0; border-radius:0; margin-top:30px; padding:0; }
  .nw-home .nw-home-hero-visual .nw-home-device { width:247.894px; height:auto; border-radius:32.3px; padding:8.07px; }
  .nw-home .nw-home-hero-visual .nw-home-device > img { border-radius:25.4px; }
  .nw-home .nw-home-trust { min-height:0; }
  .nw-home .nw-home-trust p { padding:26px 20px; font-size:13px; line-height:24px; max-width:540px; }
  .nw-home .nw-home-trust span { margin:0 5px; }
  .nw-home .nw-home-video { width:100%; margin-top:30px; border-radius:24px; }
  .nw-home .nw-home-video-play { width:48px; height:48px; padding:11px; }
  .nw-home .nw-home-video-caption { font-size:10px; line-height:14px; left:12px; bottom:16px; }
  .nw-home .nw-home-grid,
  .nw-home .nw-home-benefits .nw-home-grid,
  .nw-home .nw-home-experience .nw-home-grid,
  .nw-home .nw-home-research .nw-home-grid,
  .nw-home .nw-home-feedback .nw-home-grid { grid-template-columns:1fr; gap:18px; margin-top:30px; }
  .nw-home .nw-home-card { min-height:0; padding:24px; }
  .nw-home .nw-home-card h3 { font-size:20px; line-height:28px; min-height:0; }
  .nw-home .nw-home-card p { font-size:14px; line-height:23px; margin-top:16px; }
  .nw-home .nw-home-problem .nw-home-card h3 { min-height:0; }
  .nw-home .nw-home-problem .nw-home-card p { margin-top:16px; }
  .nw-home .nw-home-meet { min-height:0; padding:48px 0 240px; }
  .nw-home .nw-home-meet::before { inset:auto 0 0; height:260px; background-position:center; -webkit-mask-image:linear-gradient(180deg,transparent,#000 26%,#000 88%,transparent); mask-image:linear-gradient(180deg,transparent,#000 26%,#000 88%,transparent); }
  .nw-home .nw-home-meet::after { background:linear-gradient(180deg,rgba(250,239,231,.95),rgba(250,239,231,.84) 45%,rgba(250,239,231,.1) 78%,rgba(250,239,231,.85)); }
  .nw-home .nw-home-meet-copy { width:100%; max-width:none; padding:0; margin:0; }
  .nw-home .nw-home-meet-note { margin-top:24px; }
  .nw-home .nw-home-benefit { min-height:0; }
  .nw-home .nw-home-icon-slot { width:44px; height:44px; border-radius:14px; margin-bottom:14px; }
  .nw-home .nw-home-step-number { display:flex; }
  .nw-home .nw-home-followup-inner { grid-template-columns:1fr; gap:34px; }
  .nw-home .nw-home-followup-device { padding:0; display:flex; justify-content:center; }
  .nw-home .nw-home-followup-copy { padding:0; }
  .nw-home .nw-home-followup-copy .nw-home-grid { margin-top:26px; }
  .nw-home .nw-home-followup-copy .nw-home-card { min-height:0; }
  .nw-home .nw-home-followup-copy .nw-home-card p { margin-top:16px; }
  .nw-home .nw-home-stat { min-height:0; padding:26px; }
  .nw-home .nw-home-stat h3 { font-size:40px; line-height:54px; }
  .nw-home .nw-home-future { min-height:0; padding:48px 0 250px; }
  .nw-home .nw-home-future::before { inset:auto 0 0; height:250px; background-position:center; -webkit-mask-image:linear-gradient(180deg,transparent,#000 26%,#000 88%,transparent); mask-image:linear-gradient(180deg,transparent,#000 26%,#000 88%,transparent); }
  .nw-home .nw-home-future::after { background:linear-gradient(180deg,rgba(48,40,66,.95),rgba(48,40,66,.86) 28%,rgba(48,40,66,.5) 55%,rgba(48,40,66,.05) 78%,rgba(48,40,66,.45)); }
  .nw-home .nw-home-future .nw-home-heading { gap:18px; }
  .nw-home .nw-home-future h2 { font-size:30px; line-height:38px; }
  .nw-home .nw-home-future .nw-home-heading > p:last-child { margin-top:0; }
  .nw-home .nw-home-comparison .nw-home-card { min-height:0; }
  .nw-home .nw-home-card ul { margin-top:24px; line-height:24px; }
  .nw-home .nw-home-quote { min-height:190px; padding:24px; gap:28px; }
  .nw-home .nw-home-quote blockquote { font-size:18px; line-height:28px; }
  .nw-home .nw-home-closing { min-height:0; padding:48px 0 200px; }
  .nw-home .nw-home-closing::before { inset:auto 0 0; height:210px; background-position:center; -webkit-mask-image:linear-gradient(180deg,transparent,#000 26%,#000 88%,transparent); mask-image:linear-gradient(180deg,transparent,#000 26%,#000 88%,transparent); }
  .nw-home .nw-home-closing::after { background:linear-gradient(180deg,rgba(255,248,242,.98),rgba(255,248,242,.88) 50%,rgba(255,248,242,.05) 83%,rgba(255,248,242,.9)); }
  .nw-home .nw-home-closing .nw-home-heading { gap:18px; }
  .nw-home .nw-home-closing h2 { font-size:30px; line-height:38px; }
  .nw-home .nw-home-closing .nw-button { margin-top:28px; }
}
@media (max-width:374px) {
  .nw-home .nw-home-actions { gap:10px; }
  .nw-home .nw-home-actions .nw-button { font-size:13px; padding-inline:13px; }
}
