<style>
       /* 공통 스타일 */
body {
  font-size: 0.8rem;
  margin: 0;
  font-family: sans-serif;
}

header {
  border-bottom: #a397e3 solid 2px;
}

.header-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 40px;
  flex-wrap: wrap; /* 화면 작아지면 자동 줄바꿈 */
}

/* 로고 */
.logo img {
  width: 150px;
  height: auto;
}

/* 펜션 이름 */
.title {
  text-align: center;
  font-size: 70px;
  line-height: 1;
  color: rgb(176, 99, 4);
  letter-spacing: 20px;
  margin: 0;
}

.small {
  color: black;
  font-size: 20px;
  vertical-align: middle;
  margin-right: 0px;
}

/* 메뉴 */
nav ul {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}

nav ul li a {
  display: block;
  padding: 8px 12px;
  font-size: 18px;
  color: rgb(28, 1, 1);
  text-decoration: none;
}

nav ul li a.active {
  background: #39b6e0;
  color: white;
  border-radius: 6px;
}

nav ul li a:hover {
  background: hsl(0, 18%, 96%);
}

/* 모바일 대응 */
@media (max-width: 768px) {
  .header-wrap {
    flex-direction: column;
    align-items: center;
    padding: 0px 20px;
  }

  .logo img {
    width: 130px;
    margin-bottom: 0px;
  }

  .title {
    font-size: 40px;
    letter-spacing: 5px;
    margin-bottom: 15px; /* 제목 → 메뉴 간격 */
  }

  .small {
    font-size: 16px;
    margin-right: 0px;
  }

  nav ul {
    flex-direction: column;
    align-items: center;
    width: 100%;
  }

  nav ul li a {
    font-size: 16px;
    padding: 6px 10px;
  }
}
nav li a:hover {
  background: hsl(0, 18%, 96%);
}
nav ul li a.active {
  background: #39b6e0;
  color: white;
  border-radius: 6px;
}
.container {
  max-width: 1200px;   /* 최대 폭 */
  margin: 0 auto;      /* 가운데 정렬 */
  padding:20px;     /* 좌우 여백 20px */
}
main section {
  border-bottom: 1px solid #ddd;
  padding-bottom: 60px;
  margin-bottom: 60px;
}

.about {
  display: flex;
  align-items: center;
  gap: 40px;
}
#over {color: #2b2727;}
.about-text {
  flex: 1;        /* 1칸 */
}
.about-text p {
  color: rgb(120, 120, 9);
  font-size: 16px;
  line-height: 1.8;
}
.about-text h2{font-size: 20px;}
.about-images {
  flex: 3;        /* 3칸 (글의 3배) */
  display: flex;
  gap: 10px;
}

.about-images img {
  position: relative;
}

.img-box {
  position: relative;
  flex: 1;
}

.img-box img {
  width: 100%;
  display: block;
}

.img-box:hover::after {
  content: attr(data-text);
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  background: rgb(68, 204, 98);
  color: white;
  padding: 8px 14px;
  font-size: 14px;
  border-radius: 0px;
}
.media-feature .img-box::after {
  display: none;
}
.media-images {
  display: flex;
  gap: 10px;
  width: 100%;        /* ← 100% 대신 70% */
  margin: 0 auto;    /* 가운데 정렬 */
}

.media-images .img-box {
  flex: 1;
}
/*모바일 대응*/
@media (max-width: 768px) {
  .about {
    flex-direction: column;
  }

  .about-images img {
    width: 100%;
  }
}
/* 2번째 섹션: 미디어 촬영 */
.media-feature {
  margin-top: 60px;
  margin-bottom: 60px;
}

.media-feature h2 {
  font-size: 20px;
  margin-bottom: 20px;
  text-align: center;
  color: rgb(176, 99, 4); /* 제목 색상 */
}

.media-feature p {
  text-align: center;
  font-size: 16px;
  color: rgb(71, 154, 51);
  margin-bottom: 30px;
}
.village h2 {font-size: 20px;
  text-align: center; margin-bottom: 40px;
}
.content-row {
  display: flex;
   gap: 40px;
}

.content-row p {
  flex: 1;
  margin: 0;
}

.media-images {
  flex: 3;
  display: flex;
  gap: 5px;
}

/* 사진 4장 한 줄 배치 */
.media-images {
  display: flex;
  gap: 10px;
  flex-wrap: wrap; /* 모바일에서 줄바꿈 가능 */
}

.media-images .img-box {
  flex: 1; /* 4등분 */
  position: relative;
  overflow: hidden;
}

/* 이미지 */
.media-images .img-box img {
  width: 100%;
  display: block;
  height: auto;
}

/* 이미지 위에 항상 보이는 소개글 */
.media-images .img-caption {
  position: absolute;
  bottom: 10px;          /* 이미지 아래쪽 */
  left: 50%;
  transform: translateX(-50%);
  background: rgba(90, 62, 43, 0.7); /* 반투명 브라운톤 */
  color: #fff;
  padding: 6px 12px;
  font-size: 14px;
  border-radius: 5px;
  text-align: center;
  width: 90%; /* 캡션 길이 조정 */
}

@media (max-width: 768px) {

  .village .content-row {
    flex-direction: column;
  }

  .village .content-row p {
    text-align: center;
    margin-bottom: 20px;
  }

  .village .media-images {
    flex-direction: column;   /* 여기만 세로 */
    gap: 15px;
  }

  .village .media-images .img-box img {
    width: 100%;
  }

}

