/* Promo Code Section Fixes - Reduce Oversized Text */
.promo-code-title h2 {
    font-size: 28px !important; /* Reduced from 45px */
    padding: 12px 35px !important; /* Reduced padding */
}

.promo-top h3 {
    font-size: 32px !important; /* Reduced from 50px */
    padding: 8px 20px !important; /* Reduced padding */
}

.promo-top h3 span {
    font-size: 20px !important; /* Reduced from 30px */
}

.promo-top p {
    font-size: 16px !important; /* Reduced from 24px */
}

.promo-card-right h2 {
    font-size: 28px !important; /* Reduced from 45px */
}

.promo-bottom p {
    font-size: 10px !important; /* Reduced from 12px */
    margin-bottom: 2px !important; /* Reduced from 5px */
    line-height: 1.2 !important; /* Tighter line spacing */
}

.promo-bottom {
    padding: 5px 10px !important; /* Reduced from 8px 15px */
    gap: 0 10px !important; /* Reduced gap */
}

/* Adjust promo card height to accommodate smaller text */
.promo-card {
    min-height: auto !important;
}

.promo-code-wrapper {
    padding: 25px !important; /* Reduced from 30px */
    padding-right: 0 !important;
}

.promo-code-title {
    margin-top: -60px !important; /* Adjusted from -75px */
}

/* Make promo cards more proportional */
.promo-card-right {
    width: 70px !important; /* Reduced from 80px */
    padding: 12px !important; /* Reduced from 15px */
}

/* Responsive adjustments for smaller screens */
@media (max-width: 768px) {
    .promo-code-title h2 {
        font-size: 24px !important;
        padding: 10px 25px !important;
    }
    
    .promo-top h3 {
        font-size: 28px !important;
        padding: 6px 15px !important;
    }
    
    .promo-top p {
        font-size: 14px !important;
    }
    
    .promo-card-right h2 {
        font-size: 24px !important;
    }
    
    .promo-card-right {
        width: 60px !important;
        padding: 8px !important;
    }
    
    .promo-bottom {
        padding: 4px 8px !important; /* Even smaller on mobile */
        gap: 0 8px !important;
    }
    
    .promo-bottom p {
        font-size: 9px !important; /* Smaller text on mobile */
        margin-bottom: 1px !important;
    }
}


/* Global Scale Reduction - ลดขนาดองค์ประกอบทั้งหมดลง 15% */

/* ปรับขนาด container หลัก */
.container {
  max-width: 1062px; /* ลดจาก 1250px */
}

.header-area .container {
  max-width: 1487px; /* ลดจาก 1750px */
}

/* ปรับขนาดโลโก้ */
.logo img {
  width: 170px; /* ลดจาก 200px */
}

/* ปรับขนาดปุ่มและ elements ในส่วน header */
.register-btn {
  padding: 7px 26px;
  height: 54px; /* ลดจาก 64px */
}

.register-btn a {
  font-size: 20px; /* ลดจาก 24px */
  line-height: 24px; /* ลดจาก 28px */
}

.register-btn span {
  font-size: 20px; /* ลดจาก 24px */
}

.notification-btn button, .thb-btn button {
  width: 54px; /* ลดจาก 64px */
  height: 54px; /* ลดจาก 64px */
}

.language-btn button {
  width: 54px; /* ลดจาก 64px */
}

/* ปรับขนาดส่วน hero */
.hero-slide-item {
  height: 493px; /* ลดจาก 580px */
}

.hero-wrapper {
  max-width: 935px; /* ลดจาก 1100px */
  height: 156px; /* ลดจาก 184px */
}

.hero-logo {
  width: 139px; /* ลดจาก 164px */
  height: 139px; /* ลดจาก 164px */
}

/* ปรับขนาดช่องค้นหา */
.search-box {
  height: 68px; /* ลดจาก 80px */
}

.search-box input {
  font-size: 20px; /* ลดจาก 24px */
}

