
/* [TYPOGRAPHY] */
.mega-text { font-size: 10vw; font-weight: 900; letter-spacing: -0.04em; text-transform: uppercase; line-height: 0.85; font-family: 'SchoolSafetyNotification';}
.outline-text { -webkit-text-stroke: 2px rgba(0, 0, 0, 0.8);  color: transparent; display: inline-block;}


/* [11. FOOTER RENEWAL - BOLD TYPO & GRID] */
.danbee-footer-new { background-color:#000; color:#fff; padding:100px 100px 40px; border-top:1px solid #111; position:relative; overflow:hidden; }

/* [상단 영역] 타이틀 + 링크 그룹 */
.footer-top { display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; margin-bottom:60px; }

/* 1. 왼쪽: 거대한 타이포그래피 */
.footer-headline-area { flex:1; min-width:50%; }
.headline-row { display:flex; align-items:center; gap:30px; margin-bottom:10px; }
.footer-title { font-size:6vw; font-weight:900; line-height:0.9; letter-spacing:-0.02em; margin:0; color:#fff; white-space:nowrap; }

/* 캡슐형 버튼 (이미지 스타일) */
.contact-btn-pill { display:inline-flex; justify-content:center; align-items:center; height:60px; padding:0 40px; border:1px solid rgba(255,255,255,0.5); border-radius:100px; color:#fff; font-size:1rem; font-weight:700; text-decoration:none; transition:all 0.3s ease; white-space:nowrap; margin-bottom:50px; }
.contact-btn-pill:hover { background:#fff151; color:#000; }


/* [CONTACT TRIGGER SECTION] */
.contact-trigger { padding: 100px 60px; text-align: center; background: #223055;cursor: pointer; position: relative; overflow: hidden;}
.contact-trigger .mega-text { color: #fff; display: inline-flex; align-items: center; gap: 20px; transition: 0.5s; }
.contact-trigger .arrow-icon { font-size: 6vw; opacity: 0; transform: translateX(-50px) scale(0.5);transition: 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);}
.contact-trigger:hover .arrow-icon { opacity: 1; transform: translateX(0) scale(1); }
.contact-trigger:hover .mega-text { transform: translateX(-20px); }

/* [MODAL POPUP] */
.modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.85); z-index: 1000;display: none; align-items: center; justify-content: center;}
.modal-overlay.active { display: flex; }
.modal-content { background: #fff; width: 95%; max-width: 900px; height: 90vh; padding: 50px; position: relative; overflow-y: auto;transform: translateY(30px); opacity: 0; transition: 0.4s; }
.modal-overlay.active .modal-content { transform: translateY(0); opacity: 1; }
.modal-close { position: absolute; top: 20px; right: 20px; font-size: 2.5rem; cursor: pointer; border: none; background: none; z-index: 10; }

/* Form Layout */
.form-title { font-size: 2rem; font-weight: 900; margin-bottom: 40px; border-bottom: 2px solid #000; padding-bottom: 10px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; margin-bottom: 20px; }
.form-group { display: flex; flex-direction: column; gap: 8px; }
.form-group.full { grid-column: span 2; }
.form-group label { font-weight: 800; font-size: 0.9rem; color: #0056ff; }
.form-group label span { color: #000; }
.form-group input, .form-group select, .form-group textarea { padding: 12px; border: 1px solid #ddd; font-family: inherit; font-size: 1rem; outline: none; font-weight: 700;}
.email-group { display: flex; align-items: center; gap: 10px; }
.email-group input { flex: 1; }
.radio-group { display: flex; gap: 20px; padding: 10px 0; }
.radio-group label { color: #000; font-weight: 500; display: flex; align-items: center; gap: 5px; cursor: pointer; }
.submit-btn { width: 100%; padding: 25px; background: #0056ff; border: none; font-weight: 900; font-size: 1.5rem; color: #fff; cursor: pointer; transition: 0.3s; }
.submit-btn:hover { background: #000; color: #fff; }


/* 2. 오른쪽: 사이트맵 링크 */
.footer-links-area { display:flex; gap:80px; margin-top:10px; }
.link-col h4 { font-size:1.0rem; color:#666; margin-bottom:25px; font-weight:800; text-transform:uppercase; letter-spacing:0.05em; }
.link-col ul { list-style:none; padding:0; margin:0; }
.link-col li { margin-bottom:12px; }
.link-col a { color:#ccc; text-decoration:none; font-size:0.9rem; font-weight:600; transition:color 0.3s; }
.link-col a:hover { color:var(--primary-color); text-decoration:underline; }

/* [중간 영역] 소셜 아이콘 */
.footer-social { display:flex; gap:15px; margin-bottom:60px; }
.social-icon { width:40px; height:40px; border-radius:50%; background:#1a1a1a; display:flex; justify-content:center; align-items:center; color:#fff; text-decoration:none; font-size:1.2rem; transition:0.3s; }
.social-icon:hover { background:#fff; color:#000; }

/* [하단 영역] 회사 정보 및 카피라이트 */
.footer-bottom-info { border-top: 1px solid #111; padding-top: 30px;font-size: 1.0rem; line-height: 1.6; font-weight: 700;}
.privacy-link { display: block;color: #fff; font-weight: 700;margin-bottom: 10px;text-decoration: none;}
.company-meta span {margin-right: 15px; display: inline-block;}
.company-meta span::after { content: ''; /}
.copyright-text {margin-top: 30px; font-size: 0.75rem; opacity: 0.9;}

/* [반응형 - 모바일 & 태블릿] */
@media (max-width: 1024px) {
    .danbee-footer-new { padding: 60px 20px; }
    .footer-top { flex-direction: column; }
    .headline-row {  flex-wrap: wrap;  gap: 15px;margin-bottom: 10px;}
    .footer-title { font-size: 7vw; line-height: 1; }
    .contact-btn-pill {  height: 40px; font-size: 0.9rem;  padding: 0 25px; }
    .footer-links-area { width: 100%; margin-top: 50px;flex-direction: column; gap: 40px;}
    .footer-social { margin-bottom: 40px; }
    .company-meta span {display: block;  margin-right: 0; margin-bottom: 5px;}
}