@charset "utf-8";

.m-footer {padding:40px 0;  width:100%; position:relative; background:#fff; border-top:1px solid var(--border1);}
.m-footer-top {display:flex; justify-content:space-between;}
.m-footer-logo {width:205px; flex-shrink:0;}
.m-footer-logo img, .m-footer-logo svg {width:100%; height:auto;}
.m-footer-logo-text {font-size:var(--fs48); font-weight:900; color:var(--ate-base1); letter-spacing:0.04em; line-height:1;}

.m-footer-addr {flex:1; max-width:373px; display:flex; flex-direction:column; gap:30px;}
.m-footer-addr-row h5 {font-size:var(--fs20); font-weight:800; color:#000;}
.m-footer-addr-row p {font-size:var(--fs15); font-weight:500; line-height:1.7; color:var(--ate-text);}

.m-footer-call {width:400px; flex-shrink:0; padding:40px; background:#F4F5F7;border-radius: 20px;}
.m-footer-call .lbl {display:block; font-size:var(--fs14); font-weight:700; color:#000;margin-bottom:10px;}
.m-footer-call .tel {
	font-size:var(--fs32); font-weight:900; letter-spacing:-0.02em;
	line-height:1; color:#000;margin-bottom:30px;
}
.m-footer-call p {font-size:var(--fs15); line-height:1.6; color:#333; font-weight:500;}
.m-footer-call p span {color:#999;}

.m-footer-bottom {padding:60px 0 0;}
.m-footer-bottom-inner {
	padding:40px 0 0;  border-top:1px solid var(--border1);
	display:flex; align-items:center; justify-content:space-between;
}
.m-footer-bottom p {color:#616A76;font-size: var(--fs16);font-weight: 500;}
.m-footer-links {display:flex; gap:24px;}
.m-footer-links a {font-size:var(--fs16); font-weight:500; color:#111; transition:color .25s;}
.m-footer-links a:hover {color:var(--c_base1);}


/* ────── 개인정보처리방침 / 이용약관 레이어 모달 ────── */
.policy-layer {display:none; position:fixed; top:0; left:0; width:100%; height:100%; z-index:1000000;}
.policy-layer.is-open {display:block;}
.policy-layer .policy-dim {position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.6); cursor:pointer;}
.policy-layer .policy-modal {
	position:absolute; top:50%; left:50%; transform:translate(-50%, -50%);
	width:min(900px, calc(100% - 40px)); max-height:calc(100vh - 80px);
	background:#fff; border-radius:12px; box-shadow:0 20px 60px rgba(0,0,0,0.3);
	display:flex; flex-direction:column; overflow:hidden;
}
.policy-layer .policy-head {
	display:flex; align-items:center; justify-content:space-between;
	padding:24px 32px; border-bottom:1px solid #e5e5e5; background:#fff;
	flex-shrink:0;
}
.policy-layer .policy-tit {margin:0; font-size:var(--fs22, 22px); font-weight:700; color:#222; line-height:1.4;}
.policy-layer .policy-close {
	position:relative; width:32px; height:32px; padding:0;
	background:none; border:0; cursor:pointer; flex-shrink:0;
}
.policy-layer .policy-close span {
	position:absolute; top:50%; left:50%; width:20px; height:2px; background:#222;
	transform-origin:center;
}
.policy-layer .policy-close span:nth-child(1) {transform:translate(-50%, -50%) rotate(45deg);}
.policy-layer .policy-close span:nth-child(2) {transform:translate(-50%, -50%) rotate(-45deg);}
.policy-layer .policy-close:hover span {background:#000;}

.policy-layer .policy-body {padding:28px 32px 32px; overflow-y:auto; flex:1;}
.policy-layer .policy-content {color:#333; font-size:var(--fs15, 15px); line-height:1.75;}
.policy-layer .policy-content[hidden] {display:none;}
.policy-layer .policy-content .policy-lead {
	margin:0 0 24px; padding:16px 20px; background:#f6f8fa;
	border-radius:8px; color:#333; font-size:var(--fs14, 14px); line-height:1.7;
}
.policy-layer .policy-content h4 {
	margin:28px 0 10px; font-size:var(--fs16, 16px); font-weight:700; color:#111;
	line-height:1.5;
}
.policy-layer .policy-content h4:first-of-type {margin-top:0;}
.policy-layer .policy-content p {margin:0 0 12px;}
.policy-layer .policy-content ul {margin:0 0 12px; padding-left:20px;}
.policy-layer .policy-content ul li {margin-bottom:6px; list-style:disc;}
.policy-layer .policy-content .policy-date {
	margin-top:32px; padding-top:20px; border-top:1px solid #e5e5e5;
	color:#666; font-size:var(--fs13, 13px); line-height:1.7;
}

@media screen and (max-width: 1500px) {
	.m-footer-top, .m-footer-bottom {}
}
@media screen and (max-width: 1199px) {
	.m-footer {padding:60px 30px; height:auto;}
	.m-footer-top { flex-direction:column; gap:40px;}
	.m-footer-addr {gap:20px;}
	.m-footer-call {width:100%;}
	.m-footer-bottom {padding:40px 0 0;}
	.m-footer-bottom-inner {padding:30px 0 0; flex-direction:column; gap:14px; align-items:flex-start; }
}
@media screen and (max-width: 767px) {
	.m-footer {padding:40px 20px;}
	.m-footer-call .tel {font-size:var(--fs24);}
	.m-footer-top {gap:30px;}
	.m-footer-bottom {padding:30px 0 0;}
	.m-footer-bottom-inner {padding:20px 0 0; gap:0;}
	
	.policy-layer .policy-modal {width:calc(100% - 24px); max-height:calc(100vh - 40px); border-radius:10px;}
	.policy-layer .policy-head {padding:18px 20px;}
	.policy-layer .policy-tit {font-size:18px;}
	.policy-layer .policy-body {padding:20px;}
	.policy-layer .policy-content h4 {font-size:15px;}
	
	
}
