/* AccessVista 4.2.1: let actual content fit the viewport, without hiding it. */
html,body{min-width:0;width:100%;max-width:100%}
main,.site-header,.site-footer,.shell{min-width:0;max-width:100%}
/* Grid's automatic minimum otherwise includes intrinsic iframe/form widths. */
:where(main,.site-footer) :where(div,section,article,aside,figure,form,label,nav,ul,ol,li,a,p,h1,h2,h3,span){min-width:0}
:where(main,.site-footer) :where(p,h1,h2,h3,a,li,dd,dt,summary,label,figcaption){overflow-wrap:anywhere}
:where(main,.site-footer) :where(h1,h2,h3){-webkit-hyphens:auto;hyphens:auto}
main :where(iframe,video,picture){max-width:100%;min-width:0}
#contact-hubspot-frame{width:100%;max-width:100%;min-width:0}
.hubspot-contact-form{width:100%;min-width:0;max-width:100%}
:where(.demo-planner,.general-contact-form) :where(input,select,textarea){box-sizing:border-box;max-width:100%;min-width:0}
.button{max-width:100%;white-space:normal;text-align:center;line-height:1.4;overflow-wrap:anywhere}
.footer-logo{max-width:100%}
.page-numbers{flex-wrap:wrap}
@media(max-width:1000px){
 .site-header .mobile-nav:not([hidden]){width:auto!important;max-width:100%;box-sizing:border-box}
 .mobile-nav nav,.mobile-nav nav>a{min-width:0;max-width:100%;overflow-wrap:anywhere}
 .mobile-nav nav>a>span{flex:none}
}
@media(max-width:880px){
 /* Final override also beats the late desktop overview rule in theme.css. */
 .overview-hero-grid{grid-template-columns:minmax(0,1fr)}
 .home-hero-grid,.dashboard-grid,.access-grid,.about-grid,.faq-grid,.contact-form-grid,.contact-page-hero-grid,.product-hero-grid,.specs-grid,.specs-grid.has-image,.contact-panel,.article-layout{grid-template-columns:minmax(0,1fr)}
 .contact-form-grid{gap:32px}
 .contact-form-copy,.specs-visual,.specs-title{position:static}
 :where(.demo-planner,.general-contact-form) :where(input,select,textarea){font-size:16px}
}
@media(max-width:620px){
 .shell{width:calc(100% - 32px);max-width:1200px}
 .home-hero,.home-hero-grid{min-height:0}
 .home-hero-grid{padding-block:42px 40px}
 .hero-copy h1,.product-hero-copy h1,.overview-hero h1,.blog-hero-copy h1,.article-hero h1,.contact-page-hero h1,.legal-hero h1,.avx-page h1,.content-article h1{font-size:clamp(2.15rem,8.5vw,3rem);line-height:1.12;letter-spacing:-.035em}
 .dashboard-copy h2,.access-copy h2,.about-copy h2,.platform-heading h2,.contact-panel h2,.compact-contact .contact-form-copy h2,.configuration-heading h2,.section-heading h2,.section-heading-row h2,.faq-title h2,.avx-page h2{font-size:clamp(1.8rem,7.2vw,2.5rem);line-height:1.16}
 .hero-copy,.hero-visual,.avx-hero-media{width:100%;max-width:100%;min-width:0}
 .hero-actions,.avx-actions{gap:16px}
 .avx-actions .button{width:100%;min-height:54px;padding-block:12px}
 .contact-panel{padding:30px 16px;gap:28px}
 .demo-planner{width:100%;min-width:0;padding:22px 14px}
 .planner-row{grid-template-columns:minmax(0,1fr)}
 .planner-heading{align-items:flex-start;gap:10px}
 .planner-heading>div{min-width:0}
 .contact-mail a{font-size:1rem;overflow-wrap:anywhere}
 .hubspot-contact-form{padding:14px 8px}
 .compact-contact .hubspot-contact-form{border-radius:18px}
 .access-pills{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 8px}
 .access-method-label{padding-inline:8px}
 .store-badge{min-width:0;width:100%}
 .proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
 .footer-intro{width:100%;padding:24px}
 .footer-column a{overflow-wrap:anywhere}
 .footer-legal{flex-wrap:wrap;gap:12px}
 .spec-list>div{grid-template-columns:minmax(0,1fr)}
 .avx-sector-copy{padding:24px 20px}
 .avx-sector-copy h2{font-size:1.7rem}
 .avx-sector-nav{max-width:100%}
 .avx-sector-nav a{max-width:100%;white-space:normal}
 .avx-media-note{padding:18px}
 .avx-final-inner .button{width:100%;padding-block:14px}
 .avx-heading-row,.avx-final-inner{min-width:0}
 .content-cover{height:auto;max-height:380px}
}
/* Data stays available on a local scroll surface instead of widening the page. */
@media(max-width:760px){
 .article-content table,.reading-copy table,.legal-content table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 .article-content pre,.reading-copy pre{max-width:100%;overflow-x:auto}
}
