/* RC62 Head-First Redesign — mobile: header then page function */
@media (max-width:768px){
.nslSprintHeader{position:relative!important;margin-bottom:0!important}
main,.dash-wrap,.cartPremium{padding-top:8px!important;margin-top:0!important}
.auth-shell{padding-top:8px!important;gap:10px!important}.auth-story{display:none!important}
.cartHero,.accountHero{padding:10px 14px!important;margin:0 0 8px!important;min-height:0!important}
.cartHero p,.accountHero p{margin-bottom:4px!important}
#sprint1CodNotice{margin:6px 12px!important;padding:8px 12px!important}.top{display:none!important}.shell{margin-top:6px!important;padding-top:8px!important}
#controlCenter,#aiCommandCenter{display:none!important}.hero{margin-top:6px!important;padding-top:10px!important}
}

/* RC62 Head-First v2 — remove decorative blockers before the page task */
@media (max-width:768px){
  /* Shop/cart/account: function first, decoration later/hidden */
  .cartVisual,.accountVisual{display:none!important}
  .cartHero,.accountHero{display:block!important}
  .cartIntro{padding:8px 10px!important;border-radius:16px!important}
  .cartIntro h1,.dash-title{margin:4px 0 6px!important;font-size:30px!important;line-height:1.08!important}
  .cartLead,.dash-intro{font-size:14px!important;line-height:1.35!important;margin:0 0 6px!important}
  .cartPanel{margin-top:6px!important;padding:14px!important}
  .cartTrust{margin-top:10px!important}

  /* Public pages with large decorative hero media */
  main>section[style*="margin:28px auto"]{display:none!important}
  .gift-hero{min-height:0!important;background:none!important;display:block!important;padding:8px 0!important}
  .gift-copy{width:auto!important;margin:0!important;padding:12px!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .platform-hero,.fg-hero{min-height:0!important;padding-top:8px!important;padding-bottom:8px!important}
  .platform-hero-grid,.fg-hero-grid{grid-template-columns:1fr!important;gap:8px!important}
  .platform-visual,.fg-visual{display:none!important}

  /* Main page heading compact so the action appears in first viewport */
  main h1{margin-top:4px!important;margin-bottom:8px!important;line-height:1.08!important}
  .fp-title{font-size:34px!important;line-height:1.08!important;margin:6px 0 8px!important}
  .fp-sub{margin:0 0 10px!important;line-height:1.4!important}
}

/* RC62 Head-First v3 — strict first-viewport task priority */
@media (max-width:768px){
  header{margin-bottom:0!important}
  .homeHero{grid-template-columns:1fr!important;min-height:0!important;padding-top:8px!important;padding-bottom:10px!important}
  .homeHeroVisual{display:none!important}
  .homeHeroCopy{padding-top:6px!important;padding-bottom:6px!important}
  .homeHeroCopy .eyebrow{margin-bottom:4px!important}
  .homeHeroCopy h1{font-size:32px!important;margin:4px 0 7px!important;line-height:1.06!important}
  .homeHeroCopy p{font-size:14px!important;line-height:1.35!important;margin:0 0 9px!important}
  .heroProof{display:none!important}
  .heroButtons{margin-top:6px!important}
  .heroButtons .primary{padding:11px 16px!important}
  .worldGateways{padding-top:18px!important}
  .gift-copy .fp-sub{max-height:3.9em;overflow:hidden!important}
  .accountHero{background:#fff!important;box-shadow:none!important}
  .dash-wrap{padding-left:12px!important;padding-right:12px!important}
  .dash-grid{margin-top:6px!important}
  .dash-card{min-height:0!important;padding:14px!important}
  .wrap{padding-top:10px!important}
  .wrap>.hero{margin-top:6px!important;padding:14px!important}
  .wrap>.hero h1{font-size:28px!important;margin:5px 0!important}
  .wrap>.hero p,.wrap>.hero .note{margin:6px 0!important}
  .fg-actions{margin-top:8px!important}
}

/* RC62 Head-First v4 — universal mobile task-first rule */
@media (max-width:768px){
  /* Keep the global header compact; no decorative block may separate it from the task. */
  .nslSprintHeader,body>header{min-height:0!important}
  main{scroll-margin-top:0!important}
  main>section:first-child{margin-top:0!important}
  main>section:first-child:not(.cartPanel):not(.pref){padding-top:8px!important}

  /* Generic large hero systems used by public/collaboration/academy pages. */
  [class*="hero" i]{min-height:0!important}
  [class*="hero" i] [class*="visual" i],
  [class*="hero" i] [class*="image" i],
  [class*="hero" i] [class*="media" i]{display:none!important}
  [class*="hero" i] [class*="copy" i]{padding-top:8px!important;padding-bottom:8px!important}
  [class*="hero" i] h1{font-size:clamp(28px,9vw,34px)!important;line-height:1.06!important;margin:4px 0 7px!important}
  [class*="hero" i] p{margin-top:4px!important;margin-bottom:8px!important;line-height:1.35!important}

  /* Forms and primary controls stay high in the first viewport. */
  form{margin-top:6px!important}
  .btn,.fp-btn,.nsl-btn,.fg-btn,button[type="submit"]{min-height:42px}

  /* Dashboards: KPI/task cards immediately after title. */
  .hero+.grid,.hero+.row,.accountHero+.dash-grid{margin-top:6px!important}
  .hero .muted{margin-bottom:6px!important}

  /* Legal/support pages remain readable but compact above the fold. */
  .wrap>.hero+.card{margin-top:10px!important}
}

/* RC62 Head-First v5 — compact mobile header itself, not only page content */
@media (max-width:768px){
  .nslSprintHeader{padding-top:4px!important;padding-bottom:4px!important}
  .nslSprintHeader .inner,.nslSprintHeader .wrap,.nslSprintHeader>div{min-height:0!important}
  .homeUtility{display:none!important}
  .homeBrandRow{min-height:56px!important;padding-top:2px!important;padding-bottom:2px!important}
  .homeBrandRow .brand img{width:auto!important;max-width:170px!important;height:48px!important;object-fit:contain!important}
  .homeNav{margin:0!important}
  .mobileMenu{min-height:40px!important;min-width:40px!important;padding:8px!important}
  .languageBar,#nslLangSwitch{transform:scale(.92);transform-origin:top right}
  .auth-side{padding:8px 12px 16px!important;place-items:start center!important}
  .auth-card{padding:18px!important;border-radius:20px!important}
  .auth-card h1{font-size:28px!important;line-height:1.08!important}
  .tabs{margin:10px 0!important}
  .field{margin:8px 0!important}
  .field input{padding:12px!important}
  .links{margin-top:10px!important}
  .role-note{margin-top:10px!important;padding:10px!important}
  .categories,.featured,.worldGateways{padding-top:16px!important}
}

/* RC62 V6 — approved visual rule: hero imagery only on Home, compact and useful */
/* Home desktop: keep the lifestyle image, but never let it dominate the viewport. */
.homeHero{min-height:0!important;grid-template-columns:minmax(390px,55%) 45%!important;align-items:stretch!important}
.homeHeroCopy{padding:34px 6% 30px 8%!important}
.homeHeroVisual{min-height:0!important;height:360px!important;background-position:center!important}
.homeHeroCopy h1{font-size:clamp(38px,3.6vw,54px)!important;margin-bottom:14px!important}
.homeHeroCopy p{font-size:15px!important;line-height:1.55!important;margin-bottom:18px!important}
.heroProof{margin-top:16px!important}

/* Decorative imagery is not allowed to push functional pages down. */
body:not(.home-page) .accountVisual,
body:not(.home-page) .auth-story{display:none!important}

/* Product is a functional page: product image/details start immediately after header. */
body.nsl-product-page main{margin:18px auto 34px!important;gap:28px!important;align-items:start!important}
body.nsl-product-page main .visual{min-height:0!important;height:420px!important;background:#fff!important;border:1px solid var(--line)!important;overflow:hidden!important;padding:0!important}
body.nsl-product-page main .visual img{width:100%;height:100%;object-fit:contain;display:block}
body.nsl-product-page main section{padding-top:10px!important}
body.nsl-product-page main h1{font-size:38px!important;line-height:1.08!important}

@media(max-width:900px){
  .homeHero{grid-template-columns:1fr!important}
  .homeHeroCopy{order:0!important;padding:18px 20px 12px!important;text-align:left!important;align-items:flex-start!important}
  .homeHeroVisual{display:block!important;order:1!important;height:170px!important;min-height:170px!important;background-position:center 42%!important}
  .homeHeroCopy h1{font-size:34px!important;margin:4px 0 8px!important}
  .homeHeroCopy p{font-size:14px!important;line-height:1.4!important;margin:0 0 10px!important}
  .heroProof{display:none!important}
  body.nsl-product-page main{grid-template-columns:1fr!important;margin:8px auto 24px!important;padding:0 14px!important;gap:14px!important}
  body.nsl-product-page main .visual{height:280px!important;border-radius:18px!important}
  body.nsl-product-page main section{padding-top:0!important}
  body.nsl-product-page main h1{font-size:30px!important;margin-bottom:8px!important}
  body.nsl-product-page .price{margin:12px 0!important}
}
