 @charset "utf-8";
/* doc.css는 디자인페이지 스타일을 정의합니다. */

/* 연구소개 */
.purpose-title {display:flex; justify-content:space-between; align-items:center; gap:40px; margin-bottom:40px;}
.purpose-title .text {flex-shrink:0;}
.purpose-title .text .icon {width:72px; margin-bottom:20px;}
.purpose-title .text h2 {margin-bottom:40px; font-size:var(--font-size-48); font-weight:700; color:var(--dark); line-height:1.33em;}
.purpose-title .text h2 strong {color:#FB8507;}
.purpose-title .text p {font-size:var(--font-size-24); line-height:1.5em; color:var(--dark); margin-top:10px;}
.purpose-content {color:#505050; font-size:var(--font-size-20); line-height:1.7em;}
.purpose-content p:not(:last-child) {margin-bottom:25px;}
.purpose-content strong {color:var(--dark); font-weight:600;}

.our-team {margin-bottom:80px;}
.our-team h3 {font-size:var(--font-size-28); font-weight:700; color:var(--dark); line-height:1.33em; margin-bottom:25px;}
.our-team ul {display:grid; grid-template-columns:repeat(3, 1fr); gap:20px;}
.our-team ul li {display:flex; flex-direction:column; gap:16px; padding:29px; border:1px solid #ddd; border-radius:16px;}
.our-team ul li .name {font-size:var(--font-size-22); font-weight:600; color:var(--dark); line-height:1.33em;}
.our-team ul li div {font-size:var(--font-size-18); line-height:1.33em; color:#505050;}

.contact-email {display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:var(--space-40); background:#F9F9F9; padding:20px var(--space-50); border-radius:16px;}
.contact-email .cnt-area {display:flex; align-items:center; gap:var(--space-30);}
.contact-email .cnt-area .icon {width:72px; flex-shrink:0;}
.contact-email .cnt-area .cnt {flex:1 1 auto; min-width:0;}
.contact-email .cnt-area .cnt .txt {font-size:var(--font-size-20); line-height:1.3em; color:var(--dark); margin-bottom:6px;}
.contact-email .cnt-area .cnt .link {display:inline-block; word-break:break-all; font-size:var(--font-size-18); line-height:1.3em; color:#505050;}
.contact-email .cnt-area .cnt .link:hover {text-decoration: underline;}
.contact-email .link-area {flex-shrink:0; display:flex; align-items:center; gap:10px;}
.contact-email .link-area img {width:48px; display:block;}

.guide-content {margin-bottom:60px; color:#505050; font-size:var(--font-size-20); line-height:1.7em;}
.guide-content p:not(:last-child) {margin-bottom:25px;}
.guide-content strong {color:var(--dark); font-weight:600;}

.guide-haven {display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:var(--space-40); background:#FFF6F1; padding:20px var(--space-50); border-radius:16px;}
.guide-haven .text-area {display:flex; align-items:center; gap:var(--space-30);}
.guide-haven .text-area .icon {width:113px; flex-shrink:0;}
.guide-haven .text-area .text {flex:1 1 auto; min-width:0;}
.guide-haven .text-area .text h3 {font-size:var(--font-size-20); line-height:1.3em; color:#FB8507; margin-bottom:14px;}
.guide-haven .text-area .text p {font-size:var(--font-size-18); line-height:1.44em; color:#505050;}
.guide-haven .btn-area {flex-shrink:0;}
.guide-haven .btn-area .btn {display:inline-block; padding:var(--space-20) var(--space-30); border-radius:50px; background:#fb8507; color:#fff; font-size:var(--font-size-16); line-height:1.2em; font-weight:700;}
.guide-haven .btn-area .btn:hover {background:#E85454;}

.research-flowchart {margin-top:var(--space-80);}
.research-flowchart h2 {font-size:var(--font-size-28); font-weight:700; color:var(--dark); line-height:1.33em; margin-bottom:25px;}

/* 설문조사 - 1 */
.survey .progress{display: flex;align-items:center;gap:20px;margin-bottom:var(--size55);}
.survey .progress .tit{font-weight:700;color:var(--dark);line-height:1.2em;}
.survey .progress .bar-wrap{position: relative;min-width:0;width:1%;flex:1 1 auto;height:40px;background-color:#f9f9f9;border-radius:40px;box-shadow:inset 3px 3px 3px rgba(0,0,0,.15);}
.survey .progress .bar-wrap .bar{position: absolute;left:0;top:0;height:100%;background-color:var(--pri);display: flex;justify-content:center;align-items:center;font-size:var(--fz16);font-weight: 700;color:#fff;line-height:1.2em;border-radius:40px;box-shadow:inset 3px 3px 3px rgba(0,0,0,.15);}

.target-person{margin-bottom:var(--size100);}
.target-person .title{display: flex;align-items:flex-end;justify-content:space-between;margin-bottom:15px;}
.target-person .title .tit{font-size:var(--fz40);font-weight:800;color:var(--dark);line-height:1.2em;}
.target-person .title .nt{font-size:var(--fz16);line-height:1.2em;}
.target-person .doc-chk input:checked + label:before{background-color:var(--pri);border-color:var(--pri);}
.target-person .sv-list>ul>li .tit-wrap .num{background-color:var(--pri);}
.required{color: var(--orange) !important;}
.sv-box{padding:var(--size60) 30px;border-radius:var(--bd16);border: 1px solid #eee;}
.sv-list>ul>li{margin-bottom:var(--size60);}
.sv-list>ul>li:last-child{margin-bottom:0;}
.sv-list>ul>li .tit-wrap{display:flex;border-radius:var(--bd8);overflow:hidden;margin-bottom:25px;}
.sv-list>ul>li .tit-wrap .num{display: flex;justify-content:center;align-items:center;width:70px;background-color:var(--snd);font-size:var(--fz20);font-weight:700;color:#fff;line-height:1.2em;}
.sv-list>ul>li .tit-wrap .tit{padding:13px 20px;min-width:0;width:1%;flex:1 1 auto;font-weight:600;color:var(--dark);line-height:1.4em;background-color:#f4f4f4;}
.sv-list>ul>li .answer{padding-left:70px;}

.chk-list>ul{display:flex;flex-wrap:wrap;align-items:center;gap:var(--size20) var(--size60);}
.doc-chk {display:inline-block; position:relative; vertical-align:middle; margin-top:-.2em;}
.doc-chk input {position:absolute; top:0; left:0; width:0; height:0; border:0; opacity:0; z-index:-1;}
.doc-chk label {display:inline-block;color:var(--dark);cursor:pointer;}
.doc-chk label:before {content:""; display:inline-block; vertical-align:middle; margin:-.3em 8px 0 0; width:20px; height:20px; background-color:#fff; border:1px solid #ccc; border-radius:100%;background-position:50% 50%;background-repeat:no-repeat;background-size:10px;}
.doc-chk input[type='checkbox'] + label:before{border-radius:4px;}
.doc-chk input:checked + label:before{background-color:var(--snd);border-color:var(--snd);}
.doc-chk input:checked + label:before {background-image:url("/images/bbs/ic-chk.png");}
.doc-chk input:focus + label:before {outline:2px solid highlight;}
.doc-chk.unchecked input[type='radio'] + label{color:#878787;}

.sv-title{display: flex;align-items:center;margin-bottom:20px;padding:var(--size30) 30px;gap:40px;background-color:#f4f4f4;border-radius:var(--bd16);}
.sv-title .num{font-size:var(--fz64);font-weight: 800;color:rgba(0,0,0,.2);line-height:1em;}
.sv-title .wrap{min-width:0;width:1%;flex:1 1 auto;}
.sv-title .wrap .tit{font-size:var(--fz20);font-weight: 700;line-height:1.3em;color:var(--dark);}
.sv-title .wrap .tit .line{text-decoration:underline;text-underline-offset: 3px;}
.sv-title .wrap .tt{margin-top:5px;}

input.input.st2,
select.input.st2{height:48px;border-radius:4px;padding:0 20px;cursor:pointer;}
.sv-select{display: flex;gap:var(--size20);}
.sv-select select.input{width:300px;}

.input-unit{display: flex;align-items:center;}
.input-unit select.input{width:250px;}
.input-unit input.input{width:60px;padding:0 10px;}
.input-unit .unit{margin-left:10px;font-size:var(--fz16);color:var(--dark);}

.chk-list>ul>li .flex{display: flex;align-items:center;}
.chk-list>ul>li .flex .input-unit{margin-left:20px;}
.doc-chk.unchecked ~ .input-unit select.input,
.doc-chk.unchecked ~ .input-unit input.input {background-color: #f4f4f4;}
.doc-chk.unchecked ~ .input-unit .unit{color: #878787;}

.total-input{display: flex;align-items:center;margin-bottom:var(--size20);}
.total-input:last-child{margin-bottom:0;}
.total-input .total{color:var(--dark);margin-right:10px;}
.total-input .input-unit-flex{display: flex;align-items:center;gap:20px;}

.sv-list>ul>li.disabled{pointer-events:none;}
.sv-list>ul>li.disabled .doc-chk label{color:#878787;}
.sv-list>ul>li.disabled select.input,
.sv-list>ul>li.disabled input.input{background-color: #f4f4f4;}
.sv-list>ul>li.disabled .unit{color: #878787;}
.etc-wrap{display: flex;align-items:center;gap:15px;}
.etc-wrap input.input{width:200px;padding:0 15px;}
.etc-wrap .total-input .total{font-size:var(--fz16);}
.etc-wrap .input-unit input.input{width:60px;}

.doc-chk.unchecked ~ .total-input .total{color: #878787;}
.doc-chk.unchecked ~ .total-input .input-unit input.input {background-color: #f4f4f4;}
.doc-chk.unchecked ~ .total-input .input-unit .unit{color: #878787;}

.chk-list.block>ul{display: block;}
.chk-list.block>ul>li{margin-bottom:var(--size20);}
.chk-list.block>ul>li:last-child{margin-bottom:0;}

.chk-list.number>ul>li .doc-chk label:before{display:inline-flex;justify-content:center;align-items:center;background-image:none;content:'1';font-size:12px;font-weight:700;color:var(--dark);}
.chk-list.number>ul>li .doc-chk input:checked + label:before{color: #fff;}
.chk-list.number>ul>li .doc-chk.unchecked input[type='radio'] + label:before{color:#878787;}
.chk-list.number>ul>li:nth-child(2) .doc-chk label:before{content:'2';}
.chk-list.number>ul>li:nth-child(3) .doc-chk label:before{content:'3';}
.chk-list.number>ul>li:nth-child(4) .doc-chk label:before{content:'4';}
.chk-list.number>ul>li:nth-child(5) .doc-chk label:before{content:'5';}
.chk-list.number>ul>li:nth-child(6) .doc-chk label:before{content:'6';}
.chk-list.number>ul>li:nth-child(7) .doc-chk label:before{content:'7';}
.chk-list.number>ul>li:nth-child(8) .doc-chk label:before{content:'8';}
.chk-list.number>ul>li:nth-child(9) .doc-chk label:before{content:'9';}

.sv-list>ul>li .tit-wrap .nt-txt{margin-top:5px;line-height:1.4em;font-weight:600;font-size:var(--fz14);color: #505050;}
.sv-list>ul>li .tit-wrap .nt-txt strong{font-weight:600;color:var(--orange);}

.step-bottom-buttons {margin-top:var(--size60);}
.step-bottom-buttons .center {display:flex; justify-content:center;}
.step-bottom-buttons .between {display:flex; justify-content:space-between; align-items:center;}
.step-bottom-buttons .step-btn {margin:0;}
.step-bottom-buttons .back-btn {margin:0;}

.step-btn{display: flex;justify-content:center;align-items:center;margin:var(--size60) auto 0;width:220px;height:60px;border-radius:60px;border: 2px solid var(--pri);transition:.3s;background-color: #fff;}
.step-btn span{position: relative;padding-right:100px;font-weight:700;color:var(--pri);line-height:1em;transition:.3s;}
.step-btn span:after{content:'';position: absolute;right:0;top:50%;margin-top:-10px;width:20px;height:20px;background:url("/images/sub/btn-arr.png") no-repeat 50% 50%/contain;transition:.3s;}
.step-btn:hover{background-color:var(--pri);}
.step-btn:hover span{color:#fff;}
.step-btn:hover span:after{background-image:url("/images/sub/btn-arr-on.png");}

.back-btn{display: flex;justify-content:center;align-items:center;margin:var(--size60) auto 0;width:220px;height:60px;border-radius:60px;border: 2px solid #505050;transition:.3s;background-color: #fff;}
.back-btn span{position: relative;padding-left:100px;font-weight:700;color:#505050;line-height:1em;transition:.3s;}
.back-btn span:before{content:'';position: absolute;left:0;top:50%;margin-top:-10px;width:20px;height:20px;background:url("/images/sub/btn-arr-back.png") no-repeat 50% 50%/contain;transition:.3s;}
.back-btn:hover{background-color:#505050;}
.back-btn:hover span{color:#fff;}
.back-btn:hover span:before{background-image:url("/images/sub/btn-arr-back-on.png");}

/* 설문조사 - 2 */
.sv-title .wrap .tt strong{color:var(--dark);}
.sv-title .wrap .tt .line{text-decoration:underline;text-underline-offset: 3px;}

.tb-wrap-outer{background-color:#fffcf5;border-bottom: 1px solid #ddd;}
.tb-wrap-outer.fixed{position: fixed;left:0;width:100%;top:0;z-index:100;padding:0 60px;}
.tb-wrap-outer.fixed .tb-wrap{max-width:calc(1400px - 60px);margin:0 auto;}

.tb-wrap{display: flex;}
.tb-wrap .question{width:50%;display: flex;align-items:center;border-right:1px solid #ddd;padding-right:var(--size40);}
.tb-wrap .question .num{font-weight: 700;width:40px;line-height:1.56em;color: #878787;}
.tb-wrap .question .tit{min-width:0;width:1%;flex:1 1 auto;font-weight:600;color:var(--dark);line-height:1.56em;}
.tb-wrap .points{min-width:0;width:1%;flex:1 1 auto;}
.tb-wrap .points>ul{display: flex;}
.tb-wrap .points>ul>li{display: flex;justify-content:center;align-items:center;flex:1;height:100px;border-right: 1px solid #ddd;}
.tb-wrap .points>ul>li:last-child{border-right: 0;}
.sv-list2 .tb-wrap{border-bottom: 1px solid #ddd;}

.sv-list2-tit{border-top: 1px solid #ddd;}
.sv-list2-tit .tb-wrap .question{justify-content:center;background-color:#fffcf5;font-size:var(--fz20);font-weight:700;color:var(--dark);line-height:1.2em;padding-right:0;}
.sv-list2-tit .tb-wrap .points>ul>li{height:80px;background-color: #fffcf5;font-size:var(--fz16);font-weight: 700;color:var(--dark);line-height:1.38em;text-align:center;padding:5px;}

.num-chk>li .wrap .doc-chk label{font-size:0;display:flex;}
.num-chk>li .wrap .doc-chk label:before{display: flex;justify-content:center;align-items:center;margin:0;width:48px;height:48px;content:'0';font-size:var(--fz20);color: #878787;line-height:1.2em;background-image:none;}
.num-chk>li .wrap .doc-chk input:checked + label:before{background-color:var(--snd);border-color:var(--snd);font-weight: 700;color: #fff;}
.num-chk>li .wrap .doc-chk.unchecked input[type='radio'] + label:before{background-color: #f4f4f4;}
.num-chk>li:nth-child(2) .wrap .doc-chk label:before{content:'1';}
.num-chk>li:nth-child(3) .wrap .doc-chk label:before{content:'2';}
.num-chk>li:nth-child(4) .wrap .doc-chk label:before{content:'3';}
.num-chk>li:nth-child(5) .wrap .doc-chk label:before{content:'4';}
.num-chk>li:nth-child(6) .wrap .doc-chk label:before{content:'5';}
.num-chk>li:nth-child(7) .wrap .doc-chk label:before{content:'6';}
.num-chk>li:nth-child(8) .wrap .doc-chk label:before{content:'7';}
.num-chk>li:nth-child(9) .wrap .doc-chk label:before{content:'8';}
.num-chk>li:nth-child(10) .wrap .doc-chk label:before{content:'9';}
.num-chk>li:nth-child(11) .wrap .doc-chk label:before{content:'10';}


/* 설문조사 - 3 */
.num-chk.one>li .wrap .doc-chk label:before{content:'1';}
.num-chk.one>li:nth-child(2) .wrap .doc-chk label:before{content:'2';}
.num-chk.one>li:nth-child(3) .wrap .doc-chk label:before{content:'3';}
.num-chk.one>li:nth-child(4) .wrap .doc-chk label:before{content:'4';}
.num-chk.one>li:nth-child(5) .wrap .doc-chk label:before{content:'5';}
.num-chk.one>li:nth-child(6) .wrap .doc-chk label:before{content:'6';}
.num-chk.one>li:nth-child(7) .wrap .doc-chk label:before{content:'7';}
.num-chk.one>li:nth-child(8) .wrap .doc-chk label:before{content:'8';}
.num-chk.one>li:nth-child(9) .wrap .doc-chk label:before{content:'9';}
.num-chk.one>li:nth-child(10) .wrap .doc-chk label:before{content:'10';}


/* 설문조사 - 7 */
.num-chk.type2>li .wrap .doc-chk label:before{background-image:url('/images/bbs/radio-chk.png');background-size:12px;font-size:0;}
.num-chk.type2>li .wrap .doc-chk input:checked + label:before{background-image:url('/images/bbs/radio-chk-on.png');}
.num-chk.type2>li .wrap .doc-chk.unchecked input[type='radio'] + label:before{background-color: #f4f4f4;}


/* 설문조사 - 8 */
.chk-list.number.point-num>ul>li .doc-chk label:before{content:'0';}
.chk-list.number.point-num>ul>li:nth-child(2) .doc-chk label:before{content:'1';}
.chk-list.number.point-num>ul>li:nth-child(3) .doc-chk label:before{content:'2';}
.chk-list.number.point-num>ul>li:nth-child(4) .doc-chk label:before{content:'3';}
.chk-list.number.point-num>ul>li:nth-child(5) .doc-chk label:before{content:'4';}
.chk-list.number.point-num>ul>li:nth-child(6) .doc-chk label:before{content:'5';}
.chk-list.number.point-num>ul>li:nth-child(7) .doc-chk label:before{content:'6';}
.chk-list.number.point-num>ul>li:nth-child(8) .doc-chk label:before{content:'7';}
.chk-list.number.point-num>ul>li:nth-child(9) .doc-chk label:before{content:'8';}
.chk-list.number.point-num>ul>li:nth-child(10) .doc-chk label:before{content:'9';}

/* 설문조사 - 9 */
.sv-box-tit{font-size:var(--fz20);font-weight:700;line-height:1.4em;color:var(--dark);margin-bottom:var(--size25);}
.sv-box-tit .line{color: var(--orange);text-decoration:underline;text-underline-offset: 3px;}

.sv-box.type2 .tb-wrap .question .tit{text-align:center;}
.tb-wrap .question .tit .ex{display: block;font-weight: 400;color:#505050;}

.sv-box-wrapper .sv-box{margin-bottom:var(--size80);}
.sv-box-wrapper .sv-box:last-child{margin-bottom:0;}

/* 설문조사 - 9 팝업 */
.modal-wrap{background-color: #fff;border-radius:var(--bd16);padding:var(--size80) var(--size40);overflow:hidden;}
.modal-wrap .title{font-size:var(--fz24);font-weight: 700;color:var(--dark);line-height:1.3em;margin-bottom:var(--size25);}
.modal-wrap .title small{display: inline-block;font-size:var(--fz18);font-weight:400;color:#505050;}
.md-list-txt{margin-bottom:var(--size20);font-size:var(--fz18);padding:12px 20px;background-color: #f4f4f4;border-radius:var(--bd8);font-weight:600;color:var(--dark);line-height:1.3em;}
.num-chk-list ul{display: flex;flex-wrap:wrap;align-items:center;gap:var(--size20) var(--size60);}
.num-chk-list ul li.wide{width:100%;}
.num-chk-list ul li.wide .etc-wrap input.input{min-width:0;width:1%;flex:1 1 auto;}
.modal a.close-modal{display: none !important;}

.num-chk-list ul li .doc-chk{margin:0;}
.num-chk-list ul li .doc-chk label:before{display:inline-flex;justify-content:center;align-items:center;background-image:none;content:'1';font-size:12px;font-weight:700;color:var(--dark);}
.num-chk-list ul li .doc-chk input:checked + label:before{color: #fff;}
.num-chk-list ul li:nth-child(2) .doc-chk label:before{content:'2';}
.num-chk-list ul li:nth-child(3) .doc-chk label:before{content:'3';}
.num-chk-list ul li:nth-child(4) .doc-chk label:before{content:'4';}
.num-chk-list ul li:nth-child(5) .doc-chk label:before{content:'5';}
.num-chk-list ul li:nth-child(6) .doc-chk label:before{content:'6';}
.num-chk-list ul li:nth-child(7) .doc-chk label:before{content:'7';}
.num-chk-list ul li:nth-child(8) .doc-chk label:before{content:'8';}
.num-chk-list ul li:nth-child(9) .doc-chk label:before{content:'9';}
.num-chk-list ul li:nth-child(10) .doc-chk label:before{content:'10';}

.doc-btns{margin-top:var(--size60);}
.doc-btns ul{display: flex;justify-content:center;gap:20px;}
.doc-btns ul li .btn{display: flex;justify-content:center;align-items:center;width:150px;height:60px;border-radius:60px;border:2px solid #505050;font-size:18px;font-weight:700;line-height:1.2em;cursor:pointer;background-color: #fff;transition:.2s;}
.doc-btns ul li .btn.st2{border-color:var(--pri);color:var(--pri);}
.doc-btns ul li .btn:hover{background-color: #505050;color:#fff;}
.doc-btns ul li .btn:hover.st2{background-color: var(--pri);color: #fff;}

/* 설문조사 - 10 */
.chk-notice{margin-top:15px;font-size:var(--fz14);font-weight:600;line-height:1.4em;}
.chk-notice .tit{color:var(--orange);}

/* 설문조사 - 11 */
.sv-list>ul>li .row-wrap .row{margin-bottom:var(--size35);}
.sv-list>ul>li .row-wrap .row:last-child{margin-bottom:0;}
.sv-list>ul>li .row-wrap .row:not(:first-child) .tit-wrap .num{opacity:0;}
.sv-list>ul>li .row-wrap .row:not(:first-child) .tit-wrap .tit{border-radius:var(--bd8);}
.sv-list>ul>li .row-wrap .row:not(:first-child) .answer{padding-left:70px;}

/* 설문조사 - 12 */
.sv-title .wrap .nt{margin-top:5px;font-size:var(--fz14);line-height:1.4em;font-weight: 600;color:var(--orange);}

/* 설문조사 - 14 */
.arr-range{display: flex;align-items:center;min-height:80px;padding:0 20px;gap:10px;}
.arr-range .txt{font-weight:700;color:var(--dark);line-height:1.2em;}
.arr-range .arr{display: flex;justify-content:center;align-items:center;min-width:0;width:1%;flex:1 1 auto;text-align:center;}

/* 설문조사 - 15 */
.num-chk.size2>li .wrap .doc-chk label:before{width:32px;height:32px;font-size:var(--fz16);}

.sv-box-wrapper.type2{padding: var(--size60) 30px;border-radius: var(--bd16);border: 1px solid #eee}
.sv-box-wrapper.type2 .sv-box{padding:0;border: none;border-radius:0;margin-bottom:0;}
.sv-box-wrapper.type2 .sv-box:last-child{margin-bottom:0;}
.sv-box-wrapper.type2 .sv-box .sv-list2-tit{border-top: none;}
.sv-box-wrapper.type2 .sv-box:first-child .sv-list2-tit{border-top: 1px solid #ddd;}

.step-btn.type2{width:160px;}
.step-btn.type2 span{padding-right:0;}
.step-btn.type2 span:after{display: none;}

/* 설문 완료 */
.survey-complete {display:flex; flex-direction:column; justify-content:center; text-align:center; gap:var(--size50);}
.survey-complete .text {display:flex; flex-direction:column; gap:var(--size20);}
.survey-complete .text h2 {color:#121212; font-size:var(--fz40); line-height:1.3em;}
.survey-complete .text p {color:#878787; font-size:var(--fz18); line-height:1.65em;}
.survey-complete .btn {display:inline-flex; justify-content:center; align-items:center; width:178px; height:60px; margin:0 auto; color:#76b830; border-radius:60px; border:2px solid #76b830; font-size:var(--fz18); font-weight:700;line-height:1.2em;}
.survey-complete .btn:hover {background-color: #76b830; color:#fff;}

/* 마이페이지 - 대시보드 */
.dashboard-start {text-align:center; display:flex; align-items:center; flex-direction:column;}
.dashboard-start .img-area {margin-bottom:var(--space-40);}
.dashboard-start .img-area img {max-width:clamp(200px, calc(320 / var(--inner) * 100vw), 320px);}
.dashboard-start .text-area {display:flex; flex-direction:column; align-items:center; gap:var(--space-20); margin-bottom:var(--size60);}
.dashboard-start .text-area h3 {font-size:var(--font-size-32); font-weight:700; color:var(--dark); line-height:1.3em; letter-spacing:-0.03em;}
.dashboard-start .text-area p {font-size:var(--font-size-20); color:#505050; line-height:1.5em; letter-spacing:-0.03em;}
.dashboard-start .btn-start {display:inline-flex; justify-content:center; align-items:center; min-height:50px; padding:var(--space-20) var(--space-50); border-radius:100px; background:#76b830; color:#fff; font-size:var(--font-size-18); font-weight:700; line-height:1em; letter-spacing:-0.03em; text-decoration:none; transition:background-color .2s;}
.dashboard-start .btn-start:hover {background-color:#5fa028; color:#fff;}

/* 마이페이지 - 대시보드 결과지 */
.dashboard-title {margin-bottom:var(--space-40); font-size:var(--font-size-24); color:var(--dark); line-height:1.3em; letter-spacing:-0.03em;}

.result-paper {display:flex; flex-direction:column; gap:20px;}
.result-paper .card {background:#fff; padding:var(--space-40) var(--space-30); border-radius:var(--bd16); box-shadow:0 3px 10px rgba(0,0,0,.15);}
.result-paper .card .tit {font-size:var(--font-size-20); font-weight:700; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em; margin-bottom:var(--space-30);}
.result-paper .writer .fields {display:flex; flex-wrap:wrap; gap:20px; width:100%;}
.result-paper .writer .item {display:flex; flex-direction:column; align-items:center; gap:var(--space-20); flex:0 0 188px; width:188px;}
.result-paper .writer .lbl {display:flex; align-items:center; justify-content:center; width:100%; min-height:34px; background:#eee; border-radius:var(--bd8); font-size:var(--font-size-16); font-weight:600; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em; text-align:center;}
.result-paper .writer .val {font-size:var(--font-size-18); color:#505050; line-height:1.2em; letter-spacing:-0.03em; text-align:center;}
.result-paper .mid {display:flex; gap:20px;}
.result-paper .detail {width:55%;}
.result-paper .detail .tbl {width:100%;}
.result-paper .detail .thead {display:flex; flex-wrap:wrap; gap:10px; margin-bottom:var(--space-20);}
.result-paper .detail .thead .th:nth-child(1) {width:150px; flex-shrink:0;}
.result-paper .detail .thead .th:nth-child(2) {flex:1; min-width:0;}
.result-paper .detail .th {display:flex; align-items:center; justify-content:center; min-height:34px; background:#eee; border-radius:var(--bd8); font-size:var(--font-size-16); font-weight:600; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em; text-align:center;}
.result-paper .detail .rows {display:flex; flex-direction:column; gap:22px; position:relative; width:100%;}
.result-paper .detail .row {position:relative; display:grid; grid-template-columns:150px minmax(0, 1fr); align-items:center; gap:10px;}
.result-paper .detail .name {width:auto; font-size:var(--font-size-18); color:var(--dark); line-height:1.2em; letter-spacing:-0.03em;}
.result-paper .detail .track-wrap {min-width:0; overflow:visible;}
.result-paper .detail .track {position:relative; display:flex; align-items:center; width:100%; flex-direction:row; padding-right:17px; overflow:visible;}
.result-paper .detail .bar {position:relative; height:32px; background:#96D651; overflow:visible;}
.result-paper .detail .bar:after {content:''; position:absolute; top:50%; left:auto; right:0; transform:translate(50%,-50%); width:34px; height:34px; z-index:1; background:url('/images/member/emoji-good.png') no-repeat center center / contain;}
.result-paper .detail .warn .bar {background:#F5A623;}
.result-paper .detail .bad .bar {background:#ef6250;}
.result-paper .detail .warn .bar:after,
.result-paper .detail .bad .bar:after {background-image:url('/images/member/emoji-bad.png');}
.result-paper .final {flex:1; min-width:0;}
.result-paper .final .cont {display:flex; flex-direction:column; gap:var(--space-35); width:100%;}
.result-paper .final .scale-wrap {display:flex; flex-direction:column; gap:15px; width:100%;}
.result-paper .final .scale {position:relative; height:24px; border-radius:99px; background:linear-gradient(90deg, var(--pri) 0%, var(--snd) 50%, #ef6250 100%);}
.result-paper .final .scale .ic {position:absolute; left:50%; top:50%; margin:-20px 0 0 -20px;}
.result-paper .final .scale .ic .img {display:block; width:40px; height:40px; line-height:0;}
.result-paper .final .scale .ic img {width:100%; height:100%; display:block; object-fit:contain;}
.result-paper .final .lbls {display:flex; justify-content:space-around; width:100%; font-size:var(--font-size-14); font-weight:600; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em; text-align:center;}
.result-paper .final .hr {height:1px; margin:0; border:0; background:#eee; width:100%; display:block;}
.result-paper .final .lead {display:flex; flex-wrap:wrap; align-items:flex-end; gap:10px; margin-bottom:var(--space-20);}
.result-paper .final .lead .t1 {font-size:var(--font-size-20); font-weight:600; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em;}
.result-paper .final .lead .t2 {font-size:var(--font-size-32); font-weight:700; color:#76b830; line-height:1.2em; letter-spacing:-0.03em;}
.result-paper .final .desc {font-size:var(--font-size-18); color:#505050; line-height:1.66em; letter-spacing:-0.03em;}
.result-paper .btm {display:flex; gap:20px;}
.result-paper .btm .card {flex:1;}
.result-paper .btm .thumb {text-align:center;}
.result-paper .btm .thumb img {width:100%; max-width:286px;}
.result-paper .btm .block {display:flex; flex-direction:column; align-items:center; padding-top:20px;}
.result-paper .btm .badge {display:inline-flex; align-items:center; justify-content:center; margin-bottom:var(--space-25); padding:var(--space-8) var(--space-10); background:#878787; border-radius:var(--bd8); font-size:var(--font-size-16); font-weight:700; color:#fff; line-height:1.2em; letter-spacing:-0.03em;}
.result-paper .btm .date {font-size:var(--font-size-40); font-weight:800; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em; text-align:center;}
.result-paper .btm .pbar {position:relative; width:100%; height:40px; border-radius:40px; background:#f9f9f9; box-shadow:inset 0 3px 3px rgba(0,0,0,.15);}
.result-paper .btm .pbar .fill {position:absolute; left:0; top:0; height:100%; width:70%; background:#76b830; border-radius:40px;}
.result-paper .btm .pct {width:100%; margin-top:5px; font-size:var(--font-size-14); color:#505050; line-height:1.2em; letter-spacing:-0.03em; }
.result-paper .btm .pct .txt {display:inline-block; text-align:center; -webkit-transform:translateX(-50%); transform:translateX(-50%);}

.result-bottom-cs {display:flex; flex-direction:column; align-items:center; gap:var(--space-30); margin-top:var(--space-60); padding:var(--space-40) var(--space-30); background:#fff; border-radius:var(--bd16); box-shadow:0 3px 10px rgba(0,0,0,.15);}
.result-bottom-cs .desc {margin:0; font-size:var(--font-size-22); font-weight:600; color:var(--dark); line-height:1.6em; letter-spacing:-0.03em; text-align:center;}
.result-bottom-cs .cs-wrap {display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:center; gap:var(--space-120);}
.result-bottom-cs .logo {display:block; width:clamp(180px, calc(257 / var(--inner) * 100vw), 257px); height:clamp(70px, calc(100 / var(--inner) * 100vw), 100px); margin:0; line-height:0;}
.result-bottom-cs .logo a {display:block; width:100%; height:100%;}
.result-bottom-cs .logo img {display:block; width:100%; height:100%; object-fit:contain;}
.result-bottom-cs .cs-info {display:flex; flex-direction:column; align-items:center; gap:8px; margin:0; font-style:normal;}
.result-bottom-cs .lbl {margin:0; font-size:var(--font-size-18); font-weight:600; color:#505050; line-height:1.4em; letter-spacing:-0.03em; text-align:center;}
.result-bottom-cs .tel {display:flex; align-items:center; gap:var(--space-10); margin:0;}
.result-bottom-cs .tel .ic {display:block; flex-shrink:0; width:clamp(28px, calc(40 / var(--inner) * 100vw), 40px); height:clamp(28px, calc(40 / var(--inner) * 100vw), 40px); line-height:0; overflow:hidden;}
.result-bottom-cs .tel .ic img {display:block; width:100%; height:100%; object-fit:contain;}
.result-bottom-cs .tel a {font-size:var(--font-size-48); font-weight:700; color:#76b830; line-height:1.1em; letter-spacing:-0.03em; text-decoration:none;}
@media (max-width: 768px) {
    .result-bottom-cs .desc {font-size:17px;}
    .result-bottom-cs .cs-wrap {gap:36px;}
    .result-bottom-cs .tel a {font-size:32px;}

}

/* 마이페이지 - 헤븐 활동 현황: 진행중인 교육 */
.mypage-title {margin-bottom:var(--space-30); font-size:var(--font-size-24); color:var(--dark); line-height:1.3em; letter-spacing:-0.03em;}

.ongoing-edu {display:flex; flex-direction:column; gap:var(--space-30); width:100%; margin-bottom:clamp(40px, calc(150 / var(--inner) * 100vw), 150px);}
.ongoing-edu .summary {background:#f9f9f9; padding:var(--space-40) var(--space-30); border-radius:var(--bd16); box-shadow:0 3px 10px rgba(0,0,0,.15);}
.ongoing-edu .summary .head {display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--space-20); width:100%;}
.ongoing-edu .summary .meta {display:flex; align-items:center; gap:var(--space-60);}
.ongoing-edu .summary .item {display:flex; align-items:center; gap:var(--space-20);}
.ongoing-edu .summary .ic {flex-shrink:0; width:72px; height:72px; overflow:hidden;}
.ongoing-edu .summary .ic .img {display:block; width:100%; height:100%; line-height:0;}
.ongoing-edu .summary .ic img {display:block; width:100%; height:100%; object-fit:contain;}
.ongoing-edu .summary .txt {display:flex; flex-direction:column; gap:var(--space-8); color:var(--dark);}
.ongoing-edu .summary .lbl {font-size:var(--font-size-18); font-weight:600; line-height:1.2em; letter-spacing:-0.03em;}
.ongoing-edu .summary .num {font-size:var(--font-size-34); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.ongoing-edu .summary .row {display:flex; flex-wrap:wrap; align-items:flex-end; gap:var(--space-8);}
.ongoing-edu .summary .sub {font-size:var(--font-size-16); font-weight:600; color:#878787; line-height:1.2em; letter-spacing:-0.03em;}
.ongoing-edu .summary .btn {display:inline-flex; align-items:center; justify-content:center; padding:var(--space-10) var(--space-15); border-radius:var(--bd8); background:#76b830; color:#fff; font-size:var(--font-size-16); font-weight:600; line-height:1.2em; letter-spacing:-0.03em; text-decoration:none; transition:background-color .2s;}
.ongoing-edu .summary .btn:hover {background:#5fa028; color:#fff;}
.ongoing-edu .course {background:#fff; border:1px solid #ddd; border-radius:var(--bd16); padding:var(--space-30) 0;}
.ongoing-edu .course .head {display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--space-20); padding:0 var(--space-30); width:100%;}
.ongoing-edu .course .tit {margin:0; font-size:var(--font-size-22); font-weight:600; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em;}
.ongoing-edu .course .badge {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:clamp(68px, calc(80 / var(--inner) * 100vw), 80px); aspect-ratio:1/1; padding:var(--space-10); border-radius:999px; background:#76b830;}
.ongoing-edu .course .badge .txt {font-size:var(--font-size-18); font-weight:600; color:#fff; line-height:1.33em; letter-spacing:-0.03em; text-align:center;}

/* 마이페이지 - 헤븐 활동: 교육 이력 목록 */
.my-edu-latest {width:100%; border-top:2px solid var(--dark);}
.my-edu-latest .item {display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--space-40); padding:var(--space-20) var(--space-30); border-bottom:1px solid #ddd; transition:.2s;}
.my-edu-latest .content {display:flex; flex-wrap:wrap; flex:1; align-items:center; justify-content:space-between; gap:var(--space-20); min-width:0;}
.my-edu-latest .title p {margin:0; font-size:var(--font-size-20); font-weight:600; color:#505050; line-height:1.2em; letter-spacing:-0.03em;}
.my-edu-latest .info {display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-10);}
.my-edu-latest .info .txt {font-size:var(--font-size-16); font-weight:600; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em;}
.my-edu-latest .info .date {display:inline-flex; align-items:center; justify-content:center; padding:4px 6px; border-radius:4px; background:#eee; font-size:var(--font-size-14); color:#505050; line-height:1.2em; letter-spacing:-0.03em;}
.my-edu-latest .badge {display:flex; flex-shrink:0; align-items:center; justify-content:center; width:clamp(56px, calc(64 / var(--inner) * 100vw), 64px); aspect-ratio:1/1; padding:var(--space-10); border-radius:999px; background:#eee;}
.my-edu-latest .badge .txt {font-size:var(--font-size-16); font-weight:600; color:#505050; line-height:1.33em; letter-spacing:-0.03em; text-align:center;}

.my-edu-list {width:100%; border-top:2px solid var(--dark);}
.my-edu-list .item {display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--space-40); padding:var(--space-30) ; border-bottom:1px solid #ddd; transition:.2s;}
.my-edu-list .content {display:flex; flex-wrap:wrap; flex:1; align-items:center; justify-content:space-between; gap:var(--space-20); min-width:0;}
.my-edu-list .title p {margin:0; font-size:var(--font-size-22); font-weight:600; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em;}
.my-edu-list .info {display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-10);}
.my-edu-list .info .txt {font-size:var(--font-size-16); font-weight:600; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em;}
.my-edu-list .info .date {display:inline-flex; align-items:center; justify-content:center; padding:4px 6px; border-radius:4px; background:#eee; font-size:var(--font-size-14); color:#505050; line-height:1.2em; letter-spacing:-0.03em;}
.my-edu-list .badge {display:flex; flex-shrink:0; align-items:center; justify-content:center; width:clamp(68px, calc(80 / var(--inner) * 100vw), 80px); aspect-ratio:1/1; padding:var(--space-10); border-radius:999px; background:#76B830;}
.my-edu-list .badge .txt {font-size:var(--font-size-18); font-weight:600; color:#fff; line-height:1.33em; letter-spacing:-0.03em; text-align:center;}
.my-edu-list .item:hover {background: #F9F9F9;}
.my-edu-list .item:hover .title p {color: #76B830;}

/* 마이페이지 - 활동일지 테이블 */
.act-log-wrap {width:100%; overflow-x:auto;}
.act-log {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid #76b830;}
.act-log thead th {height:clamp(48px, calc(70 / var(--inner) * 100vw), 70px); padding:var(--space-15) var(--space-24); background:#f5faf0; border-bottom:1px solid #ddd; border-right:1px solid #d9d9d9; font-size:var(--font-size-20); font-weight:700; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em; text-align:center; vertical-align:middle;}
.act-log tbody {border-bottom:1px solid #878787}
.act-log tbody td {padding:var(--space-16) var(--space-20); border-top:1px solid #ddd; border-right:1px solid #d9d9d9; border-left:1px solid #d9d9d9; font-size:var(--font-size-18); line-height:1.5em; letter-spacing:-0.03em; vertical-align:middle;}
.act-log tbody tr:first-child td {border-top:0;}
.act-log tr th:first-child,
.act-log tr td:first-child {border-left:0;}
.act-log tr th:last-child,
.act-log tr td:last-child {border-right:0;}
.act-log .date {text-align:center; font-weight:600; color:var(--dark); line-height:1.33em;}
.act-log .cat {text-align:center; font-weight:600; color:var(--dark);}
.act-log .cont {color:#505050; font-weight:400;}
.act-log .act {text-align:center;}
.act-log .del {display:inline-flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--space-8); background:transparent; border:none; color:#878787; font-size:14px; font-weight:600; line-height:1.2em;}
.act-log .del:before {content:''; display:block; width:24px; aspect-ratio:20/24; background:url('/images/member/icon-trash.png') no-repeat center center / contain;}
.act-log .del:hover {color:#505050; text-decoration:underline;}

.act-log-form {display:flex; flex-direction:column; gap:var(--space-40); margin-bottom:var(--space-60);}
.act-log-form .form-group {display:flex; flex-direction:column; gap:var(--space-15);}
.act-log-form .form-label {font-size:var(--font-size-20); font-weight:700; color:var(--dark); line-height:1.2em; letter-spacing:-0.03em;}
.act-log-form .form-input .input {display:block; width:100%; height:clamp(48px, calc(60 / var(--inner) * 100vw), 60px); border-radius:var(--radius-8); font-size:var(--font-size-16); line-height:1.5em; letter-spacing:-0.03em; font-weight:500;}
.act-log-form .datepicker-wrap {position:relative; width:297px; display:flex;}
.act-log-form .datepicker-wrap .input {flex:1 1 auto; min-width:0; width:1%; border-top-right-radius:0; border-bottom-right-radius:0;}
.act-log-form .datepicker-wrap .ui-datepicker-trigger {flex-shrink:0; width:clamp(48px, calc(60 / var(--inner) * 100vw), 60px); height:clamp(48px, calc(60 / var(--inner) * 100vw), 60px); border-radius:var(--radius-8); border-top-left-radius:0; border-bottom-left-radius:0;}

.bottom-buttons {display:flex; gap:var(--space-15);}
.bottom-buttons.center {justify-content:center;}

.btn-set {display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:var(--space-18) var(--space-50); border-radius:100px; font-size:var(--font-size-18); font-weight:700; line-height:1.2em; letter-spacing:-0.03em; text-decoration:none; transition:background-color .2s; color:#fff; border:0; cursor:pointer;}
.btn-set.dark {background: #878787;}
.btn-set.focus {background: #76B830;}
.btn-set.dark:hover {background:#505050}
.btn-set.focus:hover {background:#5fa028}

/* 동의서 레이어 팝업 */
.modal-terms {max-width:720px; border-radius:var(--radius-24); padding:var(--space-40); background:#fff;}
.modal-terms-header {display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid #d9d9d9; padding-bottom:var(--space-20);}
.modal-terms-header h2 {color:#121212; font-size:var(--font-size-32); font-weight:800; line-height:1.3em; letter-spacing:-.03em;}
.modal-terms-header .modal-close {display:flex; justify-content: center; align-items:center; width:clamp(32px, calc(48 / var(--inner) * 100vw), 48px); aspect-ratio:1/1; background:#76B830; border-radius:50%;}
.modal-terms-body {padding:var(--space-40) 0 var(--space-20);}

.modal-survey-terms {background:#f9f9f9; padding:var(--space-24); border-radius:var(--radius-24); overflow:auto; height:clamp(240px, calc(440 / var(--inner) * 100vw), 440px);}
.modal-survey-agree {text-align:center; margin:var(--space-40) 0;}
.modal-survey-submit {text-align:center;}

/* 패널조사 연구동의서 & 연계자원 안내 */
.consent-wrap {background: #FAFAFA; padding:clamp(30px, calc(100 / var(--inner) * 100vw), 100px) 0 clamp(60px, calc(180 / var(--inner) * 100vw), 180px);}
.consent-wrap .sub-title {display:block; border:0; padding:0; text-align:center; margin-bottom:var(--size60);}
.consent-wrap .sub-title h1 {font-size:var(--font-size-48);}
.consent-wrap .real-cont {padding:0;}

/* 패널조사 연구동의서 */
.consent-doc {display:flex; flex-direction:column; gap:clamp(50px, calc(100 / var(--inner) * 100vw), 100px);}
.consent-sec {display:flex; flex-direction:column; gap:var(--space-30); align-items:center;}
.consent-sec-tit {width:100%; margin:0; font-size:var(--font-size-32); font-weight:700; color:#121212; line-height:1em; letter-spacing:-0.03em; text-align:center;}
.consent-card {width:100%; padding:clamp(20px, calc(50 / var(--inner) * 100vw), 50px); border:1px solid #ddd; border-radius:16px; background:#fff;}
.consent-meta {display:flex; flex-direction:column; gap:20px; margin:0;}
.consent-meta .meta-row {display:flex; flex-wrap:wrap; gap:var(--space-20); align-items:flex-start;}
.consent-meta dt {flex-shrink:0; width:93px; margin:0; font-size:var(--font-size-18); font-weight:400; color:#878787; line-height:1em; letter-spacing:-0.03em;}
.consent-meta dd {margin:0; font-size:var(--font-size-20); font-weight:600; color:#121212; line-height:1em; letter-spacing:-0.03em;}
.consent-desc {display:flex; flex-direction:column; gap:0; margin-top:clamp(25px, calc(30 / var(--inner) * 100vw), 30px); color:#505050; font-size:var(--font-size-18); line-height:1.78em; letter-spacing:-0.03em;}
.consent-desc p {margin:0;}
.consent-faq-list {display:flex; flex-direction:column; gap:clamp(40px, calc(80 / var(--inner) * 100vw), 80px); width:100%;}
.consent-faq-item {display:flex; flex-direction:column; gap:var(--space-30);}
.consent-faq-item .faq-head {display:flex; align-items:center; gap:var(--space-20); padding:var(--space-20) clamp(10px, calc(50 / var(--inner) * 100vw), 50px); border-radius:8px; background:#eee;}
.consent-faq-item .num {display:flex; flex-shrink:0; align-items:center; justify-content:center; width:clamp(32px, calc(40 / var(--inner) * 100vw), 40px); aspect-ratio:1; border-radius:50%; background:#f7c743; font-size:var(--font-size-16); font-weight:700; color:#fff; line-height:1em; letter-spacing:-0.03em;}
.consent-faq-item .faq-tit {margin:0; font-size:var(--font-size-18); font-weight:600; color:#121212; line-height:1.5em; letter-spacing:-0.03em;}
.consent-faq-item .faq-body {padding:0 clamp(10px, calc(50 / var(--inner) * 100vw), 50px); color:#505050; font-size:var(--font-size-18); line-height:1.67em; letter-spacing:-0.03em;}
.consent-faq-item .faq-body p {margin:0;}
.consent-faq-item .faq-body p + p {margin-top:1em;}
.consent-faq-item .faq-fig {margin:var(--space-30) auto 0; max-width:clamp(280px, calc(720 / var(--inner) * 100vw), 720px);}
.consent-faq-item .faq-fig img {display:block; width:100%; height:auto;}
.consent-faq-item .faq-body .emph {color:#121212;}
.consent-faq-item .faq-contact {display:flex; flex-direction:column; gap:clamp(30px, calc(60 / var(--inner) * 100vw), 60px);}
.consent-faq-item .contact-group {display:flex; flex-direction:column; gap:20px;}
.consent-faq-item .contact-desc {margin:0; padding-bottom:var(--space-20); border-bottom:1px solid #ddd; color:#121212; font-size:var(--font-size-18); line-height:1.5em; letter-spacing:-0.03em;}
.consent-faq-item .contact-info {display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-20) 0; margin:0 calc(var(--space-30) * -1);}
.consent-faq-item .info-item {display:flex; align-items:center; gap:var(--space-10); padding:0 var(--space-30); border-right:1px solid #ddd;}
.consent-faq-item .info-item::before {content:''; display:block; flex-shrink:0; width:5px; height:5px; border-radius:50%; background:#505050;}
.consent-faq-item .info-item:last-child {border-right:0;}
.consent-faq-item .info-item .label {font-size:var(--font-size-18); font-weight:700; color:#121212; line-height:1.2em; letter-spacing:-0.03em;}
.consent-faq-item .info-item .val {font-size:var(--font-size-18); font-weight:400; color:#505050; line-height:1.2em; letter-spacing:-0.03em;}
.consent-faq-item .info-item .label + .val {margin-left:var(--space-10);}
.consent-form {display:flex; flex-direction:column; gap:clamp(30px, calc(60 / var(--inner) * 100vw), 60px);}
.consent-list {display:flex; flex-direction:column; margin:0; padding:0; list-style:none; counter-reset:consent;}
.consent-item {display:flex; gap:var(--space-10); padding:var(--space-30) 0; border-bottom:1px dashed #ddd; color:#505050; font-size:var(--font-size-18); line-height:1.67em; letter-spacing:-0.03em; counter-increment:consent;}
.consent-item:first-child {padding-top:0;}
.consent-item::before {content:counter(consent) ". "; flex-shrink:0; width:15px;}
.consent-item.type-chk {justify-content:space-between; gap:var(--space-30) var(--space-10);}
.consent-item .item-txt {flex:1 1 auto; min-width:0; margin:0; line-height:1.67em;}
.consent-item .chk-wrap {display:flex; flex-shrink:0; flex-wrap:wrap; align-items:center; gap:var(--space-10) clamp(20px, calc(50 / var(--inner) * 100vw), 50px);}
.consent-item .chk-wrap .doc-chk label {white-space:nowrap;}
.consent-final {display:flex; flex-direction:column; gap:clamp(20px, calc(30 / var(--inner) * 100vw), 30px); align-items:center;}
.consent-final .final-q {margin:0; font-size:var(--font-size-20); font-weight:600; color:#121212; line-height:1em; letter-spacing:-0.03em; text-align:center;}
.consent-final .chk-wrap.center {display:flex; justify-content:center; gap:var(--space-10) clamp(20px, calc(50 / var(--inner) * 100vw), 50px); margin-bottom:clamp(10px, calc(30 / var(--inner) * 100vw), 30px);}
.consent-submit {text-align:center;}
.consent-submit .btn-set {min-width:clamp(120px, calc(160 / var(--inner) * 100vw), 160px); padding:var(--space-20) var(--space-50);}

@media (max-width: 767px) {
    .consent-item.type-chk {flex-wrap:wrap; justify-content: flex-start;}
    .consent-item .item-txt {max-width:calc(100% - 20px);}
    .consent-item .chk-wrap {margin-left:20px;}

}

/* 연계자원 안내 */
.guide-doc {display:flex; flex-direction:column; gap:clamp(50px, calc(100 / var(--inner) * 100vw), 100px);}
.guide-banner {display:flex; flex-wrap:wrap; align-items:center; gap:clamp(20px, calc(50 / var(--inner) * 100vw), 50px); padding:var(--space-30) clamp(20px, calc(100 / var(--inner) * 100vw), 100px); border-radius:32px; background:#fff6f1;}
.guide-banner .icon {flex-shrink:0; width:clamp(72px, calc(100 / var(--inner) * 100vw), 100px);}
.guide-banner .icon img {display:block; width:100%; height:auto;}
.guide-banner .txt {flex:1 1 auto; min-width:0; margin:0; color:#121212; font-size:var(--font-size-18); line-height:1.67em; letter-spacing:-0.03em;}
.guide-banner .txt p {margin:0;}
.guide-banner .txt .point {font-weight:600; color:#fb8507;}
.guide-sec-list {display:flex; flex-direction:column; gap:clamp(60px, calc(120 / var(--inner) * 100vw), 120px); width:100%;}
.guide-sec {display:flex; flex-direction:column; gap:var(--space-30);}
.guide-sec-tit {margin:0; padding-bottom:var(--space-30); border-bottom:1px solid #ddd; font-size:var(--font-size-32); font-weight:700; color:#121212; line-height:1.3em; letter-spacing:-0.03em;}
.guide-sec-desc {margin:0; color:#505050; font-size:var(--font-size-18); line-height:1.65em; letter-spacing:-0.03em;}
.guide-box-list {display:flex; flex-wrap:wrap; gap:var(--space-30); align-items:stretch;}
.guide-box {display:flex; flex:1 1 calc(50% - 15px); align-items:center; min-width:280px; padding:clamp(16px, calc(30 / var(--inner) * 100vw), 30px); border-radius:16px; background:#f4f4f4;}
.guide-box.type-tel {gap:var(--space-20);}
.guide-box .box-icon {display:flex; flex-shrink:0; align-items:center; justify-content:center; padding:8px; border-radius:16px; background:rgba(118,184,48,0.2);}
.guide-box .box-icon img {display:block; width:48px; height:48px; object-fit:contain;}
.guide-box .box-info {display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-20);}
.guide-box .box-info .tit {font-size:var(--font-size-24); font-weight:700; color:#121212; line-height:1.2em; letter-spacing:-0.03em;}
.guide-box .box-info .val {font-size:var(--font-size-20); font-weight:400; color:#505050; line-height:1.2em; letter-spacing:-0.03em;}
.guide-box.type-link {justify-content:space-between; gap:var(--space-20);}
.guide-box .box-tit {margin:0; font-size:var(--font-size-24); font-weight:700; color:#121212; line-height:1.2em; letter-spacing:-0.03em;}
.guide-btn {display:inline-flex; flex-shrink:0; align-items:center; justify-content:center; padding:var(--space-20) var(--space-30); border-radius:100px; background:#76b830; color:#fff; font-size:var(--font-size-16); font-weight:700; line-height:1em; letter-spacing:-0.03em; text-decoration:none; transition:background-color .2s;}
.guide-btn:hover {background:#5fa028;}
.guide-hotline {display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-15);}
.guide-hotline .hotline-txt {color:#505050; font-size:var(--font-size-18); line-height:1.6em; letter-spacing:-0.03em;}
.guide-hotline .hotline-num {display:inline-flex; align-items:center; gap:5px;}
.guide-hotline .num {display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; border:1px solid #76b830; border-radius:16px; background:#fff; font-size:var(--font-size-18); font-weight:700; color:#76b830; line-height:1em; letter-spacing:-0.03em;}
.guide-online-grid {display:grid; grid-template-columns:48% 50%; gap:var(--space-30); align-items:stretch;}
.guide-online-item {display:flex; flex-direction:column; padding:clamp(20px, calc(30 / var(--inner) * 100vw), 30px) clamp(20px, calc(30 / var(--inner) * 100vw), 30px); border-radius:16px; background:#f4f4f4;}
.guide-online-col {display:flex; flex-direction:column; gap:var(--space-30); min-width:280px;}
.guide-online-item.item-madlen { gap:var(--space-30);}
.guide-online-item.item-blutouch,
.guide-online-item.item-modooda {flex:1; flex-direction:row; align-items:center; justify-content:space-between; gap:var(--space-30);}
.guide-online-item .item-head {display:flex; flex:1 1 auto; gap:var(--space-30); min-width:0;}
.guide-online-item .num {display:flex; flex-shrink:0; align-items:center; justify-content:center; align-self: self-start; width:clamp(32px, calc(40 / var(--inner) * 100vw), 40px); aspect-ratio:1; border-radius:50%; background:#f7c743; font-size:var(--font-size-16); font-weight:700; color:#fff; line-height:1em; letter-spacing:-0.03em;}
.guide-online-item .item-cont {flex:1 1 auto; min-width:0; display:flex; flex-direction:column; justify-content:center; gap:var(--space-20);}
.guide-online-item .item-tit {font-size:var(--font-size-24); font-weight:600; color:#121212; line-height:1.3em; letter-spacing:-0.03em;}
.guide-online-item .item-desc {color:#505050; font-size:var(--font-size-16); line-height:1.63em; letter-spacing:-0.03em;}
.guide-online-item .item-list li {position:relative; padding-left:15px; color:#505050; font-size:var(--font-size-16); line-height:1.63em; letter-spacing:-0.03em;}
.guide-online-item .item-list li + li {margin-top:var(--space-15);}
.guide-online-item .item-list li::before {content:''; position:absolute; top:0.55em; left:0; width:5px; height:5px; border-radius:50%; background:#505050;}
.guide-online-item .item-qr {flex-shrink:0; width:131px; margin:0 auto;}
.guide-online-item .item-qr img {display:block; width:100%; height:auto;}

@media (max-width: 767px) {
    .guide-box-list {flex-direction:column;}
    .guide-box {flex:1 1 100%; min-width:0;}
    .guide-box.type-link {flex-direction:column; align-items:flex-start;}
    .guide-online-grid {grid-template-columns:1fr;}
    .guide-online-item.item-madlen,
    .guide-online-col {flex:1 1 100%; min-width:0;}
    .guide-online-item.item-blutouch,
    .guide-online-item.item-modooda {flex-direction:column; align-items:flex-start;}
    .guide-online-item .guide-btn {margin:0 auto;}
}

/* 마이페이지 > HAVEN프로그램 > 프로그램 참여 현황 */
.pgm-info {margin-top:clamp(40px, calc(150 / var(--inner) * 100vw), 150px);}
.pgm-info .mypage-title {margin-bottom:var(--space-40);}
.pgm-info-sec {margin-bottom:var(--space-60); color:#505050; font-size:var(--font-size-18); line-height:1.6em;}
.pgm-info-sec:last-child {margin-bottom:0;}
.pgm-info-sec h4 {display:flex; align-items:center; gap:10px; font-size:var(--font-size-20); font-weight:700; color:#121212; line-height:1.2em; margin-bottom:var(--space-15);}
.pgm-info-sec h4:before {content:''; display:inline-block; width:3px; height:var(--font-size-20); border-radius:4px; background:#76B830;}
.pgm-info-sec .dot-list {display:flex; flex-direction:column; gap:var(--space-10);}
.pgm-info-sec .dot-list li {position:relative; padding-left:16px;}
.pgm-info-sec .dot-list li:before {content:''; position:absolute; top:0.55em; left:0; width:6px; height:6px; border-radius:50%; background:#ccc;}
.pgm-round {display:flex; align-items:center; text-align:center;}
.pgm-round-item {flex:1; position:relative;}
.pgm-round-item svg {display:block; width:100%; height:auto;}
.pgm-round-num {position:absolute; top:15%; left:0; width:100%; font-size:clamp(50px, calc(80 / var(--inner) * 100vw), 80px); font-weight:700; line-height:1; letter-spacing:-0.01em; color:#eee;}
.pgm-round-item-cont {position:absolute; top:44%; left:0; width:100%; padding:0 10px;}
.pgm-round-title {position:relative; font-size:var(--font-size-24); font-weight:700; line-height:1.3;  color:#121212;}
.pgm-round-desc {position:relative; margin-top:9px; font-size:var(--font-size-16); font-weight:400; line-height:1.6;  color:#505050;}
.pgm-round-arrow {padding:clamp(12px, calc(23 / var(--inner) * 100vw), 23px); flex-shrink:0; line-height:0;}

@media (max-width: 1024px) {
    .pgm-round {flex-wrap:wrap; gap:20px 0;}
    .pgm-round-item {flex:0 1 140px;}
}

@media (max-width: 767px) {
    .pgm-round {gap:30px 12px;}
    .pgm-round-item {flex:0 1 140px;}
    .pgm-round-arrow {position:relative; padding:0;}
    .pgm-round-arrow svg {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);}
    .pgm-round-item-cont {top:40%;}
    .pgm-round-num  {top:12%}
    .pgm-round-desc {margin-top:2px;}
}