/* Marketing-only responsive refinements (homepage + industry pages). Loaded last. */
html{scroll-padding-top:84px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:hidden}
@supports(overflow:clip){body{overflow-x:clip}}
section[id],div[id]{scroll-margin-top:84px}
.tc-card#contact,.yi,.svs{scroll-margin-top:84px}
header .wrap.nav{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}
/* Inputs at 16px prevent iOS focus zoom */
input,select,textarea,.askbar input,.form .in,.tc-field input[type=text],.tc-field input[type=email],.tc-field input[type=tel],.tc-field select,.tc-field textarea,.at-f input,.at-f select,.at-f textarea{font-size:16px!important}
/* Portal tabs and pill buttons: comfortable tap targets */
.tabs button,.pills button{min-height:44px}
.tc-check{min-height:24px}
.lb .x{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;top:-48px}
/* Tablet: keep the single-row nav from crowding */
@media(max-width:1024px) and (min-width:701px){
 .nav a.l{margin-left:14px;font-size:13.5px}
 .nav .btn,.nav a.btn{margin-left:14px!important}
 .nav nav,.nav .links{display:flex;align-items:center;flex-wrap:nowrap}
 .nav img{height:26px}
}
@media(max-width:860px) and (min-width:701px){
 .nav{height:auto;min-height:66px;flex-wrap:wrap;gap:6px 12px;padding-top:10px;padding-bottom:10px}
 .nav nav,.nav .links{flex-wrap:wrap;justify-content:flex-end;row-gap:6px}
 html{scroll-padding-top:120px}
 section[id],div[id],.tc-card#contact,.yi,.svs{scroll-margin-top:120px}
}
/* Phone: header scrolls away so it never covers content; nav becomes one swipeable row */
@media(max-width:700px){
 header{position:relative}
 html{scroll-padding-top:12px}
 section[id],div[id],.tc-card#contact,.yi,.svs{scroll-margin-top:12px}
 header .wrap.nav{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
 .nav{gap:6px;padding-top:10px;padding-bottom:8px}
 .nav nav,.nav .links{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -18px;padding:2px 18px 4px;width:calc(100% + 36px);gap:4px}
 .nav nav::-webkit-scrollbar,.nav .links::-webkit-scrollbar{display:none}
 .nav a.l,.nav a.back{flex:none;white-space:nowrap;min-height:40px;display:inline-flex;align-items:center;padding:6px 10px;font-size:13px}
 .nav .btn,.nav a.btn{flex:none;white-space:nowrap;margin-left:4px!important;min-height:40px;padding:8px 14px!important;font-size:13px}
 .btn{min-height:44px}
 .askbar .go,.tc-submit,.at-talk,.at-end{min-height:44px}
 .lb{padding:56px 12px max(16px,env(safe-area-inset-bottom))}
 .lb video{border-radius:12px;max-height:calc(100dvh - 140px)}
 .tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:-18px;margin-right:-18px;padding:0 18px 4px}
 .tabs::-webkit-scrollbar{display:none}
 .tabs button{flex:none;white-space:nowrap}
 .screen{border-radius:14px}
 footer .wrap{padding-bottom:env(safe-area-inset-bottom)}
}
@media(max-width:360px){
 h1{font-size:32px}
 .fh .in{padding-top:56px}
 .ask,.svs,.yi{padding-left:14px;padding-right:14px}
 .tc-card{padding:18px 12px}
}
@media(max-height:500px) and (orientation:landscape){.lb video{max-height:calc(100dvh - 90px)}.lb{padding-top:48px}}
