

#milestone{
  padding:60px 16px 80px;
}




.history-head{
  text-align:center;
  margin-bottom:60px;
}
.history-head h2{
  font-family:var(--scFont);
  font-size:40px;
  font-weight:700;
  margin:0 0 24px;
}
.history-head p{
  font-family:var(--scFont);
  font-size:20px;
  font-weight:500;
  color:#333;
  margin:0;
}






    .policy-wrap{
        max-width:1200px;
        margin:0 auto;
    padding:0 16px;   /* 첫 섹션은 기존처럼 좌우 여백 유지 */
	padding-bottom:50px;
	background:#ffffff;
    }

    /* 상단 영역 */
    .policy-head-title{
        font-size:32px;
        font-weight:800;
        letter-spacing:-0.02em;
        margin:0 0 18px;
    }
    .policy-head-desc{
        max-width:820px;
        margin:0 auto 60px;
        font-size:18px;
        line-height:1.8;
        text-align:center;
        color:#333;
    }
    .policy-head-desc strong{
        font-weight:800;
    }

    /* 3개 카드 레이아웃 */
    .policy-list{
        display:flex;
        flex-wrap:wrap;
        justify-content:space-between;
        gap:32px;
    }
    .policy-item{
        flex:1 1 330px;
        text-align:center;
        padding:24px 18px 30px;
        border-radius:24px;
        background:#ffffff;
        box-shadow:0 18px 40px rgba(15,23,42,0.08);
        position:relative;
        overflow:hidden;
        opacity:0;
        transform:translateY(40px);
        transition:
            opacity .7s ease,
            transform .7s ease,
            box-shadow .3s ease;
    }
    .policy-item::before{
        content:"";
        position:absolute;
        inset:-40%;
        background:radial-gradient(circle at 10% 0%,rgba(37,99,235,0.12),transparent 55%),
                   radial-gradient(circle at 90% 100%,rgba(59,130,246,0.15),transparent 60%);
        opacity:0;
        transition:opacity .35s ease;
        z-index:-1;
    }
    .policy-item.is-visible{
        opacity:1;
        transform:translateY(0);
    }
    .policy-item:hover{
        transform:translateY(-8px);
        box-shadow:0 24px 55px rgba(15,23,42,0.16);
    }
    .policy-item:hover::before{
        opacity:1;
    }

    /* 원형 이미지 영역 */
    .policy-circle{
        width:220px;
        height:220px;
        margin:0 auto 22px;
        border-radius:50%;
        display:flex;
        align-items:center;
        justify-content:center;
        position:relative;
        overflow:hidden;
        background:transparent;
    }
    .policy-circle::after{
        content:"";
        position:absolute;
        inset:8px;
        border-radius:50%;
        border:1px solid rgba(15,23,42,0.12);
        pointer-events:none;
    }
    .policy-circle-inner{
        position:relative;
        z-index:1;
        width:100%;
        height:100%;
        display:flex;
        align-items:center;
        justify-content:center;
        animation:floatY 4.2s ease-in-out infinite;
    }
    .policy-circle-inner img{
        width:100%;
        height:100%;
        object-fit:cover;
        border-radius:50%;
        display:block;
    }

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

    .policy-title{
        font-size:20px;
        font-weight:800;
        margin:0 0 8px;
    }
    .policy-text{
        margin:0;
        font-size:15px;
        line-height:1.9;
        color:#444;
        word-break:keep-all;
    }

    /* 태블릿 사이즈 조정 */
    @media (max-width:960px){

        .policy-wrap{
            max-width:720px;
        }
        .policy-head-title{
            font-size:26px;
            text-align:center;
        }
        .policy-head-desc{
            font-size:16px;
            margin-bottom:32px;
        }
        .policy-list{
            gap:24px;
        }
        .policy-circle{
            width:200px;
            height:200px;
        }
    }

    /* 모바일(세로) – 한 줄씩, 그림 작게, 그림자 약하게 */
    @media (max-width:640px){
        .policy-wrap{
            max-width:100%;
        }
        .policy-head-title{
            font-size:22px;
            text-align:left;
            margin-bottom:10px;
        }
        .policy-head-desc{
            font-size:14px;
            text-align:left;
            margin:0 0 24px;
            line-height:1.7;
        }
        .policy-list{
            flex-direction:column;
            align-items:stretch;
            gap:16px;
        }
        .policy-item{
            flex:1 1 auto;
            max-width:100%;
            padding:18px 16px 20px;
            border-radius:16px;
            box-shadow:0 8px 18px rgba(15,23,42,0.07);
        }
        .policy-circle{
            width:150px;
            height:150px;
            margin-bottom:14px;
        }
        .policy-circle::after{
            inset:6px;
        }
        .policy-title{
            font-size:17px;
            margin-bottom:6px;
        }
        .policy-text{
            font-size:13px;
            line-height:1.7;
        }
    }
	
	
	
	















/* 전체 래이아웃 */
.tw-policy-wheel{
  padding:48px 0px;
  background:#fafafa;
  margin:0px;
  width:100%;
}
.tw-policy-wheel-inner{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:40px;
}

/* 좌측 도형 */
.tw-policy-wheel-figure{
  flex:0 0 480px;         /* PC 기준 폭 */
}
.tw-policy-wheel-figure img{
  display:block;
  width:100%;
  height:auto;
}

/* 우측 텍스트 */
.tw-policy-wheel-text{
  flex:1 1 auto;
  font-family:var(--scFont,'S-Core',"Nanum Gothic",sans-serif);
  color:#111827;
}
.tw-policy-wheel-title{
  margin:0 0 20px;
  font-size:26px;
  font-weight:800;
  letter-spacing:-0.03em;
}
.tw-policy-wheel-list{
  margin:0;
  padding:0;
}
.tw-policy-wheel-list > div{
  margin-bottom:10px;
}
.tw-policy-wheel-list dt{
  font-size:20px;
  font-weight:700;
  margin-bottom:4px;
}
.tw-policy-wheel-list dt span{
  font-weight:500;
  color:#4b5563;
}
.tw-policy-wheel-list dd{
  margin:0 0 4px;
  font-size:16px;
  line-height:1.7;
  color:#374151;
}

/* 반응형: 태블릿 이하에서 정중앙, 모바일에선 위/아래 배치 */
@media (max-width:900px){
  .tw-policy-wheel-inner{
    flex-direction:column;
    align-items:flex-start;
  }
  .tw-policy-wheel-figure{
    flex:0 0 auto;
    max-width:420px;
    width:100%;
    margin:0 auto;
  }
  .tw-policy-wheel-text{
    width:100%;
  }
  .tw-policy-wheel-list{
    padding:32px 26px;
  
  }
}
@media (max-width:600px){
  .tw-policy-wheel{
    padding:32px 36px;
  }
  .tw-policy-wheel-title{
    font-size:20px;
    margin-bottom:12px;
  }
  .tw-policy-wheel-list dt{
    font-size:14px;
  }
  .tw-policy-wheel-list dd{
    font-size:13px;
  }
  .tw-policy-wheel-list{
    padding:32px 16px;
  
  }
}













@media (max-width: 768px){

	.history-head{
		padding-bottom:10px;
	}
	.history-head h2{
        font-size:24px;
	}
    .history-head p{
        font-size:16px;
    }
	
}














	