/* Usavir Premium Website V30 — consent, enrolment polish, performance/security UI hooks */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.global-footer nav{display:flex;align-items:center;gap:inherit}.global-footer nav button,.v21-footer nav button{appearance:none;border:0;background:none;padding:0;color:inherit;font:inherit;text-decoration:none;cursor:pointer}.global-footer nav button:hover,.global-footer nav button:focus-visible,.v21-footer nav button:hover,.v21-footer nav button:focus-visible{text-decoration:underline;text-underline-offset:3px}
.cookie-banner{position:fixed;z-index:100000;left:50%;bottom:max(16px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(920px,calc(100vw - 28px));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:18px 20px;border:1px solid #202020;border-radius:2px;background:#fff;color:#090909;box-shadow:0 24px 70px rgba(0,0,0,.22)}.cookie-kicker{margin:0 0 5px;font-size:.62rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.cookie-banner__copy strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;font-weight:500;letter-spacing:-.025em}.cookie-banner__copy p:not(.cookie-kicker){margin:6px 0 5px;max-width:72ch;font-size:.76rem;line-height:1.5;color:#484848}.cookie-banner__copy a{font-size:.7rem;color:#111;text-underline-offset:3px}.cookie-banner__actions,.cookie-settings__actions{display:flex;gap:8px;flex-wrap:wrap}.cookie-button{min-height:40px;padding:0 18px;border:1px solid #050505;border-radius:1px;background:#fff;color:#050505;font-size:.69rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase;cursor:pointer}.cookie-button--primary{background:#050505;color:#fff}.cookie-button--ghost{background:#f6f6f3}.cookie-button:focus-visible,.cookie-settings__close:focus-visible{outline:2px solid #111;outline-offset:2px}
.cookie-settings{width:min(660px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border:0;background:transparent}.cookie-settings::backdrop{background:rgba(226,230,238,.68);backdrop-filter:blur(12px)}.cookie-settings__card{overflow:hidden;border:1px solid #111;border-radius:2px;background:#fff;box-shadow:0 28px 90px rgba(0,0,0,.22)}.cookie-settings__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 24px;background:#050505;color:#fff}.cookie-settings__head h2{margin:3px 0 0;font-family:Georgia,"Times New Roman",serif;font-size:2rem;font-weight:500;letter-spacing:-.04em}.cookie-settings__close{width:38px;height:38px;border:1px solid #777;border-radius:50%;background:#fff;color:#050505;font-size:1.1rem;cursor:pointer}.cookie-settings__body{padding:10px 24px}.cookie-setting-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:17px 0;border-bottom:1px solid #d7d7d2}.cookie-setting-row strong{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;font-weight:500}.cookie-setting-row p{margin:5px 0 0;max-width:54ch;color:#555;font-size:.75rem;line-height:1.5}.cookie-setting-status{padding:7px 9px;border:1px solid #bbb;font-size:.64rem;font-weight:800;text-transform:uppercase}.cookie-switch{position:relative;display:inline-flex;width:50px;height:28px}.cookie-switch input{position:absolute;opacity:0;pointer-events:none}.cookie-switch span{width:100%;height:100%;border:1px solid #777;background:#eee;cursor:pointer;transition:background .18s}.cookie-switch span::after{content:"";position:absolute;top:4px;left:5px;width:18px;height:18px;background:#111;transition:transform .18s}.cookie-switch input:checked+span{background:#111}.cookie-switch input:checked+span::after{transform:translateX(21px);background:#fff}.cookie-settings__note{margin:14px 0 4px;color:#555;font-size:.72rem;line-height:1.5}.cookie-settings__actions{justify-content:flex-end;padding:16px 24px 22px}
/* Enrolment: no nested scrollbar; deliberately compact while keeping the existing layout. */
.enrol-dialog{width:min(780px,calc(100% - 18px))!important;max-height:none!important;overflow:visible!important}.enrol-card{max-height:none!important;overflow:visible!important}.enrol-head{padding:19px 22px 15px!important}.enrol-head h2{font-size:clamp(2rem,3.5vw,3.1rem)!important}.enrol-body{padding:14px 22px 17px!important}.enrol-call{padding:11px 13px!important;min-height:48px!important}.enrol-call p{font-size:.72rem!important;line-height:1.35!important}.enrol-call strong{font-size:.86rem!important}.enrol-call .v21-button{min-height:36px!important;padding:0 16px!important}.enrol-or{margin:10px 0!important}.enrol-intro{margin:0 0 10px!important;font-size:.72rem!important;line-height:1.42!important}.enrol-form{gap:8px!important}.form-row{gap:9px!important}.form-field{gap:4px!important}.form-field label{font-size:.67rem!important}.form-field input,.form-field select{min-height:39px!important;padding:8px 10px!important}.form-field textarea{min-height:60px!important;max-height:60px!important;padding:8px 10px!important;resize:none!important}.phone-field .iti{margin-top:3px!important}.phone-field .iti input{min-height:39px!important}.form-status{min-height:0!important;font-size:.65rem!important;line-height:1.35!important}.enrol-submit-row--single .v21-button{min-height:39px!important}.enrol-turnstile{min-height:0}.enrol-turnstile:empty{display:none}
@media(max-width:620px){.cookie-banner{bottom:max(7px,env(safe-area-inset-bottom));width:calc(100vw - 12px);grid-template-columns:1fr;gap:11px;padding:13px 14px}.cookie-banner__copy strong{font-size:1.05rem}.cookie-banner__copy p:not(.cookie-kicker){font-size:.68rem}.cookie-banner__actions{display:grid;grid-template-columns:1fr 1fr}.cookie-button{min-height:38px;padding-inline:10px}.cookie-settings{width:calc(100vw - 10px);max-height:calc(100dvh - 10px)}.cookie-settings__head{padding:16px}.cookie-settings__head h2{font-size:1.55rem}.cookie-settings__body{padding:7px 16px}.cookie-setting-row{padding:13px 0}.cookie-setting-row strong{font-size:1.05rem}.cookie-setting-row p{font-size:.67rem}.cookie-settings__actions{display:grid;grid-template-columns:1fr 1fr;padding:12px 16px 16px}.cookie-settings__actions .cookie-button--primary{grid-column:1/-1}.enrol-dialog{width:calc(100% - 8px)!important}.enrol-head{padding:13px 14px 10px!important}.enrol-head h2{font-size:1.85rem!important}.enrol-close{width:34px!important;height:34px!important}.enrol-body{padding:10px 12px 12px!important}.enrol-call{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:8px!important;padding:8px 9px!important}.enrol-call .v21-button{width:auto!important;min-width:64px!important}.enrol-or{margin:7px 0!important;font-size:.58rem!important}.enrol-intro{font-size:.65rem!important;margin-bottom:7px!important}.enrol-form{gap:6px!important}.form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:6px!important}.form-field{gap:2px!important;min-width:0!important}.form-field label{font-size:.59rem!important;line-height:1.15!important}.form-field input,.form-field select{min-height:34px!important;height:34px!important;padding:5px 7px!important;font-size:.72rem!important;border-radius:1px!important}.phone-field .iti{margin-top:3px!important;min-width:0!important}.phone-field .iti input{min-height:34px!important;height:34px!important;font-size:.7rem!important}.phone-field .iti__selected-country{min-width:61px!important}.form-field textarea{min-height:48px!important;max-height:48px!important;font-size:.7rem!important}.form-status{font-size:.57rem!important;line-height:1.25!important}.enrol-submit-row--single .v21-button{min-height:34px!important;font-size:.64rem!important}.enrol-turnstile{transform-origin:left top}.global-footer nav button,.v21-footer nav button{white-space:nowrap}}
@media(max-width:340px){.enrol-body{padding-inline:9px!important}.form-row{gap:4px!important}.form-field label{font-size:.55rem!important}.form-field input,.form-field select,.phone-field .iti input{font-size:.65rem!important}.phone-field .iti__selected-country{min-width:56px!important}}


/* ---- v32.css ----
   Usavir V32 — compact international phone prefix.
   The country selector fits its contents instead of consuming a fixed chunk
   of the input; the untouched number field never shows an example digit. */
.phone-field .iti{width:100%!important;min-width:0!important}
.phone-field .iti__selected-country{
  width:max-content!important;
  min-width:0!important;
  max-width:none!important;
  flex:0 0 auto!important;
  border-right:1px solid #b9b9b5!important;
  background:#f7f7f4!important;
}
.phone-field .iti__selected-country-primary{
  width:auto!important;
  min-width:0!important;
  padding:0 6px!important;
  gap:3px!important;
  justify-content:flex-start!important;
  background:#f7f7f4!important;
}
.phone-field .iti__flag{margin-right:0!important}
.phone-field .iti__arrow{margin-left:0!important}
.phone-field .iti input{
  width:100%!important;
  min-width:0!important;
  padding-right:8px!important;
}
.phone-field .iti input::placeholder{color:transparent!important;opacity:0!important}
@media(max-width:620px){
  .phone-field .iti__selected-country{width:max-content!important;min-width:0!important}
  .phone-field .iti__selected-country-primary{padding-inline:4px!important;gap:2px!important}
  .phone-field .iti input{padding-right:5px!important}
}

/* V33 — I♥PDF footer band spans the viewport; inner links/copyright keep the old centred geometry */
.site-footer.usavir-footer{
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;
  border-top:1px solid #b7b7b3!important;background:#f7f7f4!important;overflow:visible!important;box-sizing:border-box!important;
}
.site-footer.usavir-footer>.usavir-footer-inner{
  width:min(100%,1480px);margin:0 auto;padding:16px clamp(18px,3vw,48px) 22px;display:flex;align-items:center;justify-content:center;gap:11px;
  white-space:nowrap;overflow-x:auto;scrollbar-width:none;box-sizing:border-box;text-align:left;
}
.site-footer.usavir-footer>.usavir-footer-inner::-webkit-scrollbar{display:none}
.site-footer.usavir-footer>.usavir-footer-inner nav{display:flex!important;align-items:center!important;gap:11px!important;flex:0 0 auto!important;margin:0!important}
@media(max-width:620px){
  .site-footer.usavir-footer>.usavir-footer-inner{width:100%;padding:13px 12px calc(15px + env(safe-area-inset-bottom));gap:7px;justify-content:flex-start;font-size:clamp(.49rem,1.75vw,.61rem)}
  .site-footer.usavir-footer>.usavir-footer-inner nav{gap:7px!important}
}
