.membership-main{padding-bottom:60px}.auth-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:75px;padding-top:95px;padding-bottom:70px}.auth-story{padding-top:30px}.auth-story h1{font-size:clamp(42px,5vw,74px);line-height:1.08;letter-spacing:-.045em;margin:25px 0}.auth-story em{font-family:Georgia,serif;font-weight:400;color:#78d6c7}.auth-story p{max-width:440px;font-size:18px;line-height:1.8;color:#b8cdd5}.auth-benefits{margin-top:40px;line-height:2.6;color:#a8c5ce;font-size:14px}.auth-card{padding:38px;background:#102633;border:1px solid #2b4e5a;border-radius:22px}.auth-card h2{font-size:32px;line-height:1.2;margin:15px 0 25px}.auth-card h1{font-size:40px;line-height:1.2}.auth-card p{line-height:1.7;color:#b9cdd5}.social-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.social-options a{padding:15px 12px;border:1px solid #547582;border-radius:9px;text-align:center;font-size:13px;background:#0b1c28;color:#eef6f8}.social-options a:hover{border-color:#71d6c6}.auth-divider{text-align:center;font-size:12px;color:#9cb6c1;margin:24px 0}.member-form{display:flex;flex-direction:column;gap:20px}.member-form label{display:flex;flex-direction:column;gap:9px;font-size:14px;color:#deebee;line-height:1.6}.member-form input,.member-form select,.member-form textarea{box-sizing:border-box;width:100%;background:#0a1b28;border:1px solid #42616e;border-radius:8px;padding:13px 14px;color:#f5f8fa;font:inherit;font-size:16px}.member-form input:focus,.member-form select:focus,.member-form textarea:focus{outline:2px solid #5fcec0;outline-offset:2px}.member-form .check{display:block;font-size:12px}.member-form .check input{width:17px;height:17px;display:inline-block;vertical-align:middle;margin-right:8px;accent-color:#63cdbc}.member-form .check a,.auth-links a,.auth-note a{color:#85e4d5;text-decoration:underline}.member-form .button{width:100%;margin-top:5px}.member-form button:disabled{opacity:.6;cursor:wait}.form-status{font-size:14px;color:#f2cf96!important}.form-status:empty{display:none}.auth-links{display:flex;flex-direction:column;gap:16px;margin-top:28px;font-size:13px}.auth-note{font-size:12px!important;margin:25px 0 0}.account-hero{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:80px;padding-bottom:50px}.account-hero h1{font-size:clamp(38px,5vw,64px);line-height:1.15;overflow-wrap:anywhere}.account-hero p{color:#aac5cf}.account-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.account-heading h2,.application-panel h2{font-size:32px}.learning-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px;margin:25px 0 65px}.learning-card{border:1px solid #2c4c59;background:linear-gradient(135deg,#183644,#102331);padding:28px;border-radius:16px}.learning-card:hover{border-color:#78d6c7}.learning-card>span{float:right;color:#78d6c7;font-size:26px}.learning-card h3{font-size:24px;line-height:1.25}.application-panel{border-top:1px solid #2c4c59;padding-top:45px;padding-bottom:50px}.application-panel .member-form{max-width:320px;margin-top:20px}.status-pill{display:inline-block;padding:7px 15px;border:1px solid #68ae9f;border-radius:25px;color:#8ce1ce;font-size:13px}.member-gate{padding-top:110px;padding-bottom:110px;max-width:900px}.member-gate h2{font:clamp(37px,5vw,64px)/1.1 Georgia,serif;max-width:650px}.member-gate p{color:#b5cdd5;max-width:600px;line-height:1.8;margin-bottom:30px}.member-gate .button{margin:0 15px 15px 0}.policy-page{max-width:850px;padding-top:85px;padding-bottom:65px}.policy-page h1{font-size:50px}.policy-page h2{font-size:25px;margin-top:36px}.policy-page p{color:#bfd0d7;line-height:1.9}.policy-page a{color:#83dacb}.volunteer-page .auth-card{max-width:800px;margin:auto}.auth-layout>.auth-card:only-child{grid-column:1/-1;max-width:700px}@media(max-width:850px){.auth-layout{grid-template-columns:1fr;gap:30px;padding-top:50px}.auth-story{padding:0}.auth-benefits{display:none}.learning-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.auth-card{padding:25px 20px}.social-options,.learning-grid{grid-template-columns:1fr}.account-hero{display:block;padding-top:45px}.account-hero form{margin-top:25px}.member-gate{padding-top:60px;padding-bottom:60px}.auth-card h2{font-size:28px}.policy-page h1{font-size:38px}}

/* Medusane membership: an illustrated learning space with a clear, bright form. */
.membership-main{--member-ink:#102d38;--member-muted:#4d626a;--member-teal:#147b70;--member-cream:#f8f6ef;background:radial-gradient(ellipse at 14% 20%,#16434b55,transparent 48%),#091724}
.auth-layout{gap:46px;padding-top:56px;padding-bottom:60px;align-items:start}
.auth-entry{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:0;align-items:stretch;max-width:1240px;padding-top:48px;padding-bottom:60px}
.auth-entry .auth-story{position:relative;isolation:isolate;overflow:hidden;min-height:650px;border-radius:24px 0 0 24px;padding:0;background:#143a43}
.auth-library-art,.auth-story-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:57% center;z-index:-2}
.auth-story-shade{z-index:-1;background:linear-gradient(180deg,#082b35dd 2%,#0c3542c7 43%,#082530f5 100%)}
.auth-story-content{position:relative;display:flex;flex-direction:column;min-height:100%;padding:48px 44px 30px;box-sizing:border-box}
.auth-story-content .eyebrow{color:#b9e5d8;letter-spacing:.18em;font-size:10px}
.auth-story-content h1{font-family:Georgia,serif;font-size:clamp(44px,4.5vw,64px);font-weight:400;line-height:1.08;letter-spacing:-.04em;text-transform:none!important;color:#fff8e8;margin:34px 0 22px}
.auth-story-content h1 em{color:#84e0c9;font-family:inherit;font-style:italic}
.auth-story-content>p{color:#e0e9e5;font-size:16px;line-height:1.8;max-width:390px;margin:0 0 34px}
.auth-benefits{display:grid;gap:15px;margin:0 0 36px;line-height:1.5}
.auth-benefits>span{position:relative;padding:0 0 0 38px;color:#fff7e7;font-size:15px}
.auth-benefits b{position:absolute;left:0;top:2px;color:#8bcebd;font:12px Georgia,serif}
.auth-benefits small{display:block;color:#c4d9d5;font-size:12px;margin-top:3px}
.auth-story-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:auto;padding-top:22px;border-top:1px solid #c4d9d544;color:#c8ded9;font-size:9px;letter-spacing:.16em}
.auth-story-footer>span:last-child{font-size:24px;color:#d9bd80}
.auth-card{background:var(--member-cream);border:1px solid #e2e5dd;color:var(--member-ink);box-shadow:0 20px 70px #0002;padding:38px;border-radius:22px}
.auth-entry>.auth-card{padding:32px 40px 26px;border-radius:0 24px 24px 0}
.auth-card h1,.auth-card h2,.auth-card h3{color:var(--member-ink);text-transform:none!important;letter-spacing:-.035em}
.auth-card h2{font-family:Georgia,serif;font-weight:400;font-size:34px;margin:16px 0 10px;line-height:1.14}
.auth-card p{color:var(--member-muted)}
.auth-card>.eyebrow{font-size:10px;color:#336c63;letter-spacing:.15em}
.auth-card .auth-intro{font-size:14px;margin:0 0 24px}
.auth-mode{display:flex;background:#e9ede5;padding:4px;border-radius:10px;margin-bottom:32px}
.auth-mode a{display:block;flex:1;text-align:center;padding:10px 15px;border-radius:7px;color:#4d6260;font-size:13px;font-weight:600}
.auth-mode a[aria-current=page]{background:#fffefa;color:#154f48;box-shadow:0 2px 8px #173f3212}
.social-options{gap:12px}
.social-options a{display:flex;align-items:center;justify-content:center;gap:11px;background:#fffefa;border:1px solid #c8d2c8;color:#183d46;font-size:13px;font-weight:600;padding:12px 10px;border-radius:9px;min-height:47px;box-sizing:border-box;transition:border-color .2s,transform .2s}
.social-options a:hover{border-color:#147b70;transform:translateY(-1px)}
.provider-mark{font:700 21px/1 Arial,sans-serif;letter-spacing:-1px}
.google-mark{color:#3478c7}.facebook-mark{color:#1877f2;font-family:Arial,sans-serif;font-size:24px}
.auth-divider{display:flex;align-items:center;gap:12px;margin:21px 0;color:#667b7a;font-size:11px}
.auth-divider:before,.auth-divider:after{content:'';flex:1;height:1px;background:#d5ddd3}
.member-form{gap:17px}
.member-form label{color:#27464d;font-size:12px;font-weight:600;gap:7px}
.member-form input,.member-form select,.member-form textarea{background:#fffefa;border-color:#c2cec4;color:#153b44;border-radius:9px;font-size:15px;padding:12px 14px;min-height:47px}
.member-form input:focus,.member-form select:focus,.member-form textarea:focus{outline:2px solid #168576;outline-offset:2px}
.member-form input[readonly]{background:#eaf0e7;color:#51666d}
.member-form .button,.auth-card .button{background:#177b6e;color:#fffdf5;border:1px solid #177b6e;border-radius:9px;min-height:48px;font-size:14px;font-weight:700;box-shadow:0 6px 18px #177b6e1c}
.member-form .button:hover,.auth-card .button:hover{background:#106457;border-color:#106457}
.member-form .check{display:flex;flex-direction:row;align-items:flex-start;gap:9px;font-size:11px;font-weight:400;line-height:1.7;color:#425e63}
.member-form .check input{appearance:auto;flex:0 0 16px;min-height:16px;width:16px;height:16px;margin:3px 0 0;accent-color:#147b70;padding:0}
.member-form .check>span{display:block;min-width:0}
.member-form .check a,.auth-links a,.auth-note a{color:#14695e;text-decoration:underline;text-underline-offset:3px}
.auth-links{margin-top:22px;gap:12px;font-size:12px}
.auth-links a:last-child{color:#4b686c;font-size:11px}
.auth-note{font-size:11px!important;border-top:1px solid #d8e0d5;padding-top:16px;margin-top:20px}
.auth-card .form-status{color:#9b3a21!important;line-height:1.6}
.auth-card .form-status:not(:empty){padding:12px;border:1px solid #d1a18f;background:#fff2e8;border-radius:8px}
.profile-location{padding:20px 0 0;margin:2px 0;border:0;border-top:1px solid #d2dbcf;min-width:0}
.profile-location legend{padding:0 9px 0 0;font:20px Georgia,serif;color:#244c52}
.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.location-grid>label:last-child{grid-column:1/-1}
.account-location{font-size:14px;color:#afd8ca!important}
.auth-mode a:focus-visible,.social-options a:focus-visible,.auth-links a:focus-visible{outline:2px solid #147b70;outline-offset:3px}
@media(max-width:950px){.auth-entry{max-width:100%;gap:0}.auth-story-content{padding:38px 28px 26px}.auth-entry>.auth-card{padding:30px 28px}.auth-story-content h1{font-size:48px}.auth-layout:not(.auth-entry){grid-template-columns:1fr;gap:28px}}
@media(max-width:760px){.auth-entry{grid-template-columns:1fr;padding-top:28px}.auth-entry .auth-story{min-height:0;border-radius:22px 22px 0 0}.auth-story-content{padding:30px}.auth-story-content h1{font-size:43px;margin:22px 0 16px}.auth-story-content h1 br:last-child{display:none}.auth-story-content>p{font-size:14px;max-width:500px;margin-bottom:0}.auth-entry .auth-benefits,.auth-story-footer{display:none}.auth-entry>.auth-card{border-radius:0 0 22px 22px;padding:28px 30px}.auth-mode{margin-bottom:26px}.auth-story-content h1 em{display:block}.auth-entry .auth-story h1>br{display:none}}
@media(max-width:480px){.auth-entry{padding-top:20px}.auth-story-content,.auth-entry>.auth-card,.auth-card{padding:26px 22px}.auth-story-content h1{font-size:38px}.auth-card h2{font-size:31px}.social-options{grid-template-columns:1fr 1fr}.social-options a{gap:8px;font-size:12px}.location-grid{grid-template-columns:1fr}.location-grid>label:last-child{grid-column:auto}.auth-layout{padding-bottom:40px}.member-form .check{font-size:11px}}
@media(prefers-reduced-motion:reduce){.social-options a{transition:none}}

/* Form controls must shrink within profile columns and consent rows. */
.member-form label,.member-form input,.member-form select,.member-form textarea{min-width:0}
.member-form .check input{width:16px!important;min-width:16px!important;max-width:16px;flex:0 0 16px}
