.login-page,.login-page *,.login-page :after,.login-page :before{box-sizing:border-box}body:has(.login-page){margin:0}.login-page{align-items:center;background:#f7f9f7;color:#18202a;display:flex;font-family:Arial,Helvetica,sans-serif;justify-content:center;min-height:100vh;padding:1.25rem}.login-panel{background:rgba(255,255,255,.82);border:1px solid #dbe5ea;border-radius:12px;box-shadow:0 18px 60px rgba(22,32,42,.08);max-width:34rem;padding:clamp(1.5rem,5vw,2.75rem);width:100%}.login-panel .eyebrow{color:#07504d;font-size:.78rem;font-weight:900;letter-spacing:.12em;margin:0 0 .8rem;text-transform:uppercase}.login-panel h1{font-family:Georgia,Times New Roman,serif;font-size:clamp(2.35rem,7vw,4rem);line-height:.98;margin:0 0 1rem}.auth-message,.login-panel .intro{color:#607080;line-height:1.6}.auth-form{display:grid;gap:1rem;margin-top:1.35rem;position:relative}.auth-field,.auth-form label{display:grid;gap:.45rem}.auth-field>label,.auth-form label>span:first-child,.optional-profile-fields label>span:first-child{color:#607080;font-size:.76rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.auth-mode-tabs{background:#eef4f3;border:1px solid #dbe5ea;border-radius:999px;display:grid;gap:.35rem;grid-template-columns:1fr 1fr;padding:.3rem}.auth-mode-tabs button{background:transparent;border:0;border-radius:999px;color:#607080;cursor:pointer;font:inherit;font-weight:900;min-height:2.45rem;padding:.55rem .75rem}.auth-mode-tabs button.active{background:#fff;box-shadow:0 .35rem 1rem rgba(22,32,42,.08);color:#07504d}.auth-mode-tabs button:disabled{cursor:wait;opacity:.7}.auth-form input,.auth-form select{background:#fff;border:1px solid #cddce3;border-radius:8px;color:#18202a;font:inherit;min-height:3rem;padding:.72rem .85rem;width:100%}.auth-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#607080 0),linear-gradient(135deg,#607080 50%,transparent 0);background-position:calc(100% - 1.05rem) 50%,calc(100% - .75rem) 50%;background-repeat:no-repeat;background-size:.32rem .32rem,.32rem .32rem;padding-right:2.2rem}.auth-form button:focus-visible,.auth-form input:focus,.auth-form select:focus,.auth-form summary:focus-visible,.login-panel a:focus-visible{outline:3px solid rgba(17,119,111,.25);outline-offset:2px}.auth-form input:focus,.auth-form select:focus{border-color:#11776f;box-shadow:0 0 0 3px rgba(17,119,111,.12)}.auth-form input[aria-invalid=true]{border-color:#b4482e}.password-input-wrap{display:block;position:relative}.password-input-wrap input{padding-right:4.6rem}.password-visibility-button{background:transparent;border:0;color:#07504d;cursor:pointer;font:inherit;font-size:.82rem;font-weight:900;min-height:2.2rem;padding:0 .7rem;position:absolute;right:.25rem;top:50%;transform:translateY(-50%)}.field-error,.password-guidance{font-size:.84rem;line-height:1.45;margin:-.55rem 0 0}.password-guidance{color:#607080}.field-error{color:#a43f28;font-weight:800}.optional-profile{border:1px solid #dbe5ea;border-radius:10px;overflow:hidden}.optional-profile summary{align-items:center;color:#18202a;cursor:pointer;display:grid;gap:.2rem;list-style-position:outside;margin-left:1rem;padding:.95rem 1rem .95rem .2rem}.optional-profile summary span{font-weight:900}.optional-profile summary small{color:#607080;font-size:.8rem}.optional-profile[open] summary{border-bottom:1px solid #dbe5ea}.optional-profile-fields{background:rgba(238,244,243,.42);display:grid;gap:1rem;padding:1rem}.optional-profile-fields>p{color:#607080;line-height:1.55;margin:0}.legal-consent{color:#607080;font-size:.84rem;line-height:1.55;margin:-.1rem 0 0}.legal-consent a{color:#07504d;font-weight:800;text-underline-offset:.16rem}.turnstile-wrap{max-width:100%;min-height:1px;overflow:hidden}.auth-actions{display:grid;gap:.7rem;grid-template-columns:1fr}.auth-actions button,.back-link,.profile-actions a{align-items:center;border-radius:999px;display:inline-flex;font-weight:900;justify-content:center;min-height:2.75rem;padding:.75rem 1rem;text-decoration:none}.auth-actions button{background:#11776f;border:1px solid #11776f;color:#fff;cursor:pointer;font:inherit}.auth-actions button:disabled{cursor:wait;opacity:.62}.single-action{grid-template-columns:1fr}.auth-secondary-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem 1rem}.forgot-password-button{background:transparent;border:0;color:#07504d;cursor:pointer;font:inherit;font-weight:900;padding:0;text-decoration:underline;text-underline-offset:.18rem}.forgot-password-button:disabled{cursor:wait;opacity:.62}.existing-account-note{color:#607080;line-height:1.6;margin:0}.existing-account-note button{background:transparent;border:0;color:#07504d;cursor:pointer;font:inherit;font-weight:900;padding:0;text-decoration:underline;text-underline-offset:.18rem}.auth-message-region:empty{display:none}.auth-message{margin:0}.auth-message.success{color:#11776f;font-weight:800}.auth-message.warning{color:#9a4b12;font-weight:800}.honeypot-field{height:1px;left:-10000px;overflow:hidden;position:absolute;top:auto;width:1px}.profile-summary{border:1px solid #dbe5ea;border-radius:8px;display:grid;gap:1rem;margin-top:1.35rem;padding:1rem}.profile-email{color:#18202a;font-weight:900;margin:0;overflow-wrap:anywhere}.profile-summary dl{display:grid;gap:.75rem;margin:0}.profile-summary dl div{border-top:1px solid #dbe5ea;display:grid;gap:.25rem;padding-top:.75rem}.profile-summary dt{color:#607080;font-size:.76rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.profile-summary dd{color:#18202a;font-weight:800;margin:0}.profile-actions{display:grid;gap:.7rem;grid-template-columns:1fr 1fr}.profile-actions a{background:#11776f;border:1px solid #11776f;color:#fff}.profile-actions form{min-width:0}.back-link{border:1px solid #cddce3;color:#07504d;margin-top:1.1rem}@media (max-width:520px){.login-page{align-items:flex-start;padding:.75rem}.login-panel{padding:1.25rem}.profile-actions{grid-template-columns:1fr}.auth-secondary-actions{align-items:flex-start;flex-direction:column}}@media (prefers-reduced-motion:reduce){.auth-form *,.auth-form :after,.auth-form :before{scroll-behavior:auto!important;transition-duration:.01ms!important}}