/* Aurmada responsive layer — media-query overrides for the inline-styled pages.
   The DC/React runtime serializes inline styles as "prop: value" (space after the
   colon), so every value-bearing selector below matches BOTH the spaced and
   unspaced forms to stay robust. */

/* hamburger icon (hidden on desktop) */
.au-navburger{ display:none; flex-direction:column; gap:5px; background:none; border:none; padding:6px; cursor:pointer; }
.au-navburger span{ display:block; width:22px; height:2px; background:#f5f5f7; border-radius:2px; transition:transform .25s ease, opacity .25s ease; }
html[data-nav-open] .au-navburger span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
html[data-nav-open] .au-navburger span:nth-child(2){ opacity:0; }
html[data-nav-open] .au-navburger span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* collapse every multi-column grid on tablet & down */
@media (max-width: 900px){
  [style*="grid-template-columns"]{ grid-template-columns:1fr !important; }
}

@media (max-width: 900px){
  /* nav: swap desktop links for the hamburger */
  .au-navlinks{ display:none !important; }
  .au-navburger{ display:flex !important; }

  /* headings */
  [style*="font-size: 104px"],[style*="font-size:104px"]{ font-size:42px !important; }
  [style*="font-size: 92px"],[style*="font-size:92px"]{ font-size:40px !important; }
  [style*="font-size: 84px"],[style*="font-size:84px"]{ font-size:38px !important; }
  [style*="font-size: 80px"],[style*="font-size:80px"]{ font-size:38px !important; }
  [style*="font-size: 72px"],[style*="font-size:72px"]{ font-size:36px !important; }
  [style*="font-size: 66px"],[style*="font-size:66px"]{ font-size:34px !important; }
  [style*="font-size: 60px"],[style*="font-size:60px"]{ font-size:33px !important; }
  [style*="font-size: 56px"],[style*="font-size:56px"]{ font-size:31px !important; }
  [style*="font-size: 54px"],[style*="font-size:54px"]{ font-size:30px !important; }
  [style*="font-size: 52px"],[style*="font-size:52px"]{ font-size:30px !important; }
  [style*="font-size: 50px"],[style*="font-size:50px"]{ font-size:29px !important; }
  [style*="font-size: 48px"],[style*="font-size:48px"]{ font-size:28px !important; }
  [style*="font-size: 46px"],[style*="font-size:46px"]{ font-size:27px !important; }
  [style*="font-size: 44px"],[style*="font-size:44px"]{ font-size:27px !important; }
  [style*="font-size: 42px"],[style*="font-size:42px"]{ font-size:26px !important; }

  /* oversized subheads + lead paragraphs */
  [style*="font-size: 32px"],[style*="font-size:32px"]{ font-size:22px !important; }
  [style*="font-size: 30px"],[style*="font-size:30px"]{ font-size:21px !important; }
  [style*="font-size: 26px"],[style*="font-size:26px"]{ font-size:19px !important; }
  [style*="font-size: 25px"],[style*="font-size:25px"]{ font-size:18px !important; }
  [style*="font-size: 24px"],[style*="font-size:24px"]{ font-size:18px !important; }
  [style*="font-size: 23px"],[style*="font-size:23px"]{ font-size:17px !important; }
  [style*="font-size: 22px"],[style*="font-size:22px"]{ font-size:17px !important; }
  [style*="font-size: 21px"],[style*="font-size:21px"]{ font-size:16px !important; }
  [style*="font-size: 20px"],[style*="font-size:20px"]{ font-size:16px !important; }

  /* tame giant paddings */
  [style*="padding: 64px"],[style*="padding:64px"]{ padding:32px !important; }
  [style*="padding: 90px"],[style*="padding:90px"]{ padding:40px 22px !important; }
  [style*="padding: 84px"],[style*="padding:84px"]{ padding:36px 22px !important; }
  [style*="padding: 80px"],[style*="padding:80px"]{ padding:38px 22px !important; }
  [style*="padding: 200px"],[style*="padding:200px"]{ padding:80px 22px !important; }
  [style*="padding: 180px"],[style*="padding:180px"]{ padding:70px 22px !important; }

  /* uniform, comfortable side gutters for every section */
  section[style]{ padding-left:20px !important; padding-right:20px !important; }

  /* keep bottom-rounded hero/product tiles inside the viewport.
     Match BOTH the runtime form ("30px 30px 0px 0px") and the flattened/source
     form ("30px 30px 0 0") by stopping the substring at the first "0". */
  [style*="border-radius: 30px 30px 0"],[style*="border-radius:30px 30px 0"],
  [style*="border-radius: 32px 32px 0"],[style*="border-radius:32px 32px 0"],
  [style*="border-radius: 28px 28px 0"],[style*="border-radius:28px 28px 0"],
  [style*="border-radius: 24px 24px 0"],[style*="border-radius:24px 24px 0"]{ max-width:90vw !important; height:260px !important; }

  /* product carousels: full-height media tiles are too tall on phones */
  [style*="height: 598px"],[style*="height:598px"]{ height:440px !important; }
  [style*="height: 552px"],[style*="height:552px"]{ height:420px !important; }

  /* trim very tall fixed hero sections */
  [style*="height: 1120px"],[style*="height:1120px"]{ height:820px !important; }
  [style*="height: 1040px"],[style*="height:1040px"]{ height:800px !important; }
  [style*="height: 980px"],[style*="height:980px"]{ height:760px !important; }
  [style*="height: 920px"],[style*="height:920px"]{ height:720px !important; }

  /* product-page image panel */
  [style*="height: 600px"],[style*="height:600px"]{ height:360px !important; }

  /* stack the product-page detail split cleanly */
  [style*="gap: 56px"],[style*="gap:56px"]{ gap:28px !important; }
  [style*="gap: 72px"],[style*="gap:72px"]{ gap:32px !important; }
}

@media (max-width: 900px){
  /* sensor-node callouts: too small to read over the photo on phones */
  [data-node-label]{ display:none !important; }
  /* Shield Pro hero HUD callouts overlap the centred title on phones */
  [data-hud]{ display:none !important; }
}

@media (max-width: 900px){
  /* text-over-media hero tiles: grow to fit the copy instead of clipping it
     (aspect-ratio forces them ~198px tall on a phone, cutting 47-84px of text) */
  [style*="aspect-ratio: 848 / 480"],[style*="aspect-ratio:848/480"],[style*="aspect-ratio: 848/480"]{
    aspect-ratio:auto !important; min-height:380px !important;
  }
}

/* product carousels: hide scrollbars on the snap track */
[data-carousel]{ scrollbar-width:none; -ms-overflow-style:none; }
[data-carousel]::-webkit-scrollbar{ display:none; }

/* About timeline: hide the spine rail and left-align dates when entries stack */
@media (max-width: 900px){
  .au-tl-rail{ display:none !important; }
  .au-tl-date{ text-align:left !important; padding:0 0 10px !important; }
}

@media (max-width: 520px){
  [style*="font-size: 104px"],[style*="font-size:104px"],
  [style*="font-size: 92px"],[style*="font-size:92px"],
  [style*="font-size: 84px"],[style*="font-size:84px"],
  [style*="font-size: 80px"],[style*="font-size:80px"]{ font-size:33px !important; }
  [style*="font-size: 72px"],[style*="font-size:72px"],
  [style*="font-size: 66px"],[style*="font-size:66px"],
  [style*="font-size: 60px"],[style*="font-size:60px"]{ font-size:29px !important; }
  [style*="border-radius: 30px 30px 0"],[style*="border-radius:30px 30px 0"],
  [style*="border-radius: 32px 32px 0"],[style*="border-radius:32px 32px 0"],
  [style*="border-radius: 28px 28px 0"],[style*="border-radius:28px 28px 0"],
  [style*="border-radius: 24px 24px 0"],[style*="border-radius:24px 24px 0"]{ height:210px !important; }
}

/* Partners & Community: strict 2-column grid on phones — centred flex-wrap rows
   left-align inconsistently when row widths differ (CES row wider than the rest) */
@media (max-width: 900px){
  [data-partners]{ display:grid !important; grid-template-columns:1fr 1fr !important; justify-items:center; align-items:center; column-gap:20px !important; row-gap:44px !important; }
  [data-partners] img{ height:auto !important; width:auto !important; max-height:52px; max-width:100%; }
  /* CES & Conscious Venture Lab logos are bolder/tighter-cropped, so cap them smaller to read uniform */
  [data-partners] img[src*="logo-cvl"]{ max-height:44px; }
  [data-partners] img[src*="logo-ces"]{ max-height:40px; }
  [data-partners] img:last-child{ grid-column:1 / -1; }
}

/* tech-spec slides on phones: keep the 2×2 stat grid, tighten type, drop the side photo */
@media (max-width: 900px){
  [data-slide] [style*="grid-template-columns"]{ grid-template-columns:repeat(2, minmax(0,1fr)) !important; gap:18px 20px !important; }
  [data-slide] [style*="font-size: 32px"],[data-slide] [style*="font-size:32px"]{ font-size:19px !important; }
  [data-slide] [style*="font-size: 13.5px"],[data-slide] [style*="font-size:13.5px"]{ font-size:11.5px !important; }
  [data-slide] img[style*="width: 46%"],[data-slide] img[style*="width:46%"]{ display:none !important; }
  [data-slide] [style*="padding: 38px 44px"],[data-slide] [style*="padding:38px 44px"]{ padding:22px 20px 48px !important; }
}

/* scenarios slide on phones: keep all four panels visible; labels get too cramped */
@media (max-width: 900px){
  [data-slide] img[src$="flux-vest-scenarios.png"]{ object-fit:contain !important; }
  [data-slide] img[src$="flux-vest-scenarios.png"] ~ div:last-child{ display:none !important; }
}

/* footer links: enlarge tap targets on phones (bare text lines are ~18px tall —
   below the comfortable ~40px touch minimum). Padding overlaps the flex gap so the
   column doesn't grow much taller. */
@media (max-width: 900px){
  footer a{ display:inline-block; padding:9px 0; }
  footer [style*="flex-direction:column"][style*="gap:12px"]{ gap:0 !important; }
}

/* Layer 1 Pro hero: the desktop [data-hud] annotations are absolute overlays hidden
   on phones; surface the same four capabilities as a compact grid under the hero copy. */
@media (max-width: 900px){
  [data-hud-mobile]{ display:grid !important; }
}
