/* ZUJID & CO. — responsive contract layer */
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
img,svg,video,canvas{max-width:100%;height:auto}
.nav,.nav *,.home-hero,.home-copy,.zj-abba-shell,.zj-abba-panel,.home-section,.contact-band,footer{min-width:0}
.nav{width:100%;flex-wrap:wrap}
.brand{min-width:0;max-width:100%}.brand small,.brand b{overflow-wrap:anywhere}
.links{min-width:0;max-width:100%}.links a{white-space:nowrap}
.home-copy h1,.home-section-head h2,.zj-abba-head h2,.zj-final-cta h2{overflow-wrap:anywhere}
.home-copy .intro,.home-section-head p,.zj-abba-head p,.zj-abba-side p,.zj-proof p,.cb-card p,footer p{overflow-wrap:anywhere}
.service-ribbon{width:100%;min-width:0}
.service-chip{min-width:0}.service-chip span{min-width:0;overflow-wrap:anywhere}
.zj-abba-panel,.zj-abba-head,.home-section-head,.contact-band,footer{width:100%;max-width:100%}
.zj-abba-form textarea,.cform input,.cform select,.cform textarea,input,select,textarea{box-sizing:border-box;max-width:100%}
.contact-band .cb-card{min-width:0}
footer a{overflow-wrap:anywhere}
@media(max-width:1100px){
  .home-hero-single{padding-left:clamp(20px,5vw,56px);padding-right:clamp(20px,5vw,56px)}
  .home-copy h1{max-width:18ch;font-size:clamp(52px,7.8vw,88px)}
  .service-ribbon{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contact-band{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contact-band .cb-lead,.contact-band h2{grid-column:1/-1}
}
@media(max-width:800px){
  .nav{padding:13px 18px;gap:12px}
  .brand{width:100%}
  .links{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 10px;font-size:11px;line-height:1.35}
  .links a{text-align:left}
  .home-hero-single{padding:44px 20px 30px}
  .home-copy{padding-top:0}
  .home-copy h1{max-width:none;font-size:clamp(44px,10.8vw,76px);line-height:.96}
  .home-copy .intro{font-size:clamp(17px,2.8vw,22px)}
  .zj-hero-actions{display:grid;grid-template-columns:1fr}
  .zj-hero-actions .btn{width:100%}
  .service-ribbon{grid-template-columns:1fr;gap:7px}
  .service-chip{min-height:48px}
  .zj-abba-shell{padding:58px 18px}
  .zj-abba-head{gap:22px}
  .zj-abba-badge{width:100%}
  .zj-abba-panel{border-radius:20px}
  .zj-abba-side,.zj-abba-messages{padding:22px}
  .zj-abba-chat{min-height:0}
  .zj-abba-form{grid-template-columns:1fr}
  .zj-abba-form button{min-height:50px}
  .home-section{padding:72px 20px}
  .home-section-head{gap:20px}
  .capability-grid{grid-template-columns:1fr}
  .capability-card{min-height:300px;padding:28px}
  .capability-card h3{margin-top:58px;font-size:clamp(30px,8vw,42px)}
  .home-principles{grid-template-columns:1fr}
  .contact-band{grid-template-columns:1fr;padding:50px 20px}
  footer{grid-template-columns:1fr;padding:42px 20px}
}
@media(max-width:560px){
  .nav{padding:12px 14px}
  .logo{width:44px;height:44px}
  .brand{gap:10px}.brand b{font-size:16px}.brand small{font-size:9px;letter-spacing:.08em}
  .links{grid-template-columns:repeat(2,minmax(0,1fr));font-size:10px;letter-spacing:.07em}
  .home-hero-single{padding:36px 16px 24px}
  .home-kicker{font-size:9px;letter-spacing:.12em;line-height:1.65}
  .home-copy h1{font-size:clamp(39px,12.2vw,58px);letter-spacing:-.045em}
  .home-copy .intro{font-size:16px;line-height:1.65}
  .zj-hero-note{align-items:flex-start;line-height:1.45}
  .service-chip{padding:9px 10px;font-size:12px}
  .service-chip i{font-size:9px}
  .zj-abba-shell{padding:46px 14px}
  .zj-abba-head h2{font-size:clamp(34px,10vw,50px)}
  .zj-abba-head p{font-size:14px}
  .zj-abba-side,.zj-abba-messages{padding:18px}
  .zj-abba-form{padding:14px}
  .zj-abba-foot{padding:0 18px 16px}
  .home-section{padding:58px 16px}
  .home-section-head h2{font-size:clamp(36px,10vw,48px)}
  .capability-card{min-height:280px;padding:24px}
  .capability-card h3{margin-top:46px}
  .contact-band{padding:44px 16px}
  .cb-card{padding:18px}
  footer{padding:38px 16px}
}
@media(min-width:801px){
  .links{justify-content:flex-end}
}
@media(prefers-reduced-motion:reduce){.btn:hover,.card:hover,.tile:hover,.linkcard:hover,.capability-card:hover,.cb-card:hover{transform:none}}