img.input-icon {
  width: 31px; /* ลดจาก 36px */
}

.search-btn img {
  width: 27px; /* ลดจาก 32px */
}

.check-in-out, .room-info {
  height: 68px; /* ลดจาก 80px */
}

.checkin-box input {
  font-size: 20px; /* ลดจาก 24px */
}

.checkin-box span {
  font-size: 20px; /* ลดจาก 24px */
}

/* ปรับขนาด categories/sports */
.sport-item img {
  width: 99px; /* ลดจาก 116px */
  height: 99px; /* ลดจาก 116px */
}

.sport-item h4 {
  font-size: 19px; /* ลดจาก 22px */
}

.all-sport a span {
  width: 99px; /* ลดจาก 116px */
  height: 99px; /* ลดจาก 116px */
}

.all-sport p {
  font-size: 19px; /* ลดจาก 22px */
}

.all-sport span img {
  width: 48px; /* ลดจาก 56px */
}

/* ปรับขนาด promo */
.promo-wrapper {
  margin-bottom: 68px; /* ลดจาก 80px */
}

.promo-logo {
  width: 272px; /* ลดจาก 320px */
  height: 106px; /* ลดจาก 125px */
}

.promo-logo img {
  width: 196px; /* ลดจาก 230px */
}

.promo-text h2 {
  font-size: 46px; /* ลดจาก 54px */
}

/* ปรับขนาดส่วน package */
.package-area {
  padding: 85px 0; /* ลดจาก 100px */
}

.package-title-wrap {
  margin-bottom: 34px; /* ลดจาก 40px */
}

.package-title h2 {
  font-size: 38px; /* ลดจาก 45px */
}

.package-title h2 span {
  font-size: 26px; /* ลดจาก 30px */
}

.all-package-btn a {
  padding: 10px 25px;
  font-size: 20px; /* ลดจาก 24px */
}

/* ปรับขนาดการ์ด */
.card-thumbnail img {
  height: 204px; /* ลดจาก 240px */
}

.card-content h3 {
  font-size: 19px; /* ลดจาก 22px */
}

.info-right h4 {
  font-size: 17px; /* ลดจาก 20px */
}

/* ปรับขนาด slider arrows */
.package-slider .owl-nav div {
  width: 63px; /* ลดจาก 74px */
  height: 63px; /* ลดจาก 74px */
}

/* ปรับส่วน promo code */
.promo-code-title h2 {
  font-size: 38px; /* ลดจาก 45px */
  padding: 15px 42px; /* ลดจาก 18px 50px */
}

.promo-top h3 {
  font-size: 43px; /* ลดจาก 50px */
}

.promo-top h3 span {
  font-size: 26px; /* ลดจาก 30px */
}

.promo-top p {
  font-size: 20px; /* ลดจาก 24px */
}

.promo-card-right h2 {
  font-size: 38px; /* ลดจาก 45px */
}

/* ปรับขนาดปุ่ม fixed */
.fixed-btns .btn_item {
  width: 68px; /* ลดจาก 80px */
  height: 68px; /* ลดจาก 80px */
}

.fixed-btns {
  width: 68px; /* ลดจาก 80px */
  bottom: 68px; /* ลดจาก 80px */
  right: 68px; /* ลดจาก 80px */
}

/* ปรับขนาด footer */
.footer-widget h4 {
  font-size: 19px; /* ลดจาก 22px */
}

.footer-links li a {
  font-size: 14px; /* ลดจาก 16px */
}

.footer-logo img {
  width: 425px; /* ลดจาก 500px */
}

/* ปรับขนาดฟอนต์ในส่วนอื่นๆ */
h1 { font-size: 30px; }
h2 { font-size: 24px; }
h3 { font-size: 19px; }
h4 { font-size: 17px; }
h5 { font-size: 15px; }
h6 { font-size: 13px; }

