/* Shared mobile layout contract. Preserve device canvas scaling and logo proportions. */
.aiivare-page-brand{width:min(100%,230px);margin:18px 0 26px}
.aiivare-page-brand img{display:block;width:100%;height:auto;object-fit:contain}
main,main .wrap,.grid>*,.split>*,.hero-grid>*,.cta-grid>*,.foot-grid>*,.offices>*{min-width:0}
main p,main li,.site-footer p,.site-footer a{overflow-wrap:break-word}
.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
input,select,textarea{max-width:100%;box-sizing:border-box}
@media(max-width:1024px){
 .hero-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 .split,.cta-grid,.cyber-native-intro{grid-template-columns:minmax(0,1fr);gap:30px}
 .hero-copy,.hero-figure{min-width:0;max-width:100%}
 .site-header .wrap{gap:12px}
}
@media(max-width:767px){
 .wrap{padding-left:20px;padding-right:20px}
 main>.section,main>.page-hero{padding-top:44px;padding-bottom:44px}
 main h1{font-size:clamp(28px,7.5vw,40px);line-height:1.2;overflow-wrap:break-word}
 main h2{font-size:clamp(24px,6vw,32px);line-height:1.25;overflow-wrap:break-word}
 .hero-grid,.split,.cta-grid{grid-template-columns:minmax(0,1fr)}
 .g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}
 .btn-row{display:flex;flex-wrap:wrap;gap:12px;max-width:100%}
 .btn-row .btn{max-width:100%;white-space:normal;text-align:center;min-height:44px;box-sizing:border-box}
 .product-ai-how{white-space:nowrap}
 .table-wrap table{min-width:620px}
 .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 20px}
 .foot-brand{grid-column:1 / -1}
 .offices{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .rail{display:none}
 .header-search{max-width:calc(100vw - 40px)}
 .nav-top,.mega a,.menu-toggle,.nav-search{min-height:44px}
 .mega{max-height:calc(100dvh - 120px);overflow-y:auto;overscroll-behavior:contain}
 form .grid{grid-template-columns:minmax(0,1fr)}
 input,select,textarea{font-size:16px}
 .aiivare-page-brand{width:190px;margin:14px 0 22px}
}
@media(max-width:550px){
 .g2,.g3,.g4{grid-template-columns:minmax(0,1fr)}
 .offices{grid-template-columns:minmax(0,1fr)}
 .section-head{flex-wrap:wrap;gap:16px}
 .utility .wrap{gap:8px 14px;justify-content:center}
}
@media(prefers-reduced-motion:reduce){.aiivare-page-brand{animation:none}}
