/* CHARME | Three membership signup routes | 2026-10-31.
   Guest navigation/home only. No changes to member/authenticated menus or signup logic. */
.top.v12-header .nav .cm20-signup-switcher { position:relative; flex:0 0 auto; margin:0; color:#163e32; }
.top.v12-header .nav .cm20-signup-switcher summary {
  list-style:none; display:flex; align-items:center; justify-content:center; gap:7px;
  min-height:43px; padding:10px 16px; border:1px solid #bdd3c5; border-radius:999px;
  background:#edf5ef; color:#14513a; font-size:13px; font-weight:850; line-height:1.3;
  cursor:pointer; white-space:nowrap; transition:background .2s,border-color .2s,box-shadow .2s;
}
.top.v12-header .nav .cm20-signup-switcher summary::-webkit-details-marker {display:none}
.top.v12-header .nav .cm20-signup-switcher summary:hover,
.top.v12-header .nav .cm20-signup-switcher[open] summary {background:#e0eee5;border-color:#8baa97}
.top.v12-header .nav .cm20-signup-switcher summary:focus-visible {outline:3px solid #b48e54;outline-offset:3px}
.cm20-signup-chevron {font-size:17px;line-height:1;transition:transform .2s}
.cm20-signup-switcher[open] .cm20-signup-chevron {transform:rotate(180deg)}
.top.v12-header .nav .cm20-signup-panel {
  position:absolute;right:-100px;top:calc(100% + 13px);width:425px;max-width:calc(100vw - 28px);
  z-index:101; padding:17px; background:#fffdf9; border:1px solid #d7e0d6; border-radius:22px;
  box-shadow:0 22px 55px rgba(16,47,34,.2); display:grid; gap:9px;white-space:normal;
}
.cm20-signup-panel-head {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:3px 5px 9px}
.cm20-signup-panel-head strong{font-size:15px;font-weight:850;letter-spacing:-.03em;color:#173f32}
.cm20-signup-panel-head>span{font-size:11px;color:#8d6934;font-weight:800;white-space:nowrap}
.top.v12-header .nav .cm20-signup-panel .cm20-signup-link {
  display:flex;align-items:center;gap:13px;width:100%;min-height:92px;padding:13px!important;
  border:1px solid #e0e7dd;border-radius:15px;background:#fff;color:#193e31;
  text-decoration:none!important;white-space:normal;font-size:14px;line-height:1.4;
  transition:border-color .2s,transform .2s,background .2s,box-shadow .2s;
}
.top.v12-header .nav .cm20-signup-panel .cm20-signup-link:hover,
.top.v12-header .nav .cm20-signup-panel .cm20-signup-link:focus-visible {
  background:#f4f9f5;border-color:#a4bfab;transform:translateY(-1px);box-shadow:0 5px 16px #183d3014;
}
.cm20-signup-symbol {flex:0 0 56px;width:56px;min-height:57px;display:grid;justify-items:center;align-content:center;gap:2px;border-radius:12px;background:#f0f4ed;color:#214e3c}
.cm20-signup-symbol b{font-size:11px;line-height:1.2;color:#8a6430}
.cm20-signup-symbol span{font-size:25px;line-height:1.15}
.cm20-signup-copy {display:grid;gap:3px;min-width:0;flex:1 1 auto}
.cm20-signup-copy strong{font-size:15px;font-weight:850;color:#183e32;line-height:1.45;letter-spacing:-.035em}
.cm20-signup-copy small{font-size:12px;font-weight:700;color:#547265;line-height:1.4}
.cm20-signup-copy em{font:normal 11px/1.45 'Noto Sans KR',sans-serif;color:#728378}
.cm20-signup-arrow {font-size:19px;align-self:center;color:#9d7741;flex:none}
.top.v12-header .nav .cm20-signup-panel .cm20-signup-login {
  font-size:12px;padding:7px 5px 2px;text-align:center;line-height:1.6;color:#5b7368;text-decoration:none!important;
}
.cm20-signup-login strong{font-weight:850;color:#14543b}
.cm20-mobile-signup-trigger {display:none}
/* Drawer menu is visible to guests only, with three equally styled options. */
.drawer-panel .cm20-drawer-signup {padding:15px 12px 13px;margin:11px 0 17px;border:1px solid #d4e3d7;border-radius:18px;background:#f3f8f3;min-width:0}
.cm20-drawer-signup-heading {display:grid;gap:3px;margin-bottom:12px;padding:0 4px}
.cm20-drawer-signup-heading>span {color:#94703e;font-size:10px;font-weight:850;letter-spacing:.15em;line-height:1.4}
.cm20-drawer-signup-heading strong {color:#194333;font-size:19px;line-height:1.4}
.cm20-drawer-signup-heading small {font-size:12px;color:#567668}
.drawer-panel nav .cm20-drawer-signup .cm20-drawer-signup-link {display:flex;align-items:center;gap:10px;padding:11px!important;min-height:78px;margin-top:8px;border:1px solid #d9e5da;border-radius:12px;background:#fff;line-height:1.35;color:#194333;text-decoration:none}
.drawer-panel nav .cm20-drawer-signup .cm20-drawer-signup-link:hover,
.drawer-panel nav .cm20-drawer-signup .cm20-drawer-signup-link:focus-visible {background:#eaf4ed;border-color:#9ebaab}
.cm20-drawer-signup-visual {width:48px;min-height:52px;border-radius:10px;background:#eff4ee;display:grid;place-content:center;text-align:center;gap:1px;flex:0 0 48px}
.cm20-drawer-signup-visual b{color:#8c6635;font-size:10px;line-height:1.1}
.cm20-drawer-signup-visual span{font-size:21px;line-height:1.15}
.cm20-drawer-signup-copy{display:grid;gap:4px;min-width:0;flex:1}
.cm20-drawer-signup-copy strong{font-size:14px;font-weight:850;color:#193f32;letter-spacing:-.035em}
.cm20-drawer-signup-copy small{font-size:11px;color:#61796d}
.cm20-drawer-signup-arrow{color:#9e7847;font-size:18px}
/* Homepage registration section, scoped to avoid altering any other section. */
.homepage .cm20-home-signup {padding:clamp(34px,4.5vw,60px) 0;background:linear-gradient(130deg,#f2f6f0,#fffdf8 55%,#f5f1e8);border-block:1px solid #e1e6df;scroll-margin-top:100px}
.homepage .cm20-home-signup .wrap{max-width:1240px}
.cm20-home-signup-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:25px}
.cm20-home-signup-kicker{font-size:11px;letter-spacing:.13em;color:#987442;font-weight:850;margin:0 0 8px}
.homepage .cm20-home-signup h2{color:#193e32;font-family:'Noto Serif KR',serif;font-size:clamp(24px,2.7vw,35px);font-weight:650;letter-spacing:-.055em;line-height:1.45;margin:0}
.homepage .cm20-home-signup h2 em{color:#9c7948;font-style:normal}
.cm20-home-signup-heading>p{color:#5c7468;font-size:13px;line-height:1.75;max-width:350px;margin:0}
.cm20-home-signup-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cm20-home-signup-card{position:relative;display:flex;gap:14px;align-items:flex-start;padding:23px 20px;border:1px solid #d9e2d7;background:#fff;border-radius:19px;box-shadow:0 9px 25px #1d48320d;min-width:0;min-height:170px;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s;text-decoration:none}
.cm20-home-signup-card:hover,.cm20-home-signup-card:focus-visible{border-color:#a8bfae;background:#fbfefa;box-shadow:0 14px 30px #1d48321c;transform:translateY(-3px)}
.cm20-home-signup-icon{flex:0 0 57px;width:57px;min-height:65px;display:grid;align-content:center;justify-items:center;gap:5px;border-radius:14px;background:#eff4ed}
.cm20-home-signup-icon b{font-size:12px;line-height:1;color:#91703e}
.cm20-home-signup-icon>span{font-size:27px;line-height:1}
.cm20-home-signup-text{display:grid;gap:6px;min-width:0;padding-right:7px}
.cm20-home-signup-text strong{font-weight:850;font-size:clamp(16px,1.35vw,19px);color:#193e32;line-height:1.4;letter-spacing:-.04em}
.cm20-home-signup-text small{font-size:12px;font-weight:750;color:#537065;line-height:1.5}
.cm20-home-signup-text>span{font-size:12px;line-height:1.75;color:#647b70}
.cm20-home-signup-arrow{position:absolute;right:16px;top:15px;font-size:19px;color:#a17d48}
.cm20-home-signup-bottom{text-align:center;font-size:13px;color:#667a70;margin:20px 0 0}
.cm20-home-signup-bottom a{color:#14543b;font-weight:850;text-decoration:underline;text-underline-offset:4px}
.site-footer .footer-links{flex-wrap:wrap;justify-content:flex-end;row-gap:9px}
@media (max-width:1250px) and (min-width:981px){
  .top.v12-header:not([data-member-nav="1"]) .nav{gap:clamp(6px,.85vw,12px)}
  .top.v12-header:not([data-member-nav="1"]) .nav>a{font-size:12px;padding-inline:2px}
  .top.v12-header .nav .cm20-signup-switcher summary{padding-inline:12px;font-size:12px}
  .top.v12-header .nav .cm20-signup-panel{right:-35px}
}
/* Legacy site hides the desktop navigation below 1280px, not 980px.
   Keep signup visible instead of relying only on the hamburger menu. */
@media (min-width:981px) and (max-width:1280px){
  body:is(.homepage,.subpage) .top.v12-header:not([data-member-nav="1"]) .header-cta{display:none!important}
  body:is(.homepage,.subpage) .top.v12-header:not([data-member-nav="1"]) .v12-header-search{display:none!important}
  body:is(.homepage,.subpage) .top.v12-header:not([data-member-nav="1"]) .cm20-mobile-signup-trigger{
    display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;
    margin-left:auto;min-height:43px;padding:8px 16px;border-radius:999px;
    border:1px solid #14533b;background:#16503b;color:#fff;font-size:13px;font-weight:850;line-height:1.3;
  }
  body:is(.homepage,.subpage) .top.v12-header:not([data-member-nav="1"]) .menu-btn{margin-left:0}
}
@media (max-width:980px){
  body:is(.homepage,.subpage) .top.v12-header:not([data-member-nav="1"]) .header-cta{display:none!important}
  body:is(.homepage,.subpage) .top.v12-header:not([data-member-nav="1"]) .v12-header-search{display:none!important}
  body:is(.homepage,.subpage) .top.v12-header:not([data-member-nav="1"]) .cm20-mobile-signup-trigger{
    display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;
    margin-left:auto;min-height:43px;padding:8px 16px;border-radius:999px;
    border:1px solid #14533b;background:#16503b;color:white;font-size:13px;font-weight:850;line-height:1.3;
  }
  body:is(.homepage,.subpage) .top.v12-header:not([data-member-nav="1"]) .menu-btn{margin-left:0}
  .cm20-home-signup-heading{align-items:start;flex-direction:column;gap:9px}
  .cm20-home-signup-grid{gap:10px}
  .cm20-home-signup-card{padding:17px 15px;flex-direction:column;min-height:214px;gap:11px}
  .cm20-home-signup-text strong{font-size:17px}
}
@media (max-width:680px){
  .homepage .cm20-home-signup{padding:35px 0}
  .cm20-home-signup-grid{grid-template-columns:1fr;gap:11px}
  .cm20-home-signup-card{flex-direction:row;align-items:center;padding:16px;min-height:113px;gap:15px}
  .cm20-home-signup-icon{flex-basis:57px}
  .cm20-home-signup-text{gap:4px;padding-right:11px}
  .cm20-home-signup-text strong{font-size:17px}
  .cm20-home-signup-text>span{font-size:12px}
  .cm20-home-signup-heading>p{font-size:12px}
  .cm20-home-signup-bottom{font-size:12px}
  .site-footer .footer-links{justify-content:flex-start}
}
@media (max-width:390px){
  body:is(.homepage,.subpage) .top.v12-header:not([data-member-nav="1"]) .cm20-mobile-signup-trigger{min-height:40px;padding:7px 11px;font-size:12px}
  .cm20-home-signup-card{gap:11px;padding:14px 12px}
  .cm20-home-signup-icon{width:48px;flex-basis:48px;min-height:57px}
  .cm20-home-signup-icon>span{font-size:23px}
  .cm20-home-signup-text strong{font-size:15px}
  .drawer-panel .cm20-drawer-signup{padding:11px 9px}
}
@media (prefers-reduced-motion:reduce){
  .cm20-home-signup-card,.cm20-signup-link,.cm20-signup-chevron{transition:none!important;transform:none!important}
}