/* ===== หน้า categories ===== */
.categories-title-wrap h2 {
  font-size: 85px; /* ลดจาก 100px */
  letter-spacing: 34px; /* ลดจาก 40px */
}

.categories-list ul li a {
  font-size: 20px; /* ลดจาก 24px */
}

.categories-title-wrap {
  padding: 17px 25px; /* ลดจาก 20px 30px */
}

.categories-list {
  padding: 17px; /* ลดจาก 20px */
}

.categories-list ul {
  gap: 0 43px; /* ลดจาก 0 50px */
}

/* ===== หน้า details ===== */
.overview-area {
  padding: 51px 0; /* ลดจาก 60px 0 */
}

.overview-title h4 {
  font-size: 20px; /* ลดลง 15% */
}

.overview-title h3 {
  font-size: 26px; /* ลดจาก 30px */
  margin-bottom: 30px; /* ลดจาก 35px */
}

.overview-description p {
  font-size: 15px; /* ลดจาก 18px */
}

.highlight-box {
  width: 106px; /* ลดจาก 125px */
  height: 106px; /* ลดจาก 125px */
}

.facilities-lists ul li, .location-lists ul li {
  font-size: 14px; /* ลดจาก 17px */
}

/* Reserve Sidebar */
.reserve-sidebar-wrap {
  padding-left: 21px; /* ลดจาก 25px */
}

