/*
 * VNISH GLOBAL · v99 · world-class mobile/tablet route
 *
 * Protected: hero, approved media, animations, authority/trophy and the
 * social/gold-letter tail. This late layer changes only responsive geometry,
 * disclosure and navigation density below desktop width.
 */

@media (max-width: 1100px) {
  /* Six decisions, not seventeen near-identical menu entries. */
  .site-menu > nav {
    display: flex !important;
    flex-direction: column;
  }
  .site-menu > nav a {
    display: none;
  }
  .site-menu > nav a[href="#finder"],
  .site-menu > nav a[href="#safe-install"],
  .site-menu > nav a[href="#fleet"],
  .site-menu > nav a[href="#dashboard"],
  .site-menu > nav a[href="#authority"],
  .site-menu > nav a[href="#about"] {
    display: flex;
  }
  .site-menu > nav a i {
    display: none;
  }
  .site-menu > nav a[href="#finder"] { order: 1; }
  .site-menu > nav a[href="#safe-install"] { order: 2; }
  .site-menu > nav a[href="#fleet"] { order: 3; }
  .site-menu > nav a[href="#dashboard"] { order: 4; }
  .site-menu > nav a[href="#authority"] { order: 5; }
  .site-menu > nav a[href="#about"] { order: 6; }

  /* The six approved scenes remain live on layer one, one swipeable story. */
  .control-stack {
    overflow: hidden;
    padding-top: 56px;
    padding-bottom: 64px;
  }
  .stack-intro {
    margin-bottom: 28px;
  }
  .stack-track {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    gap: 16px !important;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 4px max(24px, calc((100vw - var(--shell)) / 2)) 20px;
    scroll-padding-inline: max(24px, calc((100vw - var(--shell)) / 2));
    scroll-snap-type: x proximity;
    overscroll-behavior-inline: contain;
    touch-action: pan-x pan-y;
    scrollbar-width: thin;
    scrollbar-color: rgba(231, 199, 125, .48) rgba(255, 255, 255, .06);
  }
  .stack-track::-webkit-scrollbar {
    height: 4px;
  }
  .stack-track::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, .06);
  }
  .stack-track::-webkit-scrollbar-thumb {
    border-radius: 99px;
    background: rgba(231, 199, 125, .48);
  }
  .stack-card,
  .stack-card--01,
  .stack-card--02,
  .stack-card--03,
  .stack-card--04,
  .stack-card--05,
  .stack-card--06 {
    position: relative !important;
    top: auto !important;
    flex: 0 0 clamp(560px, 68vw, 680px);
    min-height: 650px !important;
    margin-top: 0 !important;
    scroll-snap-align: start;
    scroll-snap-stop: normal;
  }
  .stack-track:focus-visible {
    outline: 2px solid var(--gold, #e7c77d);
    outline-offset: -2px;
  }

  /* The approved cover stays; the edition menu becomes a single honest rail. */
  .briefings {
    overflow: hidden;
  }
  .deck-hall {
    grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr) !important;
    align-items: stretch;
  }
  .deck-cover {
    min-height: 280px !important;
  }
  .deck-langs {
    display: flex !important;
    min-width: 0;
    gap: 9px !important;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 2px 2px 12px;
    scroll-snap-type: x proximity;
    overscroll-behavior-inline: contain;
    touch-action: pan-x pan-y;
    scrollbar-width: thin;
    scrollbar-color: rgba(231, 199, 125, .42) rgba(255, 255, 255, .05);
  }
  .deck-langs::-webkit-scrollbar {
    height: 4px;
  }
  .deck-langs::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, .05);
  }
  .deck-langs::-webkit-scrollbar-thumb {
    border-radius: 99px;
    background: rgba(231, 199, 125, .42);
  }
  .deck-lang {
    flex: 0 0 clamp(180px, 31vw, 220px);
    scroll-snap-align: start;
  }

  /* Five gates stay explicit while giving the tablet a compact decision map. */
  .safe-path {
    grid-template-columns: 1fr 1fr !important;
    margin-top: 34px !important;
    gap: 1px !important;
  }
  .safe-install .safe-path li {
    min-height: 138px !important;
    border-radius: 0 !important;
  }
  .safe-install .safe-path li > b {
    padding: 18px 20px 0 !important;
  }
  .safe-path .safe-step-link {
    height: calc(100% - 38px) !important;
    padding: 8px 20px 18px !important;
  }
  .safe-gatehint {
    margin-top: 20px !important;
  }

  /* The fleet keeps its media, evidence and tools; repeated prose gets denser. */
  .fleet-story {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    margin-top: 34px !important;
  }
  .fleet-story article {
    padding: 20px 18px 22px !important;
  }
  .fleet-story small {
    margin-bottom: 10px !important;
  }
  .fleet-story h3 {
    margin-bottom: 8px !important;
    font-size: 18px !important;
  }
  .fleet-story p {
    font-size: 12px !important;
    line-height: 1.5 !important;
  }
  .fleet-story article b {
    margin-top: 4px;
  }
  .fleet-scale {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 24px !important;
    gap: 12px !important;
  }
  .fleet-scale span {
    display: grid !important;
    gap: 6px !important;
  }
  .fleet-scale i {
    display: none;
  }
  .fleet-stageshead {
    margin-top: 54px !important;
    margin-bottom: 24px !important;
  }
  .commissioning-stage {
    min-height: 330px !important;
  }
}

