/* VYRA public website — mobile-only responsiveness
   Desktop/tablet layouts above 700px are intentionally untouched. */
@media (max-width:700px){
  html,body{max-width:100%;overflow-x:hidden}
  body{-webkit-text-size-adjust:100%}

  .site-header{padding-left:4.5vw;padding-right:4.5vw}
  .menu-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
  .nav{top:72px;max-height:calc(100vh - 72px);overflow-y:auto;padding:18px 5vw 24px;gap:14px}
  .nav a{width:100%}
  .nav .btn,.nav .employee-login-link{justify-content:center!important;text-align:center}
  .sound-toggle{display:none}

  .hero{padding-top:42px;gap:34px}
  .hero-visual{width:100%}
  .mark-card{width:min(100%,360px);padding:20px;border-radius:24px}
  .hero h1{font-size:clamp(46px,14vw,62px);line-height:.95}
  .hero-copy>p{font-size:16px;line-height:1.7}
  .hero-actions{display:grid!important;grid-template-columns:1fr;gap:10px!important}
  .hero-actions>a.btn{width:100%;min-width:0!important;min-height:50px}
  .hero-tags{gap:8px}
  .hero-tags span{font-size:11px}

  .section{padding-left:5vw;padding-right:5vw}
  .section-head{margin-bottom:34px}
  .section-head h2,.split-grid h2,.meaning-card h2{font-size:clamp(38px,11vw,54px)}

  /* Our People: founders stay prominent; staff use a compact 2-column grid on mobile only */
  .leadership-grid{grid-template-columns:1fr 1fr!important;gap:12px!important}
  .leadership-grid .team-card{min-width:0}
  .leadership-grid .team-photo{height:auto!important;aspect-ratio:1/1}
  .leadership-grid .team-card h3{font-size:15px!important}
  .leadership-grid .team-card p{font-size:11px!important}

  .team-grid.staff-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .staff-grid .team-card{min-width:0;padding:9px!important;border-radius:14px!important}
  .staff-grid .team-photo{height:auto!important;aspect-ratio:1/1;border-radius:11px!important}
  .staff-grid .team-card h3{font-size:11px!important;line-height:1.25;margin-top:8px!important;overflow-wrap:anywhere}
  .staff-grid .team-card p{font-size:9px!important;line-height:1.3;margin-top:3px!important}

  .service-group{padding:22px;border-radius:22px}
  .service-card{padding:22px}
  .business-card{gap:14px}

  .tabs{overflow-x:auto;padding-bottom:4px;scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
  .tab{flex:0 0 auto;min-height:44px}

  .video-grid{grid-template-columns:1fr!important;gap:14px}
  .video-card{min-height:0}
  .video-card img{height:auto;aspect-ratio:9/12;object-fit:cover}
  .video-card.wide img{aspect-ratio:16/10}
  .graphics-grid{columns:1!important}

  .logo-wall{grid-template-columns:1fr 1fr}
  .logo-wall>div,.creative-logos>div{height:112px;padding:14px}

  .meaning-card{padding:26px;border-radius:24px;gap:24px}
  .meaning-card img{width:100%;max-height:none}

  .inquiry-wrap{width:100%;max-width:100%}
  .inquiry-head{margin-bottom:28px}
  .inquiry-head h2{font-size:clamp(42px,13vw,62px);line-height:.92;letter-spacing:-.045em;overflow-wrap:anywhere}
  .inquiry-head p{font-size:16px;line-height:1.65}
  .inquiry-progress{flex-wrap:wrap;line-height:1.4}

  #inquiryFormCard{width:100%}
  .vyra-form{width:100%;grid-template-columns:1fr!important;padding:20px!important;gap:18px!important;border-radius:22px}
  .form-field,.form-field.full{grid-column:1!important;min-width:0}
  .form-field input,.form-field select,.form-field textarea{font-size:16px!important;min-height:48px}
  .form-field textarea{min-height:150px}
  .service-options{grid-template-columns:1fr!important;gap:9px!important}
  .service-option span{min-height:48px;padding:11px 12px}
  .vyra-form>.btn,.inquiry-submit{grid-column:1!important;width:100%!important;min-width:0!important;min-height:50px}

  #inquirySuccess{padding:26px 18px!important;border-radius:22px!important}
  #inquirySuccess .btn{width:100%;min-height:48px}

  footer{padding-left:5vw;padding-right:5vw;gap:18px}

  .media-modal,.modal{padding:16px}
  .media-content,.modal-content{width:100%}
  .media-content video,.media-content img,.modal-content video,.modal-content img{max-width:100%;max-height:80vh}
}

@media (max-width:430px){
  .brand img{width:132px}
  .hero h1{font-size:46px}
  .leadership-grid{grid-template-columns:1fr 1fr!important}
  .team-grid.staff-grid{grid-template-columns:1fr 1fr!important}
  .logo-wall{grid-template-columns:1fr 1fr}
  .inquiry-head h2{font-size:42px}
}


/* Mobile team story: full-screen only after a card is flipped */
@media (max-width:700px){
  body.story-open{overflow:hidden!important}

  .founder-flip-card.is-flipped{
    position:fixed!important;
    inset:0!important;
    z-index:10000!important;
    width:100vw!important;
    max-width:none!important;
    height:100dvh!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:#0B1B3D!important;
  }
  .founder-flip-card.is-flipped .founder-flip-inner{
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
  }
  .founder-flip-card.is-flipped .founder-flip-back{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    border-radius:0!important;
  }
  .founder-flip-card.is-flipped .founder-story{
    width:100%!important;
    height:100dvh!important;
    max-height:none!important;
    overflow-y:auto!important;
    padding:56px 24px 48px!important;
    box-sizing:border-box!important;
    -webkit-overflow-scrolling:touch;
  }
  .founder-flip-card.is-flipped .founder-story h3{
    font-size:1.55rem!important;
  }
  .founder-flip-card.is-flipped .founder-story p{
    font-size:.95rem!important;
    line-height:1.7!important;
  }
  .founder-flip-card.is-flipped .founder-story .founder-flip-hint{
    display:block!important;
    margin-top:28px!important;
    padding:12px 0 20px!important;
    font-size:.75rem!important;
  }
}


@media (max-width:700px){
  .founder-flip-card.is-flipped .click-me-pill{
    display:none!important;
  }
}


/* Definitive mobile full-screen team story overlay */
@media (max-width:700px){
  body.story-open{overflow:hidden!important}

  .founder-flip-card.is-flipped{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100%!important;
    max-width:none!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    overflow:hidden!important;
    border-radius:0!important;
    z-index:2147483000!important;
    background:#0B1B3D!important;
  }

  .founder-flip-card.is-flipped .founder-flip-inner{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    transform:none!important;
    transform-style:flat!important;
    overflow:hidden!important;
  }

  .founder-flip-card.is-flipped .founder-flip-front{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  .founder-flip-card.is-flipped .founder-flip-back{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    transform:none!important;
    backface-visibility:visible!important;
    -webkit-backface-visibility:visible!important;
    overflow:hidden!important;
    border-radius:0!important;
    background:#0B1B3D!important;
  }

  .founder-flip-card.is-flipped .founder-story{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    margin:0!important;
    padding:calc(28px + env(safe-area-inset-top)) 24px calc(42px + env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    box-sizing:border-box!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }

  .founder-flip-card.is-flipped .click-me-pill{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
  }
}


@media (max-width:700px){
  .logo-wall.creative-logos > a.brand-link-card{
    height:112px!important;
    padding:14px!important;
    pointer-events:auto!important;
    touch-action:manipulation;
  }
  .logo-wall.creative-logos > a.brand-link-card img{
    max-height:72px!important;
  }
  .logo-wall.creative-logos > a.brand-link-card .brand-click-pill{
    bottom:6px!important;
    min-width:62px!important;
    padding:5px 9px!important;
    font-size:.52rem!important;
  }
}


/* Clickable brand links keep the exact original mobile logo-card sizing */
@media (max-width:700px){
  .logo-wall.creative-logos > a.brand-link-card{
    height:112px!important;
    padding:14px!important;
  }
  .logo-wall.creative-logos > a.brand-link-card img{
    max-width:100%!important;
    max-height:95px!important;
    object-fit:contain!important;
  }
}
