/* DENVique public-site mobile refinement */
.cta:after{content:"";width:320px;height:320px;background:url("/brand-mark.svg") center/contain no-repeat;opacity:.12;font-size:0}
.login-aside:after{content:"";width:500px;height:500px;background:url("/brand-mark.svg") center/contain no-repeat;opacity:.13;font-size:0}
html{overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{max-width:100%;overflow-x:hidden}
img,svg,video,canvas{max-width:100%;height:auto}
.container{width:min(1240px,calc(100% - 40px))}
.brand{min-width:0;gap:9px}
.brand-mark-img{display:block;width:42px;height:42px;flex:0 0 42px;object-fit:contain;border-radius:14px;box-shadow:none;background:transparent}
.brand .role-chip{margin-inline-start:5px}
a,button{touch-action:manipulation}
@media(max-width:900px){
  .container{width:min(1240px,calc(100% - 36px))}
  .nav{height:auto!important;min-height:68px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;padding:10px 0}
  .nav>.brand{order:1;flex:1 1 auto;font-size:19px;line-height:1.1}
  .brand .role-chip{display:none}
  .nav>.role-chip{order:2;margin-inline-start:auto}
  .nav>.nav-actions{order:3;width:100%;display:flex;align-items:stretch;justify-content:space-between;gap:8px;margin:0}
  .nav>.nav-actions>.btn{flex:1 1 0;min-width:0;padding:10px 8px;font-size:11px;line-height:1.25;text-align:center;white-space:normal}
  .nav>.btn{order:3;flex:1 1 calc(33.333% - 8px);min-width:0;padding:10px 8px;font-size:11px;line-height:1.25;text-align:center;white-space:normal}
  .nav>.nav-links{order:4;width:100%;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px 14px;padding:7px 0 3px;font-size:12px}
  .hero,.split{grid-template-columns:minmax(0,1fr);gap:28px}
  .hero{padding:36px 0 52px}
  .hero h1{font-size:clamp(38px,8.5vw,60px);line-height:1.04;max-width:100%;overflow-wrap:anywhere}
  .lead{font-size:15px;line-height:1.75}
  .hero-art{min-height:clamp(260px,68vw,390px);max-height:400px;padding:14px;border-radius:25px}
  .orbit-card{width:min(94%,480px);padding:18px}
  .floating-note{max-width:75%;left:10px;bottom:12px;padding:10px 12px}
  .hero-stamp{top:12px;right:12px}
  .section{padding:58px 0}
  .section-head{margin-bottom:28px}
  .section h2{font-size:clamp(32px,6.5vw,46px);line-height:1.1}
  .cards,.steps,.form-grid,.portal-grid,.split-band{grid-template-columns:minmax(0,1fr)}
  .card,.step,.portal-card{min-width:0}
  .cta{display:block;padding:30px;border-radius:23px}
  .cta h2{font-size:clamp(30px,6vw,44px);line-height:1.08}
  .cta .btn{margin-top:14px}
  .form-wrap{width:100%;padding:23px 18px;margin:25px auto;border-radius:21px}
  .field.full{grid-column:1/-1}
  .page-hero{padding:36px 0 48px}
  .page-hero h1{font-size:clamp(38px,8vw,58px);line-height:1.08;overflow-wrap:anywhere}
  .page-hero p{font-size:15px}
  .dark-card{padding:25px;min-height:0}
  .footer{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:25px 0;line-height:1.8}
  .login-page{grid-template-columns:minmax(0,1fr)}
  .login-aside{display:none}
  .login-card{width:min(460px,calc(100% - 36px));padding:30px 0}
}
@media(max-width:580px){
  .container{width:calc(100% - 28px)}
  .brand{font-size:18px;letter-spacing:-.7px}
  .brand-mark-img{width:38px;height:38px;flex-basis:38px}
  .nav{gap:8px;padding:9px 0}
  .nav>.nav-links{justify-content:flex-start;gap:8px 13px;font-size:11px}
  .nav>.nav-actions,.nav>.btn{gap:6px}
  .nav>.nav-actions>.btn,.nav>.btn{padding:9px 6px;font-size:10px;border-radius:13px}
  .hero{padding:28px 0 42px}
  .hero h1{font-size:clamp(35px,10vw,46px);line-height:1.08;margin:15px 0 17px}
  .hero-actions{gap:9px;margin-top:22px}
  .hero-actions .btn{flex:1 1 135px;padding:12px 13px;font-size:12px}
  .hero-art{min-height:285px;max-height:330px;padding:11px;border-radius:21px}
  .orbit-card{width:100%;padding:14px;border-radius:18px;transform:rotate(-1deg)}
  .mini-top{font-size:9px;gap:6px}
  .stat-grid{gap:7px;margin:12px 0}
  .stat{padding:11px;border-radius:12px}
  .stat strong{font-size:22px}
  .stat small{font-size:10px}
  .bars{height:48px;margin-top:12px;gap:5px}
  .floating-note{font-size:10px;max-width:78%;padding:8px 10px}
  .ticker{font-size:10px;padding:10px 0}
  .section{padding:45px 0}
  .section h2{font-size:32px}
  .card{padding:22px}
  .step{padding:21px}
  .cta{padding:23px;box-shadow:5px 5px 0 var(--ink)}
  .cta h2{font-size:31px}
  .form-wrap{padding:19px 14px;margin:20px auto}
  .field input,.field select,.field textarea{font-size:16px}
  .page-hero{padding:30px 0 38px}
  .page-hero h1{font-size:38px}
  .page-hero p{font-size:14px}
  .portal-card{min-height:210px;padding:22px}
  .portal-card h2{font-size:25px}
  .login-card h1{font-size:30px}
  .footer{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important;animation:none!important}
}