.reserve-sidebar {
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.reserve-box-top {
  padding: 26px; /* ลดจาก 30px */
}

.reserve-box-top h2 {
  font-size: 41px; /* ลดจาก 48px */
}

.reserve-box-top h2 sub {
  font-size: 20px; /* ลดจาก 24px */
}

.reserve-form .check-in-out, .reserve-form .room-info {
  height: 54px; /* ลดจาก 64px */
  margin-bottom: 17px; /* ลดจาก 20px */
}

.price-details-wrap {
  padding: 26px; /* ลดจาก 30px */
  border: 1px solid #ccc;
}

.price-details-list ul li {
  font-size: 15px; /* ลดจาก 18px */
}

.hot__deal {
  font-size: 15px; /* ลดจาก 18px */
}

.reserve-btn button {
  font-size: 26px; /* ลดจาก 30px */
  padding: 19px; /* ลดจาก 22px */
}

/* Card Details */
.card-details h4 {
  font-size: 21px; /* ลดจาก 25px */
  padding: 9px; /* ลดจาก 10px */
}

.card-details ul {
  padding: 13px 9px; /* ลดจาก 15px 10px */
}

.card-details ul li {
  font-size: 15px; /* ลดจาก 18px */
  width: 153px; /* ลดจาก 180px */
}

.card-details li img {
  width: 21px !important; /* ลดจาก 25px */
}

/* Facilities & Location */
.common-wrap {
  margin-bottom: 43px; /* ลดจาก 50px */
}

.facilities-lists, .location-lists {
  margin-top: 17px; /* ลดจาก 20px */
}

.see-all-btn button {
  padding: 6px 17px; /* ลดจาก 7px 20px */
}

.see-all-btn {
  margin-top: 17px; /* ลดจาก 20px */
}

/* Map */
.map-wrapper {
  margin-top: 21px; /* ลดจาก 25px */
  padding-top: 43px; /* ลดจาก 50px */
}

.location-map {
  margin-top: 30px; /* ลดจาก 35px */
  margin-bottom: 60px; /* ลดจาก 70px */
}

.location-map iframe {
  height: 425px; /* ลดจาก 500px */
  border-radius: 43px; /* ลดจาก 50px */
}

/* Policies */
.policies-area {
  padding-bottom: 68px; /* ลดจาก 80px */
}

.policies-card {
  border-radius: 43px; /* ลดจาก 50px */
  margin-bottom: 34px; /* ลดจาก 40px */
  gap: 0 60px; /* ลดจาก 0 70px */
}

.policies-card-icon {
  width: 298px; /* ลดจาก 350px */
  height: 128px; /* ลดจาก 150px */
  border-radius: 43px; /* ลดจาก 50px */
}

.policies-card-icon p {
  font-size: 20px; /* ลดจาก 24px */
}

.policies-card-text p {
  font-size: 15px; /* ลดจาก 18px */
}

.additional-rules {
  margin-top: 21px; /* ลดจาก 25px */
}

.additional-rules-text p {
  font-size: 15px; /* ลดจาก 18px */
}

.additional-rules-text {
  margin-top: 17px; /* ลดจาก 20px */
}

/* Review */
.review-area {
  margin-bottom: 136px; /* ลดจาก 160px */
}

.review-wrapper {
  gap: 34px; /* ลดจาก 40px */
  margin-top: 30px; /* ลดจาก 35px */
}

.review-box {
  width: 170px; /* ลดจาก 200px */
  height: 170px; /* ลดจาก 200px */
  padding: 17px; /* ลดจาก 20px */
}

.star-yellow {
  width: 43px; /* ลดจาก 50px */
}

.review-box h4 {
  font-size: 38px; /* ลดจาก 45px */
}

.review-box p {
  font-size: 17px; /* ลดจาก 20px */
}

.review-box p img {
  width: 23px; /* ลดจาก 27px */
}

.review-progress span {
  font-size: 15px; /* ลดจาก 18px */
}

.review-progress h5 {
  font-size: 15px; /* ลดจาก 18px */
}

.review-count-bar {
  width: 128px; /* ลดจาก 150px */
}

.work-box img {
  width: 38px; /* ลดจาก 45px */
}

/* Nearby Properties */
.nearby-properties-area {
  padding-bottom: 128px; /* ลดจาก 150px */
}

.pagination-wrapper {
  margin-top: 43px; /* ลดจาก 50px */
  padding-bottom: 60px; /* ลดจาก 70px */
}

.pagination-wrapper li a {
  width: 51px; /* ลดจาก 60px */
  height: 51px; /* ลดจาก 60px */
  font-size: 20px; /* ลดจาก 24px */
}

/* ===== หน้า search ===== */
.search-page-hero {
  height: 535px; /* ลดจาก 630px */
  padding-top: 82px; /* ลดจาก 96px */
}

.search-filter-wrapper {
  padding: 17px; /* ลดจาก 20px */
  padding-top: 34px; /* ลดจาก 40px */
}

.filter-by-tags ul li button {
  font-size: 15px; /* ลดจาก 18px */
  padding: 7px 17px; /* ลดจาก 8px 20px */
  height: 54px; /* ลดจาก 64px */
}

.filter-by-tags ul li span {
  font-size: 14px; /* ลดจาก 16px */
}

.filter_btn button {
  font-size: 15px; /* ลดจาก 18px */
  padding: 7px 29px; /* ลดจาก 8px 34px */
  height: 54px; /* ลดจาก 64px */
}

.budget-range-wrap {
  height: 55px; /* ลดจาก 65px */
  padding: 0 17px; /* ลดจาก 0 20px */
}

.input[type="range"] {
  width: 136px; /* ลดจาก 160px */
}

.value {
  min-width: 68px; /* ลดจาก 80px */
}

.filter-result-area {
  padding-bottom: 102px; /* ลดจาก 120px */
}

.filter-result-wrapper {
  gap: 26px 17px; /* ลดจาก 30px 20px */
}

/* Filter modal */
.filter-option-box {
  padding: 26px; /* ลดจาก 30px */
}

.box-room h4 {
  font-size: 15px; /* ลดจาก 18px */
  margin-bottom: 17px; /* ลดจาก 20px */
}

.box-room .info-txt h4 {
  font-size: 15px; /* ลดจาก 18px */
}

.box-room {
  padding: 17px; /* ลดจาก 20px */
}

.nice__number {
  width: 111px; /* ลดจาก 130px */
  height: 29px; /* ลดจาก 34px */
}

.rating-item span, .distance-wrap span {
  font-size: 15px; /* ลดจาก 18px */
}

.rating-item ul {
  padding: 9px 17px; /* ลดจาก 10px 20px */
}

.rating-item ul li img {
  width: 17px; /* ลดจาก 20px */
}

.distance-container {
  gap: 17px; /* ลดจาก 20px */
}

.distance-value {
  width: 60px; /* ลดจาก 70px */
}

.filter-by-services {
  margin-top: 26px; /* ลดจาก 30px */
  margin-bottom: 21px; /* ลดจาก 25px */
}

.services-list {
  margin-top: 21px; /* ลดจาก 25px */
}

.single-ck label {
  font-size: 15px; /* ลดจาก 18px */
}

.filter-search button {
  font-size: 19px; /* ลดจาก 22px */
  padding: 9px 20px; /* ลดจาก 10px 24px */
}

/* Hero Two / Showcase */
.hero-two-area {
  height: 510px; /* ลดจาก 600px */
}

.showcase-info {
  padding: 17px 26px; /* ลดจาก 20px 30px */
}

.fav-btn button {
  width: 51px; /* ลดจาก 60px */
  height: 51px; /* ลดจาก 60px */
}

.deal__btn {
  padding: 3px 10px; /* ลดจาก 4px 12px */
  font-size: 12px; /* ลดจาก 14px */
}

.deal__btn img {
  width: 13px !important; /* ลดจาก 15px */
}

/* Dolla Area */
.dolla-area {
  padding: 21px 0; /* ลดจาก 25px 0 */
}

.dolla-title h3 {
  font-size: 41px; /* ลดจาก 48px */
}

.dolla-info ul li {
  font-size: 26px; /* ลดจาก 30px */
}

/* Page Menu */
.page-menu-wrapper {
  padding: 0 43px; /* ลดจาก 0 50px */
}

.page-menu-wrapper ul li a {
  padding: 21px 13px; /* ลดจาก 25px 15px */
  font-size: 24px; /* ลดจาก 30px */
}

/* ปรับ responsive */
@media (max-width: 768px) {
  .container {
    max-width: 90%;
  }
  
  .hero-slide-item {
    height: 400px; /* ปรับให้เหมาะกับมือถือ */
  }
  
  .hero-wrapper {
    flex-direction: column;
    height: auto;
    gap: 15px;
  }
  
  .search-box, .check-in-out, .room-info {
    height: 54px;
  }
  
  .search-box input, .checkin-box input, .checkin-box span {
    font-size: 17px;
  }
  
  .categories-title-wrap h2 {
    font-size: 40px;
    letter-spacing: 15px;
  }
  
  .categories-list ul {
    gap: 0 20px;
  }
  
  .filter-result-wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .filter-by-services .services-list {
    grid-template-columns: repeat(3, 1fr);
  }
  
  .policies-card {
    flex-direction: column;
    gap: 15px 0;
  }
  
  .policies-card-icon {
    width: 100%;
  }
  
  .review-wrapper {
    flex-direction: column;
  }
  
  .review-box {
    width: 100%;
  }
}

/* Review section */
.review-box {
  transition: all 0.3s ease;
}

.review-box:hover {
  transform: scale(1.05);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.star-yellow {
  transition: all 0.3s ease;
}

.review-box:hover .star-yellow {
  transform: rotate(360deg);
  animation: pulse 1s infinite;
}

/* Progress bars */
.review-count-bar {
  position: relative;
  overflow: hidden;
}

.review-count-bar:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.3) 50%, rgba(255,255,255,0) 100%);
  animation: barShine 2s infinite;
  transform: translateX(-100%);
}

@keyframes barShine {
  to {
    transform: translateX(100%);
  }
}

/* Policies section */
.policies-card {
  transition: all 0.3s ease;
}

.policies-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.policies-card-icon {
  transition: all 0.3s ease;
}

.policies-card:hover .policies-card-icon {
  transform: scale(1.05);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}
