/* 회원권 분양 안내 — 기존 ESPRESSO 테마의 색상과 서체를 사용합니다. */
.membership-notice{
  position:fixed;inset:0;margin:auto;padding:0;
  width:min(560px,calc(100% - 32px));
  max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);
  overflow:auto;overscroll-behavior:contain;
  background:linear-gradient(155deg,var(--forest-3),var(--forest) 78%);
  color:var(--bone);border:1px solid rgba(var(--gold2-rgb),.48);
  box-shadow:0 24px 90px rgba(0,0,0,.35);
  text-align:center;
}
.membership-notice:not([open]){display:none}
.membership-notice[open]{animation:membership-notice-in .45s var(--e) both}
.membership-notice::backdrop{background:rgba(var(--deep-rgb),.72);backdrop-filter:blur(6px)}
.membership-notice__content{position:relative;padding:42px 36px 28px}
.membership-notice__close{
  position:absolute;top:8px;right:8px;display:grid;place-items:center;
  width:44px;height:44px;color:var(--gold-2);
}
.membership-notice__close:hover{color:var(--bone)}
.membership-notice__brand{
  font-family:var(--f-en);font-size:25px;line-height:1.2;letter-spacing:.12em;
  color:var(--gold-3);padding-left:.12em;
}
.membership-notice__brand span{
  display:block;margin-top:8px;font-family:var(--f-bd);
  font-size:9px;font-weight:400;letter-spacing:.32em;color:var(--gold-2);
}
.membership-notice__rule{display:block;width:36px;height:1px;background:var(--gold);margin:25px auto}
.membership-notice__eyebrow{font-size:10px;font-weight:500;letter-spacing:.22em;color:var(--gold-2)}
.membership-notice h2{
  margin-top:10px;font-family:var(--f-dis);font-size:27px;
  font-weight:400;line-height:1.5;letter-spacing:-.045em;
}
.membership-notice__message{margin-top:26px;font-size:22px;line-height:1.8;letter-spacing:-.035em;font-weight:400}
.membership-notice__message strong{font-weight:600;color:var(--gold-3)}
.membership-notice__detail{margin-top:20px;font-size:14px;line-height:1.85;color:var(--w-64)}
.membership-notice__contact{
  display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;
  margin-top:25px;padding:14px 12px;border:1px solid rgba(var(--gold2-rgb),.25);
  background:rgba(var(--gold-rgb),.06);line-height:1.5;
}
.membership-notice__contact span{font-size:12px;color:var(--gold-2)}
.membership-notice__contact b{font-size:23px;font-weight:500;letter-spacing:.02em;font-variant-numeric:lining-nums}
.membership-notice__contact:hover{border-color:var(--gold-2)}
.membership-notice__actions{display:flex;align-items:stretch;border-top:1px solid rgba(var(--gold2-rgb),.22)}
.membership-notice__actions button{min-height:56px;padding:14px 12px;font-size:14px;line-height:1.5}
.membership-notice__today{flex:1;color:var(--w-64)}
.membership-notice__today:hover{color:var(--bone);background:rgba(var(--gold-rgb),.08)}
.membership-notice__confirm{flex:1;background:var(--gold-2);color:var(--on-gold);font-weight:600}
.membership-notice__confirm:hover{background:var(--gold-3)}
.membership-notice :focus-visible{outline:2px solid var(--gold-3);outline-offset:-5px}
.membership-notice__confirm:focus-visible{outline-color:var(--on-gold)}
@keyframes membership-notice-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){
  .membership-notice__content{padding:38px 20px 24px}
  .membership-notice__brand{font-size:22px}
  .membership-notice__rule{margin:22px auto}
  .membership-notice h2{font-size:23px}
  .membership-notice__message{margin-top:22px;font-size:20px}
  .membership-notice__detail{font-size:13px}
  .membership-notice__contact{gap:6px 12px;margin-top:22px}
  .membership-notice__contact b{font-size:21px}
  .membership-notice__actions button{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.membership-notice[open]{animation:none}}
