/* Nurovo — tablet & phone adaptations. Desktop (>1024px) is untouched. */

@media (max-width: 1024px) {
  html, body { overflow-x: clip; }

  /* Nav: compact bar + full-screen menu */
  [data-m-burger] { display: inline-flex !important; }
  [data-m-hide] { display: none !important; }
  [style*="grid-template-columns: minmax(0px, 1fr) auto minmax(0px, 1fr)"] { grid-template-columns: minmax(0, 1fr) auto !important; }

  /* Hero: centre on the visible viewport (mobile URL bars) */
  [data-hero-stage] { height: 100svh !important; }

  /* Two-column layouts stack */
  [style*="grid-template-columns: 736fr 504fr"],
  [style*="grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.1fr)"],
  [style*="grid-template-columns: minmax(0px, 0.8fr) minmax(0px, 1.5fr)"],
  [style*="grid-template-columns: minmax(0px, 335fr) minmax(0px, 350fr)"],
  [style*="grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr)"],
  [style*="grid-template-columns: minmax(0px, 0.5fr) minmax(0px, 1fr)"],
  [style*="grid-template-columns: minmax(150px, auto) minmax(0px, 1fr)"],
  [style*="grid-template-columns: repeat(5, minmax(0px, 1fr))"],
  [style*="grid-template-columns: repeat(7, minmax(0px, 1fr))"],
  [style*="grid-template-columns: minmax(0px, auto) minmax(0px, 1fr)"],
  [style*="grid-template-columns: auto minmax(0px, 1fr)"] {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  [data-rt-media] { order: 0 !important; }
  [data-m-stackrow] { flex-direction: column !important; flex-wrap: wrap !important; align-items: stretch !important; }
  [data-m-donut] { width: min(100%, 460px) !important; order: 0 !important; margin: 0 auto !important; }
  [data-m-stackrow] > * { max-width: 100% !important; }
  [data-study-card], [data-flip-card], [data-cards] > * { transform: none !important; backface-visibility: visible !important; }

  /* Scroll-driven card spreads → simple stacked cards */
  [data-m-track] { height: auto !important; margin-top: 0 !important; }
  [data-m-sticky] { position: relative !important; height: auto !important; overflow: visible !important; padding-bottom: 40px !important; }
  [data-m-sticky] > :has(> [data-card-bar]), :has(> [data-stmt-bar]) { display: none !important; }
  [style*="aspect-ratio: 120 / 130"] { min-height: 0 !important; transform: none !important; }
  [data-m-stage] { position: relative !important; height: auto !important; transform: none !important; perspective: none !important; display: flex !important; flex-direction: column !important; gap: 16px !important; padding: 0 20px !important; box-sizing: border-box !important; }
  [data-m-card] { position: relative !important; left: auto !important; top: auto !important; width: 100% !important; max-width: 560px !important; margin: 0 auto !important; height: auto !important; min-height: 280px !important; transform: none !important; opacity: 1 !important; filter: none !important; container-type: inline-size !important; }
  [data-m-stage] [data-st-cue] { display: none !important; }
  [data-st-copy], [data-st-desc], [data-st-more], [data-ip-copy], [data-ip-desc], [data-seg-copy], [data-seg-desc], [data-mt] { opacity: 1 !important; transform: none !important; max-height: none !important; }
  [data-st-media], [data-st-emblem] { opacity: 0.12 !important; }

  /* Team grids */
  [data-member-card] { flex: 0 0 calc(50% - 8px) !important; max-width: calc(50% - 8px) !important; }

  /* Simulation: no demo on touch devices — non-clickable desktop note */
  #sim { display: none !important; }
  [data-m-only] { display: block !important; }
  [data-m-only-flex] { display: flex !important; }
  [data-m-demo-btn] { display: none !important; }

  /* Compact vertical timelines (How It Works + Route to Market) */
  [data-m-tl-lead], [data-m-tl-arrows], [data-m-tl-line] { display: none !important; }
  [data-m-tl] { padding-top: 32px !important; }
  [data-m-tl-grid] { display: flex !important; flex-direction: column !important; gap: 22px !important; min-height: 0 !important; padding: 0 0 0 28px !important; margin: 0 !important; }
  [data-m-tl-grid]::before { content: ''; position: absolute; left: 5px; top: 9px; bottom: 9px; width: 2px; border-radius: 2px; background: #E4E4E4; }
  [data-m-tl-grid]::after { content: ''; position: absolute; left: 5px; top: 9px; width: 2px; border-radius: 2px; height: calc((100% - 18px) * var(--m-fill, 0)); background: #2C55C4; }
  [data-m-tl-item] { padding-right: 0 !important; z-index: 1; }
  [data-m-tl-item] > span:first-child { left: -28px !important; top: 3px !important; width: 12px !important; height: 12px !important; margin: 0 !important; z-index: 2; }
  [data-m-tl-item] > div { padding-top: 0 !important; }
  [data-m-tl-item] > div > span:first-child { font-size: 16px !important; font-weight: 500 !important; line-height: 1.25 !important; color: #101010 !important; }
  [data-m-tl-item] > div > span:last-child { max-height: none !important; opacity: 1 !important; filter: none !important; transform: none !important; padding-top: 5px !important; font-size: 13.5px !important; color: #55555E !important; }

  /* Tablet logo rail: slightly smaller */
  [data-m-logos] { zoom: 0.8; }

  /* Recognition: swipeable award + press rows */
  #recognition, #press { margin-left: 10px !important; margin-right: 10px !important; padding-left: 20px !important; padding-right: 20px !important; }
  [data-award-row], #press > div:last-child { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 14px !important; overflow: visible !important; margin-left: 0 !important; margin-right: 0 !important; padding: 0 !important; }
  [data-award-row] > a, #press > div:last-child > a { flex: none !important; width: auto !important; min-width: 0 !important; max-width: none !important; min-height: 0 !important; height: auto !important; transform: none !important; box-sizing: border-box !important; }
  [data-award-row] > a > div:last-child { max-height: none !important; opacity: 1 !important; }
  #press a h2 { font-size: 16px !important; line-height: 1.2 !important; margin-top: 12px !important; max-width: none !important; }

  /* Contact form fits its card */
  [data-m-contact] { padding-left: 24px !important; padding-right: 24px !important; }
  [data-m-contact] form [style*="minmax(240px"] { grid-template-columns: minmax(0, 1fr) !important; }
  [data-m-contact] input, [data-m-contact] select, [data-m-contact] textarea, [data-m-contact] button { width: 100% !important; min-width: 0 !important; max-width: 100% !important; box-sizing: border-box !important; }
  [data-m-contact] label, [data-m-contact] label > span { min-width: 0 !important; max-width: 100% !important; }

  /* Footer: shared two-column grid */
  [data-m-footwrap] { width: 88% !important; }
  [data-m-footcols] { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; column-gap: 24px !important; row-gap: 40px !important; justify-content: stretch !important; }
  [data-m-footcols] > * { justify-self: start !important; align-items: flex-start !important; text-align: left !important; }
  [data-m-footlegal] { grid-template-columns: minmax(0, 1fr) !important; row-gap: 18px !important; }

  /* Cards: How It Works challenge + Hardware/Software (IP-card proportions) */
  [data-study-card], [data-flip-card] { height: auto !important; min-height: 0 !important; padding: 18px 20px 20px !important; border-radius: 22px !important; }
  [data-study-card] > div:first-child svg, [data-flip-card] > div:first-child svg { width: 30px !important; height: 30px !important; }
  [data-study-card] [data-study-head] { margin-top: 4px !important; font-size: 24px !important; white-space: normal !important; transform: none !important; }
  [data-flip-card] h3 { margin: 4px 0 0 !important; font-size: 25px !important; max-width: none !important; }
  [data-study-card] > div:nth-child(3), [data-study-card] > div:nth-child(4), [data-flip-card] > div:nth-child(3), [data-flip-card] > div:nth-child(4) { display: none !important; }
  [data-study-card] > div:nth-child(5), [data-flip-card] > div:nth-child(5) { max-height: none !important; opacity: 1 !important; margin-top: 12px !important; gap: 8px !important; transform: none !important; }
  [data-study-card] > div:nth-child(5) span, [data-flip-card] > div:nth-child(5) span { font-size: 14px !important; line-height: 1.5 !important; }

  /* Market: Entry Point → Enterprise cards a touch tighter */
  [data-m-card]:has([data-seg-copy]) { min-height: 0 !important; }
  [data-seg-copy] { margin-top: 14px !important; gap: 8px !important; }
  [data-seg-desc] { font-size: 14px !important; line-height: 1.55 !important; }
  [data-m-card]:has([data-seg-copy]) > div:first-child svg { width: 30px !important; height: 30px !important; }
  [data-m-card]:has([data-seg-copy]) > div:nth-child(3) { flex: 0 0 14px !important; min-height: 0 !important; }
  [data-m-card]:has([data-seg-copy]) > div:nth-child(4) span { font-size: 32px !important; }
  /* Research Studies: more air, plain white cards */
  #studies [data-m-stage] { gap: 44px !important; padding-top: 56px !important; }
  #studies [data-st-media], #studies [data-st-emblem] { display: none !important; }
  #studies [data-m-card] { background: #FFFFFF !important; background-image: none !important; }

  /* Hardware & Software: larger section titles, compact cards */
  [style*="font-size: clamp(46px, 5.4vw, 80px)"] { font-size: clamp(46px, 12.5vw, 60px) !important; }
  [data-flip-card] { padding: 16px 18px 18px !important; border-radius: 22px !important; }
  [data-flip-card] > div:first-child svg { width: 24px !important; height: 24px !important; }
  [data-flip-card] h3 { font-size: 20px !important; line-height: 1.2 !important; }
  [data-flip-card] > div:nth-child(5) { margin-top: 10px !important; gap: 6px !important; }
  [data-flip-card] > div:nth-child(5) span { font-size: 13px !important; line-height: 1.5 !important; }

  /* IP + Entry Point cards: flat, How It Works-style elevation */
  [data-m-card]:has([data-ip-copy]), [data-m-card]:has([data-seg-copy]) { box-shadow: none !important; border-color: #F4F4F5 !important; border-radius: 22px !important; min-height: 0 !important; padding: 18px 20px 20px !important; }
  [data-m-card]:has([data-ip-copy]) > div:first-child svg { width: 30px !important; height: 30px !important; }
  [data-m-card]:has([data-ip-copy]) [style*="font-size: clamp(38px"], [data-m-card]:has([data-ip-copy]) > div:last-child span { font-size: 32px !important; }
  [data-ip-copy] { margin-top: 14px !important; gap: 8px !important; }
  [data-ip-desc] { font-size: 14px !important; line-height: 1.55 !important; }

  /* About: no advisor arrows on touch — swipe only */
  #advisors > div:first-child > div:last-child:has(> button[aria-label="Next advisors"]) { display: none !important; }
  #adv-rail { margin-top: 32px !important; }

  /* Mobile nav: smaller floating bar */
  [data-m-navwrap] { padding: 10px 22px !important; }
  [data-m-navbar] { height: 46px !important; padding: 0 6px 0 16px !important; gap: 12px !important; }
  [data-m-logo] { height: 17px !important; }
  [data-m-burger] { width: 36px !important; height: 36px !important; }
  [data-m-burger] svg { width: 16px !important; height: 16px !important; }

  /* About: note content column centred */
  #note { padding-left: 24px !important; padding-right: 24px !important; }
  #note > div { max-width: 620px !important; margin-left: auto !important; margin-right: auto !important; }
  #note > div > div[aria-hidden="true"] { left: -8px !important; }
}

@media (max-width: 640px) {
  /* Content gutters */
  [style*="max-width: calc(1500px"], [style*="max-width: calc(1440px"], [style*="max-width: calc(1548px"],
  [style*="max-width: 1440px"], [style*="max-width: 1560px"], [style*="max-width: 1720px"], [style*="max-width: 1180px"] {
    padding-left: 20px !important; padding-right: 20px !important;
  }
  [style*="margin: 24px 24px"], [style*="margin: -190px 24px"] { margin-left: 10px !important; margin-right: 10px !important; }

  h1 { font-size: clamp(40px, 11vw, 56px) !important; }
  h2 { font-size: clamp(34px, 9.4vw, 46px) !important; }

  [data-member-card] { flex: 0 0 calc(50% - 6px) !important; max-width: calc(50% - 6px) !important; border-radius: 18px !important; }
  :has(> [data-member-card]) { gap: 12px !important; }
  section:has([data-member-card]) { padding-left: 14px !important; padding-right: 14px !important; }
  div:has(> section [data-member-card]) { margin-left: 10px !important; margin-right: 10px !important; }
  [data-member-card] > div:last-child { padding: 10px 10px 10px !important; gap: 6px !important; }
  [data-member-card] > div:last-child > div { gap: 3px !important; }
  [data-member-card] > div:last-child > div > span:first-child { font-size: 12px !important; }
  [data-member-card] > div:last-child > div > span:last-child { font-size: 9.5px !important; letter-spacing: 0.03em !important; }
  [data-member-card] > div:last-child > span, [data-member-card] > div:last-child > a { width: 26px !important; height: 26px !important; flex: 0 0 26px !important; }
  [data-member-card] > div:last-child > span svg, [data-member-card] > div:last-child > a svg { width: 11px !important; height: 11px !important; }
  [data-award-row], #press > div:last-child { gap: 10px !important; }
  #recognition, #press { padding-left: 10px !important; padding-right: 10px !important; }
  #press > div:last-child > a { padding: 10px 10px 12px !important; border-radius: 16px !important; }
  #press > div:last-child > a > div:first-child > span { padding: 4px 8px !important; font-size: 9.5px !important; white-space: nowrap !important; max-width: calc(100% - 26px) !important; overflow: hidden !important; text-overflow: ellipsis !important; }
  #press > div:last-child > a > div:first-child > svg { width: 20px !important; height: 20px !important; flex: 0 0 auto !important; }
  #press a h2 { font-size: 13px !important; line-height: 1.22 !important; margin-top: 10px !important; letter-spacing: -0.01em !important; }
  [data-award-row] > a { padding: 12px 12px 14px !important; border-radius: 16px !important; }
  [data-award-row] > a * { max-width: 100% !important; }
  [data-award-row] > a > div:first-child { flex-wrap: wrap !important; gap: 6px !important; font-size: 9.5px !important; }
  [data-award-row] > a > div:first-child * { font-size: 9.5px !important; white-space: normal !important; }
  [data-award-row] > a > div:nth-child(2) { gap: 6px !important; margin-top: 10px !important; }
  [data-award-row] > a > div:nth-child(2) > div { font-size: 14px !important; line-height: 1.25 !important; }
  [data-award-row] > a > div:nth-child(2) svg { width: 16px !important; height: 16px !important; flex: 0 0 auto !important; }
  [data-award-row] > a > div:last-child, [data-award-row] > a > div:last-child * { font-size: 11.5px !important; line-height: 1.5 !important; }
  [data-award-row] > a > div:last-child { margin-top: 8px !important; }

  /* Logo rail + latest news */
  [data-m-logos] { zoom: 0.6; }
  [data-m-logos] > div { gap: 48px !important; padding-right: 48px !important; }

  /* Research Studies: compact UT / Yale cards */
  [data-m-card] [data-st-copy] { padding: 20px 18px 0 !important; gap: 8px !important; }
  [data-m-card] [data-st-copy] [role="heading"] { font-size: 24px !important; }
  [data-m-card] [data-st-copy] + div { flex: 0 0 14px !important; }
  [data-m-card] [data-st-desc] { padding: 0 18px 20px !important; gap: 10px !important; }
  [data-m-card] [data-al="name"] { font-size: 16px !important; }
  [data-m-card] [data-al="over"] { font-size: 13.5px !important; line-height: 1.5 !important; }
  [data-m-card] [data-st-more] { gap: 8px !important; margin-top: 0 !important; }
  [data-m-card] [data-st-more] > div:first-child { font-size: 10px !important; margin-top: 4px !important; }
  [data-m-card] [data-st-more] > div:nth-child(2) { gap: 8px !important; padding-left: 12px !important; }
  [data-m-card] [data-st-more] > div:last-child { margin-top: 4px !important; padding-top: 10px !important; gap: 6px !important; }
  [data-m-card] [data-st-more] > div:last-child > span { font-size: 10px !important; padding: 4px 9px !important; }
  #real-time > div { padding-left: 10px !important; padding-right: 10px !important; }
  [data-m-card] [data-st-more] p { font-size: 12.5px !important; line-height: 1.5 !important; }
  [data-m-card]:has([data-st-copy]) { min-height: 0 !important; border-radius: 22px !important; }

  /* Scientific Portfolio: number + arrow on one row, title full width */
  #papers { padding: 48px 16px !important; }
  [data-paper-row] { grid-template-columns: minmax(0, 1fr) auto !important; gap: 10px 12px !important; padding: 16px 16px 18px !important; border-radius: 20px !important; }
  [data-paper-row] > span:first-child { grid-column: 1; grid-row: 1; font-size: 24px !important; }
  [data-paper-row] > span:nth-child(2) { grid-column: 1 / -1; grid-row: 2; gap: 8px !important; }
  [data-paper-row] > a { grid-column: 2; grid-row: 1; width: 38px !important; height: 38px !important; margin: 0 !important; }
  [data-paper-row] > span:nth-child(3) { grid-column: 2; grid-row: 1; white-space: nowrap !important; align-self: center; }
  [data-paper-title] { font-size: 16px !important; line-height: 1.35 !important; }

  /* About: compact advisor rail */
  [data-adv-track] { gap: 14px !important; padding: 0 20px !important; }
  [data-adv] { width: 132px !important; min-height: 0 !important; }
  [data-adv] [data-adv-photo] { border-radius: 18px !important; }
  [data-adv] > div { padding: 12px 2px 2px !important; gap: 6px !important; }
  [data-adv] > div > span:first-child > span { font-size: 12.5px !important; }
  [data-adv] > div > span:first-child > a { width: 24px !important; height: 24px !important; }
  [data-adv] > div > span:nth-child(2) { font-size: 10px !important; }
  [data-adv] > div > span:nth-child(3) { font-size: 10.5px !important; line-height: 1.45 !important; }
  [data-adv] > div { padding: 10px 2px 2px !important; gap: 5px !important; }

  /* Contact: full-width card */
  [data-m-contact] { padding: 20px 0 64px !important; margin-left: -10px !important; margin-right: -10px !important; }
  [data-m-contact] > div { padding-left: 0 !important; padding-right: 0 !important; }
  [data-m-contact] button { justify-content: center !important; }
  [data-m-contact-card] { padding: 22px 16px !important; border-radius: 24px !important; }

  [style*="grid-template-columns: 1fr auto"] { grid-template-columns: minmax(0, 1fr) !important; row-gap: 16px !important; }
  /* Homepage: purpose panels stack vertically */
  [data-m-purpose] { height: 100svh !important; padding: 0 10px 10px !important; }
  [data-m-purpose] > div { width: 100% !important; height: 94% !important; grid-template-rows: minmax(0, 1fr) auto !important; }
  [data-m-purpose] > div > div:first-child { flex-direction: column !important; }
  [data-m-purpose] > div > div:first-child > div { min-width: 0 !important; min-height: 52px !important; transition: flex-grow 900ms cubic-bezier(.22,.9,.24,1) !important; }
  [data-m-purpose] > div > div:first-child > div > div:last-child { padding: 16px 18px !important; }
  [data-m-purpose] [style*="font-size: min(3.85vw, 53px)"] { font-size: 24px !important; }
  [data-m-purpose] > div > div:last-child { padding: 14px 18px 18px !important; }
  [data-m-purpose] p { font-size: 13px !important; line-height: 1.6 !important; }
  /* Homepage headings sized by vw */
  [style*="font-size: min(4vw, 64px)"] { font-size: 30px !important; }
  [style*="font-size: min(4.9vw, 64px)"] { font-size: 32px !important; }
  /* About: founders 2×2, expanded card stacks text */
  [data-fcard] [data-fbase] { padding: 18px 20px 20px !important; gap: 6px !important; }
  [data-fcard] [data-fbase] > span:first-child { font-size: 22px !important; }
  [data-fcard] [data-fbase] > span:nth-child(2) { font-size: 11.5px !important; letter-spacing: 0.08em !important; }
  [data-fcard] [data-fbase] [data-flinks] { margin-top: 4px !important; gap: 10px !important; }
  [data-fcard] [data-ftop] { max-width: 100% !important; padding: 22px 20px !important; }
  [data-fcard] [data-ftop] > span:first-child { font-size: 40px !important; }
  [data-fcard] [data-ftop] > span:nth-child(2) { font-size: 12px !important; }
  [data-fcard] [data-fbio] { width: 100% !important; box-sizing: border-box !important; padding: 0 20px 20px !important; align-items: stretch !important; top: 190px !important; justify-content: flex-end !important; }
  [data-fcard] [data-fbio] p { overflow-y: auto !important; min-height: 0 !important; flex: 0 1 auto !important; }
  [data-fcard] [data-fbio] p { font-size: 14px !important; line-height: 1.55 !important; }
  [data-fcue] { font-size: 10px !important; }
  [data-fcard] [data-fbio] p { scrollbar-width: none; }
  [data-fcard] [data-fbio] p::-webkit-scrollbar { display: none; }
  [data-fnav] [aria-label="Previous founder"], [data-fnav] [aria-label="Next founder"] { top: auto !important; bottom: 22px !important; transform: none !important; }
  [data-fnav] [aria-label="Previous founder"] { left: calc(50% - 46px) !important; }
  [data-fnav] [aria-label="Next founder"] { left: calc(50% + 8px) !important; right: auto !important; }
  #founders { padding-left: 0 !important; padding-right: 0 !important; }
  #advisors > div:first-child { flex-wrap: wrap !important; gap: 20px !important; }
  #advisors h2 { max-width: none !important; }
  /* Heavier desktop-only flourishes */
  [data-parallax] { transform: none !important; }
}

/* Touch devices: no sticky hover states */
@media (hover: none) {
  [data-fig-btn]:hover [data-fig-icon] { background: rgba(255,255,255,0.92) !important; color: #2C55C4 !important; box-shadow: none !important; }
}
