* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Poppins', sans-serif;
    background-color: #f8f9fa;
    color: #333;
}

.container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 20px;
}

.section {
    margin-bottom: 60px;
}

 #fullpage > .section {
     margin-bottom: 0;
 }

 .footer.section {
     margin-bottom: 0;
 }

.section-header {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 30px;
}

.section-title {
    font-size: 28px;
    font-weight: 700;
    color: #1e293b;
    text-align: center;
}

.section-subtitle {
    font-size: 15px;
    color: #64748b;
    margin-top: 8px;
    text-align: center;
}

.add-event-btn {
    padding: 4px 8px;
    background: #22c55e;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    transition: all 0.2s;
}

.add-event-btn:hover {
    background: #16a34a;
}

 .footer {
   background-color: #f8fafc; /* 밝은 회색 배경 */
   font-size: 14px;
   color: #444444; /* 짙은 텍스트 */
   padding: 20px 0;
   border-top:2px solid #e2e8f0;
   text-align: center;
   width: 100%;
 }
 
 .footer .container {
   max-width: none;
   padding: 0 20px;
 }
 
 .footer .footer-content {
   display: flex;
   flex-direction: column;
   align-items: center;  /* 중앙 정렬 */
   gap: 6px;
   line-height: 1.6;
 }

 .admin-controls {
   margin-top: 10px;
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 8px;
 }

 .admin-mode-btn {
   padding: 6px 10px;
   background: #11182791;
   color: #ffffff;
   border: none;
   border-radius: 8px;
   cursor: pointer;
   font-size: 13px;
   font-weight: 600;
 }

 .admin-password-box {
   display: flex;
   gap: 6px;
   align-items: center;
 }

 .admin-password-box input {
   padding: 6px 10px;
   border: 1px solid #e2e8f0;
   border-radius: 8px;
   font-size: 13px;
 }

 .admin-password-box button {
   padding: 6px 10px;
   border: 1px solid #e2e8f0;
   background: #ffffff;
   border-radius: 8px;
   cursor: pointer;
   font-size: 13px;
 }

 #fp-nav ul li .fp-tooltip,
 #fp-nav .fp-tooltip,
 .fp-tooltip {
   color: #6b7280;
 }

 #fp-nav {
   top: 20px;
   bottom: auto;
   transform: none;
   left: 20px;
   right: auto;
 }

 #fp-nav.fp-left ul li .fp-tooltip,
 #fp-nav.fp-left .fp-tooltip {
   left: 24px;
   right: auto;
 }
html, body {
    word-break: keep-all;
    overflow-wrap: break-word; /* 긴 URL 등 대비 */
    line-break: strict;        /* 필요 시 */
}