/* ===== Hanmaum RTP Church — Bold Dynamic theme overlay (faceOff layer) ===== */
@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;700;900&family=Inter:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;700;900&display=swap');

:root{
  --bg:#0a0a12; --bg2:#121220; --bg3:#181829;
  --violet:#7c5cff; --pink:#ff5c8a; --cyan:#3ce8ff;
  --text:#f3f2f8; --text-dim:#a9a7c0;
  --border:rgba(255,255,255,0.08);
  --grad: linear-gradient(90deg,var(--violet),var(--pink));
  --grad2: linear-gradient(135deg,var(--violet),var(--cyan));
}

body{ background:var(--bg) !important; color:var(--text) !important; font-family:'Inter','Noto Sans KR',sans-serif; }
a{ color:var(--text); }
#cm_layout, .cm_layout_container, .cm_container, .cm_content, .cm_sub_content{ background:transparent !important; }

.cm_top_menu{ background:var(--bg2) !important; border-bottom:1px solid var(--border); }
.cm_top_menu a, .cm_top_menu li{ color:var(--text-dim) !important; }
.cm_top_menu input, .cm_top_menu .iText{ background:var(--bg3) !important; color:var(--text) !important; border:1px solid var(--border) !important; }

.cm_header{ background:rgba(10,10,18,0.85) !important; backdrop-filter:blur(14px); border-bottom:1px solid var(--border); position:sticky; top:0; z-index:500; padding:14px 0; }
.cm_logo a, .cm_logo{ font-family:'Space Grotesk',sans-serif; font-weight:900; }
.cm_logo img{ filter:drop-shadow(0 0 12px rgba(124,92,255,0.5)); }

.cm_gnb .depth1 > li > a, .cm_gnb a.nav1st{ color:var(--text) !important; font-weight:600; letter-spacing:.02em; padding:10px 16px !important; transition:color .2s; }
.cm_gnb .depth1 > li > a:hover, .cm_gnb a.nav1st:hover{ background:transparent !important; }
.cm_gnb .depth1 > li{ position:relative; }
.cm_gnb .depth1 > li::after{ content:''; position:absolute; left:16px; right:16px; bottom:-2px; height:2px; background:var(--grad); transform:scaleX(0); transition:transform .25s; }
.cm_gnb .depth1 > li:hover > a::after, .cm_gnb .depth1 li.active > a::after{ transform:scaleX(1); }
.cm_gnb .twoDepth{ background:var(--bg2) !important; border:1px solid var(--border) !important; }
.cm_gnb .twoDepth a{ color:var(--text-dim) !important; }
.cm_gnb .twoDepth a:hover{ color:var(--text) !important; }

.cm_header_social img{ filter:invert(1) opacity(.7); }

#cm_bnz_wrap{ background:var(--bg2) !important; border-bottom:1px solid var(--border); }

.slider_wrap{ background:radial-gradient(ellipse at 30% 0%, rgba(124,92,255,0.25), transparent 60%), radial-gradient(ellipse at 80% 20%, rgba(255,92,138,0.18), transparent 55%), var(--bg) !important; padding-bottom:24px; }
.cm_slider .cm_slider_caption{ background:linear-gradient(0deg, rgba(10,10,18,.92), rgba(10,10,18,.15) 70%), transparent !important; }
.cm_slider .cm_slider_caption h3, .cm_slider .cm_slider_caption h3 a{ font-family:'Space Grotesk',sans-serif; font-weight:900; font-size:2rem; color:#fff !important; text-shadow:0 2px 20px rgba(0,0,0,.4); }
.cm_slider .cm_slider_caption p{ color:var(--text-dim) !important; }
.bx-pager, .bx-controls{ filter:invert(1); }

.cm_container, .cm_content{ padding-top:32px; padding-bottom:48px; }
.cm_content{ color:var(--text); }
.cm_content h1, .cm_content h2, .cm_content h3, .cm_content h4{ color:#fff; font-family:'Space Grotesk',sans-serif; font-weight:700; }
.cm_content table{ background:var(--bg2) !important; border:1px solid var(--border) !important; }
.cm_content table th{ background:var(--bg3) !important; color:#fff !important; }
.cm_content table td{ color:var(--text-dim) !important; border-color:var(--border) !important; }
.cm_content .btn, .cm_content button, .cm_content input[type=submit]{ background:var(--grad) !important; color:#fff !important; border:none !important; border-radius:6px; }
.location, .cm_location{ color:var(--text-dim) !important; }
.location a, .cm_location a{ color:var(--text-dim) !important; }

.cm_sidebar{ background:var(--bg2) !important; border:1px solid var(--border) !important; border-radius:10px; padding:20px 0; }
.cm_sidebar .lnb_wrap{ background:transparent !important; }
.cm_sidebar_title{ background:var(--grad2) !important; color:#fff !important; padding:0 20px 16px; border-bottom:1px solid var(--border); margin-bottom:8px; }
.cm_sidebar_title .sub{ color:rgba(255,255,255,.75) !important; font-size:.75rem; letter-spacing:.08em; text-transform:uppercase; display:block; }
.cm_sidebar_title .title{ color:#fff !important; font-family:'Space Grotesk',sans-serif; font-weight:800; font-size:1.3rem; }
.cm_sidebar ul.depth2{ background:transparent !important; }
.cm_sidebar ul.depth2 li a{ color:var(--text-dim) !important; padding:10px 20px !important; display:block; border-left:2px solid transparent; }
.cm_sidebar ul.depth2 li a:hover, .cm_sidebar ul.depth2 li a.on{ color:#fff !important; background:var(--bg3) !important; border-left:2px solid; border-image:var(--grad) 1; }

.bd_hd{ background:var(--bg2) !important; border-color:var(--border) !important; color:var(--text) !important; }
.bd_set, .bd_set a{ color:var(--text-dim) !important; }
.bd_lst.bd_zine.zine.zine1{ background:transparent !important; }
.bd_lst.bd_zine .rt_area.is_tmb{ background:var(--bg2) !important; border:1px solid var(--border) !important; }
.tmb_wrp{ background:var(--bg3) !important; }
h3.ngeb, h3.ngeb a{ color:#fff !important; }
.bd_lst .cnt, .bd_lst .cnt a{ color:var(--text-dim) !important; }
.bd_lst .info, .bd_lst .info *{ color:var(--text-dim) !important; }
.bd_pg, .bd_pg a{ color:var(--text-dim) !important; }
.bd_go_page input{ background:var(--bg3) !important; color:var(--text) !important; border:1px solid var(--border) !important; }
.bd_btn, .bd_btn a{ background:var(--grad) !important; color:#fff !important; border:none !important; }

.cm_footer, #cm_footer{ background:var(--bg2) !important; border-top:1px solid var(--border); color:var(--text-dim) !important; }
.cm_footer a, #cm_footer a{ color:var(--text-dim) !important; }

.cm_login_layer, .ajax_popup, .layer_popup{ background:var(--bg2) !important; border:1px solid var(--border) !important; color:var(--text) !important; }
.cm_login_layer input, .layer_popup input{ background:var(--bg3) !important; color:var(--text) !important; border:1px solid var(--border) !important; }

@media (max-width:768px){
  .cm_gnb .depth1 > li > a{ color:var(--text) !important; }
}
