/* Responsive home: keep readable controls, adapt to viewport height. */
@media(min-width:801px){
 :root{--home-header:clamp(62px,10svh,82px);--home-benefits:62px;--home-footer:30px;--home-hero:clamp(440px,calc(100svh - var(--home-header) - var(--home-benefits) - var(--home-footer)),760px)}
 .header{height:var(--home-header);padding:7px 4.5%;gap:32px}
 .brand img{height:calc(var(--home-header) - 14px);width:200px}
 .header nav{gap:30px}.header-actions{gap:24px}.header .small{padding:12px 20px}
 .hero{height:var(--home-hero);min-height:440px}
 .hero-content{height:100%;min-height:0;padding:14px 4.5%;grid-template-columns:minmax(0,1fr) clamp(310px,25vw,350px);gap:4%;align-items:center}
 .pitch{align-self:center;padding-bottom:0}
 .eyebrow{font-size:clamp(11px,1.8svh,14px);margin-bottom:12px}
 h1{font-size:clamp(34px,min(4.2vw,7.4svh),62px);line-height:1.06;margin-bottom:18px}
 .intro{font-size:clamp(15px,2.5svh,21px);margin-bottom:20px}
 .chips{gap:12px}.chips span{font-size:12px;padding:9px 18px}
 .request-card{min-height:0;max-height:calc(var(--home-hero) - 28px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:20px}
 .request-card h2{font-size:22px;margin-bottom:6px}.card-intro{font-size:14px;margin-bottom:12px}
 .access-tabs{margin-bottom:16px}.access-tabs button{padding:9px 6px;min-height:38px}
 form label{margin-bottom:5px}
 form input:not([type=checkbox]):not([type=hidden]){padding:10px 12px;margin-bottom:12px;min-height:40px}
 .submit{padding:12px;min-height:44px}.login-note{margin-top:14px;font-size:12px;line-height:1.6}
 .data-note{margin-bottom:10px}.check{margin-bottom:12px}
 .benefits{height:var(--home-benefits);padding:10px 4.5%;width:100%}
 .benefits>div{padding:0 14px;gap:17px}.benefits svg{width:36px;height:36px}.benefits strong{font-size:clamp(13px,1.2vw,18px)}
 footer{min-height:var(--home-footer);padding:8px 4.5%;font-size:11px;line-height:14px}
}
@media(max-width:800px){
 .header{height:70px;padding:8px 16px;gap:10px}.brand img{width:120px;height:52px}.header-actions{gap:12px}
 .header .login{font-size:13px}.header .small{font-size:12px;padding:10px 12px;min-height:40px}
 .hero{height:auto;min-height:0}.hero-content{height:auto;min-height:0;padding:30px 20px;gap:26px;grid-template-columns:minmax(0,1fr)}
 .pitch{align-self:auto;padding:0}.eyebrow{font-size:11px;margin-bottom:12px}
 h1{font-size:clamp(32px,8.3vw,49px);line-height:1.08;margin-bottom:16px}
 .intro{font-size:16px;line-height:1.45;margin-bottom:20px}.chips{gap:9px}.chips span{font-size:12px;padding:9px 15px}
 .request-card{min-height:0;max-height:none;overflow:visible;max-width:440px;width:100%;padding:23px}
 .request-card h2{font-size:23px}.card-intro{margin-bottom:16px}.access-tabs{margin-bottom:18px}.access-tabs button{min-height:44px}
 form input:not([type=checkbox]):not([type=hidden]){font-size:16px;min-height:44px}.submit{min-height:46px}
 .benefits{height:auto;grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 10px;gap:4px}
 .benefits>div{flex-direction:column;justify-content:center;gap:8px;padding:6px;text-align:center}
 .benefits>div+div{border-top:0;border-left:1px solid #dce1e7}.benefits svg{width:30px;height:30px}.benefits strong{font-size:12px;line-height:1.3}
 footer{padding:12px 16px;font-size:11px;gap:5px}
}
@media(max-width:350px){.header{padding-inline:10px}.brand img{width:98px}.header-actions{gap:8px}.header .small{padding-inline:8px;font-size:11px}.hero-content{padding-inline:15px}.request-card{padding:19px}}
