/* Qantova mobile product experience. Desktop remains defined in styles.css. */
@media (max-width: 760px) {
  :root { --mobile-gutter: 18px; }
  html { width:100%; overflow-x:clip; background:#050b10; scroll-behavior:smooth; }
  body { width:100%; min-width:320px; overflow-x:clip; background:#050b10; }
  .q-mobile-shell-placeholder { display:block; height:68px; }
  .shell { width:calc(100% - (var(--mobile-gutter) * 2)); max-width:560px; }

  /* The desktop header is replaced by the complete mobile navigation shell. */
  .cinema-offer, .cinema-nav { display:none !important; }
  .q-mobile-bar { display:flex; position:sticky; top:0; z-index:100; align-items:center; justify-content:space-between; min-height:68px; padding:0 var(--mobile-gutter); background:rgba(5,11,16,.88); border-bottom:1px solid rgba(145,181,205,.12); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); }
  .q-mobile-brand { display:inline-flex; align-items:center; gap:9px; color:#f3f7fb; text-decoration:none; font-weight:800; letter-spacing:-.04em; font-size:20px; }
  .q-mobile-brand img { width:29px; height:29px; object-fit:contain; }
  .q-mobile-actions { display:flex; align-items:center; gap:8px; }
  .q-mobile-pricing, .q-mobile-menu { display:inline-flex; align-items:center; justify-content:center; height:38px; border-radius:11px; text-decoration:none; font-size:10px; font-weight:800; letter-spacing:.02em; }
  .q-mobile-pricing { padding:0 11px; color:#061019; background:linear-gradient(135deg,#d2f7ea,#65e3bd); }
  .q-mobile-menu { width:42px; color:#ebf2f7; background:#0c1721; border:1px solid rgba(157,191,213,.24); }
  .q-mobile-menu i, .q-mobile-menu i::before, .q-mobile-menu i::after { display:block; width:16px; height:1.5px; border-radius:3px; background:currentColor; content:""; transition:transform .24s ease, opacity .24s ease; }
  .q-mobile-menu i { position:relative; }
  .q-mobile-menu i::before { position:absolute; top:-5px; }
  .q-mobile-menu i::after { position:absolute; top:5px; }
  body.q-mobile-nav-open .q-mobile-menu i { background:transparent; }
  body.q-mobile-nav-open .q-mobile-menu i::before { transform:translateY(5px) rotate(45deg); }
  body.q-mobile-nav-open .q-mobile-menu i::after { transform:translateY(-5px) rotate(-45deg); }
  .q-mobile-drawer { position:fixed; z-index:99; inset:68px 0 0; display:flex; flex-direction:column; padding:20px var(--mobile-gutter) calc(22px + env(safe-area-inset-bottom)); overflow-y:auto; visibility:hidden; opacity:0; pointer-events:none; background:linear-gradient(160deg,#091721 0%,#050b10 54%,#071018 100%); transition:opacity .22s ease, visibility .22s ease; }
  body.q-mobile-nav-open { overflow:hidden; }
  body.q-mobile-nav-open .q-mobile-drawer { visibility:visible; opacity:1; pointer-events:auto; }
  .q-mobile-drawer__intro { padding:14px 0 22px; border-bottom:1px solid rgba(145,181,205,.14); }
  .q-mobile-drawer__intro small { color:#6de6c2; font-size:9px; font-weight:800; letter-spacing:.14em; }
  .q-mobile-drawer__intro p { max-width:30ch; margin:9px 0 0; color:#b6c6d1; font-size:15px; line-height:1.45; }
  .q-mobile-drawer__groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:23px 18px; padding:24px 0; }
  .q-mobile-drawer__groups section:last-child { grid-column:1 / -1; }
  .q-mobile-drawer__groups h2 { margin:0 0 9px; color:#7693a8; font-size:9px; letter-spacing:.14em; text-transform:uppercase; }
  .q-mobile-drawer a:not(.q-mobile-drawer__cta) { display:block; padding:8px 0; color:#edf4f8; font-size:15px; text-decoration:none; }
  .q-mobile-drawer__footer { margin-top:auto; padding-top:16px; border-top:1px solid rgba(145,181,205,.14); }
  .q-mobile-drawer__cta { display:flex; align-items:center; justify-content:space-between; min-height:52px; padding:0 17px; border-radius:14px; color:#07131d; background:linear-gradient(135deg,#e3fbf2,#74e6c3); font-size:13px; font-weight:800; text-decoration:none; }

  #qantova-intro, .qantova-intro { display:none !important; }
  /* Decorative desktop geometry should never create a sideways page. */
  .page-glow, .cinema-glow, .cinema-orbit { display:none !important; }
  .cinema-hero { display:block; min-height:calc(100svh - 68px); padding:34px 0 40px; }
  .cinema-copy { max-width:none; text-align:left; }
  .cinema-kicker { justify-content:flex-start; font-size:9px; }
  .cinema-copy h1 { max-width:10.5ch; margin:15px 0 17px; font-size:clamp(43px,13vw,61px); line-height:.9; letter-spacing:-.07em; }
  .cinema-copy h1 em { display:inline; }
  .cinema-sub { max-width:34ch; margin:0; font-size:15px; line-height:1.55; }
  .cinema-actions { display:grid; grid-template-columns:1fr; gap:10px; margin-top:25px; }
  .cinema-primary, .cinema-secondary { width:100%; min-height:53px; padding:0 17px; justify-content:space-between; }
  .cinema-value { grid-template-columns:repeat(2,1fr); margin-top:22px; border-radius:16px; }
  .cinema-value > div { min-height:72px; padding:12px; border-bottom:1px solid var(--line-soft); }
  .cinema-value > div:nth-child(2n) { border-right:0; }
  .cinema-value > div:nth-last-child(-n + 2) { border-bottom:0; }
  .cinema-microproof { justify-content:flex-start; flex-wrap:wrap; line-height:1.6; }
  .cinema-stage { width:100%; height:246px; margin-top:28px; }
  .cinema-terminal { width:100%; height:246px; transform:none !important; border-radius:19px; }
  .cinema-terminal > header { height:45px; padding:0 13px; }
  .terminal-brand small, .runtime-live, .cinema-terminal > header > #clock, .cinema-sidebar, .dashboard-head-right, .cinema-bottom > div:not(:first-child) { display:none; }
  .cinema-terminal-main { height:201px; grid-template-columns:1fr; }
  .cinema-dashboard { padding:13px; }
  .dashboard-head { height:51px; }
  .live-price b { font-size:21px; }
  .cinema-chart { height:115px; }
  .cinema-bottom { height:38px; grid-template-columns:1fr; }
  .cinema-platform-card { left:11px; right:11px; width:auto; min-width:0 !important; max-width:none; min-height:48px; padding:9px 12px; bottom:-23px; border-radius:12px; transform:none !important; }
  .cinema-platform-card > :nth-child(n + 4) { display:none; }

  /* Keep every section. Multi-card content becomes an intentional swipe rail. */
  .market-ribbon { margin-top:16px; }
  .why, .desk, .workflow, .difference, .story, .desktop-access, .pricing, .final-sale { padding-top:74px; padding-bottom:0; }
  .why h2, .desk-heading h2, .difference-heading h2, .story-sticky h2, .desktop-access-head h2, .pricing-intro h2, .final-sale h2 { font-size:clamp(34px,10vw,48px); line-height:.94; letter-spacing:-.06em; }
  .why-grid, .difference-grid, .platform-showcase, .what-you-buy, .checkout-timeline, .pricing-grid { display:flex !important; gap:12px; margin-right:calc(var(--mobile-gutter) * -1); padding:5px var(--mobile-gutter) 17px 0; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
  .why-grid::-webkit-scrollbar, .difference-grid::-webkit-scrollbar, .platform-showcase::-webkit-scrollbar, .what-you-buy::-webkit-scrollbar, .checkout-timeline::-webkit-scrollbar, .pricing-grid::-webkit-scrollbar { display:none; }
  .why-grid > *, .difference-grid > *, .platform-showcase > *, .what-you-buy > *, .checkout-timeline > *, .pricing-grid > * { flex:0 0 min(84vw,352px); min-width:0; scroll-snap-align:start; }
  .why-card, .difference-card, .os-card, .pricing-card { min-height:0; padding:21px; border-radius:20px; }
  .product-display, .value-grid { grid-template-columns:1fr !important; }
  .workflow-line { grid-template-columns:1fr; gap:10px; }
  .workflow-line::before { display:none; }
  .workflow-line article { min-height:0; padding:20px; }
  .value-section { margin-top:74px; padding:62px var(--mobile-gutter); }
  .market-wall { padding:58px 20px; border-radius:21px; }
  .depth-panel, .wall-side { display:none; }
  .market-wall-tags span:nth-child(n + 3) { display:none; }
  .story { display:block; }
  .story-sticky { position:static; margin-bottom:25px; }
  .story-progress { display:none; }
  .story-steps { display:flex; gap:12px; overflow-x:auto; margin-right:calc(var(--mobile-gutter) * -1); padding:4px var(--mobile-gutter) 15px 0; scroll-snap-type:x mandatory; scrollbar-width:none; }
  .story-step { flex:0 0 min(82vw,340px); min-height:0; padding:21px; scroll-snap-align:start; }
  .proof-ledger { margin:76px var(--mobile-gutter); padding:25px 18px; border-radius:21px; }
  .proof-ledger__grid { grid-template-columns:repeat(2,1fr); gap:8px; }
  .proof-ledger__grid article { min-height:132px; padding:15px; }
  .proof-ledger__grid b { font-size:28px; }
  .founding { margin-top:76px; }
  .founding-card { padding:28px 19px; border-radius:21px; }
  .founding-prices { grid-template-columns:repeat(3,1fr); gap:6px; }
  .founding-prices strong { font-size:18px; }
  .founding-cta { width:100%; justify-content:space-between; }
  .desktop-access { padding-inline:0; }
  .device-frame { min-height:218px; }
  .activation-screen { padding:18px; }
  .pricing-intro { margin-bottom:20px; }
  .pricing-card { min-height:410px; position:relative; }
  .pricing-card .plan-button { position:absolute; right:20px; bottom:20px; left:20px; width:auto; }
  .pricing .pricing-disclaimer { font-size:10px; }
  .final-sale { min-height:440px; align-items:flex-end; padding:48px 20px; border-radius:21px; }
  .final-sale-copy { max-width:none; }

  /* Full footer, not a hidden desktop leftover. */
  .footer-premium { display:block !important; margin-top:74px; padding:38px var(--mobile-gutter) calc(28px + env(safe-area-inset-bottom)); }
  .footer-main { display:block; }
  .footer-identity { max-width:30ch; }
  .footer-tagline { line-height:1.5; }
  .footer-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 18px; margin-top:32px; }
  .footer-column { min-width:0; }
  .footer-column:last-child { grid-column:1 / -1; }
  .footer-column a { padding:5px 0; }
  .footer-bottom { display:block; margin-top:28px; }
  .footer-bottom > * + * { margin-top:10px; }
  .inside-launcher { z-index:60; right:12px; bottom:12px; top:auto; transform:none; min-height:44px; }
  .support-chat__launcher { z-index:61; right:12px; bottom:64px; }
  .support-chat__panel { right:10px; left:10px; bottom:10px; width:auto; max-height:calc(100svh - 20px); }
}

@media (max-width: 390px) {
  :root { --mobile-gutter: 15px; }
  .q-mobile-pricing { display:none; }
  .cinema-copy h1 { font-size:43px; }
  .proof-ledger__grid { grid-template-columns:1fr; }
  .founding-prices { grid-template-columns:1fr; }
}
@media (min-width:761px){.q-mobile-shell-placeholder{display:none}}
@media (max-width:760px){
  .cinema-stage{position:relative!important;display:block!important;height:auto!important;min-height:0!important;aspect-ratio:1.12/1!important;overflow:visible!important}
  .cinema-terminal{position:absolute!important;inset:0 auto auto 0!important;left:0!important;right:auto!important;top:0!important;bottom:auto!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;translate:none!important;transform:none!important;transform-origin:center!important;animation:none!important}
  .cinema-terminal-main{height:calc(100% - 45px)!important;min-height:0!important}.cinema-dashboard{min-height:0!important}.cinema-chart{height:calc(100% - 62px)!important;min-height:82px!important}.cinema-platform-card{bottom:-25px!important}
}
@media (max-width:760px){
  .footer-premium{display:block!important;margin-top:74px!important;padding:26px 0 calc(28px + env(safe-area-inset-bottom))!important;border-top:1px solid rgba(145,181,205,.12)!important}.footer-premium .footer-main,.footer-premium .footer-divider,.footer-premium .footer-email{display:none!important}.footer-premium .footer-bottom{display:block!important;margin:0!important}.footer-premium .footer-copy{display:block!important;color:#e9f2f7!important;font-size:13px!important}.footer-premium .footer-risk{max-width:34ch!important;margin:8px 0 0!important;color:#71899a!important;font-size:11px!important;line-height:1.55!important}
}

/* Below-the-fold sections no longer take layout and paint time on first load. */
@media (max-width:760px){
  .why,.desk,.workflow,.difference,.value-section,.story,.proof-ledger,.founding,.desktop-access,.pricing,.final-sale,.footer-premium{content-visibility:auto;contain-intrinsic-size:auto 760px}
}
