/* Page composition only. Palette, artwork, fonts and buttons use the guide's approved styles. */
.access-page [hidden]{display:none!important}
.access-page .brand{position:relative;padding-top:clamp(24px,4vh,48px)}
.access-page .access-main{max-width:760px;padding-top:clamp(28px,5vh,56px);padding-bottom:32px}
.access-page .access-heading{padding:0;margin-bottom:28px}
.access-page .access-heading h1{margin-bottom:16px}
.access-page .access-heading>p{max-width:550px;margin-inline:auto;line-height:1.6}
.access-page .access-panel{width:100%;max-width:620px;margin:auto;padding:clamp(24px,4vw,40px);text-align:center}
.access-page .access-panel h2{font-family:var(--serif);font-size:clamp(25px,3vw,32px);font-weight:500;color:var(--navy);margin:10px 0 14px}
.access-page .access-panel p{line-height:1.7;margin-bottom:20px}
.access-page .access-kicker{color:var(--sage-dark);font-size:12px;font-weight:650;letter-spacing:.12em;margin:0}
.access-page .access-actions{display:grid;gap:12px;margin-top:26px}
.access-page .access-panel .primary,.access-page .access-panel .secondary{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:52px;padding:12px 20px}
.access-page .access-panel form{text-align:left}
.access-page .access-panel label{display:block;color:var(--navy);margin-bottom:9px;font-weight:600}
.access-page #email{width:100%;min-height:54px;padding:12px 16px;margin-bottom:18px;border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--navy);font-size:17px}
.access-page .access-note{font-size:14px;color:var(--slate);margin:17px 0 0!important;text-align:center}
.access-page .access-status{margin:18px 0 0;color:var(--sage-dark);font-size:15px;overflow-wrap:anywhere}
.access-page .access-status:empty{display:none}
.access-page .access-logout{margin-top:18px;color:var(--slate);min-height:44px}
.access-page .legal-link-footer{margin-top:22px}
@media(max-width:480px){.access-page .brand{padding-top:24px}.access-page .access-main{padding-top:30px}.access-page .access-heading h1{font-size:36px}.access-page .access-panel{padding:24px 20px}.access-page .botanical{width:50vw}}

.access-page #requested-email{overflow-wrap:anywhere;color:var(--navy)}
.access-page #mail-heading:focus{outline:2px solid var(--sage-dark);outline-offset:5px}
.access-page .access-panel button:disabled{opacity:.65;cursor:wait}

.access-page .remember-device{display:flex!important;align-items:flex-start;gap:12px;text-align:left;margin:24px 0 0!important;font-size:15px;line-height:1.5;cursor:pointer}
.access-page .remember-device input{flex:0 0 auto;width:20px;height:20px;margin:2px 0 0;accent-color:var(--sage-dark)}
.access-page .remember-device{margin-bottom:22px!important}

.access-page .access-account-links{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:22px}
.access-page .marketing-choice{padding-top:18px;border-top:1px solid var(--line);font-weight:400;font-size:14px}
.access-page .marketing-note{margin:0 0 22px!important;text-align:left}
.access-page .contacts-scroll{overflow-x:auto;margin-top:24px}
.access-page .contacts-table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}
.access-page .contacts-table caption{font-size:15px;color:var(--navy);padding-bottom:16px;text-align:left}
.access-page .contacts-table th,.access-page .contacts-table td{padding:12px 8px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}
.access-page .contacts-table th{color:var(--navy)}
.access-page .contact-filters{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin:22px 0}
.access-page .contact-notice{text-align:left;font-size:15px}
.access-page .contact-notice h2{font-size:24px;margin-top:26px}

.access-page.access-wide .access-main{max-width:1040px}
.access-page.access-wide .access-panel{max-width:960px}
.access-page .contacts-table{min-width:600px}
.access-page .contacts-table th{white-space:nowrap}
.access-page .contacts-table td:first-child{min-width:210px;white-space:nowrap}
