
/* Vynoriz V2.9.9e — mobile shell/footer containment fix */
html,body{max-width:100%;overflow-x:hidden}
*,*::before,*::after{box-sizing:border-box}
main,footer,.nav{width:100%;max-width:100%}

/* Never allow grid/flex children in the site shell to force viewport overflow. */
footer>*,
.nav>*,
main>*{min-width:0}

@media (max-width:760px){
  footer{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:38px 20px 42px !important;
    gap:30px !important;
    min-height:0 !important;
    margin:0 !important;
    overflow:hidden !important;
    background:#0b1230 !important;
  }
  footer>div{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  footer .footer-brand-block{
    padding-bottom:6px;
  }
  footer .footer-brand{
    display:inline-flex !important;
    width:auto !important;
    max-width:100% !important;
    font-size:25px !important;
    gap:10px !important;
    white-space:normal !important;
  }
  footer .footer-brand .brand-mark{
    width:48px !important;
    height:48px !important;
    flex:0 0 48px !important;
    border-radius:14px !important;
    padding:6px !important;
  }
  footer .footer-brand-block p{
    width:100% !important;
    max-width:300px !important;
    margin:14px 0 0 !important;
    font-size:14px !important;
    line-height:1.55 !important;
  }
  footer b{
    margin-bottom:10px !important;
  }
  footer a:not(.brand){
    display:block !important;
    width:fit-content;
    max-width:100%;
    margin:8px 0 !important;
    overflow-wrap:anywhere;
  }

  /* Keep the mobile navigation and content aligned to the viewport. */
  .nav{
    padding-left:18px !important;
    padding-right:18px !important;
    overflow:visible;
  }
  .nav-open nav{
    width:100% !important;
    max-width:100% !important;
  }
  .section,.list-page,.dashboard,.form-page,.profile-body{
    max-width:100%;
  }
}

@media (max-width:420px){
  footer{padding-left:18px !important;padding-right:18px !important}
}

/* V3.0.4 — positioning copy only; intentionally does not alter footer/grid geometry. */
footer .footer-positioning{display:block;max-width:330px;margin-top:8px;color:rgba(255,255,255,.68);font-size:12px;line-height:1.55}
@media (max-width:760px){
  footer .footer-positioning{width:100%;max-width:300px;margin-top:8px;overflow-wrap:anywhere}
}

/* V3.0.4a — mobile hero preview containment only.
   Desktop intentionally untouched. */
@media (max-width:760px){
  .home-hero .hero-preview{
    width:100%;
    max-width:100%;
    min-width:0;
    height:auto;
    box-sizing:border-box;
    overflow:hidden;
  }
  .home-hero .hero-preview-head{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:6px 10px;
    min-width:0;
  }
  .home-hero .hero-preview-head strong,
  .home-hero .hero-preview-head small{
    width:100%;
    min-width:0;
    overflow-wrap:anywhere;
  }
  .home-hero .hero-preview form{
    width:100%;
    min-width:0;
  }
  .home-hero .hero-preview .search-row{
    display:flex;
    width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  .home-hero .hero-preview .search-row input{
    min-width:0;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
  }
  .home-hero .hero-preview .search-row button{
    flex:0 0 auto;
  }
  .home-hero .hero-preview .hero-tags{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    width:100%;
    min-width:0;
  }
  .home-hero .hero-preview .hero-tags span{
    max-width:100%;
    white-space:normal;
  }
  .home-hero .hero-preview .hero-person{
    display:grid;
    grid-template-columns:34px minmax(0,1fr) auto;
    gap:10px;
    align-items:center;
    width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  .home-hero .hero-preview .hero-person > div{
    min-width:0;
    overflow-wrap:anywhere;
  }
  .home-hero .hero-preview .hero-person strong,
  .home-hero .hero-preview .hero-person small{
    display:block;
    min-width:0;
    max-width:100%;
    overflow-wrap:anywhere;
  }
}