/* 모바일 대응 */
@media (max-width: 768px) {
  .media-images {
    flex-direction: column;
  }

  .media-images .img-box {
    margin-bottom: 15px; /* 이미지 간격 */
  }
}
/* 하단 */
footer {
  background: #b5d5f0;
  color: #2b2727;
  text-align: center;
  padding: 20px 0;
  font-size: 0.95rem;
}

/* 모바일 */
@media (max-width: 768px) {
  nav ul {
    flex-direction: column;
  }
}

/*rooms.html페이지*/
table {
  width: 60%;
  margin: 30px auto;          /* 가운데 정렬 */
  border-collapse: collapse;  /* 테두리 합치기 */
  text-align: center;
  font-size: 19px;            /* 글자 크게 */
   /*border: 2px solid #d33;*/ /* 원하는 색상과 두께 */
}
table td, table th {
    border: 2px solid rgb(231, 150, 213); /* 원하는 색상과 두께 */
    padding: 10px;           /* 셀 여백 */
}
table tr:nth-child(n+3) td:first-child {
  background-color: #e0e6b3;
  font-weight: bold;
}

#money {color: #896015; font-size: 20px;}
td {
  border: 2px solid #333;
  padding: 20px;
}

h2 {
  width: 60%;
  margin: 20px auto 10px auto;
  text-align: left;   /* 왼쪽 정렬 */
  font-size: 28px;/* 밑줄 */
}

#sink {text-align:center ; color: #351cbf;}

.room-gallery {
  width: 60%;          /* 표와 동일 */
  margin: 40px auto;   /* 가운데 정렬 */
}

.photo-line {
  display: flex;
  justify-content: space-between;  /* 균등 배치 */
  margin-top: 15px;
}

.photo-line img {
  width: 24%;          /* 4장 정확히 한 줄 */
  height: 220px;
  object-fit: cover;
}

@media (max-width: 768px) {
  .photo-line {
    display: block;
  }

  .photo-line img {
    display: block;
    width: 100%;
    margin-bottom: 10px;
  }
}
/*rooms2.html*/
#reserve {
  width: 60%;
  margin: 50px auto 25px auto;
  text-align: left;
  font-size: 20px;
}

.info-box {
  width: 60%;
  margin: 30px auto;
  padding: 35px;
  background: #b5c7d5;
  border-radius: 0px;
  text-align: center;      /* 가운데 정렬 */
}

.info-box h3 {
  font-size: 20px;
  margin-bottom: 20px;
  color: #6b3f1d;
}

.info-box ul {
    list-style-type: disc;  /* 기본 원형 • */
    list-style-position: inside; /* 글 안쪽에 점 표시 */
    margin-left: 20px; /* 들여쓰기 */
    padding: 0;
}
/* ask 클래스 지정 */
li.ask {
    font-size: 18px;       /* 글자 크게 */
    font-weight: bold;        /* 굵게 강조 */
    color: rgb(129, 113, 222);              /* 빨간색 등 강조 */
    margin-top: 5px;          /* 항목 간 여유 */
}
/*rooms3.html페이지*/
.title-row {
  width: 60%;
  margin: 50px auto 25px auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  /*border-bottom: 3px solid #8b5a2b; */  /* 여기로 이동 */
  padding-bottom: 10px;
}

#reserve {
  font-size: 20px;
  margin: 0;
  border: none;   /* 기존 밑줄 제거 */
}

.sms-btn {
  padding: 10px 20px;
  background: #8b5a2b;
  color: white;
  text-decoration: none;
  border-radius: 6px;
  font-size: 16px;
}

.sms-btn:hover {
  background: #6b3f1d;
}

/*rooms3.html페이지*/

#film {
  width: 60%;
  margin: 50px auto 25px auto;
  font-size: 20px;
  /*border-bottom: 3px solid #8b5a2b;*/
  padding-bottom: 10px;
}

.film-intro {
  width: 60%;
  margin: 30px auto;
  text-align: left;
  font-size: 15px;
  line-height: 1.8;
}

.film-box {
  width: 60%;
  margin: 30px auto;
  padding: 30px;
  background: #f5f1e8;
  border-radius: 12px;
}

.film-box h3 {
  margin-bottom: 15px;
  color: #6b3f1d;
}

.film-box ul {
  list-style: none;
  padding: 0;
  line-height: 2;
}

.film-contact {
  width: 60%;
  margin: 40px auto;
  text-align: center;
}

.film-contact a {
  display: inline-block;
  padding: 15px 40px;
  background: #8b5a2b;
  color: white;
  text-decoration: none;
  border-radius: 8px;
  font-size: 15px;
}

.film-gallery img {
  transition: transform 0.3s ease;
  cursor: pointer;
}

.film-gallery img:hover {
  transform: scale(2.5);   /* 1.15~1.2 적당 */
  z-index: 10;
}

/* 모바일에서는 확대 제거 */
@media (max-width: 900px) {
  .film-gallery img:hover {
    transform: none;
  }
}

.film-gallery {
  width: 60%;
  margin: 60px auto;
}

.gallery-row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}

.gallery-row img {
  width: 18%;        /* 4장 정확히 한 줄 */
   height: 180px;   
  object-fit: cover;
  border-radius: 8px;
}
ul .numb {color: #351cbf;}
/* 모바일에서 2장씩 */
@media (max-width: 900px) {

  .gallery-row {
    display: grid;
    grid-template-columns: 1fr 1fr;   /* 2장씩 */
    gap: 10px;
  }

  .gallery-row img {
    width: 100%;
    height: 160px;
  }

}

    </style>