@charset "utf-8";
@font-face {
    font-family: 'GMarketSans';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansLight.woff') format('woff');
    font-weight: 300;
    font-display: swap;
}

@font-face {
    font-family: 'GMarketSans';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'GMarketSans';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansBold.woff') format('woff');
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'GmarketSansBold';
    font-weight: 700;
    font-style: normal;
    src: url('./font/GmarketSansBold.eot');
    src: url('./font/GmarketSansBold.eot?#iefix') format('embedded-opentype'),
         url('./font/GmarketSansBold.woff2') format('woff2'),
         url('./font/GmarketSansBold.woff') format('woff'),
         url('./font/GmarketSansBold.ttf') format("truetype");
    font-display: swap;
}

@font-face {
	font-family: 'Pretendard Variable';
	font-weight: 45 920;
	font-style: normal;
	font-display: swap;
	src: local('Pretendard Variable'), url('./font/PretendardVariable.woff2') format('woff2-variations');
}

/****** Reset ******/
*{margin:0;padding:0; box-sizing:border-box;}
html,body{width:100%;}
html {scroll-behavior: smooth;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,form,fieldset,p,button{margin:0;padding:0}

body,h1,h2,h3,h4,input,button{font-family: "GmarketSans"; font-size:14px; font-weight:400; letter-spacing:-1px; color:#333;}
body{background:#FFF; word-break:keep-all; padding:0; margin:0; position:relative; height:auto;}
body.noScroll {position:fixed; width:100%; height:100%; left:0; top:0; overflow:hidden;}
img,fieldset,iframe{border:0 none}
div {display:block; box-sizing:border-box;}
li{list-style:none; box-sizing:border-box;}
input,select,button{vertical-align:middle; font-family: "GmarketSans", sans-serif; font-size:14px; font-weight:300; letter-spacing:-1px; outline:none; color:#333;}
textarea {font-family: "GmarketSans", sans-serif;}
input {letter-spacing:0;}
input, select:focus {outline: none;}
*:focus {outline:none; box-shadow: none;}
optgroup {font-weight: bolder;}
img{vertical-align:middle; width:100%;}
label,button{cursor:pointer}
button{margin:0;padding:0; border:0; background:none; cursor:pointer;}
a{color:#333;text-decoration:none}
a:hover{text-decoration:none;}
legend,hr{visibility:hidden;width:0;height:0;font-size:0;line-height:0}
caption{display:none; overflow:hidden;}
table{border-collapse:collapse;table-layout:fixed; border-collapse:collapse;border-spacing:0;}
table caption{display:none;}
.clearfix:after { display:block; clear:both; height:0px; visibility:hidden; content:"."; }
i, em, address {font-style:normal;}

.comnChk {display: inline-flex; align-items: center; gap: 8px; vertical-align: middle; line-height: 1.3;}
.comnChk > input {position: absolute; opacity: 0; pointer-events: none;}
.comnChk::before {content: ""; width: 26px; height: 26px; flex: 0 0 26px; background: url(../img/bg_chk_off.svg) no-repeat center; background-size: 26px 26px; align-self: center; border-radius:6px;}
.comnChk:has(> input:checked)::before {background-image: url(../img/bg_chk_on.svg);}
.comnChk:has(> input:focus-visible)::before {outline: 2px solid #007a88; outline-offset: 2px;}

.comnRadio {display: inline-flex; align-items: center; gap: 8px; vertical-align: middle; line-height: 1.3;}
.comnRadio > input {position: absolute; opacity: 0; pointer-events: none;}
.comnRadio::before {content: ""; width: 26px; height: 26px; flex: 0 0 26px; background: url(../img/bg_radio_off.svg) no-repeat center; background-size: 26px 26px; align-self: center; border-radius:6px;}
.comnRadio:has(> input:checked)::before {background-image: url(../img/bg_radio_on.svg);}
.comnRadio:has(> input:focus-visible)::before {outline: 2px solid #007a88; outline-offset: 2px;}


*::-webkit-scrollbar {width: 6px; height:6px;}
*::-webkit-scrollbar-thumb {background-color: #ccc; border-radius: 6px;}
*::-webkit-scrollbar-thumb:hover {background:#1d50a2;}
*::-webkit-scrollbar-track {background-color: #f0f0f0; border-radius: 6px;}
*:hover::-webkit-scrollbar-thumb {background:#1d50a2;}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #bdbdbd;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #bdbdbd;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #bdbdbd;
}
:-moz-placeholder { /* Firefox 18- */
  color: #bdbdbd;
}

/* input, textarea, button {-webkit-appearance:none; -moz-appearance:none; appearance:none;} */
input, textarea, button, select {-webkit-border-radius:0; -moz-border-radius:0; -o-border-radius:0; border-radius:0;}

.forDesk {display:block;}
.forMo {display:none;}

.wrap {position:relative; display:flex; justify-content:flex-start; align-items:stretch; height:100vh; overflow:hidden; background:#F2F8FF;}
.wrap.sub {padding:40px 0;}
.wrap .heroImg {position:absolute; right:23%; bottom:0; width:20%; max-width:100%; z-index:100;}
.partMap {position:relative; width:66.66667%; display:flex; justify-content:center; align-items:center; flex-direction:column; gap:20px; padding:40px 0;}
.partMap .seoulMap {width:70%; position:relative;}
.partMap .seoulMap a {display:block; width:100%; height:100%; position:relative;}
.partMap .headTitle {width:63.75%;}
.partRate {position:relative; height:100%; background:#4CC7FE; width:33.33334%;}
.partRate .bgRate {position:absolute; left:0; bottom:0; width:100%; z-index:30; background:#6AD1FF;}
.partRate .bgRate img {max-width:100%; position:relative; z-index:10;}
.partRate .rateBar {position:absolute; left:0; bottom:0; width:100%; height:100%;}
.partRate .rateBar span {position:absolute; left:0; bottom:0; width:100%; background:#D5F2FF;}
.partRate .rateTitle {display:flex; justify-content:center; align-items:center; padding:70px; gap:20px;}
.partRate .rateTitle img {width:50%; flex:0 0 auto;}
.partRate .rateTitle .txt {color:#FFF; font-size:5.5vw; font-weight:100; margin-top:20px;}

.infoGu {position:absolute; }
.infoGu a {display:block; font-weight:400; color:#333; font-size:0.9vw; font-weight:600; padding:0.4vw 0.7vw 0.3vw; border-radius:100px; background:#FFF;}
.infoGu a:hover {background:#1B2A77; color:#FFF;}
/* 
.infoGu {display:block; font-weight:400; color:#333; font-size:0.9vw; font-weight:600; padding:0.4vw 0.7vw 0.3vw; border-radius:100px; background:#FFF;}
.infoGu:hover {background:#1B2A77; color:#FFF;}
 */
.goodSurgest {position:absolute; left:5%; top:30px; z-index:100;}

.custom-btn {height: 60px; color: #fff; border-radius: 100px; padding: 0 25px;  background: transparent; transition: all 0.3s ease; position: relative; display: inline-block;
	box-shadow:inset 2px 2px 2px 0px rgba(255,255,255,.5), 7px 7px 20px 0px rgba(0,0,0,.1), 4px 4px 5px 0px rgba(0,0,0,.1); outline: none;
	background: rgb(0,172,238); background: linear-gradient(0deg, rgba(0,172,238,1) 0%, rgba(2,126,251,1) 100%); width:100%; height: 60px; line-height: 60px; font-size:22px;
}
.custom-btn span {position: relative; display: block; width: 100%; height: 100%; padding:0 40px;}


.infoGu.gu01 {left:67%; top:75%;}
.infoGu.gu02 {left:86%; top:54%;}
.infoGu.gu03 {left:55%; top:22%;}
.infoGu.gu04 {left:9%; top:48%;}
.infoGu.gu05 {left:39%; top:83%;}
.infoGu.gu06 {left:73%; top:54%;}
.infoGu.gu07 {left:14%; top:74%;}
.infoGu.gu08 {left:26%; top:86%;}
.infoGu.gu09 {left:70%; top:21%;}
.infoGu.gu10 {left:60%; top:13%;}
.infoGu.gu11 {left:63.5%; top:42%;}
.infoGu.gu12 {left:40%; top:70%;}
.infoGu.gu13 {left:30%; top:49%;}
.infoGu.gu14 {left:35%; top:44%;}
.infoGu.gu15 {left:54%; top:77%;}
.infoGu.gu16 {left:62%; top:52%;}
.infoGu.gu17 {left:56%; top:35%;}
.infoGu.gu18 {left:79%; top:69%;}
.infoGu.gu19 {left:17%; top:64.5%;}
.infoGu.gu20 {left:29%; top:64%;}
.infoGu.gu21 {left:47%; top:59%;}
.infoGu.gu22 {left:35%; top:26%;}
.infoGu.gu23 {left:47%; top:41%;}
.infoGu.gu24 {left:52%; top:49.5%;}
.infoGu.gu25 {left:74%; top:36%;}

.subWrap {position:relative; width:100%; max-width:640px; margin:0 auto;}
.subWrap .comnForm {display:block; position:relative; background:#FFF; border-radius:16px; border:1px solid #ddd; -webkit-box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.1); box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.1); padding:10px;}
.pHeadSec {display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:30px; padding:0 20px;}
.pHeadSec .logo {width:50%;}
.pHeadSec .usrFunc {display:flex; justify-content:flex-end; align-items:center; gap:16px;}
.pHeadSec .usrFunc a {color:#333; font-size:16px; position:relative; display:block;}
.pHeadSec .usrFunc a:hover:after {content:''; position:absolute; left:0; bottom:0; width:100%; height:1px; background:#333;}

.regiBox {position:relative; padding:50px 10px; height:auto; max-height:calc(100vh - 220px); overflow-y:auto;}
.regiBox.full { max-height:calc(100vh - 160px);}
.loginForm {display:flex; justify-content:flex-start; align-items:flex-start; gap:10px; flex-direction:column; max-width:60%; margin:0 auto;}
.loginForm.register {max-width:100%;}
.loginForm.form {max-width:100%; gap:20px;}
.regiBox .regiTitle {text-align:center; color:#333; font-size:24px; text-align:center; line-height:1.3; width:100%; margin-bottom:20px;}
.regiBox .guideTxt {text-align:right; color:#666; font-size:12px; letter-spacing:0;}
.regiBox .guideTxt span {display:inline-block; font-size:16px; font-weight:500; color:#ff0000; margin-right:5px;}
.regiBox .inputBlock {position:relative; width:100%;}
.regiBox .inputBlock .title {color:#999; font-size:14px; margin-bottom:2px;}
.regiBox .inputBlock .title .required {display:inline-block; font-size:16px; font-weight:500; color:#ff0000; margin-left:3px;}
.regiBox .inputBlock .gTxt {letter-spacing:0; color:#999; font-size:12px; text-align:right; margin-top:4px;}
.regiBox input[type="text"], .regiBox input[type="password"] {display:inline-block; width:100%; height:44px; line-height:42px; border:1px solid #ddd; border-radius:6px; padding:0 15px; box-sizing:border-box; background:#f9f9f9; font-size:16px; color:#333; font-weight:500; flex:0 1 auto;}
.regiBox select {display:inline-block; width:100%; height:44px; line-height:42px; border:1px solid #ddd; border-radius:6px; padding:0 15px; box-sizing:border-box; background:#F2F8FF; font-size:16px; color:#333; font-weight:500; flex:0 1 auto;
	-webkit-appearance: none; -moz-appearance:none; appearance: none; background:#f9f9f9 url(../img/ar_select.png) no-repeat right 10px center; background-size:12px auto; padding:0 30px 0 10px;
}
.regiBox textarea {display:inline-block; width:100%; height:150px; line-height:1.3; border:1px solid #ddd; border-radius:6px; padding:15px; box-sizing:border-box; background:#f9f9f9; font-size:16px; color:#333; font-weight:500; flex:0 1 auto;}
.regiBox select::-ms-expand {display: none;}

.regiBox .btnArea {display:flex; justify-content:center; align-items:center; gap:8px; width:100%;}
.regiBox .btnArea.maT20 {margin-top:20px;}
.regiBox .btnArea a {border-radius:6px;}
.regiBox .loginForm.register .btnArea {justify-content:center;}
a.btnLogin {display:block; padding:16px 0; text-align:center; color:#FFF; font-size:18px; font-weight:500; background:#1b2a77; flex:1 0 auto;}
a.btnAgree {display:block; padding:10px 24px; text-align:center; color:#FFF; font-size:18px; font-weight:500; background:#1b2a77; border:1px solid #1b2a77; flex:0 0 auto;}
a.btnRegister {display:block; padding:10px 24px; text-align:center; color:#FFF; font-size:18px; font-weight:500; background:#1b2a77; border:1px solid #1b2a77; flex:0 0 auto; border-radius:6px;}
a.btnSugest {display:block; padding:10px 24px; text-align:center; color:#FFF; font-size:18px; font-weight:500; background:#1b2a77; border:1px solid #1b2a77; flex:0 0 auto; border-radius:6px;}
a.btnDisAgree {display:block; padding:10px 24px; text-align:center; color:#999; font-size:18px; font-weight:500; background:#FFF; border:1px solid #999; flex:0 0 auto;}

.regiBox .inputBlock.policy {display:flex; justify-content:space-between; align-items:center; padding:16px; border:1px solid #ddd; border-radius:6px;}
.regiBox .inputBlock.policy label {font-size:18px; line-height:1.0;}
.regiBox .inputBlock.policy a {display:inline-block; position:relative;}
.regiBox .inputBlock.policy a:after {content:''; position:absolute; left:0; bottom:0px; width:100%; height:1px; background:#999;}
.inInput {display:flex; justify-content:flex-start; align-items:center; gap:6px;}
.inInput button {height:44px; border-radius:6px; background:#ccc; color:#333; font-size:16px; font-weight:500; text-align:center; flex:1 0 auto; padding:0 20px;}
.inInput .myGu {position:relative;}
.inInput ul {display:flex; justify-content:flex-start; align-items:center; flex-wrap:wrap; margin-top:10px; width:100%;}
.inInput ul li {width:20%; display:flex; justify-content:flex-start; align-items:center; gap:20px;}
.inInput ul li label {font-size:16px;}
.inInput ul li:last-child {width:100%; margin-top:10px;}
.inInput .gender {display:flex; justify-content:flex-start; align-items:center;}
.inInput .gender button {height:44px; background:#FFF; border:1px solid #ddd;}
.inInput .gender button:first-child {border-radius:6px 0 0 6px; border-right:0;}
.inInput .gender button:last-child {border-radius:0 6px 6px 0;}
.inInput .gender button.on {background:#666; color:#FFF;}

.snsForm {position:relative; max-width:60%; margin:30px auto 0;}
.snsForm .title {position:relative; text-align:center; margin-bottom:20px;}
.snsForm .title:after {content:''; position:absolute; left:0; top:50%; transform:translate(0, -50%); width:100%; height:1px; background:#ccc;}
.snsForm .title span {padding:10px 20px; color:#999; font-size:16px; background:#FFF; position:relative; z-index:10;}
.snsForm ul {display:flex; justify-content:center; align-items:center; gap:16px;}
.snsForm ul li {display:block; width:80px; text-align:center;}
.snsForm ul li a {display:block;}
.snsForm ul li a img {width:60px; margin:0 auto; display:block;}
.snsForm ul li a p {display:block; margin-top:6px; font-size:14px; color:#333;}

.regiFunc {display:flex; justify-content:flex-end; align-items:flex-start; gap:20px; width:100%; margin-top:10px; padding:0 10px;}
.regiFunc a {display:block; text-align:center; color:#333; font-size:14px; font-weight:500; line-height:1.0; position:relative;}
.regiFunc a:hover:after {content:''; position:absolute; left:0; bottom:-3px; width:100%; height:1px; background:#333;}

.mUsrFunc {position:absolute; right:5%; top:30px; z-index:100; display:flex; justify-content:flex-end; align-items:center; gap:10px;}
.mUsrFunc a {background:#FFF; border-radius:100px; padding:10px 26px 8px; color:#333; font-size:16px;}
.mUsrFunc a:hover {color:#FFF; background:#1d2976;}

.aiBot {position:absolute; right:-75px; top:40px; z-index:100; width:150px; height:150px;}
.aiBot a {display:block; width:100%; height:100%; background:url(../img/ai_robot.png) no-repeat 50% 50%; background-size:100%; animation: floatBot 3s ease-in-out infinite;}

.aiBox {position:relative; padding:50px 10px; height:auto; max-height:calc(100vh - 220px); overflow-y:auto;}
.aiBox .aiQuest {display:flex; justify-content:flex-start; align-items:center; gap:10px; padding-bottom:20px; border-bottom:20px; border-bottom:1px solid #ddd;}
.aiBox .aiQuest .bot {width:100px; height:100px; background:url(../img/ai_robot.png) no-repeat 50% 50%; background-size:100%; animation: floatBot 3s ease-in-out infinite; flex:0 0 auto;}
.aiBox .aiQuest .quest {position:relative;}
.aiBox .aiQuest .quest .title {color:#333; font-size:20px; font-weight:400;}
.aiBox .aiQuest .quest .title strong {color:#009cf3; font-weight:500;}
.aiBox .aiQuest .quest .choiceGu {display:flex; justify-content:flex-start; align-items:center; gap:10px; margin-top:5px;}
.aiBox .aiQuest .quest .choiceGu select {display:inline-block; width:100%; height:44px; line-height:42px; border:1px solid #ddd; border-radius:6px; padding:0 15px; box-sizing:border-box; background:#F2F8FF; font-size:16px; color:#333; font-weight:500; flex:0 1 auto;
	-webkit-appearance: none; -moz-appearance:none; appearance: none; background:#f9f9f9 url(../img/ar_select.png) no-repeat right 10px center; background-size:12px auto; padding:0 30px 0 10px;
}
.aiBox .aiQuest .quest .choiceGu button.btnView {height:44px; line-height:44px; background:#FFF; border:1px solid #009cf3; color:#009cf3; font-size:18px; font-weight:500; flex:1 0 auto; padding:0 20px; border-radius:6px;}

@keyframes floatBot {
    0%   { transform: translateY(0); }
    50%  { transform: translateY(-12px); }
    100% { transform: translateY(0); }
}

.filebox {position:relative; display:flex; justify-content:flex-start; align-items:center; gap:5px; margin-top:5px; width:100%;}
.filebox input[type="file"] {position: absolute; width: 0px; height: 0px; padding: 0; margin: 0px; overflow: hidden; clip:rect(0,0,0,0); border: 0;}
.filebox label {display:inline-block; flex:0 0 auto; padding:0 16px; height:44px; line-height:42px; color: #999; background:#fdfdfd; border:1px solid #ccc; cursor:pointer; border-radius:4px; margin:0;}
.filebox .upload-name {display: inline-block; width:100%; padding:0 15px; font-size:14px; background:#f9f9f9; border:1px solid #ccc; height:44px; line-height:42px; border-radius:4px; -webkit-appearance: none; -moz-appearance: none; appearance: none; flex:0 1 auto;}

.bbsSearch {display:flex; justify-content:flex-start; align-items:center; gap:10px;}
.bbsSearch select {width:160px;}
.bbsSearch button {height:44px; border-radius:6px; background:#ccc; color:#333; font-size:16px; font-weight:500; text-align:center; flex:1 0 auto; padding:0 20px;}

.inList {display:flex; justify-content:flex-start; align-items:stretch; gap:16px; flex-wrap:wrap; margin-top:20px;}
.inList .perArticle {display:block; border:1px solid #ddd; border-radius:6px; padding:20px; width:calc(50% - 8px);}
.inList .perArticle:hover {border:1px solid #1b2a77; background:#f4f6ff;}
.inList .perArticle .paTitle {color:#1b2a77; font-size:18px; font-weight:600; display:flex; justify-content:flex-start; align-items:center; gap:10px;}
.inList .perArticle .paTitle .pCate {display:inline-block; padding:6px 12px 4px; border-radius:100px; background:#f0f0f0; font-size:14px; font-weight:400; line-height:1.0;}
.inList .perArticle .sgCont {color:#333; font-size:16px; height:66px; line-height:1.4; margin:16px 0; display: -webkit-box; word-wrap: break-word; -webkit-line-clamp: 3; -webkit-box-orient: vertical; text-overflow: ellipsis; overflow: hidden;}
.inList .perArticle .writer {color:#999; font-size:14px;}
.inList .perArticle a.viewCont {display:block; padding:6px 0; text-align:center; border-radius:100px; background:#4cc7fe; color:#FFF; margin-top:10px;}

/** paging **/
.pagingWrap {display:flex; justify-content:center; align-items:center; gap:0px; margin:32px 0 0;}
.pagingWrap a {display:inline-flex; justify-content:center; align-items:center; border-radius:50%; color:#222; font-size:14px;  width:30px; height:30px; box-sizing:border-box;}
.pagingWrap a.dir {padding:0 4px;}
.pagingWrap a.dir.first {background:url(../img/bbs_dir.svg) no-repeat 50% 50%; background-size:24px; transform:rotate(180deg);}
.pagingWrap a.dir.back {background:url(../img/bbs_dir.svg) no-repeat 50% 50%; background-size:24px;}
.pagingWrap a.dir.forword {background:url(../img/bbs_dir_edge.svg) no-repeat 50% 50%; background-size:24px; transform:rotate(180deg);}
.pagingWrap a.dir.backward {background:url(../img/bbs_dir_edge.svg) no-repeat 50% 50%; background-size:24px;}
.pagingWrap a.on {background:#222; color:#FFF; font-weight:400; position:relative;}

/* 지역구 Ai */
/* 기본 레이아웃 */
.ep-wrap {}

/* 헤더 */
.ep-header {
    margin-bottom: 40px;
    padding: 24px 28px;
    background-color: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.04);
}

.ep-header h1 {
    margin: 0 0 12px;
    font-size: 26px;
    font-weight: 700;
    color: #111827;
}

.ep-header__desc {
    margin: 0;
    font-size: 14px;
    color: #4b5563;
}

/* 공통 섹션 스타일 */
.ep-section {
    margin-bottom: 32px;
    padding: 24px 28px;
    background-color: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.03);
}

.ep-section--overview {
    border-left: 4px solid #2563eb;
}

.ep-section__title {
    margin: 0 0 16px;
    font-size: 20px;
    font-weight: 700;
    color: #111827;
}

.ep-section__body p {
    margin: 0 0 10px;
    font-size: 14px;
    color: #374151;
}

/* 블록(하위 항목) */
.ep-block {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid #e5e7eb;
}

.ep-block:first-of-type {
    border-top: none;
    padding-top: 0;
}

.ep-block__title {
    margin: 0 0 8px;
    font-size: 16px;
    font-weight: 600;
    color: #1f2933;
}

.ep-block__body p {
    margin: 0 0 8px;
    font-size: 14px;
    color: #374151;
}

/* 리스트 */
.ep-list {
    margin: 0;
    padding-left: 18px;
    font-size: 14px;
    color: #374151;
}

.ep-list li {
    margin-bottom: 8px;
}

.ep-list li strong {
    display: block;
    margin-bottom: 2px;
    font-weight: 600;
    color: #111827;
}

.ep-list--policy {
    list-style-type: "• ";
    padding-left: 20px;
}

.ep-list--policy li {
    margin-bottom: 6px;
}

.pTab {display:flex; justify-content:flex-start; align-items:stretch; max-width:60%; margin:0 auto 20px;}
.pTab a {width:50%; display:block; padding:10px; text-align:center; background:#f9f9f9; color:#999; border:1px solid #ddd;}
.pTab a.on {background:#FFF; color:#333; border-bottom:0;}

.resultTxt {text-align:center; margin-bottom:20px; width:100%;}
.resultTxt .rt {color:#666; font-size:16px;}
.resultTxt .findId {color:#1b2a77; font-weight:600; font-size:20px; margin:10px 0; letter-spacing:0;}
.resultTxt .date {color:#666; font-size:16px;}

/* policy */
.dim {position:fixed; left:0; top:0; width:100%; height:100%; background:rgba(0, 0, 0, 0.7); z-index:1000; display:none;}
.comnPop {position:fixed; left:50%; top:50%;  transform:translate(-50%, -50%); width:90%; max-width:480px; height:auto; background:#FFF; border-radius:12px; padding:20px; z-index:1100; display:none;}
.comnPop .popTitle {color:#333; font-size:18px; font-weight:600; margin-bottom:16px;}
.comnPop .popClose {position:absolute; right:10px; top:5px; width:40px; height:40px; cursor:pointer; z-index:10;}
.comnPop .popClose:after {content:''; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%) rotate(45deg); width:1px; height:16px; background:#666;}
.comnPop .popClose:before {content:''; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%) rotate(-45deg); width:1px; height:16px; background:#666;}
.policyPop {height:500px; overflow:hidden; overflow-y:auto;}
.policyPop * {word-break:keep-all;}
.policyPop h1 {font-size: 20px; margin-bottom: 16px;}
.policyPop h2 {font-size: 16px; margin-top: 24px; margin-bottom: 8px;}
.policyPop p {margin: 4px 0;}
.policyPop ol {padding-left: 10px; margin: 4px 0;}
.policyPop strong {font-weight: 600;}

.suggestCont {height:500px; overflow:hidden; overflow-y:auto;}
.suggestCont .paTitle {color:#1b2a77; font-size:18px; font-weight:600; display:flex; justify-content:flex-start; align-items:center; gap:10px;}
.suggestCont .paTitle .pCate {display:inline-block; padding:6px 12px 4px; border-radius:100px; background:#f0f0f0; font-size:14px; font-weight:400; line-height:1.0;}
.suggestCont .writer {color:#999; font-size:14px;}
.suggestCont .suggestPopCont {margin-top:16px; padding-top:16px; border-top:1px solid #ccc; font-size:18px; line-height:1.4; color:#333;}

#debug-icon {display:none !important;}
@media only screen and (max-width:768px) {
	.forDesk {display:none;}
	.forMo {display:block;}
	.wrap {flex-direction:column; justify-content:space-between; height:calc(100vh - 55px);}
	.wrap .heroImg {right:20px; width:40%; position:fixed;}
	.partMap {flex-direction:column-reverse; padding:40px 20px 0; width:100%;}
	.partMap .seoulMap {width:100%; margin-top:25px; display:flex; justify-content:flex-start; align-items:flex-start; gap:8px 6px; flex-wrap:wrap;}
	.partMap .seoulMap img {display:none;}
	.partMap .seoulMap a {}

	.infoGu {position:relative; left:unset !important; top:unset !important; width:calc(25% - 5px);}
	.infoGu a {display:block; font-size:3.8vw; padding:8px 14px 4px 14px; border:1px solid #1B2A77; font-weight:400; line-height:1.0; text-align:center;}
	.partRate {width:100%; height:auto; position:absolute; left:0; bottom:0;}
	.partRate .bgRate {width:55%; display:block; position:relative; left:unset; bottom:unset;}
	.partRate .rateTitle {padding:20px; justify-content:flex-start; gap:10px; margin-bottom:20px;}
	.partRate .rateTitle img {width:120px;}
	.partRate .rateTitle .txt {font-size:40px; margin-top:10px;}

	.goodSurgest {display:none;}
	.aiBot {display:none;}
	.mUsrFunc {display:none;}

	 .ep-wrap {
        padding: 24px 16px 48px;
    }

    .ep-header,
    .ep-section {
        padding: 20px 18px;
    }

    .ep-header h1 {
        font-size: 22px;
    }

    .ep-section__title {
        font-size: 18px;
    }
}