/* Final cross-route QA polish: legal pages, resilient hit areas, and small-screen controls. */
.legal-page{min-height:100svh;color:#071a36;background:#f4f7fa}
.legal-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,88px);border-bottom:1px solid #dce5ed;background:rgba(255,255,255,.92);backdrop-filter:blur(18px)}
.legal-brand{display:flex;align-items:center;gap:11px;color:#071a36;font-size:10px;letter-spacing:.15em}.legal-brand span{display:grid}.legal-brand b{font-size:12px;letter-spacing:.08em}
.legal-header>nav{display:flex;align-items:center;gap:25px}.legal-header>nav a{min-height:42px;display:flex;align-items:center;color:#53677e;font-size:12px;font-weight:650}.legal-header>nav a:hover{color:#071a36}
.legal-header .legal-sign-in{padding:0 17px;color:#fff;border-radius:11px;background:#071a36}
.legal-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);align-items:end;gap:70px;padding:78px clamp(24px,8vw,120px) 72px;color:#fff;background:radial-gradient(circle at 82% 10%,rgba(51,113,177,.32),transparent 34%),linear-gradient(135deg,#071a36,#0b315d)}
.legal-hero>div{max-width:760px}.legal-eyebrow{display:flex;align-items:center;gap:8px;color:#9ec6ed;font-size:11px;font-weight:800;letter-spacing:.14em}.legal-eyebrow svg{width:17px}
.legal-hero h1{margin:18px 0 15px;font-size:clamp(42px,5vw,72px);line-height:.98;letter-spacing:-.06em}.legal-hero>div>p{max-width:680px;margin:0;color:#b6c7d9;font-size:16px;line-height:1.75}.legal-hero>div>small{display:block;margin-top:22px;color:#7f9ab6;font-size:11px}
.legal-hero>aside{display:grid;grid-template-columns:48px 1fr;gap:15px;padding:23px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.07);backdrop-filter:blur(10px)}.legal-hero>aside>svg{width:27px;color:#ff687b}.legal-hero>aside b{font-size:14px}.legal-hero>aside p{margin:7px 0 0;color:#9fb4ca;font-size:11px;line-height:1.65}
.legal-layout{width:min(1240px,calc(100% - 48px));display:grid;grid-template-columns:250px minmax(0,1fr);gap:55px;margin:54px auto 80px}
.legal-contents{position:sticky;top:30px;align-self:start;padding:22px;border:1px solid #dce5ed;border-radius:18px;background:#fff;box-shadow:0 14px 40px rgba(7,26,54,.04)}.legal-contents>span{color:#8b9aab;font-size:9px;font-weight:800;letter-spacing:.15em}.legal-contents>nav{display:grid;margin:14px 0 20px}.legal-contents>nav a{display:grid;grid-template-columns:25px 1fr;gap:7px;align-items:center;min-height:37px;color:#607388;border-bottom:1px solid #eef2f5;font-size:10px}.legal-contents>nav a:hover{color:#df263c}.legal-contents>nav i{color:#a6b2be;font-size:8px;font-style:normal}
.legal-contents>div{display:flex;gap:10px;align-items:center;padding:14px;border-radius:12px;background:#eef5fb}.legal-contents>div>svg{width:18px;color:#27639d}.legal-contents>div span{display:grid}.legal-contents>div b{font-size:10px}.legal-contents>div a{margin-top:3px;color:#416b94;font-size:8px}
.legal-document{overflow:hidden;border:1px solid #dce5ed;border-radius:22px;background:#fff;box-shadow:0 18px 55px rgba(7,26,54,.05)}.legal-document>section{display:grid;grid-template-columns:45px 1fr;gap:18px;padding:34px 40px;border-bottom:1px solid #e8eef3;scroll-margin-top:25px}.legal-document>section>span{width:36px;height:36px;display:grid;place-items:center;color:#315f8e;border-radius:10px;background:#edf4fa;font-size:9px;font-weight:800}.legal-document h2{margin:3px 0 14px;font-size:23px;letter-spacing:-.03em}.legal-document p{margin:0 0 12px;color:#5e7187;font-size:13px;line-height:1.75}.legal-document ul{display:grid;gap:9px;margin:15px 0 4px;padding:0;list-style:none}.legal-document li{position:relative;padding-left:20px;color:#5e7187;font-size:12px;line-height:1.6}.legal-document li:before{content:"";position:absolute;left:2px;top:.62em;width:6px;height:6px;border-radius:50%;background:#ef233c}
.legal-document>footer{display:flex;align-items:center;gap:14px;padding:27px 40px;background:#f7f9fb}.legal-document>footer>svg{width:22px;color:#315f8e}.legal-document>footer b{font-size:12px}.legal-document>footer p{margin:3px 0 0;font-size:10px}.legal-document>footer a{color:#285c90;font-weight:700}
.legal-footer{min-height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,88px);color:#8190a0;border-top:1px solid #dce5ed;background:#fff;font-size:10px}.legal-footer a{min-height:44px;display:flex;align-items:center;gap:8px;color:#315f8e;font-weight:700}.legal-footer svg{width:15px}

/* Links and controls that were visually correct but too small to use comfortably on touch screens. */
.managed-contact-info a{display:flex;align-items:center;gap:8px;min-height:34px;color:#61748a;font-size:12px}.managed-contact-info a svg{width:15px}
.setting-choice .app-switch{flex:0 0 auto;padding:0}
.app-switch,.mini-toggle{cursor:pointer}
.contact-person .visual-more{color:#8090a2}.dash-alert .visual-action{padding:8px 11px;color:#14694f;border:1px solid #b9dfd2;border-radius:8px;background:#fff;font-size:8px;font-weight:700}.dash-qr-card .visual-download{display:flex;align-items:center;gap:5px;padding:7px 10px;color:#071a36;border:1px solid #d6e0e9;border-radius:8px;background:#fff;font-size:8px}.dash-qr-card .visual-download svg{width:13px}.email-preview .preview-action,.transactional-email .preview-action{width:100%;min-height:38px;display:flex;align-items:center;justify-content:center;gap:6px;color:#fff;border-radius:9px;background:#ef233c;font-size:8px;font-weight:700}.email-preview .preview-action svg,.transactional-email .preview-action svg{width:13px}

@media(max-width:820px){
  .legal-header{height:72px;padding-inline:18px}.legal-header>nav{gap:9px}.legal-header>nav>a:not(.legal-sign-in){display:none}.legal-hero{grid-template-columns:1fr;gap:28px;padding:48px 22px}.legal-hero h1{font-size:44px}.legal-hero>div>p{font-size:14px}.legal-layout{width:calc(100% - 28px);display:block;margin:24px auto 50px}.legal-contents{position:static;margin-bottom:14px;padding:14px}.legal-contents>span,.legal-contents>nav{display:none}.legal-contents>div{padding:13px}.legal-document>section{grid-template-columns:36px 1fr;gap:12px;padding:25px 19px}.legal-document>section>span{width:32px;height:32px}.legal-document h2{font-size:20px}.legal-document p{font-size:12px}.legal-document>footer{padding:23px 20px}.legal-footer{padding-inline:18px}.legal-footer span{display:none}
  .app-sidebar-head>button,.admin-sidebar>header>button{width:44px!important;height:44px!important;display:grid!important;place-items:center}
  .app-sidebar-card a,.panel-heading>a,.emergency-message-callout>a,.panel-footer-link,.profile-preview-toolbar>a,.review-header>a:last-child,.onboarding-topbar>a,.review-checklist article>a,.notifications-toolbar>button,.scan-event>button,.manager-card-head button,.card-actions button{min-height:40px;display:inline-flex;align-items:center}
  .qr-mini-actions a,.qr-mini-actions button{min-height:42px;padding:0 9px}
  .contact-reorder button{width:40px!important;height:40px!important}
  .managed-contact-info a{min-height:42px}
  .app-switch,.mini-toggle{width:52px!important;height:32px!important;min-width:52px}
  .app-switch i,.mini-toggle i{top:5px!important;left:5px!important;width:22px!important;height:22px!important}
  .app-switch.on i{transform:translateX(20px)!important}.mini-toggle.on i{left:25px!important}
  .auth-card .field-control>button{right:7px;width:42px;height:42px}.auth-card .field-control:has(>button)>input{padding-right:58px!important}
  .admin-login .password-input>button{width:44px!important;height:44px!important}
  .dash-alert .visual-action{display:none}
}

@media(min-width:701px){.emergency-actions{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}}

@media(max-width:440px){
  .legal-brand img{width:39px;height:39px}.legal-brand{font-size:8px}.legal-brand b{font-size:10px}.legal-header .legal-sign-in{padding-inline:14px}.legal-hero h1{font-size:38px}.legal-hero>aside{grid-template-columns:38px 1fr;padding:18px}.legal-document>section{grid-template-columns:1fr}.legal-document>section>span{margin-bottom:-2px}
}

@media(prefers-reduced-motion:reduce){.legal-page *{scroll-behavior:auto!important}}
