/*!
Theme Name: memoria
Theme URI: http://underscores.me/
Author: The Ring Technology
Author URI: http://theringtechnology.com
Description: Memoria Palace & Resort is an eco-tourism resort located in Pailin, Cambodia, nestled in the foothills of the Cardamom Mountains. The resort offers a tranquil escape with lush greenery, spacious rooms, and a hilltop saltwater swimming pool. It features a variety of accommodation options including bungalows and traditional thatched eco-lodges, along with an open-air restaurant and bar.
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: memoria
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

memoria is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

@import url("assets/css/vendor/bootstrap.min.css");
@import url("assets/css/plugins/slick.css");
@import url("assets/css/vendor/animate.min.css");
@import url("assets/css/vendor/odometer.min.css");
@import url("assets/css/plugins/swiper.min.css");
@import url("assets/css/vendor/magnific-popup.css");
@import url("assets/css/vendor/fontawesome-pro.css"); 
@import url("assets/css/vendor/spacing.css");
@import url("assets/css/vendor/custom-font.css");
@import url("assets/css/main.css");

.img-rounded {
    border-radius: 10px;
}

.no-border-bottom {
    border-bottom: none !important;
}

.mem-title-home, .about__title, .si__section__title__six h2 {
	font-size: 40px !important;
	line-height: 50px !important;
	font-weight: 500 !important;

}
.si__section__title__six.pb-60{
	padding-bottom:none !important;
}

ul.menu-footer3 li {
	padding-right: 5px;
}

ul.menu-footer3 li:last-child {
	padding-right: 0px;
}

  .footer__subscribe.footer__subscribe-2 ul li.gap-10{
    max-height: 60px;
    gap: 5px;
    margin-bottom: 10px;
  }

/* ==============================
   Tablets / iPad portrait (576px–991px)
   ============================== */
@media (min-width: 576px) and (max-width: 991.98px) {

  /* Breadcrumb */
  .breadcrumb-space { padding: 80px 0; }

  /* Footer */
  .footer2__top { gap: 24px; }
  .footer__logo img { max-width: 200px; }
  .footer__content p,
  .footer__link ul li a { font-size: 16px; line-height: 1.75; }
  .footer__bottom-wrapper { padding: 16px 0; }
  .footer__copyright .copy,
  .footer__copyright-2 .copy { font-size: 13px; }


  /* Home: Banner */
  .mem-title-home { font-size: 32px !important; }
  .banner .container .row .col-lg-6.p-0 { max-height: 520px; }
  .swiper-wrapper { height: 520px; }
  .banner__item-thumb img { height: 520px; }
  .banner__content1 { padding: 24px; text-align: left; }
  .banner__content1 h6.subtitle { font-size: 15px; }
  .banner__content1 p { font-size: 16px; }

  /* Home: About */
  .about2.about__area {
    padding: 40px 15px;
    margin-top: 40px;
  }
  .about2.about__area .container .row .section2__title-wrapper{
    margin-bottom: 30px;
  }

  .about2 h2.section2__title-wrapper-title  {
    font-size: 28px !important;
    text-align: center;
    padding-bottom: 0px;
    border-bottom: none;
  }

  .about2 .about__thumb img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    margin-bottom: 20px;
  }

  .about2 .about__content h2.about__title {
    font-size: 28px !important;
    line-height: 1.4;
    margin-bottom: 30px;
    text-align: center;
  }

  .about2 .about__content div p{
    font-size: 14px;
    line-height: 1.6;
    text-align: left;
  }

  /* SI Gallery / Luxuries */
  .si__gallery__four__area { padding: 30px 0 !important; }
  .si__luxuries__area { padding: 40px 0 !important; }
  .si__luxuries__box { max-height: 520px; }
  .si__luxuries__content h6 a { font-size: 22px; }
  .si__luxuries__list ul li h5 { font-size: 15px; }

  /* Room page */
  .our-service__area { padding: 30px 24px; }
  .our-service__area .si__section__title h5 { font-size: 28px; margin-bottom: 20px !important; }
  .our-service__area .accordion-button { font-size: 16px; padding: 14px 16px; }
  .our-service__area .accordion-body { font-size: 15px; }
  .our-service__thumb img { margin-top: 10px; }
  .room_detail .card-room { max-height: 460px; }
  .room-details__area .container { padding: 0 40px; }
  .our-service__area .si__section__title {
    padding-bottom:20px;
  }

  /* Restaurant */
  .si__accommodations__five__area { padding: 24px !important; }
  .si__accommodations__five__area .card-accommodations { max-height: 460px !important; }
  .si__accommodations__five__text h6 a { font-size: 16px; }

  /* About Six / Selling */
  .si__about__six__area { padding: 70px 24px; }
  .si__section__title__six h2 { font-size: 32px; }
  .selling__area { padding: 70px 24px; }
  .selling__item-content .title { font-size: 18px; }

  /* Conference Hall */
  .si__offer__six__area { padding: 70px 24px; }
  .si__accommodations__five__area { padding: 0 24px 60px 24px; }
   .si__offer__six__right .si__offer__six__text p {
    font-size: 18px;
    line-height: 1.6;
    text-align: left;
    color: whitesmoke;
  }

  /* Contact */
  .si__info__area { padding: 60px 24px; }
  .si__info__icon i { font-size: 32px; }
  .map iframe { height: 360px !important; }
  .si__contact__area { padding: 70px 24px; }
  .si__contact__text h1 { font-size: 28px; }
  .si__contact__info input,
  .si__contact__info select,
  .si__contact__info textarea { font-size: 15px; }
  .si__contact__info .room__btn2 { font-size: 15px; padding: 12px 18px; }
}


