@charset "UTF-8";

/* ==========================================
   커뮤니티 시설 (본문 전용 스타일)
   - 헤더, 사이드바, 레이아웃은 layout.css를 따름
================================================= */

/* 페이지 진입 시 부드럽게 나타나는 효과 */
.facility-section { 
    animation: fadeIn 0.5s ease; 
}
@keyframes fadeIn { 
    from { opacity: 0; transform: translateY(10px); } 
    to { opacity: 1; transform: translateY(0); } 
}

/* 본문 그리드 및 이미지 */
.content-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: start; }
.img-box { width: 100%; height: 400px; border-radius: 12px; overflow: hidden; box-shadow: 0 10px 20px rgba(0,0,0,0.1); }
.img-box img { width: 100%; height: 100%; object-fit: cover; transition: 0.3s; }
.img-box:hover img { transform: scale(1.05); }

/* 정보 텍스트 및 리스트 */
.info-box h3 { margin-top: 0; font-size: 22px; margin-bottom: 15px; }
.info-list { list-style: none; padding: 0; margin-bottom: 30px; }
.info-list li { margin-bottom: 12px; padding-left: 20px; position: relative; color: #555; }
.info-list li::before { content: '✔'; position: absolute; left: 0; color: var(--accent-color, #d4af37); font-weight: bold; }

/* 요금표 (Table) */
.price-table { width: 100%; border-collapse: collapse; margin-top: 20px; background: white; box-shadow: 0 5px 15px rgba(0,0,0,0.05); }
.price-table th { background: var(--primary-color, #1a0b2e); color: white; padding: 12px; font-weight: 500; }
.price-table td { padding: 12px; border-bottom: 1px solid #eee; text-align: center; color: #555; }

/* 유의사항 (Notice) */
.notice-list { background: #f8f9fa; padding: 25px; border-radius: 8px; margin-top: 30px; font-size: 14px; color: #666; }
.notice-list p { margin: 5px 0; }
.important { color: #e74c3c; font-weight: 700; }

/* 게스트하우스 전용 룸타입 카드 */
.room-type-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: 30px; }
.room-card { background: white; border: 1px solid #eee; border-radius: 10px; padding: 20px; text-align: center; transition: 0.3s; }
.room-card:hover { transform: translateY(-5px); box-shadow: 0 10px 15px rgba(0,0,0,0.05); }
.room-title { font-weight: 700; font-size: 18px; margin-bottom: 10px; display: block; color: var(--primary-color, #1a0b2e); }
.room-desc { font-size: 14px; color: #888; margin-bottom: 15px; display: block; }
.room-price { color: var(--accent-color, #d4af37); font-weight: 800; font-size: 16px; }

/* 모바일 반응형 */
@media (max-width: 768px) {
    .content-grid { grid-template-columns: 1fr; }
    .img-box { height: 250px; }
    .room-type-grid { grid-template-columns: 1fr; }
}