.member-page-heading{margin:0 0 25px}.member-page-heading h1{font-size:30px;letter-spacing:-.8px;margin:8px 0 10px}.member-page-heading>p{color:#68705f;font-size:14px;line-height:1.65;margin:0}.member-profile-layout{display:grid;grid-template-columns:280px minmax(0,540px);gap:24px;justify-content:center;align-items:start}.member-pass{border-radius:22px;background:linear-gradient(150deg,#283025,#131811);color:#fff;padding:30px;overflow:hidden;position:relative}.member-pass>img{width:76.8px;height:76.8px;border:0;border-radius:0;background:transparent;object-fit:contain;object-position:center;margin-bottom:25px}.member-pass>span:not(.member-level-pill){font-size:9px;display:block;color:#e6b084;letter-spacing:1.2px}.member-pass h2{font-size:25px;line-height:1.25;margin:12px 0;letter-spacing:-.6px}.member-pass p{font-size:14px;color:#c9d0c3;line-height:1.65}.member-pass>.member-small{font-size:12px;margin-top:20px;color:#b7c2ad}.member-pass>a{color:#ffca9f;font-size:12px;text-decoration:none}.member-level-pill{display:inline-flex;align-items:center;gap:7px;background:#fff1e4;border:1px solid #edcdb5;color:#9b451f;padding:6px 10px;border-radius:20px;font-size:11px;font-weight:700;white-space:nowrap}.member-pass .member-level-pill{margin-top:10px;background:#ffffff12;color:#ffd2ad;border-color:#ffffff30}.member-form-card,.member-month-card,.member-agenda{background:#fff;border:1px solid #e0e3da;border-radius:20px;padding:27px;min-width:0}.member-form-card fieldset{border:0;padding:0;margin:0;min-width:0}.member-form-card legend{font-size:20px;font-weight:700;padding:0;margin:2px 0 15px}.member-form-card label:not(.member-map-consent){display:block;font-size:13px;font-weight:650;margin:18px 0 8px}.member-form-card input:not([type=checkbox]),.member-form-card select{width:100%;min-width:0;border:1px solid #d8ddcf;border-radius:11px;padding:12px 13px;background:#fff;color:#2d3426;font-size:16px;min-height:46px}.member-form-card input[readonly]{background:#f3f4ef;color:#707666}.member-form-card input:focus,.member-form-card select:focus{outline:2px solid #bd6b35;outline-offset:2px}.member-form-card small{display:block;color:#737b6a;font-size:11px;line-height:1.6;margin-top:7px}.profile-steps{display:flex;gap:12px;margin-bottom:26px}.profile-steps>span{flex:1;border-bottom:3px solid #e7e9df;color:#7b8372;font-size:12px;padding-bottom:12px}.profile-steps b{margin-left:6px;font-weight:500}.profile-steps [aria-current=step]{color:#b35323;border-color:#e7955b}.member-form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px}.member-form-actions .button{min-height:46px;font-size:13px}.member-form-error{font-size:13px;line-height:1.6;color:#aa391d;margin:14px 0}.member-private-note{font-size:11px;color:#737b6a;line-height:1.7;margin:22px 0 0}.member-private-note a{color:inherit}.member-map-consent{display:flex;gap:12px;align-items:flex-start;padding:16px;background:#f6f7f0;border:1px solid #e4e7dc;border-radius:12px;font-size:13px;line-height:1.55;margin-top:20px;cursor:pointer}.member-map-consent input{flex:none;width:19px;height:19px;margin:1px 0 0;accent-color:#9d502b}.member-map-consent small{margin-top:6px}.member-small{font-size:12px;color:#727a68;line-height:1.7}.member-calendar-layout{display:grid;grid-template-columns:minmax(290px,.9fr) minmax(0,1.1fr);gap:22px;align-items:start}.member-month-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.member-month-toolbar h2{font-size:18px;margin:0;text-align:center}.member-month-toolbar button{width:44px;height:44px;border:1px solid #e1e5d9;border-radius:11px;background:#f6f7f1;color:#3e4734;font-size:25px;cursor:pointer}.member-month-toolbar button:disabled{opacity:.35;cursor:default}.member-weekdays,.member-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.member-weekdays span{text-align:center;font-size:10px;font-weight:700;color:#8a907f;padding:5px 0 12px}.member-month-grid button{position:relative;display:grid;place-items:center;min-height:46px;width:100%;border:0;border-radius:12px;background:transparent;color:#47513c;font-size:13px;cursor:pointer;padding:6px 1px 12px}.member-month-grid button:hover{background:#f4f6ef}.member-month-grid button.is-today{font-weight:800;box-shadow:inset 0 0 0 1px #d8ddcf}.member-month-grid button.has-events:after,.calendar-legend i{content:'';display:block;width:5px;height:5px;background:#de8650;border-radius:50%}.member-month-grid button.has-events:after{position:absolute;bottom:6px}.member-month-grid button[aria-pressed=true]{background:#fff0e3;color:#aa461d}.calendar-legend{display:flex;align-items:center;gap:7px;margin:18px 0 0;font-size:11px}.member-agenda>h2{font-size:19px;margin:0 0 18px}.member-call{display:flex;gap:15px;border-top:1px solid #eceee6;padding:17px 0;align-items:flex-start}.member-call:first-child{border-top:0;padding-top:0}.member-call-date{flex:none;width:46px;text-align:center;border-radius:10px;background:#f3f5ed;padding:8px 2px;color:#56664a}.member-call-date b{display:block;font-size:19px;line-height:1.2}.member-call-date small{font-size:9px;text-transform:uppercase}.member-call-body{flex:1;min-width:0}.member-call h3{font-size:14px;line-height:1.5;margin:0 0 4px}.member-call p{font-size:12px;line-height:1.6;color:#69765f;margin:0 0 8px}.member-call a,.member-call button{display:inline-flex;font-size:11px;border:1px solid #e3d8cc;background:#fff7ee;border-radius:8px;padding:8px 10px;color:#99502a;text-decoration:none;cursor:pointer;min-height:36px;align-items:center}.member-call-actions{display:flex;gap:8px;flex-wrap:wrap}.member-text-button{border:0;background:transparent;color:#955129;min-height:44px;cursor:pointer;font:inherit;font-size:12px;padding:8px 0}.member-personal-call{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 27px;background:#293224;color:#fff;border-radius:18px;margin:22px 0}.member-personal-call h2{font-size:18px;margin:4px 0 7px}.member-personal-call p{font-size:13px;color:#c9d5bc;margin:0;line-height:1.6}.member-personal-call .button{font-size:12px;white-space:nowrap}.member-map-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px;font-size:13px}.member-map-summary p{margin:0;color:#67725a}.member-map-summary strong{color:#303c27}.member-map-summary a{color:#99502a;font-size:12px}.member-map-frame{border:1px solid #dce2d2;border-radius:20px;overflow:hidden;background:#edf2e7;isolation:isolate}.member-map-placeholder{min-height:350px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px;background:radial-gradient(ellipse at 50% 10%,#fafff2,#e4ebd9)}.member-map-placeholder>svg{width:68px;height:68px;color:#879d70;margin-bottom:12px}.member-map-placeholder h2{font-size:23px;margin:10px 0}.member-map-placeholder p{font-size:13px;line-height:1.8;color:#6b775c;max-width:430px;margin:0 0 20px}.member-map-placeholder .button{font-size:13px}#member-map-canvas{height:430px;min-height:300px;z-index:0}.member-map-frame .leaflet-container{font-family:inherit;background:#e4ebde}.member-map-frame .leaflet-control-attribution{font-size:10px}.member-map-frame .leaflet-control-attribution a{color:#3d563a}.member-city-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.member-city-list button{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid #e0e4d8;border-radius:12px;background:#fff;padding:13px 15px;text-align:left;cursor:pointer;font:inherit;min-width:0}.member-city-list button>span{min-width:0;overflow-wrap:anywhere;font-size:13px;color:#46533a}.member-city-list small{display:block;font-size:10px;color:#859176;margin-top:3px}.member-city-list b{background:#edf3e5;border-radius:50%;width:27px;height:27px;flex:none;display:grid;place-items:center;font-size:11px;color:#536b3f}.member-map-dot{border:3px solid #fff;border-radius:50%;background:#263220;color:#fff;display:grid;place-items:center;box-shadow:0 3px 10px #1d251a33;font-size:12px;font-weight:800}.member-map-dot:hover{background:#a8582d}.member-map-dot span{display:grid;place-items:center;width:100%;height:100%}.member-map-error{padding:18px;border:1px solid #e7d0b9;background:#fff5e9;border-radius:12px;font-size:13px;line-height:1.7}.member-map-error a{color:#98491f}.member-form-card [hidden],.member-profile [hidden],.member-calendar [hidden],.member-map-page [hidden]{display:none!important}
@media(max-width:900px){.member-city-list{grid-template-columns:repeat(3,minmax(0,1fr))}.member-profile-layout{grid-template-columns:220px minmax(0,1fr)}.member-pass{padding:24px}.member-calendar-layout{grid-template-columns:minmax(270px,.9fr) minmax(0,1fr)}}
@media(max-width:680px){.member-page-heading h1{font-size:26px}.member-profile-layout,.member-calendar-layout{grid-template-columns:1fr;gap:16px}.member-pass{display:none}.member-form-card,.member-month-card,.member-agenda{padding:20px;border-radius:17px}.member-form-card legend{font-size:18px}.member-city-list{grid-template-columns:repeat(2,minmax(0,1fr))}.member-personal-call{align-items:flex-start;flex-direction:column;padding:22px}.member-personal-call .button{width:100%;justify-content:center}.member-map-placeholder{min-height:320px;padding:24px}#member-map-canvas{height:340px}.member-map-summary{font-size:12px}.member-map-summary a{min-height:35px;display:flex;align-items:center}.member-form-actions .button{flex:1;justify-content:center}}
@media(prefers-reduced-motion:no-preference){.member-form-card,.member-month-card,.member-agenda{animation:member-enter .25s ease-out}@keyframes member-enter{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}}

.member-month-grid button:disabled{opacity:.32;cursor:default;background:transparent}
.member-call h3,.member-personal-call h2{overflow-wrap:anywhere}.member-personal-call>div{min-width:0}

.member-postal-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,.65fr);gap:14px}.member-postal-row>div{min-width:0}.member-place-help{border:0;background:none;color:#655d50;font:inherit;font-size:12px;padding:8px 0;text-decoration:underline;cursor:pointer}.member-hq-card{display:flex;gap:12px;align-items:center;padding:14px 18px;margin:12px 0;border:1px solid #ecd2bf;background:#fff5ec;border-radius:16px}.member-hq-card img{width:52.8px;height:52.8px;border:0;border-radius:0;background:transparent;object-fit:contain;flex-shrink:0}.member-hq-card strong,.member-hq-card span{display:block}.member-hq-card span{font-size:12px;color:#766456;margin-top:3px}.member-hq-card button{margin-left:auto;flex-shrink:0;border:0;border-radius:10px;padding:10px 14px;background:#e75e16;color:white;cursor:pointer;font:inherit;font-size:12px}.member-map-hq{border:0;border-radius:0;background:transparent;box-shadow:none;filter:drop-shadow(0 2px 3px #0003)}.member-map-hq img{display:block;width:100%;height:100%;object-fit:contain;border-radius:0}@media(max-width:400px){.member-hq-card{flex-wrap:wrap}.member-hq-card button{margin-left:56px}.member-postal-row{grid-template-columns:1fr 90px;gap:10px}}

/* Optional personal photo: one compact picker, no extra wizard step. */
.member-profile-avatar{display:grid;place-items:center;overflow:hidden;flex:none;width:76.8px;height:76.8px;border-radius:50%;background:#e9eddf;color:#405133;font-size:25px;font-weight:700;line-height:1}.member-profile-avatar img{display:block;width:100%;height:100%;object-fit:contain}.member-pass>.member-profile-avatar{margin-bottom:25px;background:#ffffff15;color:#fff}.member-photo-field{margin:0 0 22px;padding-bottom:17px;border-bottom:1px solid #e6e8df}.member-photo-row{display:flex;align-items:center;gap:14px}.member-photo-row>.member-profile-avatar{width:52px;height:52px;font-size:19px}.member-photo-row strong{font-size:13px}.member-photo-row strong>span{font-weight:400;color:#7d8672}.member-photo-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.member-photo-actions .member-text-button{font-size:12px;min-height:38px}.member-photo-field>small{display:block;line-height:1.6;margin-top:9px}.member-photo-field [role=status]:empty{display:none}.member-photo-field canvas{display:block;width:min(256px,100%);height:auto;aspect-ratio:1;touch-action:none;cursor:grab;border-radius:50%;background:repeating-conic-gradient(#e1e4dc 0% 25%,#f4f5ef 0% 50%) 50% / 16px 16px;outline:1px solid #d4daca;margin:14px auto}.member-photo-field canvas:focus-visible{outline:3px solid #b25829;outline-offset:3px}.member-photo-field input[type=range]{padding:0;accent-color:#bd6332;min-height:34px}.member-calendar-access{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin:0 0 20px;padding:14px 18px;border:1px solid #e2e5d9;border-radius:14px;background:#f0f3e9}.member-calendar-access p{flex:1;min-width:180px;margin:0;font-size:13px;line-height:1.6;color:#66725b}.member-map-person{display:grid;place-items:center;background:#fff8eb;color:#4c603c;border:2px solid #b17b48;border-radius:50%;overflow:hidden;font-weight:750;font-size:15px;box-shadow:0 2px 5px #0002}.member-map-person img,.member-map-person>span{width:100%;height:100%;display:grid;place-items:center;object-fit:contain}.member-popup-people{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;max-width:220px}.member-popup-people .member-map-person{width:40px;height:40px;flex:none}.member-popup-more{margin-top:9px;min-height:32px;border:0;background:#eff3e8;border-radius:7px;color:#4c603c;padding:5px 10px;cursor:pointer}.member-popup-status{font-size:11px;color:#6e785f}

.member-profile-avatar.has-photo,.member-pass>.member-profile-avatar.has-photo{background:transparent}
