*{box-sizing:border-box}body{margin:0;background:#f7f9f5;color:#203628;font:15px/1.55 Arial,Helvetica,sans-serif}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}.member-header{height:82px;background:#fff;border-bottom:1px solid #e3ebe1;display:flex;align-items:center;justify-content:space-between;padding:0 max(5%,calc((100vw - 1110px)/2))}.brand{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:800;line-height:1.1}.brand small{display:block;font-size:11px;color:#7d927e;margin-top:6px;font-weight:500}.brand-mark{width:45px;height:45px;border-radius:12px;background:#267446;color:#fff;display:grid;place-items:center;letter-spacing:-.08em}.store-link{color:#2a7448;font-size:13px;font-weight:700}.member-shell{max-width:1110px;margin:auto;padding:54px 24px 80px}.intro{max-width:670px;margin-bottom:32px}.eyebrow{display:block;color:#338653;font-weight:800;font-size:11px;letter-spacing:.14em;margin-bottom:9px}.intro h1{font:normal clamp(36px,4vw,54px)/1.1 Georgia,serif;letter-spacing:-.045em;margin:0}.intro p,.panel>p{color:#76887a;margin:13px 0 0}.member-grid{display:grid;grid-template-columns:1.07fr .93fr;gap:24px;align-items:start}.panel{background:#fff;border:1px solid #e0e9df;border-radius:18px;padding:32px;box-shadow:0 16px 40px #17402a08}.panel h2{font:normal 29px Georgia,serif;letter-spacing:-.03em;margin:0}.panel form{margin-top:25px}.panel label{display:block;color:#33483a;font-size:13px;font-weight:700;margin-bottom:17px}.panel input,.panel textarea{display:block;width:100%;margin-top:7px;border:1px solid #d6e2d5;border-radius:10px;background:#fbfcfa;padding:12px 13px;color:#203628;outline:none}.panel input:focus,.panel textarea:focus{border-color:#348456;box-shadow:0 0 0 3px #dcefe0}.panel textarea{min-height:128px;resize:vertical}.panel input::placeholder,.panel textarea::placeholder{color:#a2b0a3}.primary-button,.outline-button{cursor:pointer;border-radius:10px;padding:13px 18px;font-weight:800}.primary-button{width:100%;border:0;background:#257449;color:white}.primary-button:hover{background:#195c37}.outline-button{border:1px solid #d5e3d2;background:#fff;color:#2a7647}.login-info{margin-top:29px;padding:16px;background:#f0f6ee;border-radius:10px;color:#65816a;font-size:13px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-heading form{margin:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.email-note{color:#738579;font-size:13px}.cta{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#eaf4e7;border-radius:14px;padding:22px;margin-top:20px}.cta a{color:#246e42;font-weight:800}.alert,.notice{padding:13px 16px;border-radius:10px;margin:0 0 22px}.alert{background:#fff0e7;color:#a34e24}.notice{background:#eaf5e9;color:#266d3c}footer{text-align:center;color:#9aaa9b;font-size:12px;padding:25px;border-top:1px solid #e3ebe1}@media(max-width:700px){.member-header{height:70px;padding:0 18px}.member-shell{padding:35px 16px 55px}.member-grid,.two-col{grid-template-columns:1fr}.panel{padding:24px}.intro h1{font-size:37px}.cta{display:block}.cta a{display:block;margin-top:8px}}

/* Mobile member page hardening — no desktop changes */
@media(max-width:767px){
  html,body{max-width:100%;overflow-x:hidden}
  .member-header{height:auto;min-height:66px;padding:9px 13px;gap:10px}
  .brand{gap:9px;font-size:15px;min-width:0}
  .brand-mark{width:39px;height:39px;border-radius:10px}
  .brand small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
  .store-link{font-size:11px;white-space:nowrap}
  .member-shell{padding:26px 11px 44px}
  .intro{margin-bottom:20px}
  .intro h1{font-size:clamp(2rem,11vw,2.8rem);line-height:1.05}
  .intro p{font-size:.88rem;line-height:1.6}
  .member-grid{gap:12px}
  .panel{padding:18px 14px;border-radius:15px}
  .panel h2{font-size:24px}
  .panel form{margin-top:18px}
  .panel label{font-size:12px;margin-bottom:13px}
  .panel input,.panel textarea{font-size:16px;padding:12px;border-radius:9px}
  .panel textarea{min-height:105px}
  .primary-button,.outline-button{min-height:44px;padding:12px 14px}
  .panel-heading{align-items:flex-start;gap:9px;flex-wrap:wrap}
  .login-info,.alert,.notice{font-size:12px;line-height:1.5}
  .cta{padding:16px;border-radius:12px;font-size:.87rem}
}

.forgot-row{display:flex;justify-content:flex-end;margin:-7px 0 16px}.forgot-link{color:#257449;font-size:13px;font-weight:800}.forgot-link:hover{text-decoration:underline}.reset-shell{max-width:680px}.reset-panel{max-width:620px}.reset-panel .help-text{color:#76887a;font-size:13px;line-height:1.65;margin:10px 0 0}.reset-actions{display:flex;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap}.reset-actions .primary-button{width:auto}.reset-back{font-weight:800;color:#257449;font-size:13px}
