@charset "utf-8";
body{background-color:#010101;color:#fff;}
.voucher-sec-com{position:relative;}
.voucher-sec-com:not(.visual-sec){padding:200px 0;}
.voucher-sec-com .inner{position:relative;width:100%;max-width:100vw;overflow:hidden;}
.br-pc{display:inline;}
.pd-bt-n{padding-bottom:0!important;}

.voucher-sec-com .btn{display:inline-flex;align-items:center;justify-content:center;padding:24px 40px;border-radius:999px;font-size:24px;font-weight:600;letter-spacing:-0.03em;transition:.3s;line-height:1;}
.voucher-sec-com .btn-fill{background:var(--red);color:#fff;border:1px solid var(--red);}
.voucher-sec-com .btn-fill:hover{background:#a00606;border-color:#a00606;}
.voucher-sec-com .btn-line{background:transparent;color:#D90404;border:1px solid #D90404;}
.voucher-sec-com .btn-line:hover{background:rgba(217,4,4,.12);}

.sec-tit{text-align:center;margin-bottom:80px;}
.sec-tit .eyebrow{margin-bottom:20px;color:#D90404;font-size:24px;font-weight:600;letter-spacing:.02em;}
.sec-tit h2,
.sec-tit h3{font-size:54px;font-weight:700;line-height:1.4;color:#F7F7FA;}
.sec-tit .sec-desc{margin-top:20px;font-size:26px;line-height:1.4;color:#fff;}

/* visual */
.visual-sec{width:100%;height:100dvh;overflow:hidden;}
.visual-img{position:absolute;inset:0;z-index:0;overflow:hidden;display:flex;width:100%;align-items:center;justify-content:center;}
.visual-img img{max-width:none;width:auto;height:auto;flex-shrink:0;}
.visual-txt{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:80px;height:100%;padding:0 60px;text-align:center;}
.visual-txt .tit{display:flex;flex-direction:column;gap:30px;align-items:center;}
.visual-txt h1{font-size:80px;font-weight:700;line-height:1.3;color:#fff;}
.visual-txt .desc{font-size:26px;line-height:1.5;letter-spacing:-0.03em;color:#fff;}
.visual-txt .desc strong{font-weight:800;}
.visual-txt .btn-wrap{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.visual-txt .btn{min-width:300px;}

/* stats */
.stats-sec{position:relative;padding-bottom:0;overflow:hidden;background:url('../img/voucher/glow_stats.png') no-repeat center bottom / cover;}
.stats-num{gap:30px;align-items:stretch;}
.stats-bx{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;gap:16px;padding:50px 20px;border:none;border-radius:20px;background:rgba(255,255,255,.1);backdrop-filter:blur(10px);}
.stats-bx::before{content:'';position:absolute;inset:0;border-radius:20px;padding:2px;background:linear-gradient(180deg,rgba(255,255,255,.5) 0%,rgba(255,255,255,0) 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;}
.stats-bx .label{font-size:26px;font-weight:500;line-height:1.4;color:rgba(255,255,255,.7);}
.stats-bx .num{display:flex;align-items:flex-end;gap:4px;font-size:50px;font-weight:700;line-height:1.5;color:#fff;}
.stats-bx .num span{font-size:100px;line-height:1;}
.stats-bx .num .odometer{color:inherit;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"lnum" 1;}
.stats-bx .num .odometer .odometer-digit{margin:0;padding:0;letter-spacing:normal;}
.stats-badge{gap:80px;justify-content:center;margin:60px 0 100px;flex-wrap:wrap;}
.badge-bx{display:flex;align-items:center;gap:30px;}
.badge-bx .laurel{width:29px;height:80px;object-fit:contain;}
.badge-bx .laurel-r{transform:scaleX(-1);}
.badge-bx .txt{text-align:center;line-height:1.4;color:#fff;}
.badge-bx .txt p{font-size:24px;}
.badge-bx .txt strong{display:block;margin-top:6px;font-size:30px;font-weight:600;}
.hello-bar{position:absolute;bottom:0;left:0;;z-index:1;padding:30px 0;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);overflow:hidden;}
.hello-track{display:flex;width:max-content;gap:60px;animation:hello-marquee 40s linear infinite;font-size:24px;font-weight:500;line-height:1.4;color:rgba(255,255,255,.7);}
.hello-track span{white-space:nowrap;}
@keyframes hello-marquee{
	0%{transform:translateX(0);}
	100%{transform:translateX(-50%);}
}

.voucher-sec-com .inner{padding:0 60px;}

/* slogan */
.slogan-sec{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:200px 0;overflow:hidden;text-align:center;background:url('../img/voucher/glow_bg.png') no-repeat center center / cover;}
.slogan-tit{display:flex;flex-direction:column;align-items:center;font-size:80px;font-weight:700;line-height:1.3;}
.slogan-line{position:relative;display:block;}
.slogan-line .base{color:rgba(255,255,255,.2);}
.slogan-line .fill{position:absolute;left:0;top:0;width:100%;height:100%;color:#fff;clip-path:inset(0 100% 0 0);will-change:clip-path;}
.slogan-sec p{margin-top:40px;font-size:26px;line-height:1.5;letter-spacing:-0.03em;color:#fff;opacity:.2;}

/* process */
.process-sec{padding-top:200px;padding-bottom:200px;}
.process-lst{display:flex;align-items:stretch;gap:0;padding:60px 0;border-top:1px solid #4A4A4A;border-bottom:1px solid #4A4A4A;}
.process-bx{flex:1;display:flex;flex-direction:column;align-items:center;gap:40px;padding:0 15px;text-align:center;}
.process-bx + .process-bx{border-left:1px dashed #4A4A4A;}
.process-bx .icon{width:80px;height:80px;}
.process-bx .icon img{width:100%;height:100%;object-fit:contain;}
.process-bx .tit{display:flex;flex-direction:column;gap:10px;align-items:center;}
.process-bx .step{font-size:20px;font-weight:600;color:#fff;}
.process-bx .name{font-size:30px;font-weight:600;color:#fff;line-height:1.4;}
.process-bx .desc{font-size:20px;line-height:1.4;color:rgba(255,255,255,.7);}

/* elig */
.elig-sec{padding-top:0;}
.elig-lst{position:relative;}
.elig-lst .swiper-pagination{display:none;}
.elig-col{display:flex;flex-direction:column;gap:30px;min-width:0;height:auto;}
.elig-bx{display:flex;flex:1;flex-direction:column;justify-content:space-between;gap:30px;padding:60px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(255,255,255,.1);box-sizing:border-box;}
.elig-bx .name{font-size:26px;font-weight:600;}
.elig-main .con-txt-wrap .amount{margin:30px 0 0;}
.elig-main .name{font-size:30px;}
.elig-bx .amount{display:flex;align-items:flex-end;gap:10px;font-weight:700;line-height:1;}
.elig-bx .amount .prefix,
.elig-bx .amount .unit{color:#fff;font-size:36px;line-height:1.2;}
.elig-bx .amount strong{color:#D90404;font-size:50px;}
.elig-main .amount .prefix,
.elig-main .amount .unit{font-size:42px;line-height:1.3;}
.elig-main .amount strong{font-size:60px;}
.elig-bx .desc{padding-top:30px;border-top:1px solid #4A4A4A;font-size:20px;line-height:1.4;color:rgba(255,255,255,.7);}
.elig-main .desc{font-size:24px;}
.elig-bx .desc strong{font-weight:600;color:rgba(255,255,255,.7);}

/* proj - main.css 기반 유지·수정 */
.proj-sec .inner{width:100%;padding:0 60px;}
.proj-sec .con-tit{margin-bottom:80px;text-align:center;}
.proj-sec .con-tit h3{font-size:54px;font-weight:700;color:#fff;}
.proj-sec .proj-lst{gap:20px;flex-wrap:wrap;}
.proj-sec .proj-bx{position:relative;width:calc((100% - 40px) / 3);overflow:hidden;border-radius:10px;background:#4A4A4A;aspect-ratio:1 / 1;transition:.3s;}
.proj-sec .proj-bx>a{display:block;position:relative;width:100%;height:100%;}
.proj-sec .proj-img{position:absolute;inset:0;overflow:hidden;}
.proj-sec .proj-img img{width:100%;height:100%;object-fit:cover;}
.proj-sec .proj-txt{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:40px;box-sizing:border-box;}
.proj-sec .proj-bx .tit{font-size:24px;font-weight:700;}
.proj-sec .proj-bx .cate{font-size:42px;font-weight:700;line-height:1.2;}
.proj-sec .proj-bx .sub{margin-top:10px;font-size:26px;font-weight:700;}
.proj-sec .proj-bx:hover{border-radius:50%;}
.proj-sec .btn-wrap{display:flex;justify-content:center;margin-top:80px;}
.proj-sec .btn-wrap .btn{min-width:300px;}

/* service */
.service-lst{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.service-lst .swiper-wrapper{display:contents;}
.service-bx{display:flex;flex-direction:column;justify-content:space-between;gap:40px;padding:60px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(255,255,255,.1);}
.service-bx h4{font-size:30px;font-weight:600;line-height:1.4;}
.service-bx p{margin-top:20px;font-size:20px;line-height:1.4;color:rgba(255,255,255,.7);}
.service-bx .more{display:inline-flex;align-items:center;gap:10px;padding-top:40px;border-top:1px solid #4A4A4A;color:var(--red);font-size:24px;font-weight:600;letter-spacing:-0.03em;}
.service-bx .more img{width:34px;height:34px;transform:rotate(90deg);}

/* faq - main.css 기반 유지·수정 */
.faq-sec{padding-top:0!important;color:#fff;}
/* .faq-sec .inner{width:80%;margin-right:auto;margin-left:auto;} */
.faq-sec .sec-tit{margin-bottom:80px;}
.faq-list{border-top:1px solid #4A4A4A;}
.faq-list details{overflow:hidden;border-bottom:1px solid #4A4A4A;}
.faq-list summary{position:relative;display:flex;align-items:center;gap:20px;padding:40px 60px;cursor:pointer;font-size:30px;font-weight:600;line-height:1.4;list-style:none;}
.faq-list summary::-webkit-details-marker{display:none;}
.faq-list summary::after{content:'+';position:absolute;right:60px;top:50%;transform:translateY(-50%);width:36px;height:36px;font-size:36px;font-weight:400;line-height:36px;text-align:center;}
.faq-list details[open] summary::after{content:'−';}
.faq-list .q,
.faq-list .a{flex-shrink:0;color:var(--red);font-weight:700;}
.faq-a{display:flex;gap:20px;padding:0 60px 40px;align-items:flex-start;}
.faq-a p{max-width:1225px;color:rgba(255,255,255,.7);font-size:20px;line-height:1.7;}

/* cta */
.cta-sec{padding-top:0;padding-bottom:200px;}
.cta-banner{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:100px;border-radius:20px;background:var(--red);}
.cta-banner .txt h3{font-size:48px;font-weight:700;line-height:1.35;}
.cta-banner .txt p{margin-top:10px;font-size:20px;line-height:1.4;opacity:.9;}
.cta-btn{position:relative;display:flex;align-items:center;justify-content:center;width:238px;height:238px;flex-shrink:0;}
.cta-btn .label{position:relative;z-index:1;font-size:30px;font-weight:700;line-height:1.4;text-align:center;}
.cta-btn .ring{position:absolute;inset:5px;width:calc(100% - 10px);height:calc(100% - 10px);pointer-events:none;animation:cta-ring-spin 20s linear infinite;}
@keyframes cta-ring-spin{
	0%{transform:rotate(0deg);}
	100%{transform:rotate(360deg);}
}


@media screen and (max-width:1500px){
	.visual-img img{width:150%;}
	.visual-txt h1{font-size:65px;}
	.visual-txt .desc{font-size:22px;}
	.voucher-sec-com .btn{font-size:20px;}
	.stats-bx .num span{font-size:80px;}
	.stats-badge{gap:50px;}
	.badge-bx .txt p{font-size:22px;}
	.badge-bx .txt strong{font-size:28px;}
	.hello-track{font-size:22px;gap:50px;}
	.process-lst{padding:40px 0;}
	.process-bx{gap:30px;}
	.process-bx .name{font-size:24px;}
	.process-bx .desc{font-size:18px;}
	.elig-bx{padding:40px;}
	.slogan-tit{font-size:65px;}
	.slogan-sec p{font-size:22px;}
	.sec-tit h2, .sec-tit h3{font-size:55px;}
	.sec-tit .eyebrow{font-size:22px;}
	.elig-main .amount .prefix, .elig-main .amount .unit,
	.elig-bx .amount .prefix, .elig-bx .amount .unit,
	.elig-main .amount .prefix, .elig-main .amount .unit,
	.elig-bx .amount .prefix, .elig-bx .amount .unit{font-size:32px;}
	.elig-bx .amount strong,
	.elig-main .amount strong{font-size:45px;}
	.elig-bx .desc{font-size:18px;}
	.service-bx h4{font-size:25px;}
	.service-bx p{font-size:18px;}
	.service-bx .more{font-size:20px;}
	.service-lst{grid-template-columns:repeat(2,1fr);gap:20px;}

}

@media screen and (max-width:1024px){
	.voucher-sec-com:not(.visual-sec){padding:120px 0;}
	.voucher-sec-com .inner{padding:0 30px;}
	.voucher-sec-com .btn{padding:18px 28px;font-size:16px;}
	.sec-tit{margin-bottom:50px;}
	.sec-tit .eyebrow{font-size:18px;margin-bottom:14px;}
	.sec-tit h2,
	.sec-tit h3,
	.proj-sec .con-tit h3{font-size:42px;}
	.sec-tit .sec-desc,
	.visual-txt .desc,
	.slogan-sec p,
	.process-bx .desc,
	.elig-bx .desc,
	.elig-main .desc,
	.service-bx p,
	.faq-a p,
	.cta-banner .txt p,
	.proj-sec .proj-bx .sub{font-size:15px;}
	.visual-txt{gap:40px;padding:0 30px;}
	.visual-txt .tit{gap:20px;}
	.visual-txt h1{font-size:48px;}
	.visual-txt .btn{min-width:0;max-width:260px;}
	.stats-num{flex-direction:column;gap:0;}
	.stats-bx{padding:40px 20px;gap:12px;}
	.stats-bx:nth-child(2){margin-top:-25px;}
	.stats-bx:nth-child(3){margin-top:-20px;}
	.stats-bx .label{font-size:18px;}
	.stats-bx .num{font-size:36px;}
	.stats-bx .num span{font-size:64px;}
	.stats-badge{gap:40px;margin:40px 0 80px;}
	.badge-bx{gap:16px;}
	.badge-bx .laurel{height:60px;width:22px;}
	.badge-bx .txt p{font-size:16px;}
	.badge-bx .txt strong{font-size:22px;}
	.hello-bar{padding:20px 0;}
	.hello-track{font-size:16px;gap:40px;}
	.slogan-sec{padding:120px 0;}
	.slogan-tit{font-size:48px;}
	.slogan-sec p{margin-top:28px;}
	.process-sec{padding-top:120px;padding-bottom:120px;}
	.process-lst{flex-wrap:wrap;padding:40px 0;gap:0;}
	.process-bx{flex:0 0 50%;gap:24px;padding:24px 15px;}
	.process-bx + .process-bx{border-left:0;}
	.process-bx:nth-child(even){border-left:1px dashed #4A4A4A;}
	.process-bx .icon{width:64px;height:64px;}
	.process-bx .step{font-size:16px;}
	.process-bx .name{font-size:20px;}
	.elig-bx{padding:36px;gap:24px;}
	.elig-bx .name{font-size:20px;}
	.elig-main .name{font-size:22px;}
	.elig-bx .amount .prefix,
	.elig-bx .amount .unit,
	.elig-main .amount .prefix,
	.elig-main .amount .unit{font-size:26px;}
	.elig-bx .amount strong{font-size:36px;}
	.elig-main .amount strong{font-size:40px;}
	.elig-bx .desc,
	.elig-main .desc{padding-top:20px;}
	.proj-sec .con-tit{margin-bottom:50px;}
	.proj-sec .proj-bx{width:calc((100% - 20px) / 2);}
	.proj-sec .proj-txt{padding:28px;}
	.proj-sec .proj-bx .tit{font-size:18px;}
	.proj-sec .proj-bx .cate{font-size:30px;}
	.proj-sec .btn-wrap{margin-top:50px;}
	.proj-sec .btn-wrap .btn{min-width:0;max-width:260px;}
	.service-bx{padding:36px;gap:28px;}
	.service-bx h4{font-size:22px;}
	.service-bx p{margin-top:14px;}
	.service-bx .more{padding-top:28px;font-size:16px;}
	.service-bx .more img{width:28px;height:28px;}
	.faq-sec .sec-tit{margin-bottom:50px;}
	.faq-list summary{padding:28px 30px;padding-right:60px;font-size:20px;gap:14px;}
	.faq-list summary::after{right:30px;width:28px;height:28px;font-size:28px;line-height:28px;}
	.faq-a{padding:0 30px 28px;gap:14px;}
	.cta-sec{padding-bottom:120px;}
	.cta-banner{flex-direction:column;gap:30px;padding:60px 40px;text-align:center;}
	.cta-banner .txt h3{font-size:34px;}
	.cta-btn{width:180px;height:180px;}
	.cta-btn .label{font-size:22px;}
}

@media screen and (max-width:768px){
	.voucher-sec-com:not(.visual-sec){padding:80px 0;}
	.visual-img img{width:300%;}
	.voucher-sec-com .inner{padding:0 20px;}
	.br-pc{display:none;}
	.voucher-sec-com .btn{padding:16px 24px;font-size:15px;}
	.sec-tit{margin-bottom:36px;}
	.sec-tit .eyebrow{font-size:15px;margin-bottom:10px;}
	.sec-tit h2,
	.sec-tit h3,
	.proj-sec .con-tit h3{font-size:32px;}
	.visual-txt{gap:30px;padding:0 20px;}
	.visual-txt .tit{gap:16px;}
	.visual-txt h1{font-size:36px;}
	.visual-txt .btn-wrap{flex-direction:column;align-items:center;width:90%;margin:0 auto;max-width:300px;}
	.visual-txt .btn{max-width:100%;width:65%;}
	.stats-bx{padding:30px 16px;}
	.stats-bx .label{font-size:15px;}
	.stats-bx .num{font-size:28px;}
	.stats-bx .num span{font-size:45px;}
	.stats-badge{gap:30px;margin:60px 0 60px;flex-direction:column;align-items:center;}
	.badge-bx{gap:12px;}
	.badge-bx .laurel{height:48px;width:18px;}
	.badge-bx .txt p{font-size:15px;}
	.badge-bx .txt strong{font-size:18px;}
	.hello-bar{padding:16px 0;}
	.hello-track{font-size:15px;gap:30px;}
	.slogan-sec{padding:80px 0;}
	.slogan-tit{font-size:32px;}
	.slogan-sec p{margin-top:20px;}
	.process-sec{padding-top:80px;padding-bottom:80px;}
	.process-lst{padding:0px 0;}
	.process-bx{flex:fit-content;gap:20px;padding:24px 10px;}
	.process-bx:nth-child(even){border-left:0;}
	.process-bx + .process-bx{border-top:1px dashed #4A4A4A;}
	.process-bx .icon{width:56px;height:56px;}
	.process-bx .step{font-size:14px;}
	.process-bx .name{font-size:18px;}
	.elig-lst{padding-bottom:40px;}
	.elig-lst .swiper-pagination{display:flex;position:absolute;left:0;bottom:4px;width:100%;justify-content:center;align-items:center;gap:8px;}
	.elig-lst .swiper-pagination-bullet{width:7px;height:7px;margin:0;border-radius:50%;background:rgba(255,255,255,.3);opacity:1;cursor:pointer;}
	.elig-lst .swiper-pagination-bullet-active{background:var(--red);}
	.elig-col{gap:16px;}
	.elig-bx{padding:28px;gap:20px;}
	.elig-bx .name,
	.elig-main .name{font-size:18px;}
	.elig-bx .amount .prefix,
	.elig-bx .amount .unit,
	.elig-main .amount .prefix,
	.elig-main .amount .unit{font-size:22px;}
	.elig-bx .amount strong,
	.elig-main .amount strong{font-size:32px;}
	.proj-sec .con-tit{margin-bottom:30px;}
	.proj-sec .proj-lst{gap:15px;}
	.proj-sec .proj-bx{width:100%;}
	.proj-sec .proj-txt{padding:24px;}
	.proj-sec .proj-bx .tit{font-size:15px;}
	.proj-sec .proj-bx .cate{font-size:24px;}
	.proj-sec .btn-wrap{margin-top:40px;}
	.service-lst{padding-bottom:0;}
	.service-lst .swiper-wrapper{display:flex;}
	.service-lst .swiper-slide{width:88%;flex-shrink:0;}
	.service-bx{padding:28px;gap:24px;}
	.service-bx h4{font-size:18px;}
	.service-bx .more{padding-top:24px;font-size:15px;}
	.service-bx .more img{width:24px;height:24px;}
	.faq-sec .sec-tit{margin-bottom:36px;}
	.faq-list summary{padding:24px 0px;padding-right:35px;font-size:16px;gap:10px;}
	.faq-list summary::after{right:0px;width:24px;height:24px;font-size:24px;line-height:24px;}
	.faq-a{padding:0 0px 24px;gap:10px;}
	.cta-sec{padding-bottom:80px;}
	.cta-banner{padding:40px 24px;gap:24px;}
	.cta-banner .txt h3{font-size:26px;}
	.cta-btn{width:150px;height:150px;}
	.cta-btn .label{font-size:18px;}
}
