*{box-sizing:border-box}body{margin:0;background:#f7f8f2;color:#103e3a;font:16px/1.6 var(--fh-font),sans-serif}a{color:inherit;text-underline-offset:4px}p,h1{margin-top:0}h1{font-weight:800;letter-spacing:-.035em}img{max-width:100%}
.access{width:100%;max-width:528px;margin:64px auto;padding:32px 24px}.access-brand{display:inline-block;margin-bottom:48px}.access-brand img{display:block;width:220px;height:auto}.access-eyebrow{font-size:14px;font-weight:800;margin-bottom:16px}.access h1{font-size:clamp(32px,5vw,40px);line-height:1.15;margin-bottom:24px}.access p{overflow-wrap:anywhere;font-size:16px;line-height:1.6}.access-intro{font-size:18px!important}.access-primary{display:flex;align-items:center;justify-content:center;min-height:52px;width:100%;padding:14px 20px;border:2px solid #103e3a;border-radius:12px;background:#103e3a;color:#f7f8f2;font:700 16px/1.4 var(--fh-font),sans-serif;text-decoration:none;text-align:center;margin-top:24px}.access-primary:hover{background:#194e48}.access-primary:disabled{opacity:.65;cursor:not-allowed}.access a:focus-visible,.access button:focus-visible{outline:3px solid #103e3a;outline-offset:4px}.access-status{margin:12px 0 0}.access-status:empty{display:none}.access-detail{font-size:14px!important;margin-top:16px;color:#4b6861}.access-note{background:#e5f4ec;border-radius:16px;padding:20px;margin:24px 0}.access-note p:last-child{margin-bottom:0}.access footer{display:flex;flex-wrap:wrap;gap:16px 24px;margin-top:48px;font-size:14px}.access a{overflow-wrap:anywhere}@media(max-width:600px){.access{margin:16px auto;padding:24px}.access-brand{margin-bottom:36px}}
.access-top{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start;margin-bottom:40px}.access-top .access-brand{margin:0}.access-language{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px}.access-language label{font-weight:700}.access-language select,.access-language button{min-height:44px;border:1px solid #4b6861;border-radius:8px;background:white;color:#103e3a;font:inherit;padding:8px}.access-language button{cursor:pointer}.access-secondary{background:transparent;color:#103e3a}.access-secondary:hover{background:#e5f4ec}.access-primary{margin-top:16px}.access-switch{margin-top:24px}.access-divider{text-align:center;margin-top:20px}.access form>label{display:block;font-weight:700;margin:16px 0 8px}.access input[type=email],.access input[type=text],.access input[type=password]{width:100%;min-height:48px;padding:12px;border:1px solid #4b6861;border-radius:12px;background:white;color:#103e3a;font:inherit}.access input:focus-visible,.access select:focus-visible{outline:3px solid #103e3a;outline-offset:4px}.access .errorlist{padding-left:20px;margin:0}.access [hidden]{display:none}

.access [data-token-entry]>label{display:block;font-weight:700;margin-bottom:8px}

/* Access help: native disclosure controls remain usable without JavaScript. */
.access h2{font-size:20px;line-height:1.3;margin:0 0 12px}.access-methods{margin:0;padding-left:22px}.access-help-topics details{border-bottom:1px solid #bccfc5;padding:12px 0}.access-help-topics summary{cursor:pointer;min-height:48px;padding:12px 0;font-weight:700;overflow-wrap:anywhere}.access-help-topics summary:focus-visible{outline:3px solid #103e3a;outline-offset:4px}.access-help-topics details>p{margin:12px 0}.access-help-topics details[open]>summary{margin-bottom:4px}

/* Native credentials use the same accessible controls as other access forms. */
.access form p>label,.access form>div>label{display:block;font-weight:700;margin:16px 0 8px}

/* Native lifecycle progress and password controls remain usable at narrow widths. */
.access-step{display:inline-block;background:#e5f4ec;color:#103e3a;border:1px solid #bfd5c9;border-radius:999px;padding:6px 12px;font-size:13px!important;font-weight:700;margin:0 0 20px}
.access-password-toggle{display:block;min-height:44px;margin:4px 0 0 auto;padding:8px 2px;border:0;background:transparent;color:#103e3a;text-decoration:underline;text-underline-offset:3px;font:600 14px/1.4 var(--fh-font),sans-serif;cursor:pointer}
.access .errorlist{color:#9f342c;font-size:14px;line-height:1.5;margin:8px 0 12px;padding-left:20px}.access input[aria-invalid=true]{border:2px solid #9f342c}.access form{min-width:0}.access input{max-width:100%}.access-note{border:1px solid #bfd5c9}
