/* Helm marketing design system. Extracted from index.html so all marketing pages share one look. */

  :root {
    --navy: #1A2C4D; --navy-deep: #0F1A2E; --navy-soft: #233755; --navy-up: #2D456E;
    --gold: #E6B842; --gold-hover: #D6A82C; --gold-soft: #F4D580; --gold-tint: rgba(230,184,66,0.14);
    --white: #FFFFFF; --mist: #D6DEEC;
    --text-muted: rgba(214,222,236,0.72); --text-faint: rgba(214,222,236,0.48);
    --rule: rgba(214,222,236,0.12); --rule-strong: rgba(214,222,236,0.22);
    --hover-tint: rgba(255,255,255,0.04); --surface: var(--navy-soft);
    --radius-lg: 1.25rem; --radius-xl: 1.75rem; --radius-tile: 2rem;
    --red: #EF6C72; --blue: #6CABEF; --green: #87D292; --purple: #B89BE8; --pink: #F4979B; --amber: #F4B65E;
  }
  *{box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased;}
  html,body{height:auto;}
  html{scroll-behavior:smooth;scroll-padding-top:84px;}
  body{background:var(--navy);color:var(--white);font:400 16px/1.55 'Inter',system-ui,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Twemoji Mozilla","Segoe UI Symbol",sans-serif;min-height:100vh;overflow-x:clip;}
  .emoji,.tile-eyebrow,.footer-pride,.badge{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji","Twemoji Mozilla","Segoe UI Symbol",'Inter',system-ui,sans-serif;}
  /* CSS-rendered US flag so Windows (no Segoe color flag) still shows a flag */
  .us-flag{display:inline-block;width:1.4em;height:0.9em;vertical-align:-0.12em;border-radius:2px;background:linear-gradient(#b22234 7.7%,#fff 7.7%,#fff 15.4%,#b22234 15.4%,#b22234 23.1%,#fff 23.1%,#fff 30.8%,#b22234 30.8%,#b22234 38.5%,#fff 38.5%,#fff 46.2%,#b22234 46.2%,#b22234 53.9%,#fff 53.9%,#fff 61.6%,#b22234 61.6%,#b22234 69.3%,#fff 69.3%,#fff 77%,#b22234 77%,#b22234 84.7%,#fff 84.7%,#fff 92.4%,#b22234 92.4%);position:relative;box-shadow:0 0 0 1px rgba(0,0,0,0.08);overflow:hidden;}
  .us-flag::before{content:"";position:absolute;inset:0 auto auto 0;width:40%;height:53.8%;background:#3c3b6e;}
  a{color:inherit;text-decoration:none;}
  h1,h2,h3,h4{font-family:'Sora',system-ui,sans-serif;letter-spacing:-0.02em;line-height:1.08;}

  /* Background glow accents */
  body::before{content:'';position:fixed;top:-200px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(230,184,66,0.08) 0%,transparent 70%);pointer-events:none;z-index:0;}
  body::after{content:'';position:fixed;bottom:-300px;left:-300px;width:700px;height:700px;background:radial-gradient(circle,rgba(108,171,239,0.06) 0%,transparent 70%);pointer-events:none;z-index:0;}
  body > *{position:relative;z-index:1;}

  /* Nav */
  .nav{position:sticky;top:0;z-index:50;backdrop-filter:blur(14px);background:rgba(15,26,46,0.85);border-bottom:1px solid var(--rule);}
  .nav-inner{max-width:1180px;margin:0 auto;padding:0.85rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;}
  .nav-brand{display:flex;align-items:center;gap:0.6rem;font-family:'Sora',system-ui,sans-serif;font-weight:800;font-size:1.2rem;}
  .nav-brand img{width:32px;height:32px;border-radius:8px;}
  .nav-pill-links{display:flex;align-items:center;gap:0.15rem;}
  .nav-pill-links a{color:var(--text-muted);padding:0.5rem 0.85rem;border-radius:999px;font-weight:500;font-size:0.88rem;transition:color 0.15s,background 0.15s;}
  .nav-pill-links a:hover{color:var(--white);background:var(--hover-tint);}
  .nav-links{display:flex;align-items:center;gap:0.5rem;}
  .nav-links a.ghost{color:var(--text-muted);padding:0.55rem 0.95rem;border-radius:999px;font-weight:600;font-size:0.92rem;transition:color 0.15s,background 0.15s;}
  .nav-links a.ghost:hover{color:var(--white);background:var(--hover-tint);}
  .nav-links a.cta{background:var(--gold);color:var(--navy-deep);padding:0.6rem 1.15rem;border-radius:999px;font-weight:700;font-size:0.92rem;transition:background 0.15s,transform 0.15s,box-shadow 0.15s;box-shadow:0 4px 14px rgba(230,184,66,0.25);}
  .nav-links a.cta:hover{background:var(--gold-hover);transform:translateY(-1px);box-shadow:0 6px 20px rgba(230,184,66,0.35);}

  /* Mobile hamburger + drawer */
  .nav-hamburger{display:none;background:transparent;border:0;width:44px;height:44px;cursor:pointer;padding:10px;border-radius:10px;}
  .nav-hamburger span{display:block;width:24px;height:2px;background:var(--white);margin:5px auto;border-radius:2px;transition:transform 0.25s,opacity 0.25s;}
  body.nav-open .nav-hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  body.nav-open .nav-hamburger span:nth-child(2){opacity:0;}
  body.nav-open .nav-hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .nav-drawer{display:none;flex-direction:column;gap:0.12rem;padding:0.85rem 1.1rem 1.2rem;background:rgba(15,26,46,0.98);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--rule);box-shadow:0 22px 44px rgba(0,0,0,0.42);}
  .nav-drawer>a{display:block;color:var(--mist);padding:0.62rem 0.8rem;border-radius:10px;font-weight:600;font-size:0.98rem;}
  .nav-drawer>a:hover,.nav-drawer>a.nav-current{background:var(--hover-tint);color:var(--white);}
  .nav-drawer-label{display:block;color:var(--text-muted);font-size:0.68rem;font-weight:700;letter-spacing:0.09em;text-transform:uppercase;padding:0.7rem 0.8rem 0.35rem;}
  .nav-drawer-chips{display:flex;flex-wrap:wrap;gap:0.4rem;padding:0 0.4rem 0.2rem;}
  .nav-drawer-chips a{color:var(--mist);background:var(--navy-soft);border:1px solid var(--rule);padding:0.4rem 0.8rem;border-radius:999px;font-size:0.82rem;font-weight:600;}
  .nav-drawer-chips a:hover,.nav-drawer-chips a.nav-current{background:var(--gold);color:var(--navy-deep);border-color:var(--gold);}
  .nav-drawer .drawer-install{text-align:center;color:var(--text-muted);font-weight:600;font-size:0.86rem;padding:0.6rem;margin-top:0.4rem;}
  .nav-drawer .cta-drawer{display:block;text-align:center;background:var(--gold);color:var(--navy-deep);font-weight:700;border-radius:12px;padding:0.8rem;margin-top:0.4rem;}
  .nav-dd{position:relative;display:flex;align-items:center;}
  .nav-dd-toggle{background:transparent;border:0;color:var(--text-muted);font-family:inherit;font-weight:500;font-size:0.88rem;padding:0.5rem 0.85rem;border-radius:999px;cursor:pointer;display:flex;align-items:center;gap:0.3rem;transition:color .15s,background .15s;}
  .nav-dd-toggle:hover,.nav-dd:hover .nav-dd-toggle,.nav-dd-toggle.nav-current{color:var(--white);background:var(--hover-tint);}
  .nav-dd-caret{font-size:0.6rem;transition:transform .2s;}
  .nav-dd:hover .nav-dd-caret{transform:rotate(180deg);}
  .nav-dd-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);min-width:210px;background:rgba(15,26,46,0.98);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--rule);border-radius:14px;padding:0.5rem;display:none;flex-direction:column;gap:0.05rem;box-shadow:0 16px 38px rgba(0,0,0,0.42);z-index:60;}
  .nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{display:flex;}
  .nav-dd-menu a{color:var(--mist);padding:0.5rem 0.8rem;border-radius:9px;font-weight:500;font-size:0.9rem;white-space:nowrap;}
  .nav-dd-menu a:hover,.nav-dd-menu a.nav-current{background:var(--hover-tint);color:var(--white);}
  .nav-pill-links a.nav-current{color:var(--white);background:var(--hover-tint);}
  body.nav-open .nav-drawer{display:flex;}

  .section{max-width:1180px;margin:0 auto;padding:2rem 1.5rem;}
  .section.tight{padding:1.25rem 1.5rem;}
  .section.first{padding-top:3rem;}
  .eyebrow{display:inline-block;font-size:0.78rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);background:var(--gold-tint);padding:0.32rem 0.85rem;border-radius:999px;margin-bottom:1.25rem;border:1px solid rgba(230,184,66,0.25);}

  /* ===================================================================
     Bento Tile System (Apple-inspired)
     - .bento is the grid container
     - .tile is one block; .tile.full spans full width, .tile.half spans 1 col
     - Each tile gets its own background gradient, headline, sub, CTAs, art
  =================================================================== */
  .bento{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-bottom:1.25rem;}
  .tile{position:relative;border-radius:var(--radius-tile);padding:2.75rem 2.25rem;overflow:hidden;display:flex;flex-direction:column;min-height:420px;border:1px solid var(--rule);transition:transform 0.25s,box-shadow 0.25s;background:linear-gradient(155deg,var(--navy-soft) 0%,var(--navy-deep) 100%);}
  .tile:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(0,0,0,0.4);}
  .tile.full{grid-column:1 / -1;min-height:460px;padding:3.5rem 3rem;}
  .tile.tall{min-height:540px;}
  .tile-eyebrow{font-size:0.72rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold);margin-bottom:0.85rem;}
  .tile h2{font-family:'Sora',sans-serif;font-size:clamp(1.7rem,2.6vw,2.4rem);font-weight:800;margin-bottom:0.8rem;letter-spacing:-0.02em;line-height:1.05;max-width:22ch;}
  .tile.full h2{font-size:clamp(2rem,3.4vw,3rem);max-width:28ch;}
  .tile p.tile-sub{color:var(--mist);font-size:1.02rem;line-height:1.5;max-width:34ch;margin-bottom:1.4rem;}
  .tile.full p.tile-sub{font-size:1.1rem;max-width:46ch;}
  .tile .replaces-line{font-size:0.78rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--text-faint);margin-bottom:1.4rem;}
  .tile-ctas{display:flex;gap:0.65rem;flex-wrap:wrap;margin-top:auto;position:relative;z-index:2;}
  .tile-cta-primary{background:var(--gold);color:var(--navy-deep);padding:0.7rem 1.3rem;border-radius:999px;font-weight:700;font-size:0.94rem;transition:transform 0.15s,box-shadow 0.15s,background 0.15s;display:inline-block;box-shadow:0 4px 14px rgba(230,184,66,0.25);}
  .tile-cta-primary:hover{background:var(--gold-hover);transform:translateY(-2px);box-shadow:0 6px 20px rgba(230,184,66,0.4);}
  .tile-cta-link{color:var(--white);padding:0.7rem 0;font-weight:600;font-size:0.94rem;transition:color 0.15s,transform 0.15s;display:inline-flex;align-items:center;gap:0.35rem;}
  .tile-cta-link:hover{color:var(--gold);}
  .tile-cta-link::after{content:'\203A';font-size:1.1rem;transition:transform 0.15s;}
  .tile-cta-link:hover::after{transform:translateX(3px);}
  .tile-cta-ghost{background:transparent;color:var(--white);padding:0.7rem 1.3rem;border-radius:999px;font-weight:700;font-size:0.94rem;border:1px solid var(--rule-strong);display:inline-block;transition:background 0.15s,border-color 0.15s;}
  .tile-cta-ghost:hover{background:var(--hover-tint);border-color:var(--gold);}

  /* Tile art positioning */
  .tile-art{position:absolute;pointer-events:none;z-index:1;}
  .tile-art.right{right:-2.5rem;bottom:-1.5rem;width:300px;}
  .tile-art.right-tall{right:-1rem;bottom:-2rem;width:340px;}
  .tile-art.cornered{right:1.5rem;bottom:1.5rem;width:240px;}
  .tile-art.family-group{right:0;bottom:0;width:640px;max-width:50%;}
  .tile-art.scene-right{right:0;bottom:0;width:360px;max-width:58%;}
  .tile-art.scene-full-right{right:0;bottom:0;width:600px;max-width:50%;}
  .tile-art.scene-right img,.tile-art.scene-full-right img,.tile-art.family-group img{width:100%;height:auto;display:block;}
  /* When marquee tile has family-group art, constrain the text content to the left half */
  .tile.full:has(.tile-art.family-group) > h2,
  .tile.full:has(.tile-art.family-group) > p.tile-sub,
  .tile.full:has(.tile-art.family-group) > .tile-eyebrow,
  .tile.full:has(.tile-art.family-group) > .tile-ctas{max-width:50%;}
  /* Same constraint for full marquee tiles with scene-full-right (eg Facebook tile) */
  .tile.full:has(.tile-art.scene-full-right) > h2,
  .tile.full:has(.tile-art.scene-full-right) > p.tile-sub,
  .tile.full:has(.tile-art.scene-full-right) > .tile-eyebrow,
  .tile.full:has(.tile-art.scene-full-right) > .tile-ctas{max-width:50%;}
  .tile-art.centered{position:relative;right:auto;bottom:auto;width:100%;max-width:480px;margin:0 auto;}
  .tile-art img{width:100%;display:block;filter:drop-shadow(0 24px 50px rgba(0,0,0,0.45));}
  .tile-art.placeholder{background:linear-gradient(135deg,rgba(255,255,255,0.04),rgba(255,255,255,0.01));border:1px dashed var(--rule);border-radius:1.5rem;display:grid;place-items:center;color:var(--text-faint);font-size:0.78rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;text-align:center;padding:1.5rem;}
  .tile-art.placeholder.cornered{width:200px;height:160px;}

  /* Per-platform tile color washes */
  .tile.t-video{background:linear-gradient(155deg,rgba(108,171,239,0.25) 0%,var(--navy-deep) 70%);border-color:rgba(108,171,239,0.2);}
  .tile.t-photos{background:linear-gradient(155deg,rgba(244,151,155,0.22) 0%,var(--navy-deep) 70%);border-color:rgba(244,151,155,0.2);}
  .tile.t-family{background:linear-gradient(155deg,rgba(135,210,146,0.22) 0%,var(--navy-deep) 70%);border-color:rgba(135,210,146,0.2);}
  .tile.t-stash{background:linear-gradient(155deg,rgba(244,182,94,0.22) 0%,var(--navy-deep) 70%);border-color:rgba(244,182,94,0.2);}
  .tile.t-podcast{background:linear-gradient(155deg,rgba(184,155,232,0.24) 0%,var(--navy-deep) 70%);border-color:rgba(184,155,232,0.22);}
  .tile.t-sponsor{background:linear-gradient(155deg,rgba(230,184,66,0.26) 0%,var(--navy-deep) 70%);border-color:rgba(230,184,66,0.3);}
  .tile.t-flag{background:linear-gradient(155deg,#2A1F3D 0%,var(--navy-deep) 50%,#3D1F22 100%);border-color:rgba(255,255,255,0.16);text-align:center;align-items:center;}
  .tile.t-flag > .tile-eyebrow{align-self:center;}
  .tile.t-flag > h2{max-width:32ch;margin-left:auto;margin-right:auto;}
  .tile.t-flag > p.tile-sub{max-width:64ch;width:100%;margin-left:auto;margin-right:auto;}
  .tile.t-tier{background:linear-gradient(155deg,rgba(230,184,66,0.18) 0%,var(--navy-deep) 60%);border-color:rgba(230,184,66,0.25);}
  .tile.t-final{background:radial-gradient(ellipse at top,rgba(230,184,66,0.22) 0%,var(--navy-deep) 65%);border-color:rgba(230,184,66,0.32);text-align:center;align-items:center;}
  .tile.t-final h2{max-width:30ch;margin-left:auto;margin-right:auto;}
  .tile.t-final p.tile-sub{max-width:40ch;margin-left:auto;margin-right:auto;}
  .tile.t-final .tile-ctas{justify-content:center;}
  .tile-art.footer-banner{position:relative;width:100%;max-width:760px;margin:1.5rem auto -3.5rem;align-self:center;}
  .tile-art.footer-banner img{width:100%;height:auto;display:block;}

  /* Hero marquee tile — centered text, family banner flush to bottom (same pattern as Final CTA footer) */
  .tile.t-hero{padding:1.5rem 2rem;min-height:0;background:radial-gradient(ellipse at top,rgba(230,184,66,0.22) 0%,var(--navy-deep) 65%);border-color:rgba(230,184,66,0.2);text-align:center;align-items:center;}
  .tile.t-hero > .eyebrow{align-self:center;margin-bottom:0.65rem;}
  .tile.t-hero h1{font-family:'Sora',sans-serif;font-size:clamp(1.7rem,3vw,2.6rem);font-weight:800;margin-bottom:0.55rem;line-height:1.05;letter-spacing:-0.02em;max-width:24ch;margin-left:auto;margin-right:auto;}
  .tile.t-hero h1 .accent{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-soft) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
  .tile.t-hero .lead{font-size:clamp(0.9rem,1vw,1rem);color:var(--mist);margin:0 auto 0.8rem;max-width:44rem;line-height:1.4;}
  .tile.t-hero .ctas{display:flex;gap:0.55rem;flex-wrap:wrap;margin-bottom:0.55rem;justify-content:center;}
  .tile.t-hero .btn-primary,.tile.t-hero .btn-ghost{padding:0.6rem 1.15rem;font-size:0.9rem;}
  .tile.t-hero .trust-line{color:var(--text-muted);font-size:0.78rem;text-align:center;}
  .tile.t-hero .trust-line strong{color:var(--white);font-weight:700;}
  .tile-art.hero-banner{position:relative;width:100%;max-width:380px;margin:0.5rem auto -1.5rem;align-self:center;}
  .tile-art.hero-banner img{width:100%;height:auto;display:block;}
  @keyframes floaty{0%,100%{transform:translateY(0);}50%{transform:translateY(-12px);}}

  /* Big primary/ghost (used inside hero tile) */
  .btn-primary{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-hover) 100%);color:var(--navy-deep);padding:0.95rem 1.6rem;border-radius:999px;font-weight:700;font-size:1rem;display:inline-block;transition:transform 0.15s,box-shadow 0.15s;border:0;cursor:pointer;box-shadow:0 8px 22px rgba(230,184,66,0.3);}
  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(230,184,66,0.4);}
  .btn-ghost{background:transparent;color:var(--white);padding:0.95rem 1.6rem;border-radius:999px;font-weight:700;font-size:1rem;border:1px solid var(--rule-strong);display:inline-block;transition:background 0.15s,border-color 0.15s;cursor:pointer;}
  .btn-ghost:hover{background:var(--hover-tint);border-color:var(--gold-tint);}

  /* Section heads (sit above a bento) */
  .section-head{text-align:center;max-width:48rem;margin:2.5rem auto 2rem;}
  .section-head h2{font-family:'Sora',sans-serif;font-size:clamp(1.9rem,3vw,2.6rem);font-weight:800;margin-bottom:0.85rem;letter-spacing:-0.02em;}
  .section-head h2 .accent{color:var(--gold);}
  .section-head p{color:var(--mist);font-size:1.05rem;line-height:1.5;}

  /* Community avatars (kept) */
  .community{background:linear-gradient(135deg,var(--navy-soft) 0%,var(--navy-up) 100%);border:1px solid var(--rule);border-radius:var(--radius-tile);padding:2.5rem 2rem;text-align:center;position:relative;overflow:hidden;}
  .community::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:60%;height:2px;background:linear-gradient(90deg,transparent 0%,var(--gold) 50%,transparent 100%);}
  .community h2{font-family:'Sora',sans-serif;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:700;margin-bottom:0.55rem;letter-spacing:-0.02em;}
  .community .sub{color:var(--text-muted);margin:0 auto 1.8rem;max-width:32rem;}
  .avatar-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.25rem 1.4rem;max-width:960px;margin:0 auto;}
  .person{display:flex;flex-direction:column;align-items:center;gap:0.5rem;width:98px;transition:transform 0.2s;}
  .person:hover{transform:translateY(-4px);}
  .avatar{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;font-family:'Sora',system-ui,sans-serif;font-weight:700;font-size:1.15rem;color:var(--white);border:2px solid rgba(255,255,255,0.12);box-shadow:0 8px 20px rgba(0,0,0,0.3);overflow:hidden;background:var(--navy-deep);}
  .avatar img{width:100%;height:100%;object-fit:cover;object-position:center 6%;display:block;transform:scale(2.4);transform-origin:center 18%;}
  .person .name{font-size:0.86rem;font-weight:700;letter-spacing:-0.01em;}
  .person .role{font-size:0.72rem;color:var(--text-muted);text-align:center;}

  /* Tier ladder tile contents */
  .tier-ladder{display:grid;grid-template-columns:1fr 1.35fr;gap:2.5rem;align-items:center;width:100%;}
  .tier-ladder-points{list-style:none;padding:0;margin:1rem 0 1.5rem;display:grid;gap:0.55rem;}
  .tier-ladder-points li{color:var(--mist);font-size:0.95rem;display:flex;gap:0.6rem;align-items:flex-start;}
  .tier-ladder-points li::before{content:'\2728';flex-shrink:0;}
  .tier-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0.85rem;}
  .tier-step{background:rgba(255,255,255,0.04);border:1px solid var(--rule);border-radius:1.1rem;padding:0.9rem 0.65rem;text-align:center;transition:transform 0.2s,border-color 0.2s;}
  .tier-step:hover{transform:translateY(-3px);border-color:var(--gold-tint);}
  .tier-step .face{width:68px;height:68px;border-radius:50%;margin:0 auto 0.55rem;padding:3px;background:linear-gradient(135deg,rgba(255,255,255,0.06),rgba(255,255,255,0.02));border:none;display:block;overflow:hidden;box-sizing:border-box;}
  .tier-step .face img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block;background:var(--navy-deep);}
  .tier-step .face .ph{font-size:1.5rem;}
  /* Tier ring colors match the actual in-app .tier-ring.tier-N from helm.css */
  .tier-step.t1 .face{background:#778095;}
  .tier-step.t2 .face{background:#CD7F32;}
  .tier-step.t3 .face{background:#C0C0C0;}
  .tier-step.t4 .face{background:#E6B842;}
  .tier-step.t5 .face{background:#FF3D8E;}
  .tier-step.t6 .face{background:#9333EA;}
  .tier-step.t7 .face{background:conic-gradient(#FF3D8E,#FAB72A,#6CCB78,#38BCDB,#9333EA,#FF3D8E);animation:tier-spin 6s linear infinite;}
  .tier-step.t7 .face img{animation:tier-spin 6s linear infinite reverse;}
  @keyframes tier-spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}
  .tier-step .nm{font-family:'Sora',sans-serif;font-size:0.82rem;font-weight:700;letter-spacing:-0.01em;}
  .tier-step .tier-num{font-size:0.66rem;color:var(--gold);font-weight:700;letter-spacing:0.08em;text-transform:uppercase;margin-top:0.15rem;}

  /* Account-type tile grid — 12-col so row 1 (4 cards × span 3) balances against row 2 (3 cards × span 4) without leaving a void */
  .type-bento{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem;margin-bottom:1.25rem;}
  .type-tile{grid-column:span 3;}
  .type-bento .type-tile:nth-child(n+5){grid-column:span 4;}
  .type-tile{position:relative;background:linear-gradient(155deg,var(--navy-soft) 0%,var(--navy-deep) 100%);border:1px solid var(--rule);border-radius:var(--radius-tile);padding:1.6rem 1.25rem;text-align:center;display:flex;flex-direction:column;align-items:center;min-height:280px;transition:transform 0.25s,border-color 0.25s,box-shadow 0.25s;overflow:hidden;}
  .type-tile:hover{transform:translateY(-5px);border-color:var(--gold-tint);box-shadow:0 18px 44px rgba(0,0,0,0.35);}
  .type-tile .face{width:96px;height:96px;border-radius:50%;background:var(--navy-deep);border:2px solid rgba(255,255,255,0.12);display:grid;place-items:center;margin-bottom:0.95rem;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,0.3);}
  .type-tile .face img{width:100%;height:100%;object-fit:cover;object-position:center 6%;display:block;transform:scale(2.4);transform-origin:center 18%;}
  .type-tile .face .ph-emoji{font-size:2.2rem;}
  .type-tile h3{font-family:'Sora',sans-serif;font-size:1.05rem;font-weight:700;margin-bottom:0.3rem;letter-spacing:-0.02em;}
  .type-tile .age{font-size:0.7rem;color:var(--gold);font-weight:700;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:0.5rem;}
  .type-tile p{font-size:0.85rem;color:var(--text-muted);line-height:1.45;margin-bottom:0.9rem;}
  .type-tile .type-cta{margin-top:auto;color:var(--white);font-weight:600;font-size:0.84rem;letter-spacing:-0.01em;transition:color 0.15s;}
  .type-tile .type-cta::after{content:' \203A';color:var(--gold);transition:transform 0.15s;display:inline-block;}
  .type-tile:hover .type-cta{color:var(--gold);}

  /* Pillars (4) */
  .pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.25rem;}
  .pillar{background:rgba(255,255,255,0.03);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:1.5rem 1.2rem;text-align:center;transition:transform 0.2s,border-color 0.2s,background 0.2s;}
  .pillar:hover{transform:translateY(-4px);border-color:var(--gold-tint);background:rgba(255,255,255,0.05);}
  .pillar .badge{width:48px;height:48px;border-radius:14px;background:var(--gold-tint);color:var(--gold);display:grid;place-items:center;font-size:1.55rem;margin:0 auto 0.7rem;border:1px solid rgba(230,184,66,0.3);}
  .pillar h4{font-family:'Sora',sans-serif;font-size:0.98rem;font-weight:800;margin-bottom:0.35rem;letter-spacing:-0.01em;}
  .pillar p{font-size:0.86rem;color:var(--text-muted);line-height:1.45;}

  /* Family tile uses bento layout with art slot */
  .family-tile-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;width:100%;}
  .family-tile-grid ul{list-style:none;padding:0;margin:0.85rem 0 1.35rem;display:grid;gap:0.5rem;}
  .family-tile-grid li{display:flex;align-items:flex-start;gap:0.55rem;color:var(--mist);font-size:0.93rem;}
  .family-tile-grid li::before{content:'\2713';color:var(--gold);font-weight:800;flex-shrink:0;}
  .family-tile-art{display:grid;place-items:center;}
  .family-tile-art img{width:100%;max-width:380px;filter:drop-shadow(0 24px 50px rgba(0,0,0,0.4));animation:floaty 6s ease-in-out infinite;}

  /* Footer */
  footer{border-top:1px solid var(--rule);padding:2.5rem 1.5rem;margin-top:2.5rem;}
  .footer-inner{max-width:1180px;margin:0 auto;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;align-items:center;color:var(--text-muted);font-size:0.88rem;}
  .footer-brand{display:flex;align-items:center;gap:0.5rem;}
  .footer-brand img{width:24px;height:24px;border-radius:6px;}
  .footer-links{display:flex;gap:1.2rem;flex-wrap:wrap;}
  .footer-links a:hover{color:var(--white);}
  .footer-pride{font-size:0.78rem;color:var(--text-faint);font-weight:600;letter-spacing:0.06em;}

  /* Responsive */
  @media (max-width:980px){
    .bento{grid-template-columns:1fr;}
    .tile.full,.tile{grid-column:1;}
    .tile-art.hero-banner{max-width:520px;}
    .tier-ladder{grid-template-columns:1fr;gap:1.5rem;}
    .tier-strip{grid-template-columns:repeat(4,1fr);}
    .type-bento{grid-template-columns:repeat(2,1fr);}
    .pillars{grid-template-columns:repeat(2,1fr);}
    .family-tile-grid{grid-template-columns:1fr;gap:1.5rem;}
    .family-tile-art{order:-1;}
    .tile-art.right,.tile-art.right-tall,.tile-art.cornered{position:relative;right:auto;bottom:auto;width:100%;max-width:280px;margin:1.5rem auto 0;}
  }
  @media (max-width:980px){
    .nav-pill-links,.nav-links{display:none;}
    .nav-hamburger{display:block;}
  }
  @media (max-width:560px){
    .section{padding:1rem 1rem;}
    .tile{padding:2rem 1.5rem;min-height:380px;}
    .tile.full{padding:2.25rem 1.5rem;}
    /* Hero matches footer pattern: small top padding, zero bottom so hero-banner negative margin sits image flush */
    .tile.t-hero{padding:2.5rem 1.5rem 0;}
    .tile-art.hero-banner{max-width:100%;margin:0.75rem auto -1.5rem;}
    .tier-strip{grid-template-columns:repeat(2,1fr);}
    .type-bento{grid-template-columns:1fr;}
    .pillars{grid-template-columns:1fr;}
    .nav-inner{padding:0.7rem 1rem;}
    .person{width:80px;}.avatar{width:56px;height:56px;font-size:1.1rem;}
  }

  /* ===================== WAITLIST FORM =====================
     Lifted from the current live index. The form, the success state,
     the error state, and a mobile breakpoint that stacks the pill.
  ======================================================== */
  .waitlist{margin:1.75rem auto 1rem;max-width:520px;width:100%;}
  .waitlist form{display:flex;gap:0.5rem;background:rgba(255,255,255,0.06);border:1px solid var(--rule-strong);border-radius:999px;padding:0.3rem 0.3rem 0.3rem 1.1rem;}
  .waitlist input[type=email]{flex:1;background:transparent;border:0;color:var(--white);font:inherit;font-size:1rem;outline:none;min-width:0;}
  .waitlist input[type=email]::placeholder{color:rgba(214,222,236,0.45);}
  .waitlist button{background:var(--gold);color:var(--navy-deep);border:0;padding:0.85rem 1.4rem;border-radius:999px;font:inherit;font-weight:700;font-size:0.95rem;cursor:pointer;white-space:nowrap;transition:background 0.15s,transform 0.05s,box-shadow 0.15s;box-shadow:0 4px 14px rgba(230,184,66,0.25);}
  .waitlist button:hover:not(:disabled){background:var(--gold-hover);transform:translateY(-1px);box-shadow:0 6px 20px rgba(230,184,66,0.35);}
  .waitlist button:active:not(:disabled){transform:translateY(1px);}
  .waitlist button:disabled{opacity:0.55;cursor:not-allowed;}
  .waitlist .err{color:#F4979B;font-size:0.88rem;margin-top:0.8rem;display:none;}
  .waitlist .err.show{display:block;}
  .waitlist .ok{display:none;background:rgba(50,191,140,0.10);border:1px solid rgba(50,191,140,0.4);border-radius:14px;padding:1rem 1.25rem;text-align:left;margin-top:0.8rem;}
  .waitlist .ok.show{display:block;}
  .waitlist .ok strong{color:#6CCB78;font-weight:800;display:block;font-size:1.02rem;margin-bottom:0.25rem;font-family:'Sora',sans-serif;}
  .waitlist .ok span{color:var(--mist);font-size:0.92rem;line-height:1.5;}
  @media (max-width:640px){
    .waitlist form{flex-direction:column;padding:0.5rem;border-radius:18px;}
    .waitlist input[type=email]{padding:0.7rem 0.8rem;}
    .waitlist button{width:100%;padding:0.9rem 1.2rem;}
  }

  /* ===================================================================
     LIVE + COINS + GIFTS section — high-leverage marketing block
     - Gold/pink gradient hero tile (the 50/50 promise)
     - Gift catalog teaser with 5 colored chips
     - Inner Circle list tile
     - 6-card "what's coming" roadmap grid
  =================================================================== */
  .live-accent{color:var(--gold);}
  /* Hero tile gets a richer warm gradient so it pops visually */
  .tile.t-live-hero{background:linear-gradient(135deg,#2D456E 0%,#1A2C4D 45%,#5A2D1F 100%);border-color:rgba(230,184,66,0.35);}
  .tile.t-live-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 15%,rgba(230,184,66,0.18) 0%,transparent 55%);pointer-events:none;z-index:0;}
  .tile.t-live-hero > *{position:relative;z-index:1;}
  /* Math callout — viewer→creator visual */
  .live-math{display:flex;align-items:stretch;gap:1rem;background:rgba(15,26,46,0.45);border:1px solid var(--rule-strong);border-radius:1.25rem;padding:1.4rem 1.5rem;margin:1.6rem 0 1.8rem;max-width:680px;}
  .live-math-side{flex:1;display:flex;flex-direction:column;gap:0.4rem;min-width:0;}
  .live-math-label{font-size:0.72rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-faint);}
  .live-math-value{font-family:'Sora',sans-serif;font-size:clamp(2rem,4vw,2.8rem);font-weight:800;line-height:1;letter-spacing:-0.02em;color:var(--mist);}
  .live-math-unit{font-size:0.6em;color:var(--text-muted);font-weight:700;margin-left:0.05em;}
  .live-math-side--you .live-math-value{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-soft) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
  .live-math-meta{font-size:0.84rem;color:var(--text-muted);line-height:1.3;}
  .live-math-arrow{display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:var(--gold);font-weight:800;padding:0 0.25rem;}
  /* Gift catalog chips — show the tier spread */
  .tile.t-live-gifts{background:linear-gradient(155deg,#2D456E 0%,#1A2C4D 60%,#2D1F4A 100%);border-color:rgba(184,155,232,0.28);}
  .gift-rail{display:flex;flex-wrap:wrap;gap:0.6rem;margin:1.2rem 0 1.5rem;}
  .gift-chip{display:inline-flex;flex-direction:column;align-items:center;gap:0.2rem;background:rgba(15,26,46,0.6);border:1px solid var(--rule-strong);border-radius:14px;padding:0.7rem 0.85rem;min-width:88px;transition:transform 0.2s,border-color 0.2s;}
  .gift-chip:hover{transform:translateY(-3px);border-color:var(--gold);}
  .gift-chip-emoji{font-size:1.6rem;line-height:1;}
  .gift-chip-label{font-size:0.78rem;font-weight:700;color:var(--mist);}
  .gift-chip-price{font-size:0.68rem;font-weight:700;color:var(--text-faint);letter-spacing:0.04em;text-transform:uppercase;}
  .gift-chip--t1{border-color:rgba(108,171,239,0.35);}
  .gift-chip--t2{border-color:rgba(135,210,146,0.35);}
  .gift-chip--t3{border-color:rgba(244,182,94,0.35);}
  .gift-chip--t4{border-color:rgba(184,155,232,0.45);}
  .gift-chip--t5{border-color:rgba(244,151,155,0.55);box-shadow:0 0 0 1px rgba(244,151,155,0.18) inset;}
  /* Inner Circle tile */
  .tile.t-live-circle{background:linear-gradient(155deg,#2D456E 0%,#1A2C4D 60%,#1F3A2D 100%);border-color:rgba(135,210,146,0.28);}
  .circle-list{list-style:none;padding:0;margin:0 0 1.5rem;display:flex;flex-direction:column;gap:0.7rem;}
  .circle-list li{display:flex;align-items:center;gap:0.7rem;color:var(--mist);font-size:0.98rem;font-weight:500;}
  .circle-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,var(--green) 0%,var(--gold-soft) 100%);flex-shrink:0;box-shadow:0 0 0 3px rgba(135,210,146,0.18);}
  /* Roadmap tile — 6-feature grid */
  .live-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem 1.3rem;margin:1.4rem 0 1.6rem;max-width:980px;}
  .live-feature{display:flex;flex-direction:column;gap:0.35rem;padding:0.25rem 0;}
  .live-feature-icon{font-size:1.45rem;line-height:1;color:var(--gold);}
  .live-feature-title{font-family:'Sora',sans-serif;font-weight:700;font-size:1.02rem;color:var(--white);letter-spacing:-0.01em;}
  .live-feature-sub{font-size:0.9rem;color:var(--text-muted);line-height:1.45;}
  /* Responsive: collapse the Live bento like the other bentos do */
  @media (max-width:920px){
    .live-math{flex-direction:column;gap:0.8rem;padding:1.1rem 1.2rem;}
    .live-math-arrow{transform:rotate(90deg);padding:0;}
    .live-feature-grid{grid-template-columns:repeat(2,1fr);}
  }
  @media (max-width:640px){
    .live-feature-grid{grid-template-columns:1fr;}
    .gift-chip{min-width:78px;padding:0.55rem 0.7rem;}
    .gift-chip-emoji{font-size:1.35rem;}
  }

  /* Keep platform-tile content from running under the .scene-right art on desktop.
     The art is anchored bottom-right at ~58% of the tile; clamp text to the left ~52%. */
  .tile.t-video > h2, .tile.t-video > p.tile-sub, .tile.t-video > .tile-eyebrow, .tile.t-video > .tile-ctas,
  .tile.t-photos > h2, .tile.t-photos > p.tile-sub, .tile.t-photos > .tile-eyebrow, .tile.t-photos > .tile-ctas,
  .tile.t-stash > h2, .tile.t-stash > p.tile-sub, .tile.t-stash > .tile-eyebrow, .tile.t-stash > .tile-ctas,
  .tile.t-podcast > h2, .tile.t-podcast > p.tile-sub, .tile.t-podcast > .tile-eyebrow, .tile.t-podcast > .tile-ctas,
  .tile.t-creator > h2, .tile.t-creator > p.tile-sub, .tile.t-creator > .tile-eyebrow, .tile.t-creator > .tile-ctas{
    max-width:52%;position:relative;z-index:2;
  }
  @media(max-width:760px){
    .tile.t-video > h2, .tile.t-video > p.tile-sub, .tile.t-video > .tile-eyebrow, .tile.t-video > .tile-ctas,
    .tile.t-photos > h2, .tile.t-photos > p.tile-sub, .tile.t-photos > .tile-eyebrow, .tile.t-photos > .tile-ctas,
    .tile.t-stash > h2, .tile.t-stash > p.tile-sub, .tile.t-stash > .tile-eyebrow, .tile.t-stash > .tile-ctas,
    .tile.t-podcast > h2, .tile.t-podcast > p.tile-sub, .tile.t-podcast > .tile-eyebrow, .tile.t-podcast > .tile-ctas,
    .tile.t-creator > h2, .tile.t-creator > p.tile-sub, .tile.t-creator > .tile-eyebrow, .tile.t-creator > .tile-ctas{
      max-width:none;
    }
  }

  /* Chores tile: image rides under text as a normal flow block, never overlaps */
  .t-family-chores .chore-art{margin:1.2rem auto 0;text-align:center;position:static;width:100%;}
  .t-family-chores .chore-art img{width:100%;max-width:380px;height:auto;border-radius:1rem;display:block;margin:0 auto;animation:floaty 6s ease-in-out infinite;}

  /* Install mascot: bring back the up/down bobbing motion */
  @keyframes floaty{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}
  .t-install-art img{animation:floaty 5.5s ease-in-out infinite;}

  /* Install (Get the app) tile responsive */
  .t-install-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:2.5rem;align-items:center;}
  .t-install-grid > .t-install-art{text-align:center;}
  .t-install-instructions{margin-top:1.6rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem;font-size:0.88rem;color:var(--text-muted);}
  .t-install-instructions > div{background:rgba(255,255,255,0.04);border:1px solid var(--rule);border-radius:12px;padding:0.9rem 1rem;}
  @media (max-width:760px){
    .t-install-grid{grid-template-columns:1fr;gap:1.5rem;}
    .t-install-grid > .t-install-art{order:-1;}
    .t-install-grid > .t-install-art img{max-width:240px !important;}
    .t-install-instructions{grid-template-columns:1fr;}
  }
  /* For-Families bento section — mirrors bento-live with family palette */
  .t-family-hero{background:linear-gradient(155deg,rgba(135,210,146,0.28) 0%,rgba(213,138,48,0.18) 60%,var(--navy-deep) 100%);border-color:rgba(135,210,146,0.30);}
  .t-family-hero .accent{color:#87D292;}
  .t-family-calendar{background:linear-gradient(155deg,rgba(108,171,239,0.22) 0%,var(--navy-deep) 70%);border-color:rgba(108,171,239,0.20);}
  .t-family-chores{background:linear-gradient(155deg,rgba(213,138,48,0.22) 0%,var(--navy-deep) 70%);border-color:rgba(213,138,48,0.20);}
  .t-family-redeem{background:linear-gradient(155deg,rgba(213,138,48,0.18) 0%,rgba(135,210,146,0.16) 60%,var(--navy-deep) 100%);border-color:rgba(213,138,48,0.22);}
  .t-family-redeem .accent{color:var(--gold);}
  .t-family-live{background:linear-gradient(155deg,rgba(135,210,146,0.30) 0%,rgba(108,171,239,0.18) 60%,var(--navy-deep) 100%);border-color:rgba(135,210,146,0.30);}
  .t-family-live .accent{color:#87D292;}
  .family-controls-checklist{margin:0.8rem 0 1rem;padding:0;list-style:none;color:rgba(231,237,247,0.92);}
  .family-controls-checklist li{padding:0.4rem 0 0.4rem 1.7rem;position:relative;font-size:0.95rem;line-height:1.4;}
  .family-controls-checklist li::before{content:'\2713';position:absolute;left:0;top:0.35rem;color:#87D292;font-weight:800;font-size:1.05rem;}
  /* Calendar mini */
  .calendar-mini{margin-top:0.85rem;display:flex;flex-direction:column;gap:0.45rem;}
  .cal-row{display:grid;grid-template-columns:14px 80px 1fr;align-items:center;gap:0.7rem;background:rgba(255,255,255,0.05);padding:0.5rem 0.8rem;border-radius:10px;font-size:0.9rem;}
  .cal-dot{width:10px;height:10px;border-radius:50%;}
  .cal-dot--soccer{background:#87D292;} .cal-dot--music{background:#9EC4F1;} .cal-dot--dad{background:#ECC480;} .cal-dot--family{background:#F4979B;}
  .cal-when{color:var(--text-soft);font-weight:600;font-size:0.82rem;}
  .cal-what{color:#fff;font-weight:500;}
  /* Chore chips */
  .chore-rail{margin-top:0.85rem;display:flex;flex-wrap:wrap;gap:0.5rem;}
  .chore-chip{background:rgba(255,255,255,0.06);padding:0.45rem 0.85rem;border-radius:999px;font-size:0.88rem;display:inline-flex;align-items:center;gap:0.45rem;border:1px solid rgba(255,255,255,0.08);}
  .chore-chip-emoji{font-size:1.1rem;}
  .chore-chip-stars{color:#ECC480;font-weight:700;font-size:0.84rem;}
  /* Redeemables list */
  .redeem-list{margin-top:0.85rem;display:flex;flex-direction:column;gap:0.45rem;}
  .redeem-row{display:grid;grid-template-columns:60px 1fr;align-items:center;gap:0.9rem;background:rgba(255,255,255,0.05);padding:0.5rem 0.85rem;border-radius:10px;font-size:0.92rem;}
  .redeem-stars{color:#ECC480;font-weight:700;font-size:0.86rem;}
  .redeem-name{color:#fff;}
  /* Family-Live math row, mirrors .live-math */
  .family-live-row{display:grid;grid-template-columns:1fr 60px 1fr;align-items:center;gap:1rem;margin-top:1rem;}
  .family-live-side{background:rgba(255,255,255,0.05);padding:1rem 1.2rem;border-radius:14px;border:1px solid rgba(255,255,255,0.08);}
  .family-live-side--paid{background:rgba(135,210,146,0.14);border-color:rgba(135,210,146,0.30);}
  .family-live-label{display:block;font-size:0.74rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-soft);font-weight:700;margin-bottom:0.25rem;}
  .family-live-value{display:block;font-family:'Sora',sans-serif;font-weight:800;font-size:1.4rem;color:#fff;margin-bottom:0.3rem;}
  .family-live-meta{display:block;color:rgba(231,237,247,0.78);font-size:0.84rem;line-height:1.4;}
  .family-live-arrow{font-family:'Sora',sans-serif;font-size:1.7rem;color:rgba(255,255,255,0.45);text-align:center;font-weight:700;}
  /* Tile-bottom photo banner (used by chores tile to anchor pip+rio walking-the-dog scene) */
  .tile-art.scene-bottom{position:relative;width:calc(100% + 4rem);margin:1.4rem -2rem -2rem;align-self:stretch;border-radius:0 0 1.5rem 1.5rem;overflow:hidden;}
  .tile-art.scene-bottom img{width:100%;height:auto;display:block;filter:none;}
  @media (max-width:760px){
    .tile-art.live-scene{position:relative;right:auto;bottom:auto;width:100%;max-width:100%;margin:1.5rem 0 -1rem;}
    .tile.full:has(.tile-art.live-scene) > h2,
    .tile.full:has(.tile-art.live-scene) > p.tile-sub,
    .tile.full:has(.tile-art.live-scene) > .tile-eyebrow,
    .tile.full:has(.tile-art.live-scene) > .live-math,
    .tile.full:has(.tile-art.live-scene) > .tile-ctas{max-width:none;}
  }
  /* Parent-dashboard hero couch scene (full bento marquee, right-aligned) */
  .tile-art.parent-couch{right:0;bottom:0;width:560px;max-width:50%;}
  .tile-art.parent-couch img{width:100%;height:auto;display:block;filter:drop-shadow(0 24px 50px rgba(0,0,0,0.5));}
  .tile.full:has(.tile-art.parent-couch) > h2,
  .tile.full:has(.tile-art.parent-couch) > p.tile-sub,
  .tile.full:has(.tile-art.parent-couch) > .tile-eyebrow,
  .tile.full:has(.tile-art.parent-couch) > .family-controls-checklist,
  .tile.full:has(.tile-art.parent-couch) > .tile-ctas{max-width:50%;}
  /* Live-hero scene (Nova and Sage going live, full bento marquee, right-aligned) */
  .tile-art.live-scene{position:absolute;right:0;bottom:0;width:560px;max-width:48%;}
  .tile-art.live-scene img{width:100%;height:auto;display:block;filter:drop-shadow(0 24px 50px rgba(0,0,0,0.5));}
  .tile.full:has(.tile-art.live-scene) > h2,
  .tile.full:has(.tile-art.live-scene) > p.tile-sub,
  .tile.full:has(.tile-art.live-scene) > .tile-eyebrow,
  .tile.full:has(.tile-art.live-scene) > .live-math,
  .tile.full:has(.tile-art.live-scene) > .tile-ctas{max-width:52%;}
  /* Calendar mini: emoji icons + whole-row color tint (matches what we shipped in app) */
  .cal-row.tinted{background:linear-gradient(90deg,var(--ev-color,#87D292) 0%,rgba(255,255,255,0.05) 22%);border-left:4px solid var(--ev-color,#87D292);grid-template-columns:24px 80px 1fr;}
  .cal-row .cal-emoji{font-size:1.1rem;line-height:1;}
  @media (max-width:760px){
    .family-live-row{grid-template-columns:1fr;}
    .family-live-arrow{display:none;}
    .tile-art.parent-couch{position:relative;right:auto;bottom:auto;width:100%;max-width:100%;margin:1.5rem 0 -1rem;}
    .tile.full:has(.tile-art.parent-couch) > h2,
    .tile.full:has(.tile-art.parent-couch) > p.tile-sub,
    .tile.full:has(.tile-art.parent-couch) > .tile-eyebrow,
    .tile.full:has(.tile-art.parent-couch) > .family-controls-checklist,
    .tile.full:has(.tile-art.parent-couch) > .tile-ctas{max-width:none;}
    .tile-art.scene-bottom{width:calc(100% + 3rem);margin:1.4rem -1.5rem -1.5rem;}
    /* Hero-style mobile layout for "50/50 promise" + "Connects them all" — text centered on top, image flush at bottom */
    .tile.t-live-hero,
    .tile.t-sponsor.full:has(.tile-art.family-group){text-align:center;align-items:center;}
    .tile.t-live-hero > .tile-eyebrow,
    .tile.t-live-hero > h2,
    .tile.t-live-hero > p.tile-sub,
    .tile.t-sponsor.full:has(.tile-art.family-group) > .tile-eyebrow,
    .tile.t-sponsor.full:has(.tile-art.family-group) > h2,
    .tile.t-sponsor.full:has(.tile-art.family-group) > p.tile-sub{margin-left:auto;margin-right:auto;}
    .tile.t-live-hero h2{max-width:20ch;}
    .tile.t-sponsor.full:has(.tile-art.family-group) h2{max-width:20ch;}
    .tile.t-live-hero p.tile-sub,
    .tile.t-sponsor.full:has(.tile-art.family-group) p.tile-sub{max-width:34ch;}
    .tile.t-live-hero .live-math{margin-left:auto;margin-right:auto;justify-items:center;width:100%;max-width:100%;}
    .tile.t-live-hero .tile-ctas,
    .tile.t-sponsor.full:has(.tile-art.family-group) .tile-ctas{justify-content:center;align-self:center;}
    /* Make the image a centered bottom banner like the hero family group photo */
    .tile-art.live-scene,
    .tile-art.family-group{position:relative;right:auto;bottom:auto;left:auto;top:auto;width:100%;max-width:100%;margin:1.5rem auto -2rem;align-self:center;text-align:center;display:flex;justify-content:center;}
    .tile-art.live-scene img,
    .tile-art.family-group img{width:100%;max-width:480px;margin:0 auto;display:block;}
    /* clear desktop text-constraint (max-width:52%/50%) on both hero-style tiles for mobile */
    .tile.full:has(.tile-art.family-group) > h2,
    .tile.full:has(.tile-art.family-group) > p.tile-sub,
    .tile.full:has(.tile-art.family-group) > .tile-eyebrow,
    .tile.full:has(.tile-art.family-group) > .tile-ctas,
    .tile.full:has(.tile-art.live-scene) > h2,
    .tile.full:has(.tile-art.live-scene) > p.tile-sub,
    .tile.full:has(.tile-art.live-scene) > .tile-eyebrow,
    .tile.full:has(.tile-art.live-scene) > .live-math,
    .tile.full:has(.tile-art.live-scene) > .tile-ctas{max-width:none;}
  }


/* ===== Shared marketing-page helpers (used by all sub-pages) ===== */
.fam-hero{text-align:center;}
.fam-hero .lead{max-width:660px;margin:1.1rem auto 0;}
.hero-ctas{display:flex;gap:0.7rem;justify-content:center;flex-wrap:wrap;margin-top:1.6rem;}
.btn-primary{background:var(--gold);color:var(--navy-deep);padding:0.8rem 1.5rem;border-radius:999px;font-weight:700;font-size:1rem;box-shadow:0 4px 14px rgba(230,184,66,0.25);transition:transform .15s,box-shadow .15s;}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(230,184,66,0.35);}
.btn-ghost{color:var(--white);border:1px solid var(--rule-strong);padding:0.8rem 1.4rem;border-radius:999px;font-weight:600;font-size:1rem;transition:background .15s;}
.btn-ghost:hover{background:var(--hover-tint);}
.value-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem;}
.value-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:1.3rem 1.4rem;}
.value-card .vi{font-size:1.6rem;}
.value-card h4{margin:0.6rem 0 0.35rem;font-size:1.05rem;}
.value-card p{color:var(--text-muted);font-size:0.92rem;line-height:1.5;}
.flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:1.2rem;}
.flow-step{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:1.4rem;position:relative;}
.flow-step .num{width:34px;height:34px;border-radius:50%;background:var(--gold-tint);color:var(--gold);border:1px solid rgba(230,184,66,0.35);display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:800;}
.flow-step h4{margin:0.8rem 0 0.4rem;font-size:1.1rem;}
.flow-step p{color:var(--text-muted);font-size:0.93rem;line-height:1.55;}
.acct-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:1rem;}
.acct-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:1.4rem;display:flex;flex-direction:column;gap:0.5rem;transition:transform .15s,border-color .15s;}
.acct-card:hover{transform:translateY(-3px);border-color:var(--rule-strong);}
.acct-card img{width:52px;height:52px;border-radius:12px;object-fit:cover;object-position:top;}
.acct-card h4{font-size:1.1rem;}
.acct-card p{color:var(--text-muted);font-size:0.9rem;line-height:1.5;flex:1;}
.acct-card .go{color:var(--gold);font-weight:700;font-size:0.9rem;}
.safety-strip{background:linear-gradient(135deg,var(--navy-soft),var(--navy-up));border:1px solid var(--rule);border-radius:var(--radius-tile);padding:2rem;display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;justify-content:space-between;}
.st-badges{display:flex;gap:0.6rem;flex-wrap:wrap;}
.st-badge{background:rgba(255,255,255,0.05);border:1px solid var(--rule);border-radius:999px;padding:0.5rem 0.9rem;font-size:0.88rem;color:var(--mist);}
.faq-list{display:grid;gap:0.7rem;margin-top:1rem;}
.faq-item{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:0;overflow:hidden;}
.faq-item summary{cursor:pointer;list-style:none;padding:1.1rem 1.3rem;font-family:'Sora',sans-serif;font-weight:700;font-size:1.02rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';color:var(--gold);font-size:1.4rem;font-weight:400;transition:transform .2s;}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item .faq-a{padding:0 1.3rem 1.2rem;color:var(--text-muted);line-height:1.6;}
.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-top:1rem;}
.feat{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:1.4rem;}
.feat .fi{font-size:1.5rem;}
.feat h4{margin:0.6rem 0 0.4rem;font-size:1.05rem;}
.feat p{color:var(--text-muted);font-size:0.92rem;line-height:1.55;}
.net-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0.8rem;margin-top:1.2rem;}
.net-tile{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:1.1rem;text-align:center;}
.net-tile .ni{width:52px;height:52px;margin:0 auto;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,0.18);}
.net-tile .ni svg{width:30px;height:30px;display:block;}
.net-tile .nn{display:block;margin-top:0.4rem;font-weight:700;font-size:0.95rem;}
.net-tile .n