@media (max-width: 760px) {
  .control-stack {
    padding-top: 44px;
    padding-bottom: 46px;
  }
  .stack-intro {
    margin-bottom: 22px;
  }
  .stack-track {
    gap: 12px !important;
    padding: 4px 42px 16px 18px !important;
    scroll-padding-inline: 18px !important;
  }
  .stack-card,
  .stack-card--01,
  .stack-card--02,
  .stack-card--03,
  .stack-card--04,
  .stack-card--05,
  .stack-card--06 {
    flex-basis: calc(100vw - 58px);
    min-height: 590px !important;
    padding: 24px 20px !important;
  }
  .stack-card h3 {
    margin-top: 12px !important;
    font-size: 31px !important;
  }
  .stack-card p {
    line-height: 1.5;
  }
  .stack-track .stack-card > .stack-visual {
    height: 300px !important;
    margin-top: 12px !important;
  }

  .briefings-layout {
    gap: 26px !important;
  }
  .deck-hall {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 16px !important;
  }
  .deck-cover {
    min-height: 190px !important;
  }
  .deck-side {
    gap: 8px;
  }
  .deck-lang {
    flex-basis: min(205px, 63vw);
  }

  /* The resolver itself is the first layer; four essays and five shortcuts are not. */
  .finder-model-chips {
    display: none !important;
  }
  .finder-contract-list {
    grid-template-columns: 1fr 1fr !important;
    gap: 1px !important;
  }
  .finder-contract-list li {
    display: block !important;
    min-height: 70px !important;
    border-top: 1px solid rgba(247, 243, 234, .08);
    padding: 12px 10px !important;
  }
  .finder-contract-list li small,
  .finder-contract-list li b {
    display: block;
  }
  .finder-contract-list li b {
    margin-top: 5px;
    overflow-wrap: anywhere;
  }
  .finder-contract-list li em,
  .finder-boardhint p {
    display: none !important;
  }
  .finder-boardhint {
    gap: 12px !important;
  }

  .safe-head {
    gap: 14px !important;
  }
  .safe-lede {
    line-height: 1.55;
  }
  .safe-path {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    margin-top: 26px !important;
  }
  .safe-install .safe-path li {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: center;
    min-height: 98px !important;
    padding: 0 !important;
  }
  .safe-install .safe-path li > b {
    padding: 0 0 0 12px !important;
    font-size: 20px !important;
  }
  .safe-path .safe-step-link {
    display: grid !important;
    height: auto !important;
    min-height: 98px;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    padding: 13px 12px 13px 0 !important;
    gap: 10px !important;
  }
  .safe-install .safe-path li strong {
    margin-bottom: 3px !important;
    font-size: 15px !important;
  }
  .safe-install .safe-path li span {
    font-size: 12px !important;
    line-height: 1.42 !important;
  }
  .safe-path .safe-step-link em {
    margin-top: 0 !important;
  }
  .safe-gatehint {
    display: grid !important;
    grid-template-columns: auto 1fr;
    gap: 6px 10px !important;
    padding: 14px !important;
  }
  .safe-gatehint > span:first-child {
    grid-column: 1 / -1;
  }
  .safe-foot {
    margin-top: 18px !important;
    gap: 8px 18px !important;
  }

  .fleet-story {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .fleet-story article {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 5px !important;
    padding: 16px 18px !important;
  }
  .fleet-story small,
  .fleet-story h3 {
    margin: 0 !important;
  }
  .fleet-story p {
    max-width: none !important;
  }
  .fleet-scale {
    gap: 8px !important;
  }
  .fleet-scale b {
    font-size: 29px !important;
  }
  .fleet-scale small {
    font-size: 8.5px !important;
    line-height: 1.35;
    letter-spacing: .08em !important;
  }
  .fleet-stageshead {
    margin-top: 40px !important;
  }
  .commissioning-rail button {
    min-height: 62px !important;
  }
  .commissioning-stage {
    min-height: 290px !important;
    padding: 22px !important;
  }
  .commissioning-stage h3 {
    font-size: 31px !important;
  }
}

@media (prefers-reduced-motion: reduce) and (max-width: 1100px) {
  .stack-track,
  .deck-langs {
    scroll-behavior: auto !important;
    scroll-snap-type: none;
  }
}