/* =========================
   Mobile ≤575px 
   ========================= */
@media (max-width: 575px) {

  /* =========================
     Breadcrumb
     ========================= */
  .breadcrumb-space {
    padding: 60px 0 60px;
  }

  /* =========================
     Footer
     ========================= */
  .footer2__top {
    padding-top: 0px !important;   /* from pt-80 */
    padding-bottom: 20px !important;/* from pb-30 */
    gap: 16px;
    flex-wrap: wrap;
  }

  .footer__logo img {
    max-width: 160px;
    height: auto;
  }

  .footer2__right-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px; height: 36px;
    margin-left: 8px;
    font-size: 16px;          /* icon size */
  }

  .footer-wrap { row-gap: 0 !important; }
  .footer__widget { margin-bottom: 0; }

  .footer__content p {
    font-size: 14px;
    line-height: 1.7;
  }

  .footer__widget-title h4,
  .footer__widget-title-2 h4 {
    font-size: 16px;
    margin-bottom: 10px;
  }

  .footer__link ul li a,
  .footer__link-2 ul li a {
    font-size: 14px;
    line-height: 1.7;
    padding: 6px 0;
    color: whitesmoke;
  }
  .footer__link ul { grid-gap: 0px !important; }

  .footer__subscribe ul {
    padding-left: 0;
    margin: 0;
  }

  .footer__subscribe.footer__subscribe-2 ul li,
  .footer__subscribe.footer__subscribe-2 ul li.gap-10{
    max-height: 50px;
    gap: 5px;
    margin-bottom: 10px;
  }

  .footer__subscribe-2-heading {
    font-size: 14px;
    margin-bottom: 4px;
  }

  .footer__subscribe .text,
  .footer__subscribe .text-2,
  .footer__subscribe .mail,
  .footer__subscribe .mail-2 {
    font-size: 14px;
    line-height: 1.6;
    word-break: break-word;
  }

  .footer__bottom-wrapper { padding: 12px 0; }

  .footer__bottom {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    justify-content: center;
    text-align: center;
  }

  .footer__copyright .copy,
  .footer__copyright-2 .copy {
    font-size: 12px;
    margin: 10px;
  }

  .footer__copyright-menu ul {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0px !important;
    padding-left: 0;
    margin: 0;
  }

  .footer__copyright-menu ul li a {
    font-size: 12px;
    line-height: 1.6;
  }

  /* =========================
     Home Page
     ========================= */
  /* banner */
  .mem-title-home {
    font-size: 20px !important;
    line-height: 1.3 !important;
  }
  .banner .container .row .col-lg-6.p-0 { max-height: 390px; }

  .banner__content1 h6.subtitle {
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 8px;
  }

  .banner__content1 p {
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 12px;
    text-align: left;
  }

  .banner__content1 {
    padding: 15px;
    margin-bottom: 0px;
    text-align: center;
  }

  .banner__bottom-wrapper { margin-top: 10px; }

  .banner__slider__arrow button {
    width: 36px;
    height: 36px;
    margin: 0 4px;
  }
  .banner__slider { height: 100vh; }

  .banner__item-thumb { width: 100vw; }
  .swiper-wrapper { height: 400px; }

  .banner__item-thumb img {
    height: 400px;
    object-fit: contain;
  }

  /* about */
  .about__area {
    padding: 30px 15px;  /* tighter spacing */
    margin-top: 0px !important; /* reduce mt-120 */
  }

  .about_area h2.section2__title-wrapper { margin-bottom: 0 !important; }
  .about__area .section2__title-wrapper.mb-60 { margin-bottom: 0px; }

  .about__area .section2__title-wrapper-title {
    font-size: 24px;
    line-height: 1.3;
    text-align: center;
    padding-bottom: 60px 0 30px 0!important;
  }

  .about__thumb img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    margin-bottom: 20px;
  }

  .about__title {
    font-size: 20px !important;
    line-height: 1.4 !important;
    text-align: center;
    margin-bottom: 15px;
  }

  .about__content div p {
    font-size: 14px;
    line-height: 1.6;
    text-align: left;
  }

  .rr-btn-2 {
    display: inline-block;
    margin: 20px auto 0;
    font-size: 14px;
    padding: 10px 18px;
    border-radius: 5px;
  }

  .si__luxuries__box .si__luxuries__right{
    top: -50px !important;
    margin: 0px !important;
  }
  .si__luxuries__content {
    width: 100%;
    min-height: 300px !important;
    padding: 0px 20px !important;
    margin: 0px !important;
  }

  /* SI Gallery Area */
  .si__gallery__four__area{ padding: 10px 0 !important; }
  .si__gallery__four__area .si__section__title{ padding-bottom: none; }

  /* SI Luxuries Area */
  .si__luxuries__area{ padding: 25px 0 !important; }
  .si__luxuries__area .si__section__title{ padding-bottom: none; }

  /* =========================
     About Page
     ========================= */
  .about2.about__area {
    padding: 40px 15px;
    margin-top: 40px;
  }
  .about2.about__area .container .row .section2__title-wrapper{
    margin-bottom: 30px;
  }

  .about2 h2.section2__title-wrapper-title  {
    font-size: 24px;
    text-align: center;
    padding-bottom: 0px;
    border-bottom: none;
  }

  .about2 .about__thumb img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    margin-bottom: 20px;
  }

  .about2 .about__content h2.about__title {
    font-size: 20px !important;
    line-height: 1.4;
    margin-bottom: 30px;
    text-align: center;
  }

  .about2 .about__content div p{
    font-size: 14px;
    line-height: 1.6;
    text-align: left;
  }

  /* Gallery Section */
  .si__gallery__four__area { padding: 60px 15px; }
  .si__gallery__four__area .si__section__title{
    padding-bottom: 0px;
    margin-bottom: 30px;
  }
  .si__gallery__four__area .si__section__title h5 {
    font-size: 24px;
    margin-bottom: 15px;
  }

  .si__gallery__four__thumb img {
    width: 100%;
    height: auto;
    margin-bottom: 15px;
    object-fit: cover;
  }

  /* Our Service Section */
  .our-service__area { padding: 50px 15px; }
  .our-service__area .si__section__title h5 {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .our-service__area .rs__faq .accordion-button {
    font-size: 14px;
    padding: 12px;
  }
  .our-service__area .rs__faq .accordion-body {
    font-size: 14px;
    line-height: 1.6;
  }
  .our-service__area .our-service__thumb img {
    width: 100%;
    height: auto;
    margin-top: 20px;
    border-radius: 8px;
  }

  /* Testimonial Section */
  .testimonial { padding: 50px 15px; }
  .testimonial .testimonial__content .dec-3 {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 15px;
  }
  .testimonial .testimonial__content-title h4 {
    font-size: 16px;
    font-weight: 600;
  }
  .testimonial .testimonial__content-title h6 { font-size: 13px; }

  /* =========================
     Room Page
     ========================= */
  /* Our Service (FAQ + Image) */
  .our-service__area { padding: 10px 15px; }
  .our-service__area .si__section__title{ padding: 0 !important; }

  .our-service__area .si__section__title h5 {
    font-size: 24px !important;
    margin-bottom: 0px;
    line-height: 1.35;
  }
  .rs__faq{ margin-left: 0 !important; }

  .our-service__area .accordion-item {
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 10px;
  }

  .our-service__area .accordion-button {
    font-size: 14px;
    line-height: 1.4;
    padding: 12px 14px;
    gap: 8px;
  }

  .our-service__area .accordion-button svg {
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
  }

  .our-service__area .accordion-body {
    font-size: 14px;
    line-height: 1.6;
    padding: 12px 14px 14px;
  }

  .our-service__area .accordion-body ul {
    margin: 0;
    padding-left: 18px; /* keep bullets tidy */
  }

  .our-service__area .accordion-body li { margin-bottom: 6px; }

  .our-service__thumb img {
    width: 100%;
    height: auto;
    margin-top: 18px;
    border-radius: 8px;
  }

  /* SI Luxuries (cards grid) */
  .si__luxuries__area {
    padding-bottom: 10px !important;/* from pb-120 */
    background-size: cover;
    background-position: center;
  }

  .si__luxuries__area .si__section__title { padding: 0 !important; }

  .si__luxuries__area .si__section__title h5 {
    font-size: 24px;
    line-height: 1.35;
    margin: 0 !important;
  }

  .si__luxuries__area .mb-30 { margin-bottom: 18px !important; }

  .si__luxuries__box {
    max-height: 520px;
    border-radius: 10px;
    overflow: hidden;
  }

  .si__luxuries__thumb img {
    width: 100%;
    height: auto;
    object-fit: contain;
  }

  .si__luxuries__content h6 a {
    font-size: 20px;
    line-height: 1.3;
  }

  .si__luxuries__list ul {
    margin: 10px 0 0;
    padding-left: 0;
    list-style: none;
  }

  .si__luxuries__list ul li h5 {
    font-size: 14px;
    font-weight: 500;
  }

  .si__luxuries__list ul li i {
    margin-right: 6px;
    font-size: 14px;
  }

  .si__luxuries__content .rr-btn-2 { border-radius: 5px; }

  .si__luxuries__content .rr-btn-2 a {
    font-size: 14px;
    display: inline-flex;
    align-items: center;
  }
  .si__luxuries__content .rr-btn-2 a i { font-size: 14px; }

  /* Detail page */
  .room_detail { padding: 0px !important; }
  .room_detail .card-room { max-height: 350px; }
  .room-details__area { padding-top: 0px; }
  .room-details__area .container { padding: 0 30px; }
  .room-details__wrapper p { text-align: left; }
  .room-details__sidebar {
    margin-top: 20px;
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
  }
  .room-details__sidebar .rr-btn-2{
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0px;
    border-radius: 5px;
  }
	
	.room-details__title{
		font-size:24px !important;
	}

  /* =========================
     Restaurant Page
     ========================= */
  .si__accommodations__five__area { padding: 15px !important; }

  .si__accommodations__five__area .si__section__title { padding-bottom: 24px; }

  .si__accommodations__five__area .si__section__title h5 {
    font-size: 24px;
    line-height: 1.35;
  }
  .si__accommodations__five__area .card-accommodations {
    max-height: 350px !important;
  }

  .si__accommodations__five__thumb img {
    width: 100%;
    height: auto;
    border-radius: 8px;
  }

  .si__accommodations__five__text h6 a {
    font-size: 14px;
    font-weight: 600;
  }

  /* About Six */
  .si__about__six__area { padding: 60px 15px; }

  .si__about__six__thumb img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
    border-radius: 8px;
  }

  .si__section__title__six h6 {
    font-size: 18px;
    margin-bottom: 6px;
    display: block;
    text-align: center;
  }

  .si__section__title__six h2 {
    font-size: 24px !important;
    line-height: 1.3;
    margin-bottom: 15px;
    text-align: center;
  }

  .si__section__title__six div {
    font-size: 14px;
    line-height: 1.6;
    text-align: center;
  }
  .si__section__title__six p { text-align: left; }

  /* Selling Section */
  .selling__area { padding: 60px 15px; }

  .selling__area .section3__title-wrapper {
    margin-bottom: 30px;
    text-align: center;
  }

  .selling__area .section3__title-wrapper-title {
    font-size: 22px;
    line-height: 1.3;
  }

  .selling__item {
    margin-bottom: 20px;
    border-radius: 8px;
    overflow: hidden;
  }

  .selling__item-thumb img {
    width: 100%;
    height: auto;
    display: block;
  }

  .selling__item-content { padding: 14px; }

  .selling__item-content .title {
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 10px;
  }

  .selling__item-content .dec {
    font-size: 14px;
    line-height: 1.6;
  }

  /* =========================
     Conference Hall Page
     ========================= */
  /* Offer Six Area */
  .si__offer__six__area { padding:30px 15px 0 15px; }

  .si__offer__six__area .si__section__title__six {
    padding:0 !important;
    text-align: center;
  }

  .si__offer__six__area .si__section__title__six h2 {
    font-size: 24px;
    line-height: 1.3;
    margin-top: 25px;
    padding-bottom: 0;
  }

  .si__offer__six__right .si__offer__six__text p {
    font-size: 14px;
    line-height: 1.6;
    text-align: left;
    color: whitesmoke;
  }

  .si__offer__six__content img {
    width: 100%;
    height: auto;
    margin: 20px 0;
    border-radius: 8px;
  }

  /* Accommodations Five Area (overrides Restaurant if both used) */
  .si__accommodations__five__area { padding: 0 15px 60px 15px; }

  .si__accommodations__five__area .si__section__title { padding-bottom: 24px; }

  .si__accommodations__five__area .si__section__title h5 {
    font-size: 24px;
    line-height: 1.35;
    padding: 0px !important;
  }

  .si__accommodations__five__thumb img {
    width: 100%;
    height: auto;
    border-radius: 8px;
  }

  .si__accommodations__five__text h6 a {
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    display: block;
    margin-top: 8px;
  }

  /* =========================
     Contact Us Page
     ========================= */
  /* Info Area */
  .si__info__area { padding: 40px 15px; }
  .si__info__area .si__info__border { flex-direction: column; }

  .si__info__box {
    margin-bottom: 20px;
    padding: 15px;
    border: none !important; /* remove desktop border */
  }

  .si__info__icon i { font-size: 28px; }

  .si__info__text span {
    display: block;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 5px;
  }

  .si__info__text p,
  .si__info__text a {
    font-size: 14px;
    line-height: 1.6;
    word-break: break-word;
  }

  .map iframe {
    width: 100% !important;
    height: 250px !important;
  }

  /* Contact Area */
  .si__contact__area { padding: 50px 15px; }

  .si__contact__area .si__contact__bg{
    width: 100%;
    padding: 50px 0px 50px 20px !important;
  }

  .si__contact__text h1 {
    font-size: 22px;
    line-height: 1.3;
    margin-bottom: 10px;
  }

  .si__contact__text p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 25px;
    padding-right: 15px;
  }

  /* Form fields */
  .si__contact__info { margin-bottom: 15px; }

  .si__contact__info input,
  .si__contact__info select,
  .si__contact__info textarea {
    width: 100%;
    font-size: 14px;
    padding: 12px 14px;
    border-radius: 6px;
    border: 1px solid #ddd;
  }

  .si__contact__info textarea {
    min-height: 120px;
    resize: vertical;
  }

  /* Button */
  .si__contact__info .room__btn2 {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 10px 15px;
    font-size: 14px;
    margin-top: 10px;
    border-radius: 5px;
  }
}









