/***************************************************************************************************************
||||||||||||||||||||||||||||       MASTER STYLESHEET FOR Nilachol      ||||||||||||||||||||||||||||||||||||
****************************************************************************************************************
||||||||||||||||||||||||||||              TABLE OF CONTENT                  ||||||||||||||||||||||||||||||||||||
****************************************************************************************************************
****************************************************************************************************************

1. Imported styles
2. Global styles
3. Header styles
4. Slider styles
5. Our Services styles
6. Our features styles
7. About section styles
8. Team Member styles
9. call to action styles
10. Blog styles
11. Testimonial styles
12. contact styles
13. Subscription styles
14. Footer styles
15. Inner banner styles
16. Inner banner styles
17. Project content styles
18. Shop styles
19. Cart Page styles
20. Checkout page styles
21. fact section styles

****************************************************************************************************************
||||||||||||||||||||||||||||            End TABLE OF CONTENT                ||||||||||||||||||||||||||||||||||||
****************************************************************************************************************/

/*
========================================
  1. Imported styles
======================================== 
*/

@import url('https://fonts.googleapis.com/css?family=Poppins:400,500,600,700');
@import url('https://fonts.googleapis.com/css?family=Hind:300,400,500,600,700');

@import url(../css/bootstrap.min.css);
@import url(../css/bootstrap-select.min.css);
@import url(../css/jquery.bootstrap-touchspin.css);

@import url(../css/font-awesome.css);
@import url(../css/flaticon.css);
@import url(../css/icomoon.css);

@import url(../assets/revolution/css/settings.css);
@import url(../assets/revolution/css/layers.css);
@import url(../assets/revolution/css/navigation.css);

@import url(../css/owl.carousel.css);
@import url(../css/jquery.bxslider.css);
@import url(../css/flexslider.css);

@import url(../css/jquery-ui.css);
@import url(../css/jquery.fancybox.css);
@import url(../css/polyglot-language-switcher.css);

@import url(../css/animate.min.css);
@import url(../css/hover.css);
@import url(../css/nouislider.css);
@import url(../css/nouislider.pips.css);
@import url(../css/magnific-popup.css);

@import url(../css/masterslider/masterslider.css);
@import url(../css/masterslider/ms-caro3d.css);
@import url(../css/masterslider/style.css);
/*
==========================================
  2. Global styles
========================================== 
*/

body {
  font-family: 'Hind', sans-serif;
  color:#3F3D3A;
  font-size: 16px;
}

h1,h2,h3,h4,h5,h6,p,ul {
 margin:0;
 padding: 0;
}
h1,h2,h3,h4,h5 {
  font-family: 'Poppins', sans-serif;
} 

ul {
  list-style-type: none;
}

a {
  text-decoration: none; 
  display: inline-block; 
  outline: none;
}
a:hover,a:focus,a:visited {
  text-decoration: none; 
  outline: none;
}

img {
  max-width: 100%;
  display: inline-block;
}

button {
  border:none; 
  outline:none; 
  box-shadow: none; 
  display: block; 
  padding: 0; 
  background: transparent;
}
input,textarea {
  font-family: 'Hind', sans-serif;
  display: block; 
  font-size: 16px; 
  line-height: 28px; 
  outline: none; 
  box-shadow: none;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.text{
  font-family: 'Hind', sans-serif;
  font-size: 16px;
  color: #848484;
  line-height: 26px;
  font-weight: 300;
}

/*boxed_wrapper*/
.boxed_wrapper {
  position: relative;
  margin: 0 auto;
  width: 100%;
  min-width: 300px;
  overflow: hidden;
}

/*clear_fix*/
.clear_fix { 
  clear:both;
}
.clear_fix:after {
  display: table;
  content: '';
  clear: both;
}

/*thm-color*/
.thm-color {
  color: #615f5c;
}

/* font weight*/
.bold {
  font-weight: 700;
}
.s-bold {
  font-weight: 600;
}
.m-bold {
  font-weight: 600;
}

/*float*/
.float_left {
  float: left;
}
.float_right {
  float: right;
}
.center {
  text-align: center;
}

/*container*/
@media (min-width: 1200px) {
  .container {
    padding: 0;
  }
}

/*padding*/
.padd-1{
  padding:80px 0px 50px;
}
.padd-2{
  padding:80px 0px 80px;
}
.padd-3{
  padding:0px 0px 50px;
}
.padd-4{
  padding:80px 0px 0px;
}
.padd-5{
  padding:0px 0px 80px;
}
.padd-6{
  padding:80px 0px 20px;
}
.sidebar-padd{
  padding: 20px;
  border: 1px solid #f5f5f5;
}
/*margin*/
.mar-1{
  margin-bottom: 40px;
}
.mar-2{
  margin-bottom: 0px;
}
/*background color*/

.bg-1{
  background:#f7f7f7;
}
.bg-2{
  background:#ffffff;
}

/*filters-style-two*/
.filters-style-two{
  text-align: center;
  margin-bottom: 50px;
}
.filters-style-two li{
  display: inline-block;
  padding: 10px 30px;
  margin-bottom: 5px;
  background: #615f5c;
  color: #fff;
  font-size: 16px;
  cursor: pointer;
  border-radius: 30px;
}
.filters-style-two li:hover{
  color: #fff;
}
.filters-style-two .filter-tabs li.active {
  color: #fff;
}


/*btn style*/
.link-btn1{
  margin-top: 30px;
}
.link-btn2{
  margin-top: 20px;
}
.link-btn3{
  margin-top: 0px;
}
.link-btn4{
  margin-top: 25px;
}

.link-btn5{
  margin-top: 10px;
}

/*Btn Style One*/

.btn-style-one {
  position: relative;
  padding: 11px 30px;
  border-radius: 25px;
  line-height: 24px;
  color: #ffffff;
  text-align: center;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  background: #615f5c;
  letter-spacing: 1px;
  text-transform: uppercase;
  border: 2px solid #615f5c;
  font-family: 'Poppins', sans-serif;
}

.btn-style-one:hover {
  color: #ffffff;
  background: #101010;
  border-color: #101010;
}

/*Btn Style two*/
.btn-style-two {
  position: relative;
  padding: 11px 40px;
  line-height: 24px;
  color: #ffffff;
  text-align: center;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  cursor:  pointer;
  background: #615f5c;
  letter-spacing: 1px;
  text-transform: uppercase;
  border: 2px solid #615f5c;
  font-family: 'Poppins', sans-serif;
}

.btn-style-two:hover {
  color: #ffffff;
  background: #101010;
  border-color: #101010;
}

/*Btn Style three*/
.btn-style-three {
  color: #615f5c;
  border-color: #fff;
  font-weight: 600;
}

.btn-style-three:hover {
  color: #fff;
}

.btn-style-three.dark {
  color: #615f5c;
  border-color: #fff;
  font-weight: 600;
}

.btn-style-three.dark:hover {
  color: #615f5c;
}

/*Btn Style four*/

.btn-style-four {
  position: relative;
  padding: 15px 45px;
  border-radius: 35px;
  line-height: 24px;
  color: #ffffff;
  text-align: center;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  background: #615f5c;
  letter-spacing: 1px;
  text-transform: uppercase;
  border: 2px solid #615f5c;
  font-family: 'Poppins', sans-serif;
}

.btn-style-four:hover {
  color: #ffffff;
  background: #101010;
  border-color: #101010;
}

/*Btn Style five*/

.btn-style-five {
  position: relative;
  padding: 12px 42px;
  border-radius: 35px;
  line-height: 24px;
  color: #fff;
  text-align: center;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  background: #615f5c;
  letter-spacing: 1px;
  text-transform: uppercase;
  border: 2px solid #615f5c;
  font-family: 'Poppins', sans-serif;
}

.btn-style-five:hover {
  color: #615f5c;
  background: none;
  border-color: #615f5c;
}

/*Btn Style six*/

.btn-style-six {
  position: relative;
  padding: 12px 35px;
  border-radius: 35px;
  line-height: 24px;
  color: #615f5c;
  text-align: center;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  background: none;
  letter-spacing: 1px;
  text-transform: uppercase;
  border: 2px solid #615f5c;
  font-family: 'Poppins', sans-serif;
}

.btn-style-six:hover {
  color: #ffffff;
  background: #615f5c;
  border-color: #615f5c;
}

.btn-style-seven {
  position: relative;
  padding: 11px 30px;
  border-radius: 25px;
  line-height: 24px;
  color: #ffffff;
  text-align: center;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  background: #615f5c;
  letter-spacing: 1px;
  text-transform: uppercase;
  border: 2px solid #fff;
  font-family: 'Poppins', sans-serif;
}

.btn-style-seven:hover {
  color: #ffffff;
  background: #101010;
  border-color: #101010;
}

/*btn-style-eight*/
.btn-style-eight {
  color: #615f5c;
  border-color: #fff;
  font-weight: 600;
}

.btn-style-eight:hover {
  color: #615f5c;
}

.btn-style-eight.hvr-icon-wobble-horizontal:before {
  content: "\f061";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-weight: 400;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

/*social-style*/
.social-style-one{
  margin-top: 2px;
}
.social-style-one li{
  display: inline-block;
  text-align:  center;
}
.social-style-one li a{
  color: #fff;
  width: 36px;
  height: 36px;
  line-height: 38px;
  background: #615f5c;
}
.social-style-one li i{
  font-size: 16px;
  position:  relative;
}

/*social-style*/
.social-style-two{
  margin-top: 2px;
}
.social-style-two li{
  display: inline-block;
  text-align:  center;
}
.social-style-two li a{
  color: #fff;
  width: 40px;
  height: 40px;
  border: 1px solid #615f5c;
  line-height: 42px;
  background: #615f5c;
}
.social-style-two li i{
  font-size: 16px;
  position:  relative;
}

/*social-style*/
.social-style-three{
  margin-top: 2px;
}
.social-style-three li{
  display: inline-block;
  text-align:  center;
}
.social-style-three li a{
  color: #615f5c;
  width: 45px;
  height: 45px;
  border: 2px solid #615f5c;
  line-height: 47px;
  border-radius: 50%;
  background: #fff;
}
.social-style-three li i{
  font-size: 16px;
  position:  relative;
}

/*section title style*/
.sec-title{
  margin-top: -8px;
  margin-bottom: 50px;
}
.sec-title h2{
  position: relative;
  font-size: 36px;
  font-weight: 500;
  color: #615f5c;
  text-transform:  capitalize;
}
/* .sec-title h2:before{
  position: absolute;
  content: "";
  left: 0px;
  bottom: -15px;
  width: 121px;
  height: 4px;
  background: url(../images/resource/tb.png);
}   */
.sec-title span{
  color: #615f5c;
}

.sec-title.center h2:before{
  left:50%;
  margin-left: -61px;
  background: url(../images/resource/tb2.png);
}

.sec-title.light h2{
  color: #fff;
}

/*sec-title.style-2*/
.sec-title.style-2{
  margin-bottom: 30px;
}
.sec-title.style-2 h2{
  position: relative;
  font-size: 36px;
  font-weight: 500;
  color: #615f5c;
}

/*sec-title.style-3*/
.sec-title.style-3{
  margin-bottom: 30px;
}
.sec-title.style-3 h3{
  position: relative;
  font-size: 26px;
  font-weight: 600;
  color: #615f5c;
}


.inner-title{
  margin-bottom: 35px;
}
.inner-title h3{
  position: relative;
  font-size: 24px;
  font-weight: 500;
  color: #615f5c;
}
.inner-title h3:before{
  position: absolute;
  content: "";
  left: 0px;
  bottom: -15px;
  width: 75px;
  height: 2px;
  background: #615f5c;
}

/*scroll-top*/
.scroll-top {
  width: 50px;
  height: 40px;
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 99;
  display: none;
  color: #fff;
  text-align: center;
  background: #615f5c;
}
.scroll-top span:before {
  font-size: 27px;
}
.scroll-top:after {
  position: absolute;
  z-index: -1;
  content: '';
  top: 100%;
  left: 5%;
  height: 10px;
  width: 90%;
  opacity: 1;
  background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
  background: -webkit-radial-gradient(center ellipse, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
}
/*preloader*/
.preloader{ 
  position:fixed; 
  left:0px; 
  top:0px; 
  width:100%;
  height:100%;
  z-index:999999; 
  background-color:#ffffff; 
  background-position:center center;
  background-repeat:no-repeat; 
  background-image:url(../images/icons/preloader.gif);
}


/* owl controll */

.owl-dots-none .owl-dots {
  display: none;
}

/* style one */

.owl-dot-style-one .owl-dots {
  position: relative;
  text-align: center;
}

.owl-dot-style-one .owl-dots .owl-dot {
  position: relative;
  display: inline-block;
  margin: 0px 5px;
}

.owl-dot-style-one .owl-dots .owl-dot span {
  position: relative;
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1px solid #615f5c;
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
}

.owl-dot-style-one .owl-dots .owl-dot.active span,
.owl-dot-style-one .owl-dots .owl-dot:hover span {
  background: #615f5c;
  border-color: #615f5c;
}

/* style two */

.owl-dot-style-two .owl-dots {
  position: relative;
  text-align: center;
  line-height: 15px;
}

.owl-dot-style-two .owl-dots .owl-dot {
  position: relative;
  display: inline-block;
  margin: 0px 5px;
}

.owl-dot-style-two .owl-dots .owl-dot span {
  position: relative;
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: 2px solid #e8e8e8;
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
}

.owl-dot-style-two .owl-dots .owl-dot span:before {
  position: absolute;
  content: '';
  background: #e8e8e8;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  left: 3px;
  top: 3px;
}

.owl-dot-style-two .owl-dots .owl-dot.active span,
.owl-dot-style-two .owl-dots .owl-dot:hover span {
  background: #26bdef;
  border-color: #26bdef;
}

/* owl nav */

.owl-nav-none .owl-nav {
  display: none;
}

.owl-nav-style-one .owl-nav {
  margin-top: 40px;
  padding: 0px;
  text-align: center;
}

.owl-nav-style-one .owl-nav .owl-next,
.owl-nav-style-one .owl-nav .owl-prev {
  position: relative;
  width: 50px;
  height: 50px;
  margin: 0 8px;
  display: inline-block;
  line-height: 46px;
  border: 1px solid #f0f0f0;
  text-align: center;
  font-size: 24px;
  color: #949494;
  border-radius: 50%;
  transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.owl-nav-style-one .carousel-outer:hover .owl-nav .owl-next,
.owl-nav-style-one .carousel-outer:hover .owl-nav .owl-prev {
  opacity: 1;
  visibility: visible;
}

.owl-nav-style-one .owl-nav .owl-prev {
  left: 0px;
}

.owl-nav-style-one .owl-nav .owl-next {
  right: 0px;
}

.owl-nav-style-one .owl-nav .owl-next:hover,
.owl-nav-style-one .owl-nav .owl-prev:hover {
  color: #ffffff;
  border-color: #615f5c;
  background: #615f5c;
}

/* nav style tow */

.owl-nav-style-two .owl-nav {
  padding: 0px;
  text-align: center;
  bottom: 100%;
  top: inherit;
  position: absolute;
  left: inherit;
  right: 0;
}

.owl-nav-style-two .owl-nav .owl-next,
.owl-nav-style-two .owl-nav .owl-prev {
  position: relative;
  width: 50px;
  height: 50px;
  margin: 0 8px 30px;
  display: inline-block;
  line-height: 46px;
  border: 1px solid #f0f0f0;
  text-align: center;
  font-size: 24px;
  color: #949494;
  border-radius: 50%;
  transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.owl-nav-style-two .carousel-outer:hover .owl-nav .owl-next,
.owl-nav-style-two .carousel-outer:hover .owl-nav .owl-prev {
  opacity: 1;
  visibility: visible;
}

.owl-nav-style-two .owl-nav .owl-prev {
  left: 0px;
}

.owl-nav-style-two .owl-nav .owl-next {
  right: 0px;
}

.owl-nav-style-two .owl-nav .owl-next:hover,
.owl-nav-style-two .owl-nav .owl-prev:hover {
  color: #26bdef;
  border-color: #26bdef;
}



/*
=======================================
  2. header-style
======================================= 
*/

.top-bar {
  position: relative;
  background: #615f5c;
  line-height: 50px;
}

.top-bar .top-bar-text li {
  color: #fff;
  margin-right: 20px;
  display: inline-block;
}
.top-bar .top-bar-text li i {
  color: #fff;
  margin-right: 12px;
  position: relative;
  top: 1px;
}

.top-bar .top-bar-text li i:before{
  margin: 0;
  font-size: 16px;
}

.top-bar .social li a:hover {
  color: #615f5c;
  transition: .5s ease-in-out;
}

.top-bar .social li:last-child {
  padding-right: 0px;
}


/*logo*/

.main-logo {
  margin: 21px 0  21px;
}

/*menu*/

.theme_menu .container {
  position: relative;
}

.theme_menu {
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  background: #fff;
}

.theme_menu .menu-column {
  padding-left: 0;
}

.default-form.register-form .form-group {
  margin-bottom: 0;
}

.default-form.register-form .link {
  border-bottom: 1px solid #2f2f2f;
  padding-bottom: 10px;
  margin-bottom: 10px;
  color: #fff;
}

.default-form.register-form .link .thm-color-2 {
  color: #848484;
}

.default-form.register-form .thm-color:hover,
.default-form.register-form .thm-color-2:hover {
  color: #615f5c;
  transition: .5s ease;
}

.default-form.register-form .link_2 {
  position: relative;
}

.default-form.register-form .link_2.singn {
  padding-left: 25px;
}

.default-form.register-form .link_2 .fancy_video {
  position: absolute;
  left: 0;
  top: 1px;
  width: 15px;
  border-radius: 50%;
  font-size: 8px;
  text-align: center;
  line-height: 15px;
  height: 15px;
  color: #615f5c;
  background: #615f5c;
  font-family: "FontAwesome";
}

.default-form.register-form .link_2 .fancy_video span {
  position: relative;right:-1px;
}

/*
==============================================
  Mainmenu Area Css
===============================================
*/

.mainmenu-area {
  background: #615f5c;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
}

.main-menu {
  position: relative;
  margin-top: 20px;
}

.navbar-collapse {
  padding: 0px
}

.navigation {
  position: relative;
}
.navigation li {
  display: inline-block;
}

.navigation li a {
  color: #615f5c;
  display: block;
  font-size: 16px;
  font-weight: 700;
  line-height: 30px;
  padding: 19px 0px 28px;
  margin: 0 16px;
  position: relative;
  text-transform: uppercase;
  font-family: 'Hind', sans-serif;
  transition: all 500ms ease 0s;
}

.main-menu .navigation > li.current > a{
  color: #615f5c;
}

.navigation > li > ul {
  position: absolute;
  left: 0px;
  top: 100%;
  background: #333;
  width: 222px;
  border-top: 2px solid #fff;
  z-index: 999;
  display: none;
}

.navigation > li > ul > li {
  position: relative;
  display: block;
  border-bottom: 1px solid #282828;
}

.navigation > li > ul > li > a {
  color: #ffffff;
  display: block;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  padding: 11px 20px;
  margin: 0;
  text-transform: capitalize;
  transition: all 500ms ease 0s;
}

.navigation > li > ul > li:hover > a {
  color: #b28b43;
}

/*========= third-menu ===============*/

.navigation > li > ul > li.third-menu ul {
  position: absolute;
  left: 230px;
  top: 0px;
  background: #333;
  width: 200px;
  border-top: 2px solid #fff;
  padding: 12px 0px;
  z-index: 999;
  display: none;
}
.navigation > li > ul > li.third-menu {
  position: relative;
}
.navigation > li > ul > li.third-menu ul a {
  color: #ffffff;
  display: block;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  padding: 12px 20px;
  margin: 0;
  text-transform: capitalize;
  transition: all 500ms ease 0s;
}
.navigation > li > ul > li.third-menu ul a:hover {
  color: #fdc716;
}
.navigation > li > ul > li.third-menu:after {
  position: absolute;
  content: "\f0de";
  font-family: FontAwesome;
  color: #fff;
  font-size: 20px;
  line-height: 40px;
  right: 14px;
  transform: rotate(90deg);
  top: 3px;
}

/*========= mobile-menu ==============*/

.mobile-menu .dropdown-btn {
  position: absolute;
  right: 0;
  top: 0;
  width: 50px;
  height: 42px;
  border-left: 1px solid #ffffff;
  cursor: pointer;
  display: block;
  z-index: 5;
}
.mobile-menu .dropdown-btn:after {
  position: absolute;
  content: "\f107";
  font-family: FontAwesome;
  color: #fff;
  font-size: 20px;
  line-height: 40px;
  text-align: center;
  width: 100%;
}

.mobile-menu,
.mobile-menu > li > ul,
.mobile-menu > li > ul > li > ul{
  background: #000;
}

.mobile-menu > li > ul,
.mobile-menu > li > ul > li > ul{
  display: none;
}

.mobile-menu > li > a,
.mobile-menu > li > ul > li > a,
.mobile-menu > li > ul > li > ul > li > a{
  padding:10px 20px;
  line-height:22px;
  color:#ffffff;
  display: block;
  text-transform: uppercase;
  font-size: 14px;
  border-top: 1px solid #fff;
} 

/*=================== Cart And Search Option ===============*/

.main-menu .right-column {
  position: absolute;
  right: 0;
  width: 300px;
}

.theme_menu .link_btn {
  margin-top: 24px;
}


/* Mainmenu fixed style */
@keyframes menu_sticky {
  0%   {margin-top:-100px;}
  50%  {margin-top: -90px;}
  100% {margin-top: 0;}
}
.mainmenu-area.stricky-fixed {
  margin: 0;
  position: fixed;
  background: #615f5c;
  top:0;
  left:0;
  width: 100%;
  z-index: 99999;
  animation-name: menu_sticky;
  animation-duration: 0.60s;
  animation-timing-function: ease-out;
}

.mainmenu-area .right-column .link_btn {
  margin-top: 27px;
}
.mainmenu-area .right-column .thm-btn{
  padding: 0px 26px;
}


/*** 
=============================================
    Rev Slider Wrapper style
=============================================
***/

.rev_slider_wrapper .slide-content-box h1 {
  color: #ffffff;
  font-size: 55px;
  line-height: 62px;
  margin: 14px 0 9px;
  font-weight: 700;
}
.rev_slider_wrapper .slide-content-box p{
  color: #ffffff;
  font-size: 18px;
  line-height: 30px;
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  margin: 0 0 30px;
}

.rev_slider_wrapper .slotholder {
  position: relative;
}

.slotholder:after {
  background: rgba(0, 0, 0, 0.20);
  width: 100%;
  height: 100%;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  pointer-events: none;
}

.tp-bannertimer {
  display: none; 
}

.tp-dottedoverlay {
  background: rgba(0, 0, 0, 0.28);
}

.rev_slider_wrapper .tparrows {
  margin-top: -30px;
  cursor: pointer;
  background: rgba(0, 0, 0, 0.1);
  width: 70px;
  height: 70px;
  position: absolute;
  display: block;
  z-index: 1000;
  border-radius: 50%;
}

.rev_slider_wrapper .tparrows:before {
  font-family: "revicons";
  font-size: 15px;
  color: #fff;
  display: block;
  line-height: 70px;
  text-align: center;
}

.rev_slider_wrapper .tparrows:hover{
  background: rgba(119, 186, 0, 0.38);
}
/*** 

====================================================================
  Main Footer
====================================================================

***/

.main-footer{
  position:relative;
  color: #fff;
  background:url(../images/gallery/banquet-hall.jpg);
  background-attachment: fixed;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.main-footer:before{
  position: absolute;
  content: "";
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background: rgba(0, 0, 0, 0.81);
}


.main-footer .section-title{
  margin-bottom: 40px;
  position: relative;
}

.main-footer .section-title:before{
  position: absolute;
  content: "";
  width: 90px;
  height: 1px;
  background: #615f5c;
  bottom: -15px;
}

.main-footer .section-title h3{
  font-size: 18px;
}

.main-footer .footer-logo {
  margin-bottom: 40px;
}

.main-footer .widgets-section{
  position:relative;
  padding: 80px 0px 40px;
}

.main-footer .footer-column{
  margin-bottom:30px; 
}

.main-footer .footer-widget{
  position:relative;  
}

.main-footer .footer-column h2{
  font-size:15px;
  font-weight:700;
  text-transform:uppercase;
  margin-bottom:30px;
  color:#a1c436;
}

.main-footer .about-widget .text{
  color: #fff;
  margin-bottom: 20px;
  padding-bottom: 15px;
}

/*service-widget*/
.main-footer .service-widget .list li{
  position:relative;
  margin-bottom: 11px;
}

.main-footer .service-widget .list li a{
  position:relative;
  display:block;
  color: #fff;
  font-family: 'Hind', sans-serif;
  font-weight: 300;
  font-size: 16px;
}

.main-footer .service-widget .list li:hover a:before{
  background: #615f5c;
  transition: .5s ease-in-out;
}

.main-footer .service-widget .list li a:hover{
  color: #615f5c;
}

/*links-widget*/
.main-footer .links-widget .list li{
  position:relative;
  margin-bottom: 11px;
}

.main-footer .links-widget .list li a{
  position:relative;
  display:block;
  color: #fff;
  font-family: 'Hind', sans-serif;
  font-weight: 300;
  font-size: 16px;
}

.main-footer .links-widget .list li:hover a:before{
  background: #615f5c;
  transition: .5s ease-in-out;
}

.main-footer .links-widget .list li a:hover{
  color: #615f5c;
}

/*contact-info*/
.main-footer .contact-info{
  margin-bottom: 20px;
}

.main-footer .contact-info li{
  position:relative;
  line-height: 30px;
}

.main-footer .contact-info li .icon{
  position:absolute;
  left:0px;
  top:0px;
  line-height:24px;
  font-size:14px; 
}

.main-footer .social-links a{
  display:inline-block;
  width:32px;
  height:32px;
  margin-left:5px;
  line-height:30px;
  border:1px solid transparent;
  background:none;
  color:#686868;
  font-size:14px;
  text-align:center;
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
}

.main-footer .social-links a:hover{
  color:#a1c436;
  border-color:#a1c436; 
}

/*gallery-widget*/
.main-footer .gallery-widget .image {
  position: relative;
  float: left;
  padding: 0px 2px 8px;
}

.main-footer .gallery-widget .image img {
  position: relative;
  display: block;
  width: 100%;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
}

.main-footer .gallery-widget .image img:hover {
  opacity: 0.70;
}
.main-footer .gallery-widget .image .link a{
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -14px;
  margin-left: -9px;
  width: 10px;
  height: 10px;
}
.main-footer .gallery-widget .image .link i{
  opacity: 0;
  color: #fff;
  font-size: 20px;
}
.main-footer .gallery-widget .image:hover .link i{
  opacity: 1;
}


/*footer social*/
.main-footer .social li {
  display: inline-block;
  font-size: 14px;
  margin-right: 25px;
}
.main-footer .social li a {
  color: #fff;
  transition: .5s ease-in-out;
  height: 32px;
  text-align: center;
  line-height: 32px;
}

.main-footer .social li a:hover{
  color: #615f5c;
}

/*footer bottom*/
.footer-bottom {
  background: #000;
  padding: 26px 0;
  z-index: 1;
  position:  relative;
}
.footer-bottom .copy-text {
  font-family: 'Poppins', sans-serif;
  color: #848484;
  font-size: 14px;
}
.footer-bottom .copy-text a {
  color: #615f5c;
  transition: .3s ease;
}


/*
=======================================
 Inner Banner styles 
=======================================
*/

.inner-banner {
  position: relative;
  background: #a0a19b;
  background-size: cover;
}
.inner-banner:before {
  content: '';
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.59);
  z-index: 0;
}

.inner-banner h3 {
  margin: 0;
  display: table-cell;
  vertical-align: middle;
  font-size: 45px;
  line-height: 60px;
  color: #fff;
  font-weight: 300;
  text-transform: capitalize;
}
.inner-banner .box {
  position: relative;
  display: table;
  height: 300px;
  width: 100%;
  text-align: center;
}

.breadcumb-wrapper {
  background: #fff;
  padding: 17px 0;
  border-bottom: 1px solid #f4f4f4;
}
.breadcumb-wrapper ul,
.breadcumb-wrapper li {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 18px;
  color: #615f5c;
}
.breadcumb-wrapper ul.link-list li a {
  color: #615f5c;
  text-transform: capitalize;
  font-size: 18px;
  transition: .3s ease;
}
.breadcumb-wrapper ul.link-list li a:hover {
  transition: .3s ease;
}

.breadcumb-wrapper ul.link-list li a i {
  color: #fac012;
  margin-right: 7px;
}

.breadcumb-wrapper ul.link-list li a:after {
  content: "\f105";
  font-family: 'FontAwesome';
  margin: 0 10px;
}
.breadcumb-wrapper a.get-qoute {
  text-transform: capitalize;
  font-weight: 400;
  color: #C8A45A;
  font-size: 18px;
  border-left: 1px solid #f4f4f4;
  border-right: 1px solid #f4f4f4;
  padding: 0px 14px;
}
.breadcumb-wrapper a.get-qoute i {
  margin-left: 7px;
  color: #615f5c;
  margin-right: 7px;
  font-size: 14px;
}


/*
======================================
  default-blog styles 
======================================
*/
.sidebar-page-container blockquote{
  padding: 20px 20px;
  margin-bottom: 0px;
  padding-left: 50px;
  padding-right: 30px;
  font-size: 17px;
  border: 1px solid #ededed;
  border-radius: 0 60px 60px 0;
  border-left: 5px solid #615f5c;
  font-style: italic;
  color: #aaa;
  font-family: 'Hind', sans-serif;
}


/*large blog*/

.large-blog-news {
  position: relative;
  transition: .5s ease-in-out;
  margin-bottom: 50px;
}

.large-blog-news .lower-content{
  position:relative;
  padding: 25px 0px 0px;
}

.large-blog-news .lower-content .text{
  margin-bottom:20px; 
}

.large-blog-news .lower-content h4 {
  color:#615f5c;
  font-weight: 500;
  margin-bottom: 15px;
  font-size: 24px;
}
.large-blog-news .lower-content h5 {
  text-transform: uppercase;
  color: #615f5c;
  font-size: 14px;
  margin-bottom: 15px;
}

.large-blog-news .lower-content h4 a{
  color:#615f5c;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  transition: all 300ms ease;
  font-size: 24px;
}

.large-blog-news .lower-content h4 a:hover{
  color:#615f5c;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  transition: all 300ms ease;
}

.large-blog-news .lower-content .post-meta{
  color: #848484;
  font-size:16px;
  margin-bottom: 15px;
}


/*side-bar-blog*/

.blog-sidebar {
  position: relative;
}
.category-style-one {
  position: relative;
}
.category-style-one ul {
  margin-top: 20px;
}
.category-style-one ul li {margin: 0;}

.category-style-one ul li a {
  font-weight: normal;
  color: #848484;
  position: relative;
  width: 100%;
  transition: .5s ease;
  line-height: 40px;
  display: block;
}
.category-style-one ul li a:hover {
  color: #615f5c;
  transition: .5s ease;
}


/*post-thumb*/

.popular-post {
  position: relative;
  padding-top: 15px;
}

.popular-post .item {
  position: relative;
  font-size: 14px;
  margin-bottom: 13px;
  min-height: 50px;
  padding: 0px 0px 18px 105px;
  color: #cccccc;
}

.popular-post .item:last-child{
  border-bottom: 0px;
}
.popular-post .item .post-thumb{
  position:absolute;
  left:0px;
  top: 5px;
  width: 90px;
  height: 90px;
}

.popular-post .item .post-thumb img{
  width:100%;
  display:block;
  border-radius: 50%;
}

.popular-post .item .post-thumb a{
  position: relative;
}
.popular-post .item .post-thumb a:after {
  position: absolute;
  content: "\f0c1";
  font-family: FontAwesome;
  left: 0px;
  top: 0px;
  text-align: center;
  line-height: 90px;
  width: 100%;
  height: 100%;
  background: rgba(119, 186, 0, 0.84);
  border-radius: 50%;
  color: #ffffff;
  opacity: 0;
  transition: .5s ease;
}
.popular-post .item .post-thumb:hover a:after {
  opacity: 1;
  transition: .5s ease;
}

.popular-post .item a:hover{
  color: #615f5c;
  -webkit-transition: .5s ease;
  transition: .5s ease;
}

.popular-post .item h4{
  position: relative;
  top: 8px;
  font-size: 16px;
  font-weight: 600;
  margin: 0px 0px 17px;
  line-height: 26px;
  color:#333;
}
.popular-post .item h4 a{
  color: #555;
  -webkit-transition: .5s ease;
  transition: .5s ease;
}

.recent-posts.post-thumb .post .post-info{
  font-size: 14px;
  font-weight:400;
  margin:0px;
  line-height:1.6em;
  color: #9c9c9c;
}
.popular-post .item .post-info {
  color: #848484;
  font-size: 16px;
}


/*archive*/

.sidebar-archive .bootstrap-select {
  background: #f7f7f7;
  color: #848484;
  padding: 10px 0;
  font-size: 16px;
}
.sidebar-archive .btn-group.open .dropdown-toggle {
  box-shadow: none;
}
.sidebar-archive .btn-group.open .dropdown-toggle:focus {
  border: none;
  outline: none;
}
.sidebar-archive  .bootstrap-select .dropdown-toggle:focus {
  outline: none !important;
}
.sidebar-archive  .dropdown-menu>li>a:focus, .dropdown-menu>li>a:hover {
  background-color: #615f5c;
  color: #fff;
}
.sidebar-archive .form-control:focus {
  border-color: #615f5c;
  box-shadow: none;
}


/*single-blog*/

/*---------------- Author -------------*/

.single-blog-post .author {
  background-color:#ffffff;
  position:relative;
  margin-bottom: 2px;
}
.single-blog-post .author img {
  position:absolute;
}
.single-blog-post .author-comment {
  margin-left:340px;
  padding-left:30px;
}

.single-blog-post .author-comment .quote {
  font-size: 25px;
  color: #f1f1f1;
  margin-bottom: 15px;
}
.single-blog-post .author-comment h5 {
  font-weight: 600;
  margin: 16px 0 5px 0;
  text-transform: uppercase;
  font-size: 18px;
}
.single-blog-post .author-comment p.a-title {
  color: #615f5c;
  font-size: 16px;
}

/*share-box*/

.share-box {
  background: #ffffff;
  padding: 20px 15px 20px 15px;
  margin-bottom: 40px;
  border: 1px solid #ededed;
}
.share-box .tag-box{
  margin-top: 6px;
}
.share-box .tag-box span {
  font-size: 14px;
  color: #3F3E3E;
}
.share-box .tag-box a {
  color: #615f5c;
  font-size: 16px;
  transition: .3s ease;
  line-height: 30px;
  text-transform: capitalize;
}
.share-box .tag-box a:hover {
  color: #615f5c;
  transition: .3s ease;
}

.share-box .social-box span {
  color: #615f5c;
  margin-right: 16px;
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
}
.share-box .social {
  display: inline-block;
  margin-bottom: 0;
  margin-left: -2.5px;
}
.share-box .social > li {
  padding-right: 0;
  margin: 0;
  padding-left: 0;
}
.share-box .social a {
  width: 40px;
  height: 40px;
  color: #fff;
  text-align: center;
  margin: 0 3px;
  border: 1px solid #615f5c;
  background: #615f5c;
  border-radius: 50%;
  display: block;
  line-height: 40px;
  transition: all 0.5s ease;
}
.share-box .social a:hover {
  color: #ffffff;
  background: #615f5c;
  border-color: #615f5c;
}

.share-box .tag-box li {
  margin: 0;
  text-transform: uppercase;
  font-weight: 600;
  display: inline-block;
}

/*comments-area*/
.comments-area .comment-box{
  position:relative;
  padding:22px 0px 25px;
  -webkit-transition:all 300ms ease;
  -ms-transition:all 300ms ease;
  -o-transition:all 300ms ease;
  -moz-transition:all 300ms ease;
  transition:all 300ms ease;
}

.comments-area .comment-box:nth-child(1){
  padding-top:0px;  
}

.comments-area .comment{
  position:relative;
  padding: 0px 0px 0px 110px;
  font-size:14px;
}

.comments-area .reply-comment .comment{
  margin-left: 50px;
}

.comments-area .comment .comment-inner{
  position:relative;
}

.comments-area .comment .comment-reply{
  color: #615f5c;
  font-size: 16px;
  font-weight: 700;
  text-decoration: underline;
  -webkit-transition:all 300ms ease;
  -ms-transition:all 300ms ease;
  -o-transition:all 300ms ease;
  -moz-transition:all 300ms ease;
  transition:all 300ms ease;
  text-decoration: none;
}

.comments-area .comment .comment-reply:hover{
  color: #615f5c;
  text-decoration: none;
}

.comments-area .comment-box .author-thumb{
  position:absolute;
  left:0px;
  top:0px;
  width: 90px;
}

.comments-area .comment-box .author-thumb img{
  width:100%;
  display:block;
  border-radius: 50%;
}

.comments-area .comment-info{
  margin-bottom:5px;
  color:#3e5773;
  line-height:24px;
  font-size:13px; 
}

.comments-area .comment-box strong{
  font-size: 20px;
  font-weight: 500;
  color: #615f5c;
  display:inline-block;
}

.comments-area .comment-info .comment-time{
  font-size: 16px;
  color: #615f5c;
  display:inline-block;
}

.comments-area .comment-box .theme-btn{
  padding:5px 30px;
  font-size:12px;
  border:1px  solid #fbca00;
  text-transform:uppercase;
  letter-spacing:1px;
}


/*review-tab*/

.add_your_review {margin-top: 50px;}

.add_your_review>span {
  display: block;
  margin: 36px 0 14px 0;
  color: #a2a2a2;
}
.add_your_review ul,
.add_your_review ul li {
  display: inline-block;
  color: #a2a2a2;
}

.add_your_review ul {
  line-height: 20px;
  border-right: 1px solid #d6d6d6;
  padding-right: 6px;
  margin-right: 5px;
}
.add_your_review ul.fix_border {
  border:none;
}
.add_your_review form {
  margin-top:31px;
}
.add_your_review form label {
  color: #615f5c;
  font-weight: 500;
  font-size: 16px;
  margin-bottom: 10px;
}
.add_your_review form input {
  height:54px;
  padding: 0 15px 0 19px;
}
.add_your_review form textarea {
  max-width: 100%;
  min-height: 165px;
  padding: 15px 17px 5px 19px;
}
.add_your_review form input,
.add_your_review form textarea {
  width:100%;
  border: 1px solid #f5f5f5;
  background: #f5f5f5;
  margin-bottom: 30px;
  color: #615f5c;
  resize: none;
}

/*
======================================
  client Section style
======================================
*/
.clients-section{
}
.clients-section .section-title {
  margin-bottom: 10px;
}
.clients-section .item{
  border: 1px solid #ccc;
}
.clients-section .tooltip-inner {
  background: #615f5c;
}
.clients-section .tooltip.top .tooltip-arrow {
  border-top-color: #615f5c;
}

.clients-section .owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  -webkit-transform: translate3d(0px, 0px, 0px);
}
.clients-section .owl-theme .owl-nav {
  margin: 0;
  padding: 0;
  position: absolute;
  bottom: 100%;
  right: 0;
  margin: 0;
  margin-bottom: 36px;
}

.clients-section .owl-theme .owl-nav [class*=owl-] {
  color: #c5c5c5;
  font-size: 24px;
  margin: 0;
  padding: 0;
  background-color: transparent;
  height: 40px;
  width: 40px;
  border: 2px solid #f7f7f7;
  line-height: 36px;
  text-align: center;
  margin-left: 10px;
  display: inline-block;
  -webkit-transition: color .3s ease;
  transition: color .3s ease;
}

.clients-section .owl-theme .owl-nav [class*=owl-]:hover {
  color: #615f5c;
  border: 2px solid #615f5c;
  -webkit-transition: .5s ease;
  transition: .5s ease;
}



/*
=====================================
  Fact Counter Section
=====================================
*/

.fact-counter{
  position:relative;
  padding: 80px 0px 36px;
  background-repeat:repeat;
  background-size:cover;
  background-attachment: fixed;
  background-position:center center;
  color:#ffffff;
}

.fact-counter:before{
  content:'';
  position:absolute;
  left:0;
  right: 0;
  top:0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.69);
  opacity: 1;
  z-index:0;
}

.fact-counter .column{
  position:relative;
  margin-bottom:40px;
  text-align:center;
  z-index:5;  
}
.fact-counter .item {
  color: #615f5c;
}

.fact-counter .column .icon i{
  position:relative;
  line-height: 40px;
  color: #ffffff;
  transition:all 500ms ease;
  -moz-transition:all 500ms ease;
  -webkit-transition:all 500ms ease;
  -ms-transition:all 500ms ease;
  -o-transition:all 500ms ease;
}
.fact-counter .column .icon i:before{
  margin: 0;
  font-size: 44px;
}

.fact-counter .count-outer{
  position:relative;
  font-size: 42px;
  font-weight: 700;
  padding: 4px 10px 2px;
  font-family: 'Poppins', Sans-serif;
}

.fact-counter .column .counter-title{
  position:relative;
  font-size: 18px;
  font-weight: 700;
  font-family: "Hind", Sans-serif;
  color: #ffffff;
}


/*
====================================
  google map Section
====================================
*/
.home-google-map #contact-google-map {
  width: 100%;
  height: 430px;
}
.home-google-map .gmnoprint {
  display: none;
}


/*
======================================
  contact Section
======================================
*/
.contact_us{
  
}

.default-cinfo .icon_box {
  width: 45px;
}
.default-cinfo li + li {
  margin-top: 15px;
  border-top: 1px solid #f1f1f1;
  padding-top: 20px;
}
.default-cinfo li .icon_box,
.default-cinfo li .text-box {
  display: table-cell;
  vertical-align: top;
}

.default-cinfo li .icon_box i {
  font-size: 26px;
  color: #615f5c;
  position: relative;
  top: 2px;
}
.default-cinfo .accordion .acc-btn {
  background: #f7f7f7;
  padding: 14px 30px;
  margin: 0;
}

/*form*/

.default-form {
  position: relative;
}

.default-form p {
  color: #fff;
  font-size: 18px;
  line-height: 34px;
  margin-bottom: 20px;
}
.default-form p span {
  color: #ab7442;
  font-size: 20px;
  font-weight: 600;
}

.default-form .form-box{
  position:relative;
}

.comment-form .form-box{
  padding:25px 25px 0px 25px; 
}

.default-form .form-group{
  position:relative;
  margin-bottom: 20px;
}

.default-form .comment-form .form-box .form-group{
  margin-bottom:25px;
}

.default-form.form-box .row{
  margin-left:-10px;
  margin-right:-10px; 
}

.default-form.form-box .row .form-group{
  padding:0px 0px;  
}

.default-form .form-group .field-label{
  display:block;
  line-height:24px;
  text-transform:uppercase;
  margin-bottom:10px;
  color:#232323;
  font-weight:500;
  font-size:13px;
}

.default-form .form-group .field-label sup{
  color:#ff0000;
  font-size:14px;
}

.default-form input[type="text"],
.default-form input[type="email"],
.default-form input[type="password"],
.default-form input[type="number"],
.default-form select,
.default-form textarea{
  display:block;
  width:100%;
  line-height:24px;
  height: 52px;
  font-size:16px;
  box-shadow: none;
  border: 1px solid #f4f4f4;
  padding: 12px 15px;
  background: #fff;
  border-radius: 0px;
  transition:all 500ms ease;
  -webkit-transition:all 500ms ease;
  -ms-transition:all 500ms ease;
  -o-transition:all 500ms ease;
}
.default-form textarea{
  height: 124px;
}
.default-form .bootstrap-select {
  border: 1px solid #f4f4f4;
  background: #f7f7f7;
  color: #a2a2a2;
  padding: 10px 0;
  font-size: 16px;
}
.default-form .btn-group.open .dropdown-toggle {
  box-shadow: none;
}
.default-form .btn-group.open .dropdown-toggle:focus {
  border: none;
  outline: none;
}
.default-form  .bootstrap-select .dropdown-toggle:focus {
  outline: none !important;
}
.default-form  .dropdown-menu>li>a:focus, .dropdown-menu>li>a:hover {
  background-color: #615f5c;
  color: #fff;
}
.default-form .form-control:focus {
  border-color: #615f5c;
  box-shadow: none;
}

.default-form form input::-webkit-input-placeholder {
  color: #9e9e9e;
}
.default-form form input:-moz-placeholder {
  /* Firefox 18- */
  color: #9e9e9e;
}
.default-form form input::-moz-placeholder {
  /* Firefox 19+ */
  color: #9e9e9e;
}
.default-form form input:-ms-input-placeholder {
  color: #9e9e9e;
}

.default-form .alert-success {
  color: #615f5c;
  background: none;
  border: none;
  font-size: 18px;
}


/*author-details*/

.author-details {
  background: #f7f7f7;
  padding: 1px 20px;
}
.author-details .item {
  padding: 20px 20px 20px;
  border-bottom: 1px solid rgba(51, 51, 51, 0.08);
  background: #fff;
  margin: 30px 0;
}
.author-details .item:last-child {
  border-bottom: 0px;
}
.author-details .item .img-box,
.author-details .item .content {
  display: table-cell;
  vertical-align: top;
}

.author-details .item .img-box{
  width: 67px;
}

.author-details .item .content{
  padding-left: 20px;
}

.author-details .item .content p {
  color: #9e9e9e;
  font-size: 14px;
  margin-bottom: 0;
  line-height: 25px;
}
.author-details .item .content p i {
  color: #615f5c;
  margin-right: 5px;
}

.author-details .item h5 {
  font-size: 16px;
  margin-bottom: 15px;
  color: #272727;
}
.author-details .item .content h5 {
  color: #615f5c;
  margin: 0;
}


/*============================= Sidebar Style One ==================*/

.sidebar_styleOne .theme_title,.sidebar_styleTwo .theme_title{
  padding-bottom: 18px;
}
.sidebar_search {
  position: relative;
}
.sidebar_search input {
  width:100%;
  height:54px;
  border:none;
  border: 1px solid #f1f1f1;
  padding: 0 56px 0 12px;
  color:#9e9e9e;
}
.sidebar_search button {
  width:54px;
  height: 54px;
  position: absolute;
  top: 20px;
  background: #615f5c;
  right: 20px;
  color:#fff;
}

/*sidebar tags*/

.sidebar_tags {
}
.sidebar_tags ul {
  margin-top: 10px;
}
.sidebar_tags ul li {
  display: inline-block;
  margin: 0 4px 8px 0;
}
.sidebar_tags ul li a {
  display: block;
  font-weight: normal;
  font-size: 16px;
  color:#9e9e9e;
  line-height: 32px;
  border: 1px solid #f1f1f1;
  background: #fff;
  border-radius: 30px;
  text-align: center;
  padding: 8px 28px;
}
.sidebar_tags ul li a:hover {
  color: #ffffff;
  background: #615f5c;
}

/*** 
=============================================
  page_pagination style
=============================================
***/

.page_pagination {
  text-align: center;
}
.page_pagination li {
  display: inline-block;
  margin:0 4px;
}
.page_pagination li a {
  width: 50px;
  height: 50px;
  line-height: 50px;
  border:1px solid rgba(229, 229, 229, 0.57);
  border-radius: 50%;
  text-align: center;
  color: #615f5c;
  font-size: 18px;
  font-weight: 500;
}
.page_pagination li a.active,
.page_pagination li a:hover {
  color:#fff;
  background: #615f5c;
}


/*** 
===============================================
  Purchase Section
===============================================
***/

.subscirbe-section{
  position:relative;
  padding: 25px 0px;
}

.subscirbe-section:before{
  content: '';
  position: absolute;
  background: #615f5c;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.subscirbe-section h2{
  position:relative;
  font-size: 30px;
  margin-top: 8px;
  font-weight: 600;
  color:#ffffff;
}

.subscirbe-section .btn-column{
  text-align:right;
}

/*
===============
  hover-style1
===============
*/

.hover-style1{
  display: block;
  position: relative;
}
.hover-style1-img img {
  width: 100%;
}
.hover-style1 > .hover-style1-img::before {
  background: rgba(0, 0, 0, 0.58) none repeat scroll 0 0;
  bottom: 0px;
  content: "";
  left: 0px;
  opacity: 0;
  position: absolute;
  right: 0px;
  top: 0px;
  transition: all 0.4s ease-in-out 0s;
}
.hover-style1:hover .hover-style1-img::before {
  opacity: 0.8;
}
.hover-style1-img {
  position: relative;
}
.hover-style1-view a {
  background: rgba(255, 255, 255, 1) none repeat scroll 0 0;
  border-radius: 50%;
  color: #000;
  font-size: 20px;
  height: 60px;
  line-height: 60px;
  opacity: 0;
  position: absolute;
  text-align: center;
  transform: translateX(-50%) translateY(-50%) scale(0.6);
  transition: all 0.4s ease 0s;
  width: 60px;
}
.hover-style1-view a:hover {
  background: rgba(255, 255, 255, .8) none repeat scroll 0 0;
  color: #000;
}
.hover-style1:hover .hover-style1-view a {
  opacity: 1;
  transform: translateX(-50%) translateY(-50%) scale(1);
}
.hover-style1-view {
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.5s ease 0s;
}
.hover-style1:hover .hover-style1-view {
  opacity: 1;
}
.hover-style1-title {
  bottom: 20px;
  left: 20px;
  opacity: 0;
  position: absolute;
  transition: all 0.3s ease-in-out 0s;
  z-index: 2;
}
.hover-style1:hover .hover-style1-title {
  opacity: 1;
}
.title-style-1 h3 {
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  text-transform: capitalize;
  transform: translateY(15px);
  transition: all 0.4s ease-in-out 0s;
}
.title-style-1 h3 a {
  color: #fff;
}
.hover-style1:hover .title-style-1 h3,
.hover-style1:hover .title-style-1 span {
  transform: translateX(0px);
}
.title-style-1 span {
  color: #fff;
  display: inline-block;
  font-size: 15px;
  line-height: 16px;
  transform: translateY(15px);
  transition: all 0.4s ease-in-out 0s;
  text-transform: capitalize;
}
.view-more > a {
  background-color: #333;
  color: #fff;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  margin-top: 25px;
  padding: 10px 20px;
  text-transform: uppercase;
}
.view-more > a i {
  padding-left: 5px;
}
.view-more > a:hover::before {
  transform: scaleX(1);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}


/*** 
========================================
  Error Page
========================================
***/

.error-section{
  position:relative;
  text-align:center;
  padding: 120px 0px 120px;
}

.error-section .error-text{
  position: relative;
  text-align:center;
}

.error-section .error-text h2{
  position:relative;
  color: #615f5c;
  font-size: 190px;
  font-weight: 700;
  line-height:1em;
  letter-spacing:4px;
}

.error-section h3{
  position:relative;
  color: #615f5c;
  font-weight: 500;
  font-size: 40px;
  margin-top:20px;
  line-height:1.2em;
}

.error-section .text{
  font-size: 20px;
  font-weight: 400;
  margin-top: 25px;
  margin-bottom: 40px;
  color: #615f5c;
}

.error-section .error-options{
  position:relative;
}

.error-section .error-options .or{
  position:relative;
  color:#2f2f2f;
  font-size:18px;
  margin:0px 18px;
  font-weight:500;
}

.error-search-box{
  position:relative;
  margin-top:12px;
  width:320px;
  display:inline-block;
}

.error-search-box .form-group{
  position:relative;
  margin:0px; 
}

.error-search-box .form-group input[type="text"],
.error-search-box .form-group input[type="search"]{
  position:relative;
  line-height:32px;
  padding:10px 50px 10px 20px;
  border: 2px solid #ededed;
  display:block;
  font-size: 16px;
  width:100%;
  height: 54px;
  border-radius:40px;
  transition:all 500ms ease;
  -moz-transition:all 500ms ease;
  -webkit-transition:all 500ms ease;
  -ms-transition:all 500ms ease;
  -o-transition:all 500ms ease;
}

.error-search-box .form-group input:focus{
  border-color:#615f5c;
}

.error-search-box .form-group button{
  position:absolute;
  right:0px;
  top:0px;
  height:55px;
  width:50px;
  line-height:52px;
  text-align:center;
  display:block;
  font-size:14px;
  color:#c0c0c0;
  background:none;
  border-radius:0px 3px 3px 0px;
  font-weight:normal;
}

.error-search-box .form-group input:focus + button,
.error-search-box .form-group button:hover{
  color:#615f5c;
  border-color:#615f5c;
}


/*** 
=============================================
  About Style One Section
=============================================
***/

.about-style-one{
  position:relative;
}

.about-style-one .outer-box{
  position:relative;  
}

.about-style-one .image-column{
  position:absolute;
  right:0px;
  top:0px;
  width:50%;
  height:100%;
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center center;
}

.about-style-one .image-column .image{
  width:100%;
  display:none; 
}

.about-style-one .image-column .image img{
  display:block;
  width:100%; 
}

.about-style-one .image-column .overlay-link{
  position:absolute;
  left:0px;
  top:0px;
  width:100%;
  height:100%;
  background:rgba(0,0,0,0);
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease; 
}

.about-style-one .image-column .overlay-link:hover{
  background:rgba(0,0,0,0.50);  
}

.about-style-one .image-column .overlay-link .icon{
  position:absolute;
  left:50%;
  margin-left:-40px;
  width:100px;
  height:100px;
  top:50%;
  padding:30px;
  margin-top:-50px;
  line-height:36px;
  border:2px solid #ffffff;
  text-align:center;
  color:#ffffff;
  font-size:32px;
  background:rgba(0,0,0,0);
  border-radius:50%;  
}

.about-style-one .content-column{
  position:relative;
  width:50%;
  background:#1c1c1c;
  color:#999999;
}

.about-style-one .content-column .content-box{
  position:relative;
  float:right;
  padding: 100px 125px 100px 20px;
  max-width: 770px;
}

.about-style-one .content-column .sec-title h2{
  color:#ffffff;
}

.about-style-one .content-column .inner-box{
  position:relative;
}

.about-style-one .content-column .text{
  position:relative;
  margin-bottom:30px;
  line-height:2em;
}

/*start*/

/*
=============================================
  Services Section
=============================================
*/

.service-block-one{
  position:relative;
  margin-bottom: 30px;
}

.service-block-one .inner{
  position:relative;
  padding-right:25px;
}

.service-block-one .inner .icon{
  position:relative;
  width: 70px;
  height: 70px;
  line-height: 70px;
  text-align:  center;
  border:2px solid #615f5c;
  background: #615f5c;
  border-radius: 50%;
}

.service-block-one .inner .icon.center{
  margin: 0 auto;
}

.service-block-one .inner .icon span{
  color: #fff;
  transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
}
.service-block-one .inner .icon span:before{
  font-size: 40px;
  margin: 0; 
}

.service-block-one:hover .icon{
  background: none;
}
.service-block-one:hover .icon span{
  color: #615f5c;
}

.service-block-one .inner h3{
  margin-top: 18px;
}
.service-block-one .inner h3 a{
  position:relative;
  color: #615f5c;
  font-size:18px;
  font-weight:700;
  text-transform: capitalize;
  transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  -moz-transition: all 300ms ease;

}

.service-block-one .inner h3 a:hover{
  color: #615f5c;
}

.service-block-one .inner .text{
  margin-top: 8px;
  position:relative;
  color: #888;
  font-size: 16px;
  font-weight: 400;
  line-height:1.8em;
}


/*single-service-image*/

.single-service-image{
  position: relative;
  margin-bottom: 30px;
}

.single-service-image .price{
  position: absolute;
  bottom: 20px;
  right: 20px;
  padding: 15px 20px;
  text-align:  center;
  background: rgba(119, 186, 0, 0.8);
}

.single-service-image .price h2{
  font-size: 20px;
  font-weight: 600;
  color: #fff;
  line-height: 36px;
}
.single-service-image .price span{
  font-size: 40px;
}

.service-details .content-box{
  padding-right: 35px;
  border-right: 1px solid #f5f5f5;
}

.your-question{
  margin-top: 30px;
}

/*
============================================
  Room Section
============================================
*/

.rooms-section{
  position:relative;
  background-position:center center;
  background-repeat:no-repeat;
  background-size:cover;
}

.rooms-section:before{
  position:absolute;
  content:'';
  left:0px;
  top:0px;
  width:100%;
  height:100%;
  display:block;
  background-color:rgba(0,0,0,0.75);
}

.rooms-section.style-2:before{
  background: #fff;
}

.room-box{
  position:relative;
}

.room-box.style-2{
  margin-bottom: 30px;
}

.room-box .inner-box{
  position:relative;
  background-color:#ffffff;
}

.room-box .inner-box .image-box{
  position:relative;
}

.room-box .inner-box .image-box img{
  position:relative;
  width:100%;
  display:block;
}

.room-box .inner-box .lower-content{
  position:relative;
  text-align:center;
  padding: 20px 20px 15px;
}

.room-box.style-2 .lower-content{
  border:1px solid #f5f5f5;
}

.room-box .inner-box .lower-content .text{
  color:#6b7a8c;
  font-size:18px;
  font-weight:400;
  margin:5px 0px 20px;
}

.room-box .inner-box .lower-content .rating{
  position:relative;
}

.room-box .inner-box .lower-content .rating span{
  position:relative;
  color: #615f5c;
  font-size:16px;
  margin-right: 2px;
}

.room-box .inner-box .lower-content h3{
  margin-bottom: 10px;
}

.room-box .inner-box .lower-content h3 a{
  position:relative;
  font-size:16px;
  color: #615f5c;
  font-weight:700;
  text-transform:uppercase;
}

.room-box .inner-box .lower-content .price{
  position:relative;
  color: #615f5c;
  font-size: 28px;
  font-weight:700;
  text-align:left;
  margin-top:12px;
}

.room-box .inner-box .lower-content .price a{
  position:relative;
  color: #615f5c;
  font-size:14px;
  font-weight:400;
  float:right;
  top: 8px;
  border-bottom: 1px solid #615f5c;
  text-transform:uppercase;
}

.room-box.style-two .lower-content{
  padding:20px 50px 25px;
}

.room-box.style-two .lower-content .price{
  color:#ff3d54;
  line-height: 42px;
}

.room-box.style-two .lower-content .price .theme-btn{
  border-color:#e8eff3;
  color:#263e5b;
  border: 2px solid #e8eff3;
}

.rooms-section .four-item-carousel{
  position:static;
}

.rooms-section .owl-controls .owl-dots{
  display:none !important;
}

.rooms-section .owl-controls .owl-nav{
  margin: 0px;
  padding: 0px;
  display: none;
}

.rooms-section .owl-controls .owl-nav [class*="owl-"]{
  position:absolute;
  display:inline-block;
  top: 50%;
  margin: 0px;
  margin-top: -35px;
  text-align:  center;
  width: 70px;
  height: 70px;
  font-size:18px;
  line-height: 71px;
  color:#ffffff;
  background-color: #615f5c;
  border:none;
  border-radius: 50%;
  background-position:center center;
  background-repeat:no-repeat;
}


.rooms-section .owl-controls .owl-nav [class*="owl-next"]{
  right: -112px;
}

.rooms-section .owl-controls .owl-nav [class*="owl-prev"]{
  left: -112px;
}

.rooms-section .owl-controls .owl-nav [class*="owl-"]:hover{
  background: #615f5c;
}


/*** 

====================================================================
  Spots Section Two
====================================================================

***/

.spots-section-two{
  position:relative;
  background-color:#f6f6f6;
}

.spots-section-two .column{
  position:relative;
  padding:0px;
}

.post-style-one{
  position:relative;
}

.post-style-one .inner-box{
  background-color:#ffffff;
}

.post-style-one.image-bottom .inner-box .content-box:after{
  position:absolute;
  content:'';
  left:52px;
  bottom:-24px;
  width: 0;
  height: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 25px solid #ffffff;
}

.post-style-one.image-left .inner-box .content-box:after{
  position:absolute;
  content:'';
  top:35px;
  left:-25px;
  width: 0;
  height: 0;
  border-top: 20px solid transparent;
  border-right: 25px solid #ffffff;
  border-bottom: 20px solid transparent;
  z-index:1;
}

.post-style-one.image-right .inner-box .content-box:after{
  position:absolute;
  content:'';
  top:35px;
  right:-25px;
  width: 0;
  height: 0;
  z-index:1;
  border-top: 20px solid transparent;
  border-left: 25px solid #ffffff;
  border-bottom: 20px solid transparent;
}

.post-style-one .content-box{
  position:relative;
  padding:0px;
}

.post-style-one .content-box.small-box .inner-box{
    padding:36px 30px 30px;
    padding-right: 35px;
}

.post-style-one .content-box .inner-box{
  position:relative;
  padding: 36px 50px 40px;
}

.post-style-one .content-box .inner-box .text{
  margin-bottom:25px;
  margin-top: 18px;
}

.spots-section-two .column .image-box{
  padding:0px;
}

.spots-section-two .column .image-box img{
  width:100%;
  display:block;
}


/***
==============================
   Team Member styles
============================== 
***/

.single-team-member.mb-30{
  margin-bottom: 30px;
}

.single-team-member h3,
.single-team-member p {
  margin: 0;
}
.single-team-member h4 {
  font-size: 18px;
  color: #615f5c;
  text-transform: capitalize;
  margin-top: 12px;
  margin-bottom: 6px;
}

.single-team-member .img-box {
  position: relative;
  overflow: hidden;
}
.single-team-member .img-box img {
  transition: all 0.5s ease;
  transform: scale(1);
  width: 100%;
}

.our-team .single-team-member {
  margin-bottom: 50px;
  text-align: center;
  overflow: hidden;
}
.single-team-member .author-info {
  overflow: hidden;
  border: 2px solid #f4f4f4;
  padding: 6px 0 9px;
}

.single-team-member a p {
  color: #615f5c;
  transition: .5s ease;
}

.single-team-member .text {
  margin-top: 15px;
}
.single-team-member .text p {
  font-size: 16px;
}

.single-team-member .img-box .overlay {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  background: rgba(119, 186, 0, 0.74);
  width: 100%;
  transform: scale(0.7,0);
  transition: .5s ease-in-out;
}
.single-team-member:hover .img-box .overlay {
  transform: scale(1,1);
  transition: .5s ease-in-out;
}

.single-team-member .inner-box {
  display: table;
  width: 100%;
  height: 100%;
  text-align: center;
}
.single-team-member .social-style-three {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  top: -20%;
  transition: .2s cubic-bezier(0.4, 0, 1, 1);
}
.single-team-member:hover .social-style-three {
  top: 0;
  transition: .5s cubic-bezier(0.4, 0, 1, 1);
  transition-delay: .3s;
}


/*
===========================================
  Testimonials Section style
===========================================
*/

.testimonials-section {
  position: relative;
  background-position: center top;
  background-size: cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
  text-align: center;
}

.testimonials-section:before {
  content: '';
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.78);
  z-index: 0;
}

.testimonials-section.style-2:before{
  background: #fff;
}

.testimonial-slide-item {
  position: relative;
  margin: 50px 0px 0px 0px;
  border: 2px solid transparent;
  text-align: center;
}

.testimonial-slide-item .image-box {
  position: relative;
  width: 100px;
  height: 100px;
  margin: -50px auto 20px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  -moz-border-radius: 50%;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
}

.testimonial-slide-item .image-box img {
  position: relative;
  width: 90px !important;
  height: 90px !important;
  display: block;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  -moz-border-radius: 50%;
}

.testimonial-slide-item h3 {
  position: relative;
  font-size: 16px;
  color: #fff;
  font-weight: 700;
  text-transform: capitalize;
}

.testimonial-slide-item .designation {
  position: relative;
  font-size: 15px;
  color: #615f5c;
  margin-top: 10px;
}

.testimonial-slide-item .text {
  position: relative;
  font-size: 16px;
  color: #fff;
  font-style: italic;
  font-weight: 500;
  line-height: 2em;
  padding: 20px;
  max-width: 800px;
  margin: 0 auto;
}

/*single-testimonial*/

.single-testimonial{
  padding: 30px;
  margin-bottom: 30px;
  border:1px solid #f5f5f5;
}

.single-testimonial:hover{
  -webkit-box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0);
  -ms-box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.07);
  -o-box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.07);
  -moz-box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.07);
  box-shadow: 0px 0px 20px 5px rgba(145, 139, 139, 0.13);
  transition:  .5s;
}



.single-testimonial .text{
  margin-bottom: 20px;
}
.single-testimonial .image-box{
  margin-bottom: 18px;
}
.single-testimonial .image-box img{
  border-radius: 50%;
}
.single-testimonial h3{
  font-size: 20px;
  font-weight: 600;
  color: #615f5c;
}
.single-testimonial .designation{
  margin-top: 8px;
  font-size: 16px;
  font-weight: 700;
  color: #615f5c;
}

/*
======================================
  default-blog styles 
======================================
*/

.default-blog-news {
  position: relative;
  transition: .5s ease-in-out;
  margin-bottom: 30px;
  overflow: hidden;
}

.default-blog-news:hover {
  box-shadow: 0 15px 16px 0 rgba(0, 0, 0, 0.03), 0 0px 82px 0 rgba(0, 0, 0, 0.02);
  transition: .2s cubic-bezier(0.4, 0, 1, 1);
}
.default-blog-news img{
  width: 100%;
}

.default-blog-news .lower-content{
  position: relative;
  padding: 25px 20px 25px;
  border: 1px solid #f4f4f4;
}

.default-blog-news .lower-content h4 {
  color:#615f5c;
  font-weight: 600;
}

.default-blog-news .lower-content h4 a{
  color:#615f5c;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  transition: all 300ms ease;
  font-size: 18px;
}

.default-blog-news .lower-content h4 a:hover{
  color: #615f5c;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  transition: all 300ms ease;
}

.default-blog-news .lower-content .text{
  margin-top: 8px;
}

.default-blog-news .lower-content .post-meta{
  color: #848484;
  font-size:16px;
  margin-bottom:10px;
}


/** service-section **/


.service-section .single-item img{
  width: 100%;
}
.service-section .single-item{
  position: relative;
  padding: 0px 0px 0px 0px;
  box-shadow: 4px 4px rgba(0, 0, 0, 0.05);
  transition: all 500ms ease;
  margin-bottom: 30px;
}
.service-section .single-item:hover{
  box-shadow: none;
  transition: all 500ms ease;
}
.service-section .service-content{
  position: relative;
  padding: 29px 0px 30px 32px;
  z-index: 1;
}
.service-section .single-item:hover .service-content:before{
  height: 100%;
  width: 100%;
  opacity: 1;
}
.service-section .service-content:before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0%;
  background: #615f5c;
  content: "";
  z-index: -1;
  -webkit-transition: all 0.7s ease;
  transition: all 0.7s ease;
  opacity: 0;
}
.service-section .single-item h3 a{
  font-size: 20px;
  line-height: 32px;
  color: #313131;
  margin-bottom: 10px;
  transition: all 500ms ease;
}


.service-section .single-item:hover .service-content h3 a{
  color: #fff;
  transition: all 500ms ease;
} 


.service-section .single-item .text{
  position: relative;
  font-size: 16px;
  line-height: 28px;
  color: #848484;
  display: inline-block;
  margin-right: 20px;
  transition: all 500ms ease;
}

.service-section .single-item .text span{
  position: relative;
  font-size: 18px;
  line-height: 28px;
  color: #615f5c;
  display: inline-block;
  transition: all 500ms ease;
}

.service-section .single-item:hover .text,
.service-section .single-item:hover span,
.service-section .single-item:hover .rating li i:before{
  color: #fff;
}


.service-section .single-item .rating{
  position: relative;
  display: inline-block;
  padding: 0px;
  margin: 0px;
  margin-left: 20px;
}
.service-section .single-item .rating li{
  display: inline-block;
}
.service-section .single-item .rating li i:before{
  font-size: 13px;
  color: #615f5c;
  margin: 0px;
}
.service-section .single-item .rating:before{
  position: absolute;
  content: '';
  background: #d9d9d9;
  height: 20px;
  width: 1px;
  left: -20px;
  top: 5px;
}


/*
======================================
    Gallery Sections
======================================
*/



.gallery-section .filters {
  position: relative;
  text-align: center;
  margin-bottom: 40px;
}

.gallery-section .filters li {
  position: relative;
  display: inline-block;
  padding: 12px 22px;
  line-height: 24px;
  color: #777777;
  cursor: pointer;
  text-transform: capitalize;
  font-size: 16px;
  font-weight: 400;
  margin: 0px 2px 10px;
  transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.gallery-section .filters li .txt {
  position: relative;
  display: block;
  z-index: 1;
}

.gallery-section .filters li:after {
  content: '';
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  opacity: 1;
  border: 1px solid #f0f0f0;
  border-radius: 30px;
  transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.gallery-section .filters li:before {
  content: '';
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  opacity: 0;
  background: #615f5c;
  border-radius: 30px;
  transition: all 300ms ease;
  -webkit-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.gallery-section .filters li:hover,
.gallery-section .filters li.active {
  color: #ffffff;
}

.gallery-section .filters li:hover:before,
.gallery-section .filters li.active:before {
  opacity: 1;
}

.gallery-section .filters li:hover:after,
.gallery-section .filters li.active:after {
  opacity: 0;
}

.default-portfolio-item {
  position: relative;
}

.gallery-three-column .default-portfolio-item {
  margin-bottom: 30px;
}

.fullwidth-gallery {
  overflow: hidden;
}

.fullwidth-gallery .default-portfolio-item.mix {
  padding: 0px 0px;
  margin-bottom: 1px;
}

.default-portfolio-item.mix {
  display: none;
}

.gallery-section.fullwidth-gallery .items-container {
  margin-left: -1px;
  margin-right: -1px;
}

.fullwidth .default-portfolio-item {
  padding: 0px !important;
}

.sortable-masonry .items-container {
  margin-left: -15px;
  margin-right: -15px;
}

.sortable-masonry .masonry-item {
  margin-bottom: 30px;
  padding: 0px 15px;
}

.sortable-masonry.style-two .masonry-item {
  margin-bottom: 15px;
}

.default-portfolio-item .inner-box {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.default-portfolio-item .image-box {
  position: relative;
  display: block;
}

.default-portfolio-item .image-box img {
  position: relative;
  display: block;
  width: 100%;
}

.default-portfolio-item .overlay-box {
  position: absolute;
  left: 0px;
  width: 100%;
  height: 100%;
  text-align: center;
  color: #ffffff;
  transition: all 500ms ease;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  -o-transform: scaleY(0);
  -moz-transform: scaleY(0);
  transform: scaleY(0);
}

.default-portfolio-item .inner-box:hover .overlay-box {
  top: 0px;
  -webkit-transform: scaleY(1);
  -ms-transform: scaleY(1);
  -o-transform: scaleY(1);
  -moz-transform: scaleY(1);
  transform: scaleY(1);
}

.default-portfolio-item .overlay-inner {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  display: table;
  vertical-align: middle;
  padding: 10px 30px;
  background: rgba(0, 0, 0, 0.52);
}

.default-portfolio-item .overlay-inner .content {
  position: relative;
  display: table-cell;
  vertical-align: middle;
}

.default-portfolio-item .overlay-inner h3 {
  font-size: 18px;
  color: #ffffff;
  font-weight: 500;
  text-transform: capitalize;
}

.default-portfolio-item .overlay-inner h3 a {
  color: #ffffff;
}

.default-portfolio-item .overlay-inner h3 a:hover {
  color: #f1f1f1;
}

.default-portfolio-item .image-link {
  position: absolute;
  left: -100px;
  bottom: 0px;
  width: 40px;
  height: 40px;
  color: #ffffff;
  line-height: 40px;
  background: #615f5c;
  display: block;
  font-size: 16px;
  z-index: 1;
  text-align: center;
}

.default-portfolio-item:hover .image-link {
  left: 0px;
  transition: all 500ms ease 500ms;
  -webkit-transition: all 500ms ease 500ms;
  -ms-transition: all 500ms ease 500ms;
  -o-transition: all 500ms ease 500ms;
  -moz-transition: all 500ms ease 500ms;
}


/*default-blog-style-two*/

.default-blog-style-two{
  margin-bottom: 30px;
}

.default-blog-style-two img{
  width: 100%;
}

.default-blog-style-two h3 {
  margin: 0;
  color: #615f5c;
  font-size: 20px;
}
.default-blog-style-two h3 a {
  color: #615f5c;
  transition: all .4s ease;
}
.default-blog-style-two h3 a:hover {
  color: #615f5c;
}

.default-blog-style-two .bottom-box {
  border: 1px solid #e7e7e7;
  padding: 20px 25px;
  padding-bottom: 20px;
}

.default-blog-style-two .meta {
  border-bottom: 1px solid #E7E7E7;
  padding-bottom: 20px;
  margin-bottom: 20px;
  margin-top: 20px;
}
.default-blog-style-two .meta li {
  display: inline-block;
  margin-right: 15px;
}
.default-blog-style-two .meta li a {
  display: block;
  color: #848484;
  font-size: 14px;
}
.default-blog-style-two .img-box,
.default-blog-list .img-box {
  position: relative;
  overflow: hidden;
}
.default-blog-style-two .overlay,
.default-blog-list .img-box .overlay {
  position: absolute;
  top:100%;
  left:0;
  right:0;
  bottom:0;
  transition: all .4s ease;
}
.default-blog-style-two .img-box:hover .overlay,
.default-blog-list .img-box:hover .overlay {
  top: 0;
}
.default-blog-style-two .overlay .dt,
.default-blog-list .img-box .overlay .dt {
  display: table;
  width: 100%;
  height: 100%;
}
.default-blog-style-two .overlay .dtc,
.default-blog-list .img-box .overlay .dtc {
  display: table-cell;
  vertical-align: middle;
}
.default-blog-style-two .overlay .dtc .date-box,
.default-blog-list .img-box .overlay .dtc .date-box {
  width: 75px;
  height: 75px;
  background: #7FC142;
  color: #fff;
  font-size: 16px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.1;
  padding-top: 10px;
}
.default-blog-style-two .overlay .dtc .date-box span,
.default-blog-list .img-box .overlay .dtc .date-box span {
  display: block;
  font-size: 30px;
  font-weight: 700;
  font-style: italic;
}
.default-blog-list {
  border-top: 1px solid #e7e7e7;
  padding-top: 36px;
  margin-top: 35px;
}
.default-blog-list:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}
.default-blog-list .img-box,
.default-blog-list .text-box {
  display: table-cell;
  vertical-align: middle;
}
.default-blog-list .img-box {
  width: 110px;
}
.default-blog-list .text-box {
  padding-left: 25px;
}
.default-blog-list .text-box h3 {
  margin: 0;
  font-size: 20px;
  color: #615f5c;
  margin-bottom: 10px;
}
.default-blog-list .text-box h3 a {
  color: #615f5c;
  transition: all .4s ease;
}
.default-blog-list .text-box h3 a:hover {
  color: #6DB42B;
}


/*
=======================================
  About Section style
=======================================
*/

.about-content .headding .text {
  font-size: 16px;
  color: #595959;
  font-weight: 600;
}

.services-outer {
  position: relative;
  margin-top: 50px;
}

.services-outer .column {
  position: relative;
  margin-bottom: 30px;
}

.services-outer .column .inner-box {
  position: relative;
  padding-left: 70px;
}

.services-outer .column .inner-box .icon {
  position: absolute;
  left: 0px;
  top: 0px;
  padding-top: 4px;
  width: 36px;
  text-align: center;
}

.services-outer .column .inner-box .icon span {
  position: relative;
  display: block;
  width: 40px;
  height: 40px;
  background: #615f5c;
  line-height: 40px;
  font-size: 18px;
  color: #ffffff;
  border-radius: 50%;
  margin-bottom: 20px;
}


.services-outer .column .inner-box h3 {
  color: #615f5c;
  font-size: 18px;
  font-weight: 500;
  text-transform: capitalize;
  margin-bottom: 10px;
}



/*** 

====================================================================
  Services Section
====================================================================

***/


.services-section.style-2{
  position:relative;
  padding: 180px 0px 0px;
  background: #fff;
}

.services-section.style-2:before{
  background: none;
}

.services-section .image-column{
  margin-top: -100px;
  text-align:center;
}

.service-block-three{
  position:relative;
  margin-bottom:70px;
}

.service-block-three .inner-box{
  position:relative;
  padding-right: 96px;
  text-align:right;
}

.service-block-three .inner-box .icon{
  position:absolute;
  right:0px;
  top:0px;
  width: 75px;
  height: 75px;
  line-height: 75px;
  text-align:center;
  border: 2px solid #615f5c;
  border-radius: 50%;
  -webkit-transition:all 300ms ease;
  -ms-transition:all 300ms ease;
  -o-transition:all 300ms ease;
  -moz-transition:all 300ms ease;
  transition:all 300ms ease;
}
.service-block-three .inner-box .icon span:before{
  margin: 0;
  font-size: 36px;
}

.service-block-three .inner-box h3{
  position:relative;
  line-height:1em;
  margin-bottom:5px;
}

.service-block-three .inner-box h3 a{
  position:relative;
  top:-6px;
  color:#615f5c;
  font-size: 20px;
  font-weight: 600;
  -webkit-transition:all 300ms ease;
  -ms-transition:all 300ms ease;
  -o-transition:all 300ms ease;
  -moz-transition:all 300ms ease;
  transition:all 300ms ease;
}

.service-block-three .inner-box h3 a:hover{
  color: #615f5c;
}

.service-block-three .inner-box .text{
}

.service-block-three .inner-box:hover .icon{
  background-color: #615f5c;
}
.service-block-three .inner-box:hover .icon span{
  color: #fff;
}
/*Service Block Two*/

.service-block-two{
  position:relative;
  margin-bottom:70px;
}

.service-block-two.style-two{
  margin-bottom:45px;
}

.service-block-two .inner-box{
  position:relative;
  padding-left: 96px;
  text-align:left;
}

.service-block-two .inner-box .icon{
  position:absolute;
  left:0px;
  top:0px;
  width: 75px;
  height: 75px;
  line-height: 75px;
  text-align:center;
  border: 2px solid #615f5c;
  border-radius: 50%;
  -webkit-transition:all 300ms ease;
  -ms-transition:all 300ms ease;
  -o-transition:all 300ms ease;
  -moz-transition:all 300ms ease;
  transition:all 300ms ease;
}
.service-block-two .inner-box .icon span:before{
  margin: 0;
  font-size: 36px;
}
.service-block-two .inner-box h3{
  position:relative;
  line-height:1em;
  margin-bottom:5px;
}

.service-block-two .inner-box h3 a{
  position:relative;
  top:-6px;
  color:#615f5c;
  font-size: 20px;
  font-weight: 600;
  -webkit-transition:all 300ms ease;
  -ms-transition:all 300ms ease;
  -o-transition:all 300ms ease;
  -moz-transition:all 300ms ease;
  transition:all 300ms ease;
}

.service-block-two .inner-box h3 a:hover{
  color: #615f5c;
}

.service-block-two .inner-box:hover .icon{
  background-color: #615f5c;
}
.service-block-two .inner-box:hover .icon span{
  color: #fff;
}


/*service-block-four*/

.service-block-four{
  position:relative;
  margin-bottom: 20px;
}

.service-block-four.style-two{
  margin-bottom:45px;
}

.service-block-four .inner-box{
  position:relative;
  padding-left: 70px;
  text-align:left;
}

.service-block-four .inner-box .icon{
  position:absolute;
  left:0px;
  top:0px;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align:center;
  color: #fff;
  border: 2px solid #615f5c;
  background: #615f5c;
  border-radius: 50%;
  -webkit-transition:all 300ms ease;
  -ms-transition:all 300ms ease;
  -o-transition:all 300ms ease;
  -moz-transition:all 300ms ease;
  transition:all 300ms ease;
}
.service-block-four .inner-box .icon span:before{
  margin: 0;
  font-size: 26px;
}
.service-block-four .inner-box h3{
  position:relative;
  line-height:1em;
  margin-bottom:5px;
}

.service-block-four .inner-box h3 a{
  position:relative;
  top: -2px;
  color:#615f5c;
  font-size: 16px;
  font-weight: 600;
  -webkit-transition:all 300ms ease;
  -ms-transition:all 300ms ease;
  -o-transition:all 300ms ease;
  -moz-transition:all 300ms ease;
  transition:all 300ms ease;
}

.service-block-four .inner-box h3 a:hover{
  color: #615f5c;
}

.service-block-four .inner-box:hover .icon{
  background-color: #fff;
}
.service-block-four .inner-box:hover .icon span{
  color: #615f5c;
}

/*** 

====================================================================
  Projects Style
====================================================================

***/

.projects-block-one {
  position: relative;
  margin-bottom: 30px;
  display: inline-block;
  overflow: hidden;
}

.projects-block-one .inner-box {
  text-align: center;
  overflow: hidden;
  position: relative;
}

.projects-block-one .inner-box .read-more {
    position:  absolute;
    left:  0;
    top: 0;
    width:  100%;
    height:  100%;
    display:  flex;
    justify-content:  center;
    align-items:  center;
    opacity:  0;
    visibility:  inherit;
    transition:  .5s ease;
}

.projects-block-one .inner-box .read-more-btn {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 16px;
    color: #fff;
}

.projects-block-one .inner-box:hover .read-more {
  opacity: 1;
  visibility: visible;
  transition: .5s ease;
}

.projects-block-one .inner-box img {
  width: 100%;
  height: auto;
}

.projects-block-one .inner-box .box-content {
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  transform: perspective(400px) rotateX(-90deg);
  transform-origin: center top 0;
  transition: all 0.5s ease 0s;
}

.projects-block-one .inner-box:hover .box-content {
  opacity: 1;
  transform: perspective(400px) rotateX(0deg);
}

.projects-block-one .inner-box .title {
  display: inline-block;
  padding: 5px 7px;
  background: #26bdef;
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  margin: 0;
  position: absolute;
  bottom: 20px;
  left: 20px;
  transition: all 900ms ease 0s;
}

.projects-block-one .inner-box:hover .title {
  bottom: -40px;
}

.projects-block-one .inner-box .icon {
  list-style: none;
  padding: 0;
  margin: 0;
  position: absolute;
  top: 42%;
  left: 0;
  right: 0;
}

.projects-block-one .inner-box .icon li {
  display: inline-block;
}

.projects-block-one .inner-box .icon li a {
  display: block;
  width: 50px;
  height: 50px;
  line-height: 50px;
  border-radius: 50%;
  background: #ffffff;
  text-align: center;
  font-size: 16px;
  color: #7aba1e;
  margin-right: 7px;
  transition: all 0.35s ease 0s;
}

.projects-block-one .inner-box .icon li a:hover {
  background: #fff;
  color: #000;
}

.projects-block-one .lower-content {
  position: relative;
  margin: 15px 0 0;
  margin-bottom: -10px;
}

.projects-block-one .lower-content h4 {
  font-size: 20px;
  font-weight: 600;
}

.projects-block-one.mix {
  padding: 5px 5px;
  margin-bottom: 1px;
}

.projects-block-one.mix {
  display: none;
}


/*
===========================================
  Appointment popup
===========================================
*/

.popup-box .popup-inner h3{
  margin-bottom: 20px;
}

.popup-visible {
  overflow: hidden;
}
.popup-box {
  position: fixed;
  left: 0px;
  top: -120%;
  width: 100%;
  height: 100%;
  overflow: auto;
  padding: 0px;
  z-index: 9999;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 1000ms ease-in-out;
  -o-transition: all 1000ms ease-in-out;
  -ms-transition: all 1000ms ease-in-out;
  transition: all 1000ms ease-in-out;
}
.popup-box.now-visible {
  top: 0px;
  visibility: visible;
  opacity: 1;
}
.popup-box .bg-fade-layer {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: rgba(21, 21, 21, 0.80);
}

.popup-box .popup-header .btn-close {
  position: absolute;
  top: 9px;
  right: 11px;
  color: #fff;
  width: 42px;
  height: 35px;
  background: #ed0707;    
  opacity: 1;
  font-size: 18px;
  line-height: 37px;
  padding: 0px;
  display: block;
  border: none;
  z-index: 1;
}
.popup-box .popup-header .close:hover {
  background: #999999;
}

.popup-box .popup-container {
  margin: 0 auto;
  top: 15%;
  width: auto;
  max-width: 900px;
  position:  relative;
}
.popup-box .popup-inner {
  position: relative;
  padding: 60px 60px;
  background: #ffffff;
}
@media only screen and (max-width:767px){

.mainmenu-area .menu-column{
    float:right;
    padding:0;
}

.mainmenu-area .navbar-header{
    float:right;
    width:auto;
    margin:15px 0 0 0;
}

.mainmenu-area .navbar-toggle{
    float:right;
    margin:0;
}

}
.main-menu .navbar-collapse{
    position:absolute;
    top:100%;
    left:0;
    width:100%;
    background:#111;
    z-index:9999;
}

.main-menu .navbar-header{
    position:relative;
    z-index:10000;
}
@media (max-width:767px){

.main-menu{
    position:relative;
}

.main-menu .navbar-header{
    float:right;
    position:relative;
    z-index:1001;
}

.main-menu .navbar-collapse{
    position:absolute;
    top:45px;          /* Hamburger ke just niche */
    right:0;           /* Left ki jagah right */
    left:auto;
    width:220px;       /* Menu width */
    background:#111;
    z-index:1000;
    border-top:2px solid #615f5c;
}

.main-menu .navigation{
    width:100%;
}

.main-menu .navigation li{
    float:none;
    width:100%;
}

}
@media (max-width:767px){

.main-menu .navbar-toggle{
    position:relative;
    z-index:1002;
}

}
@media (max-width:767px){

.main-menu{
    position:relative;
}

.main-menu .navbar-collapse{
    position:absolute;
    top:50px;
    right:0;
    left:auto;
    width:220px;
    background:#111;
    z-index:999;
}

.main-menu .navbar-header{
    position:relative;
    z-index:1001;
}

.main-menu .navbar-toggle{
    position:relative;
    z-index:1002;
}

}
/*==========================================
    Premium Spaces Cards
==========================================*/

.room-box .inner-box{
    background:#fff;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(0,0,0,.12);
    transition:.4s;
    height:100%;
}

.room-box .inner-box:hover{
    transform:translateY(-8px);
}

.room-box .image-box{
    height:280px;
    overflow:hidden;
}

.room-box .image-box img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.5s;
}

.room-box:hover .image-box img{
    transform:scale(1.08);
}

.room-box .lower-content{
    padding:30px 25px;
    min-height:220px;
}

.room-box .rating{
    text-align:center;
    margin-bottom:18px;
}

.room-box .rating .fa{
    color:#C8A45A;
    margin:0 2px;
    font-size:15px;
}

.room-box .lower-content h3{
    text-align:center;
    margin-bottom:18px;
}

.room-box .lower-content h3 a{
    color:#0A4D35;
    font-size:28px;
    font-weight:700;
    text-transform:uppercase;
}

.room-box .price{
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:18px;
    font-weight:600;
    color:#444;
    margin-top:25px;
    border-top:1px solid #e5e5e5;
    padding-top:18px;
}

.room-box .price a{
    color:#0A4D35;
    font-size:15px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.5px;
}

.room-box .price a:hover{
    color:#C8A45A;
}
/*=====================================
    Premium Spaces
=====================================*/

.room-box{
    margin-bottom:30px;
}

.room-box .inner-box{
    background:#fff;
    overflow:hidden;
    box-shadow:0 12px 35px rgba(0,0,0,.12);
    transition:.4s;
    display:flex;
    flex-direction:column;
}

.room-box .inner-box:hover{
    transform:translateY(-8px);
}

.room-box .image-box{
    height:280px;
    overflow:hidden;
}

.room-box .image-box img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.6s;
}

.room-box:hover img{
    transform:scale(1.08);
}

.room-box .lower-content{
    padding:28px;
    display:flex;
    flex-direction:column;
    flex:1;
}

.room-box .rating{
    text-align:center;
    margin-bottom:15px;
}

.room-box .rating .fa{
    color:#C8A45A;
    margin:0 2px;
}

.room-box h3{
    text-align:center;
    margin-bottom:18px;
}

.room-box h3 a{
    color:#093F2D;
    font-size:24px;
    font-weight:700;
    text-transform:uppercase;
}

.room-info{
    margin-top:auto;
    border-top:1px solid #ececec;
    padding-top:20px;
}

.room-info p{
    color:#777;
    font-size:16px;
    margin-bottom:15px;
}

.room-info a{
    color:#093F2D;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
    transition:.3s;
}

.room-info a:hover{
    color:#C8A45A;
}

.room-info i{
    margin-left:8px;
}
/*==============================================
        ABOUT SECTION
==============================================*/

.about-section{
    padding:100px 0;
    background:#fff;
}

.about-wrapper{
    display:flex;
    align-items:stretch;
}

.about-wrapper>[class*="col-"]{
    display:flex;
}

.image-box,
.content-box{
    width:100%;
    border-radius:10px;
}

.image-box{
    overflow:hidden;
}

.image-box img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.content-box{
    padding:40px;
    background:#f8f8f8;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.sub-title{
    color:#C8A45A;
    font-size:16px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:15px;
}

.content-box h2{
    font-size:42px;
    line-height:55px;
    font-weight:700;
    color:#615f5c;
    margin-bottom:25px;
}

.content-box h2 span{
    color:#0A4D35;
}

.content-box p{
    font-size:16px;
    line-height:30px;
    color:#666;
    margin-bottom:18px;
}

.about-list{
    margin:10px 0 30px;
    padding:0;
}

.about-list li{
    list-style:none;
    margin-bottom:12px;
    font-size:16px;
    color:#444;
}

.about-list li i{
    color:#C8A45A;
    margin-right:10px;
}

.about-btn{
    margin-top:auto;
}

/*=========================
    Responsive
=========================*/

@media(max-width:991px){

.about-wrapper{
    display:block;
}

.image-box{
    margin-bottom:30px;
}

.image-box img{
    height:450px;
}

.content-box{
    padding:35px;
}

.content-box h2{
    font-size:34px;
    line-height:45px;
}

}

@media(max-width:767px){

.about-section{
    padding:70px 0;
}

.image-box img{
    height:300px;
}

.content-box{
    padding:25px;
}

.content-box h2{
    font-size:28px;
    line-height:38px;
}

.content-box p,
.about-list li{
    font-size:15px;
    line-height:28px;
}

}
/*==============================================
        FACILITIES SECTION
==============================================*/

.facilities-section{
    padding:100px 0;
    background:#f8f8f8;
}

.facilities-section .sec-title{
    margin-bottom:60px;
}

.facilities-section .sub-title{
    color:#C8A45A;
    font-size:16px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    margin-bottom:15px;
}

.facilities-section h2{
    font-size:42px;
    font-weight:700;
    margin-bottom:20px;
}

.facilities-section h2 span{
    color:#0A4D35;
}

.facilities-section .sec-title p{
    max-width:700px;
    margin:auto;
    color:#666;
    line-height:30px;
}

.facility-box{
    background:#fff;
    padding:40px 30px;
    text-align:center;
    border-radius:10px;
    margin-bottom:30px;
    transition:.4s;
    height:100%;
    box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.facility-box:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 45px rgba(0,0,0,.12);
}

.facility-box .icon{
    width:90px;
    height:90px;
    line-height:90px;
    margin:0 auto 25px;
    border-radius:50%;
    background:#0A4D35;
    color:#fff;
    font-size:38px;
    transition:.4s;
}

.facility-box:hover .icon{
    background:#C8A45A;
}

.facility-box h4{
    font-size:22px;
    margin-bottom:15px;
    font-weight:600;
}

.facility-box p{
    color:#666;
    line-height:28px;
    margin:0;
}

/*=========================
Responsive
=========================*/

@media(max-width:991px){

.facilities-section{
    padding:80px 0;
}

.facilities-section h2{
    font-size:34px;
}

}

@media(max-width:767px){

.facilities-section{
    padding:60px 0;
}

.facilities-section h2{
    font-size:28px;
}

.facility-box{
    padding:30px 20px;
}

.facility-box .icon{
    width:75px;
    height:75px;
    line-height:75px;
    font-size:30px;
}

}
/*==============================================
        WEDDING SECTION
==============================================*/

.wedding-section{
    padding:100px 0;
    background:#fff;
}

.wedding-section .row{
    display:flex;
    align-items:center;
}

.wedding-image{
    overflow:hidden;
    border-radius:12px;
    height:100%;
}

.wedding-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:12px;
    transition:.5s;
}

.wedding-image img:hover{
    transform:scale(1.05);
}

.wedding-content{
    padding-left:45px;
}

.wedding-content .sub-title{
    color:#C8A45A;
    font-size:16px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:15px;
}

.wedding-content h2{
    font-size:42px;
    font-weight:700;
    line-height:54px;
    margin-bottom:25px;
    color:#615f5c;
}

.wedding-content h2 span{
    color:#0A4D35;
}

.wedding-content p{
    color:#666;
    line-height:30px;
    margin-bottom:30px;
}

.event-features{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:15px;
    margin-bottom:35px;
}

.feature{
    font-size:16px;
    color:#444;
}

.feature i{
    color:#C8A45A;
    margin-right:10px;
}

@media(max-width:991px){

.wedding-section{
    padding:80px 0;
}

.wedding-section .row{
    display:block;
}

.wedding-content{
    padding-left:0;
    margin-top:40px;
}

.wedding-content h2{
    font-size:34px;
    line-height:44px;
}

}

@media(max-width:767px){

.wedding-section{
    padding:60px 0;
}

.wedding-content h2{
    font-size:28px;
    line-height:38px;
}

.event-features{
    grid-template-columns:1fr;
}

}
/*==============================================
            TESTIMONIAL SECTION
==============================================*/

.testimonial-section{
    padding:100px 0;
    background:#f8f8f8;
}

.testimonial-section .sec-title{
    margin-bottom:60px;
}

.testimonial-section .sub-title{
    color:#C8A45A;
    font-size:16px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:15px;
}

.testimonial-section h2{
    font-size:42px;
    font-weight:700;
    color:#615f5c;
    margin-bottom:20px;
}

.testimonial-section h2 span{
    color:#0A4D35;
}

.testimonial-section .sec-title p{
    max-width:700px;
    margin:0 auto;
    color:#666;
    line-height:30px;
}

.testimonial-box{
    background:#fff;
    padding:40px 35px;
    border-radius:12px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.4s;
    height:100%;
    margin-bottom:30px;
}

.testimonial-box:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 45px rgba(0,0,0,.12);
}

.quote-icon{
    width:70px;
    height:70px;
    line-height:70px;
    margin:0 auto 20px;
    border-radius:50%;
    background:#0A4D35;
    color:#fff;
    font-size:28px;
}

.stars{
    color:#C8A45A;
    margin-bottom:20px;
    font-size:18px;
}

.testimonial-box p{
    color:#666;
    line-height:30px;
    font-style:italic;
    margin-bottom:30px;
}

.client-info h4{
    margin:0;
    font-size:20px;
    font-weight:600;
    color:#615f5c;
}

.client-info span{
    display:block;
    margin-top:8px;
    color:#888;
    font-size:15px;
}

/*==============================================
            Responsive
==============================================*/

@media(max-width:991px){

.testimonial-section{
    padding:80px 0;
}

.testimonial-section h2{
    font-size:34px;
}

}

@media(max-width:767px){

.testimonial-section{
    padding:60px 0;
}

.testimonial-section h2{
    font-size:28px;
}

.testimonial-box{
    padding:30px 25px;
}

.quote-icon{
    width:60px;
    height:60px;
    line-height:60px;
    font-size:24px;
}

}
/*==============================================
        INNER BANNER
==============================================*/

.inner-banner{
    padding:140px 0;
    background-size:cover !important;
    background-position:center;
    background-repeat:no-repeat;
}

.inner-banner .box h1{
    color:#fff;
    font-size:48px;
    font-weight:700;
    margin-bottom:15px;
    text-transform:uppercase;
}

.inner-banner .box p{
    max-width:650px;
    margin:0 auto;
    color:#f5f5f5;
    font-size:18px;
    line-height:30px;
}

.breadcumb-wrapper{
    padding:18px 0;
    background:#f8f8f8;
}

.breadcumb-wrapper .get-qoute{
    background:#615f5c;
    color:#fff;
    padding:10px 25px;
    border-radius:5px;
    transition:.3s;
}

.breadcumb-wrapper .get-qoute:hover{
    background:#C8A45A;
    color:#fff;
}

@media(max-width:767px){

.inner-banner{
    padding:90px 0;
}

.inner-banner .box h1{
    font-size:34px;
}

.inner-banner .box p{
    font-size:15px;
    line-height:26px;
}

}
/*==============================================
            CONTACT PAGE
==============================================*/

.contact-section{
    padding:100px 0;
    background:#fff;
}

.contact-form-box{
    background:#fff;
    padding:45px;
    border-radius:10px;
    box-shadow:0 10px 35px rgba(0,0,0,.08);
}

.contact-info-box{
    background:#615f5c;
    color:#fff;
    padding:45px 35px;
    border-radius:10px;
    height:100%;
}

.contact-info-box h2,
.contact-info-box .sub-title,
.contact-info-box p{
    color:#fff;
}

.contact-info-box h2 span{
    color:#C8A45A;
}

.contact-text{
    margin-bottom:35px;
    color:#666;
    line-height:28px;
}

.contact-section .sub-title{
    color:#C8A45A;
    font-size:15px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:12px;
}

.contact-section h2{
    font-size:38px;
    font-weight:700;
    margin-bottom:20px;
}

.contact-section h2 span{
    color:#0A4D35;
}

.contact-section .form-control{
    height:55px;
    border:1px solid #ddd;
    border-radius:5px;
    box-shadow:none;
    margin-bottom:20px;
}

.contact-section textarea.form-control{
    height:170px;
    resize:none;
    padding-top:15px;
}

.contact-section .form-control:focus{
    border-color:#C8A45A;
}

.info-item{
    display:flex;
    align-items:flex-start;
    margin-top:30px;
}

.info-item i{
    width:55px;
    height:55px;
    line-height:55px;
    background:#C8A45A;
    color:#fff;
    text-align:center;
    border-radius:50%;
    font-size:20px;
    margin-right:18px;
    flex-shrink:0;
}

.info-item h5{
    color:#fff;
    margin:0 0 6px;
    font-size:18px;
    font-weight:600;
}

.info-item span{
    color:#e9e9e9;
    line-height:26px;
}

@media(max-width:991px){

.contact-form-box{
    margin-bottom:40px;
}

.contact-section{
    padding:80px 0;
}

}

@media(max-width:767px){

.contact-section{
    padding:60px 0;
}

.contact-form-box,
.contact-info-box{
    padding:30px 25px;
}

.contact-section h2{
    font-size:30px;
}

}
/* Equal Height About Section */

.about-row{
    display:flex;
    align-items:stretch;
}

.about-row .image-column,
.about-row .about-content{
    display:flex;
}

.about-row .image{
    width:100%;
    height:100%;
    margin:0;
}

.about-row .image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    border-radius:8px;
}

.about-row .about-content{
    flex-direction:column;
    justify-content:center;
}

@media (max-width:991px){

.about-row{
    display:block;
}

.about-row .image-column,
.about-row .about-content{
    display:block;
}

.about-row .image img{
    height:auto;
}

}
/*=================================
    Why Choose Us
==================================*/

.why-choose-section{
    background:#f8f8f8;
}

.why-choose-section .sec-title{
    margin-bottom:60px;
}

.why-choose-section .sub-title{
    display:block;
    color:#C8A45A;
    font-size:15px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    margin-bottom:10px;
}

.why-choose-section h2{
    font-size:42px;
    margin-bottom:15px;
}

.why-choose-section h2 span{
    color:#0A4D35;
}

.why-choose-section .sec-title p{
    max-width:700px;
    margin:0 auto;
    color:#666;
    line-height:28px;
}

.choose-box{
    background:#fff;
    padding:35px 30px;
    text-align:center;
    margin-bottom:30px;
    border-radius:8px;
    transition:.4s;
    box-shadow:0 10px 25px rgba(0,0,0,.06);
    height:100%;
}

.choose-box:hover{
    transform:translateY(-8px);
}

.choose-box .icon{
    width:75px;
    height:75px;
    line-height:75px;
    background:#0A4D35;
    color:#fff;
    font-size:28px;
    border-radius:50%;
    margin:0 auto 25px;
}

.choose-box:hover .icon{
    background:#C8A45A;
}

.choose-box h3{
    font-size:22px;
    margin-bottom:15px;
}

.choose-box p{
    color:#666;
    line-height:28px;
}
/*=================================
        Facilities Section
==================================*/

.facilities-section{
    background:#f8f8f8;
}

.facilities-section .sec-title{
    margin-bottom:60px;
}

.facilities-section .sub-title{
    display:block;
    color:#C8A45A;
    font-size:15px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:10px;
}

.facilities-section h2{
    font-size:42px;
    margin-bottom:15px;
}

.facilities-section h2 span{
    color:#0A4D35;
}

.facility-box{
    background:#fff;
    text-align:center;
    padding:35px 25px;
    margin-bottom:30px;
    border-radius:8px;
    box-shadow:0 8px 25px rgba(0,0,0,.06);
    transition:.3s;
    height:100%;
}

.facility-box:hover{
    transform:translateY(-8px);
}

.facility-box i{
    width:70px;
    height:70px;
    line-height:70px;
    border-radius:50%;
    background:#0A4D35;
    color:#fff;
    font-size:28px;
    margin-bottom:20px;
    transition:.3s;
}

.facility-box:hover i{
    background:#C8A45A;
}

.facility-box h4{
    font-size:22px;
    margin-bottom:15px;
}

.facility-box p{
    color:#666;
    line-height:28px;
}
.facility-box{
    height:320px;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
}
/*=================================
        Vision & Mission
==================================*/

.vision-mission-section{
    background:#fff;
}

.vision-mission-section .sec-title{
    margin-bottom:60px;
}

.vision-mission-section .sub-title{
    display:block;
    color:#C8A45A;
    font-size:15px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:10px;
}

.vision-mission-section h2{
    font-size:42px;
    margin-bottom:15px;
}

.vision-mission-section h2 span{
    color:#0A4D35;
}

.vision-mission-section .sec-title p{
    max-width:760px;
    margin:0 auto;
    color:#666;
    line-height:30px;
}

.vm-box{
    background:#fff;
    padding:40px;
    border-radius:10px;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
    transition:.35s;
    height:100%;
    border-top:4px solid #0A4D35;
}

.vm-box:hover{
    transform:translateY(-8px);
}

.vm-icon{
    width:80px;
    height:80px;
    line-height:80px;
    text-align:center;
    background:#0A4D35;
    color:#fff;
    border-radius:50%;
    font-size:30px;
    margin-bottom:25px;
    transition:.3s;
}

.vm-box:hover .vm-icon{
    background:#C8A45A;
}

.vm-box h3{
    font-size:28px;
    margin-bottom:18px;
}

.vm-box p{
    color:#666;
    line-height:30px;
    margin-bottom:25px;
}

.vm-box ul{
    margin:0;
    padding:0;
    list-style:none;
}

.vm-box ul li{
    margin-bottom:12px;
    color:#555;
    font-size:16px;
}

.vm-box ul li i{
    color:#0A4D35;
    margin-right:10px;
}

@media(max-width:991px){

.vm-box{
    margin-bottom:30px;
}

}
/*=================================
        Testimonials
==================================*/

.testimonial-section{
    background:#f8f8f8;
}

.testimonial-section .sec-title{
    margin-bottom:60px;
}

.testimonial-section .sub-title{
    display:block;
    color:#C8A45A;
    font-size:15px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:10px;
}

.testimonial-section h2{
    font-size:42px;
    margin-bottom:15px;
}

.testimonial-section h2 span{
    color:#0A4D35;
}

.testimonial-box{
    background:#fff;
    padding:40px 35px;
    border-radius:10px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
    height:100%;
}

.testimonial-box:hover{
    transform:translateY(-8px);
}

.quote-icon{
    width:70px;
    height:70px;
    line-height:70px;
    margin:0 auto 25px;
    border-radius:50%;
    background:#0A4D35;
    color:#fff;
    font-size:28px;
}

.rating{
    margin-bottom:20px;
}

.rating i{
    color:#C8A45A;
    margin:0 2px;
}

.testimonial-box p{
    color:#666;
    line-height:30px;
    margin-bottom:25px;
    font-style:italic;
}

.guest-info h4{
    font-size:22px;
    margin-bottom:5px;
}

.guest-info span{
    color:#0A4D35;
    font-weight:600;
}
.inner-banner .box{
    max-width:850px;
    margin:auto;
}

.inner-banner .banner-subtitle{
    display:inline-block;
    color:#C8A45A;
    font-size:15px;
    font-weight:600;
    letter-spacing:3px;
    text-transform:uppercase;
    margin-bottom:15px;
}

.inner-banner h1{
    color:#fff;
    font-size:56px;
    font-weight:700;
    margin-bottom:20px;
}

.inner-banner p{
    color:#fff;
    font-size:18px;
    line-height:30px;
    max-width:760px;
    margin:0 auto;
}

.breadcumb-wrapper .get-qoute{
    background:#0A4D35;
    color:#fff;
    padding:12px 28px;
    border-radius:5px;
    transition:.3s;
}

.breadcumb-wrapper .get-qoute:hover{
    background:#C8A45A;
    color:#fff;
}

@media(max-width:767px){

.inner-banner h1{
    font-size:36px;
}

.inner-banner p{
    font-size:16px;
    line-height:28px;
}

}
/*=================================
      Premium Room
==================================*/

.room-gallery .big-image img{
    width:100%;
    height:420px;
    object-fit:cover;
    border-radius:8px;
}

.small-images{
    display:flex;
    gap:20px;
    margin-top:20px;
}

.small-images .image{
    flex:1;
}

.small-images img{
    width:100%;
    height:180px;
    object-fit:cover;
    border-radius:8px;
}

.room-content{
    padding-left:25px;
}

.room-tag{
    display:inline-block;
    color:#C8A45A;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:12px;
}

.room-content h2{
    font-size:42px;
    margin-bottom:20px;
    color:#0A4D35;
}

.rating-price{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:25px;
}

.rating i{
    color:#C8A45A;
}

.price{
    font-size:30px;
    color:#0A4D35;
    font-weight:700;
}

.price span{
    font-size:16px;
    color:#777;
}

.room-content p{
    line-height:30px;
    color:#666;
    margin-bottom:30px;
}

.amenities{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
    margin-bottom:35px;
}

.amenities div{
    font-size:17px;
    color:#444;
}

.amenities i{
    color:#C8A45A;
    margin-right:10px;
    width:20px;
}

@media(max-width:991px){

.room-content{
    padding-left:0;
    margin-top:40px;
}

.room-gallery .big-image img{
    height:320px;
}

.small-images{
    gap:15px;
}

.small-images img{
    height:140px;
}

.room-content h2{
    font-size:34px;
}

.rating-price{
    flex-direction:column;
    align-items:flex-start;
    gap:15px;
}

.amenities{
    grid-template-columns:1fr;
}

}
/*==============================
        Room Amenities
===============================*/

.room-amenities{
    background:#f8f8f8;
}

.amenity-box{
    background:#fff;
    text-align:center;
    padding:35px 20px;
    margin-bottom:30px;
    border-radius:8px;
    transition:.3s;
    box-shadow:0 5px 20px rgba(0,0,0,.08);
}

.amenity-box:hover{
    transform:translateY(-8px);
}

.amenity-box i{
    font-size:42px;
    color:#C8A45A;
    margin-bottom:20px;
}

.amenity-box h4{
    color:#0A4D35;
    font-size:20px;
}
/*==============================
        Guest Reviews
===============================*/

.guest-review{
    background:#fff;
}

.review-box{
    background:#f8f8f8;
    padding:35px;
    text-align:center;
    border-radius:8px;
    transition:.3s;
    height:100%;
}

.review-box:hover{
    transform:translateY(-8px);
}

.review-box .rating{
    color:#C8A45A;
    font-size:24px;
    margin-bottom:20px;
}

.review-box p{
    color:#666;
    line-height:28px;
    font-style:italic;
    margin-bottom:25px;
}

.review-box h4{
    color:#0A4D35;
    margin-bottom:5px;
}

.review-box span{
    color:#999;
}
/*=================================
        Booking CTA
==================================*/

.booking-cta-section{
    position:relative;
    padding:80px 0;
    background-size:cover;
    background-position:center;
}

.booking-cta-section::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background:rgba(10,77,53,.82);
}

.booking-cta-section .container{
    position:relative;
    z-index:2;
}

.cta-content .cta-subtitle{
    display:inline-block;
    color:#C8A45A;
    font-size:15px;
    font-weight:600;
    letter-spacing:2px;
    text-transform:uppercase;
    margin-bottom:12px;
}

.cta-content h2{
    color:#fff;
    font-size:42px;
    margin-bottom:15px;
}

.cta-content p{
    color:#f5f5f5;
    line-height:30px;
    margin-bottom:0;
}

.booking-cta-section .btn-style-seven{
    display:inline-block;
    margin-top:35px;
    background:#C8A45A;
    color:#fff;
    padding:15px 35px;
    border-radius:5px;
    font-weight:600;
    transition:.3s;
}

.booking-cta-section .btn-style-seven:hover{
    background:#fff;
    color:#0A4D35;
}

.booking-cta-section .btn-style-seven i{
    margin-right:8px;
}

@media(max-width:991px){

.booking-cta-section{
    text-align:center;
}

.booking-cta-section .text-right{
    text-align:center !important;
}

.booking-cta-section .btn-style-seven{
    margin-top:30px;
}

.cta-content h2{
    font-size:34px;
}

}
.review-box{
    background:#f8f8f8;
    padding:35px;
    text-align:center;
    border-radius:8px;
    transition:.3s;

    /* New */
    min-height:360px;      /* Ya 380px agar aur height chahiye */
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}
/* Guest Review Mobile Spacing */

.review-box{
    margin-bottom:30px;
}

@media (max-width:767px){

    .guest-review .col-md-4,
    .guest-review .col-sm-6{
        margin-bottom:25px;
    }

    .review-box{
        margin-bottom:0;
    }

}
/*=================================
    Signature Dishes
==================================*/

.signature-dishes{
    background:#fff;
}

.dish-box{
    background:#fff;
    border-radius:8px;
    overflow:hidden;
    margin-bottom:30px;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
    transition:.3s;
    height:100%;
}

.dish-box:hover{
    transform:translateY(-8px);
}

.dish-img{
    overflow:hidden;
}

.dish-img img{
    width:100%;
    height:250px;
    object-fit:cover;
    transition:.4s;
}

.dish-box:hover .dish-img img{
    transform:scale(1.08);
}

.dish-content{
    padding:25px;
    text-align:center;
}

.dish-content h4{
    color:#0A4D35;
    font-size:24px;
    margin-bottom:15px;
}

.dish-content p{
    color:#666;
    line-height:28px;
    margin:0;
}
/*=================================
    Signature Dishes
==================================*/

.signature-dishes{
    padding:100px 0;
    background:#fff;
}

.signature-dishes .sec-title{
    margin-bottom:60px;
}

.dish-box{
    background:#fff;
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
    margin-bottom:30px;
    height:100%;
}

.dish-box:hover{
    transform:translateY(-8px);
}

.dish-img{
    overflow:hidden;
}

.dish-img img{
    width:100%;
    height:260px;
    object-fit:cover;
    transition:.4s;
}

.dish-box:hover .dish-img img{
    transform:scale(1.08);
}

.dish-content{
    padding:25px;
    text-align:center;
}

.dish-content h4{
    font-size:24px;
    color:#0A4D35;
    margin-bottom:12px;
    font-weight:600;
}

.dish-content p{
    color:#666;
    line-height:28px;
    margin:0;
    font-size:16px;
}
/*=================================
    Signature Dishes Equal Height
==================================*/

.signature-dishes .row{
    display:flex;
    flex-wrap:wrap;
}

.signature-dishes .row > [class*="col-"]{
    display:flex;
    margin-bottom:30px;
}

.dish-box{
    width:100%;
    display:flex;
    flex-direction:column;
    background:#fff;
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.3s;
}

.dish-box:hover{
    transform:translateY(-8px);
}

.dish-img img{
    width:100%;
    height:240px;
    object-fit:cover;
}

.dish-content{
    display:flex;
    flex-direction:column;
    flex:1;
    padding:25px;
    text-align:center;
}

.dish-content h4{
    min-height:32px;
    margin-bottom:15px;
    color:#0A4D35;
    font-size:24px;
}

.dish-content p{
    flex:1;
    margin:0;
    color:#666;
    line-height:28px;
}
/* Equal Height Cards */
.room-amenities .row{
    display:flex;
    flex-wrap:wrap;
}

.room-amenities .row > [class*="col-"]{
    display:flex;
    margin-bottom:30px;
}

.amenity-box{
    width:100%;
    min-height:220px;   /* Height adjust kar sakte ho */
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:30px 20px;
    background:#fff;
    border-radius:12px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.amenity-box i{
    font-size:48px;
    margin-bottom:20px;
    color:#C8A45A;
}

.amenity-box h4{
    margin:0;
    font-size:28px;
    line-height:1.3;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:72px;   /* 2 line ke liye same height */
}
/*=============================
        Gallery Section
=============================*/

.gallery-section{
    position:relative;
}

.gallery-card{
    position:relative;
    overflow:hidden;
    border-radius:12px;
    margin-bottom:30px;
    cursor:pointer;
    box-shadow:0 10px 30px rgba(0,0,0,.10);
}

.gallery-card img{
    width:100%;
    height:280px;
    object-fit:cover;
    transition:.6s;
}

.gallery-card:hover img{
    transform:scale(1.12);
}

.gallery-overlay{
    position:absolute;
    inset:0;
    display:flex;
    align-items:flex-end;
    padding:25px;
    background:linear-gradient(to top,
    rgba(0,0,0,.85),
    rgba(0,0,0,.15),
    transparent);
    transition:.4s;
}

.gallery-overlay h4{
    color:#fff;
    font-size:26px;
    font-weight:700;
    margin:0;
    transform:translateY(20px);
    transition:.4s;
}

.gallery-card:hover .gallery-overlay h4{
    transform:translateY(0);
}

.gallery-card:hover{
    box-shadow:0 20px 45px rgba(0,0,0,.18);
}
@media (max-width:767px){

    .room-amenities .col-xs-12,
    .room-amenities .col-sm-6,
    .room-amenities .col-md-3{
        width:100%;
        padding-left:10px;
        padding-right:10px;
    }

    .amenity-box{
        min-height:160px;
        padding:25px 15px;
    }

    .amenity-box i{
        font-size:38px;
        margin-bottom:15px;
    }

    .amenity-box h4{
        font-size:20px;
        line-height:28px;
        min-height:auto;
    }

}

/* Ramsan Plaza */
/* =========================================
   RAMSAN PLAZA HERO SLIDER
========================================= */

.ramsan-hero-slider {
    position: relative;
    width: 100%;
    height: 720px;
    overflow: hidden;
    background: #111;
}

.ramsan-slider-track {
    position: relative;
    width: 100%;
    height: 100%;
}

/* =========================================
   SLIDE IMAGE
========================================= */

.ramsan-slide-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.04);
    animation: ramsanImageZoom 6s ease-in-out infinite;
}


/* =========================================
   DARK OVERLAY
========================================= */

.ramsan-slide-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;

    background:
        linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.72) 0%,
            rgba(0, 0, 0, 0.48) 42%,
            rgba(0, 0, 0, 0.15) 75%,
            rgba(0, 0, 0, 0.28) 100%
        );
}


/* =========================================
   SLIDE CONTENT
========================================= */

.ramsan-slide-content {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 1200px;

    height: 100%;
    margin: 0 auto;

    padding: 0 30px;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;

    color: #fff;
}


/* =========================================
   SUBTITLE
========================================= */

.ramsan-slide-subtitle {
    position: relative;

    display: inline-block;

    margin-bottom: 18px;

    padding-left: 55px;

    font-size: 13px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;

    color: #d2ae6d;
}

.ramsan-slide-subtitle::before {
    content: "";

    position: absolute;
    left: 0;
    top: 50%;

    width: 40px;
    height: 1px;

    background: #d2ae6d;
}


/* =========================================
   MAIN HEADING
========================================= */

.ramsan-slide-content h1 {
    max-width: 800px;

    margin: 0 0 20px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(48px, 5vw, 76px);
    font-weight: 400;
    line-height: 1.05;

    text-transform: uppercase;
    letter-spacing: 1px;

    color: #fff;
}

.ramsan-slide-content h1 span {
    color: #d2ae6d;
}


/* =========================================
   DESCRIPTION
========================================= */

.ramsan-slide-content p {
    max-width: 570px;

    margin: 0 0 30px;

    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;

    color: rgba(255, 255, 255, 0.9);
}


/* =========================================
   BUTTONS
========================================= */

.ramsan-slide-buttons {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.ramsan-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 155px;
    min-height: 50px;

    padding: 13px 25px;

    border: 1px solid #d2ae6d;

    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.2px;
    text-transform: uppercase;

    text-decoration: none;

    transition:
        all 0.3s ease;
}


/* Gold Button */

.ramsan-btn-gold {
    background: #d2ae6d;
    color: #17130e;
}

.ramsan-btn-gold:hover {
    background: #fff;
    border-color: #fff;
    color: #17130e;
}


/* Outline Button */

.ramsan-btn-outline {
    background: transparent;
    color: #fff;
}

.ramsan-btn-outline:hover {
    background: #d2ae6d;
    color: #17130e;
}


/* =========================================
   LAWN INFORMATION
========================================= */

.ramsan-lawn-info {
    display: flex;
    align-items: center;

    margin-bottom: 30px;

    border-left: 1px solid rgba(210, 174, 109, 0.7);
}

.ramsan-lawn-info > div {
    min-width: 130px;

    padding: 0 25px;
}

.ramsan-lawn-info > div:first-child {
    padding-left: 20px;
}

.ramsan-lawn-info strong {
    display: block;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 28px;
    font-weight: 400;

    color: #d2ae6d;
}

.ramsan-lawn-info small {
    display: block;

    margin-top: 4px;

    font-size: 11px;
    letter-spacing: 1.5px;
    text-transform: uppercase;

    color: #fff;
}


/* =========================================
   ARROWS
========================================= */

.ramsan-slider-arrow {
    position: absolute;
    z-index: 5;

    top: 50%;
    transform: translateY(-50%);

    width: 48px;
    height: 48px;

    padding: 0;

    border: 1px solid rgba(255, 255, 255, 0.4);

    border-radius: 50%;

    background: rgba(0, 0, 0, 0.25);

    color: #fff;

    font-size: 20px;

    cursor: pointer;

    transition: all 0.3s ease;
}

.ramsan-slider-arrow:hover {
    background: #d2ae6d;
    border-color: #d2ae6d;
    color: #17130e;
}

.ramsan-prev {
    left: 25px;
}

.ramsan-next {
    right: 25px;
}


/* =========================================
   DOTS
========================================= */

.ramsan-slider-dots {
    position: absolute;
    z-index: 5;

    left: 50%;
    bottom: 28px;

    transform: translateX(-50%);

    display: flex;
    align-items: center;
    gap: 8px;
}

.ramsan-dot {
    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.45);

    transition: all 0.3s ease;
}

.ramsan-dot.active {
    width: 30px;
    border-radius: 10px;

    background: #d2ae6d;
}


/* =========================================
   IMAGE ZOOM
========================================= */

@keyframes ramsanImageZoom {

    0% {
        transform: scale(1.04);
    }

    100% {
        transform: scale(1.10);
    }
}


/* =========================================
   LARGE LAPTOP
========================================= */

@media (max-width: 1199px) {

    .ramsan-hero-slider {
        height: 650px;
    }

    .ramsan-slide-content {
        max-width: 1000px;
    }

    .ramsan-slide-content h1 {
        font-size: 62px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-hero-slider {
        height: 620px;
    }

    .ramsan-slide-content {
        padding: 0 60px;
    }

    .ramsan-slide-content h1 {
        font-size: 54px;
    }

    .ramsan-slide-content p {
        max-width: 500px;
        font-size: 15px;
    }

    .ramsan-slider-arrow {
        width: 42px;
        height: 42px;
    }

    .ramsan-prev {
        left: 15px;
    }

    .ramsan-next {
        right: 15px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-hero-slider {
        height: 650px;
    }

    .ramsan-slide-image {
        object-position: center;
    }

    .ramsan-slide-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(0, 0, 0, 0.72),
                rgba(0, 0, 0, 0.42)
            );
    }

    .ramsan-slide-content {
        justify-content: center;
        align-items: flex-start;

        padding: 80px 25px 60px;
    }

    .ramsan-slide-subtitle {
        margin-bottom: 15px;

        padding-left: 40px;

        font-size: 10px;
        letter-spacing: 2px;
    }

    .ramsan-slide-subtitle::before {
        width: 28px;
    }

    .ramsan-slide-content h1 {
        max-width: 100%;

        margin-bottom: 16px;

        font-size: 42px;
        line-height: 1.08;
    }

    .ramsan-slide-content p {
        max-width: 100%;

        margin-bottom: 24px;

        font-size: 14px;
        line-height: 1.7;
    }

    .ramsan-slide-buttons {
        gap: 10px;
    }

    .ramsan-btn {
        min-width: 135px;
        min-height: 46px;

        padding: 11px 17px;

        font-size: 10px;
    }

    .ramsan-slider-arrow {
        display: none;
    }

    .ramsan-slider-dots {
        bottom: 22px;
    }

    .ramsan-lawn-info {
        margin-bottom: 24px;
    }

    .ramsan-lawn-info > div {
        min-width: 100px;
        padding: 0 15px;
    }

    .ramsan-lawn-info strong {
        font-size: 23px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .ramsan-hero-slider {
        height: 600px;
    }

    .ramsan-slide-content {
        padding: 70px 20px 55px;
    }

    .ramsan-slide-content h1 {
        font-size: 34px;
    }

    .ramsan-slide-content p {
        font-size: 13px;
        line-height: 1.6;
    }

    .ramsan-slide-buttons {
        width: 100%;
    }

    .ramsan-btn {
        flex: 1;
        min-width: 0;

        padding-left: 12px;
        padding-right: 12px;
    }

    .ramsan-lawn-info > div {
        min-width: auto;
        padding: 0 12px;
    }

    .ramsan-lawn-info strong {
        font-size: 20px;
    }

    .ramsan-lawn-info small {
        font-size: 9px;
    }

}


/* =========================================
   SLIDER DOTS
========================================= */

.ramsan-slider-dots {
    position: absolute;
    z-index: 10;

    left: 50%;
    bottom: 28px;

    transform: translateX(-50%);

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 8px;
}

.ramsan-dot {
    display: block;

    width: 8px;
    height: 8px;

    margin: 0;
    padding: 0;

    border: 0;
    border-radius: 50%;

    background: rgba(255, 255, 255, 0.5);

    cursor: pointer;

    transition:
        width 0.3s ease,
        background 0.3s ease,
        transform 0.3s ease;
}

.ramsan-dot:hover {
    background: #d2ae6d;
}

.ramsan-dot.active {
    width: 30px;

    border-radius: 10px;

    background: #d2ae6d;
}
/* =====================================================
   FINAL RAMSAN PLAZA SLIDER FIX
   IMPORTANT: Put this at the very end of CSS
===================================================== */

.ramsan-slider-track {
    position: relative;
    width: 100%;
    height: 100%;
}
/* IMAGE */

.ramsan-slide-image {
    position: absolute !important;

    top: 0 !important;
    left: 0 !important;

    width: 100% !important;
    height: 100% !important;

    object-fit: cover;

    display: block !important;
}


/* OVERLAY */

.ramsan-slide-overlay {
    position: absolute;

    inset: 0;

    z-index: 1;
}


/* CONTENT */

.ramsan-slide-content {
    position: relative;

    z-index: 3;
}


/* ARROWS */

.ramsan-slider-arrow {
    z-index: 50 !important;

    cursor: pointer !important;
}


/* DOTS */

.ramsan-slider-dots {
    z-index: 50 !important;
}

.ramsan-dot {
    cursor: pointer !important;
}
/* =========================================
   MOBILE DOT TOUCH FIX
========================================= */

.ramsan-slider-dots {
    position: absolute !important;

    left: 50% !important;
    bottom: 22px !important;

    transform: translateX(-50%) !important;

    z-index: 9999 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 10px !important;

    pointer-events: auto !important;
}

.ramsan-dot {
    position: relative !important;

    display: block !important;

    width: 12px !important;
    height: 12px !important;

    min-width: 12px !important;
    min-height: 12px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 50% !important;

    background: rgba(255, 255, 255, 0.65) !important;

    cursor: pointer !important;

    pointer-events: auto !important;

    touch-action: manipulation !important;

    -webkit-tap-highlight-color: transparent;

    transition:
        width 0.3s ease,
        background 0.3s ease,
        transform 0.3s ease;
}

.ramsan-dot.active {
    width: 32px !important;

    border-radius: 20px !important;

    background: #d2ae6d !important;
}


/* MOBILE */

@media (max-width: 767px) {

    .ramsan-slider-dots {
        bottom: 20px !important;
    }

    .ramsan-dot {
        width: 14px !important;
        height: 14px !important;

        min-width: 14px !important;
        min-height: 14px !important;
    }

    .ramsan-dot.active {
        width: 32px !important;
    }
}
.ramsan-slider-dots {
    position: absolute !important;

    left: 50% !important;
    bottom: 25px !important;

    transform: translateX(-50%) !important;

    z-index: 99999 !important;

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    gap: 10px !important;

    pointer-events: auto !important;
}

.ramsan-dot {
    position: relative !important;

    z-index: 99999 !important;

    display: block !important;

    width: 12px !important;
    height: 12px !important;

    min-width: 12px !important;
    min-height: 12px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;

    border-radius: 50% !important;

    background: rgba(255, 255, 255, 0.6) !important;

    cursor: pointer !important;

    pointer-events: auto !important;

    touch-action: manipulation !important;

    -webkit-tap-highlight-color: transparent;

    -webkit-user-select: none;
    user-select: none;
}

.ramsan-dot.active {
    width: 30px !important;

    background: #d2ae6d !important;

    border-radius: 20px !important;
}


@media (max-width: 767px) {

    .ramsan-slider-dots {
        bottom: 20px !important;
    }

    .ramsan-dot {
        width: 14px !important;
        height: 14px !important;

        min-width: 14px !important;
        min-height: 14px !important;
    }

    .ramsan-dot.active {
        width: 32px !important;
    }

}
/* =========================================================
   HOTEL RAMSANPLAZA - FINAL HERO SLIDER
========================================================= */

.ramsan-hero-slider {
    position: relative;
    width: 100%;
    height: 720px;
    overflow: hidden;
    background: #111;
}


/* =========================================================
   SLIDER TRACK
========================================================= */

.ramsan-slider-track {
    display: flex;

    width: 100%;
    height: 100%;

    transform: translateX(0);

    transition: transform 0.8s ease-in-out;
}


/* =========================================================
   EACH SLIDE
========================================================= */

.ramsan-slide {
    position: relative;

    flex: 0 0 100%;

    width: 100%;
    height: 100%;

    min-width: 100%;

    overflow: hidden;

    opacity: 1 !important;
    visibility: visible !important;

    display: block !important;

    animation: none !important;
}


/* =========================================================
   SLIDE IMAGE
========================================================= */

.ramsan-slide-image {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transform: scale(1.04);
}


/* =========================================================
   BLACK OVERLAY
========================================================= */

.ramsan-slide-overlay {
    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.75) 0%,
            rgba(0, 0, 0, 0.52) 40%,
            rgba(0, 0, 0, 0.18) 75%,
            rgba(0, 0, 0, 0.30) 100%
        );
}


/* =========================================================
   SLIDE CONTENT
========================================================= */

.ramsan-slide-content {
    position: relative;

    z-index: 3;

    width: 100%;
    max-width: 1200px;

    height: 100%;

    margin: 0 auto;

    padding: 0 30px;

    display: flex;
    flex-direction: column;

    justify-content: center;
    align-items: flex-start;

    color: #fff;
}


/* =========================================================
   SUBTITLE
========================================================= */

.ramsan-slide-subtitle {
    position: relative;

    display: inline-block;

    margin-bottom: 18px;

    padding-left: 55px;

    color: #d2ae6d;

    font-size: 13px;
    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}

.ramsan-slide-subtitle::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 40px;
    height: 1px;

    background: #d2ae6d;
}


/* =========================================================
   HEADING
========================================================= */

.ramsan-slide-content h1 {
    max-width: 800px;

    margin: 0 0 20px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(48px, 5vw, 76px);

    font-weight: 400;

    line-height: 1.05;

    letter-spacing: 1px;

    text-transform: uppercase;

    color: #fff;
}

.ramsan-slide-content h1 span {
    color: #d2ae6d;
}


/* =========================================================
   PARAGRAPH
========================================================= */

.ramsan-slide-content p {
    max-width: 570px;

    margin: 0 0 30px;

    font-size: 16px;

    line-height: 1.8;

    color: rgba(255, 255, 255, 0.9);
}


/* =========================================================
   BUTTONS
========================================================= */

.ramsan-slide-buttons {
    display: flex;

    align-items: center;

    gap: 14px;

    flex-wrap: wrap;
}

.ramsan-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-width: 155px;
    min-height: 50px;

    padding: 13px 25px;

    border: 1px solid #d2ae6d;

    font-size: 12px;
    font-weight: 600;

    letter-spacing: 1.2px;

    text-transform: uppercase;

    text-decoration: none;

    transition: all 0.3s ease;
}

.ramsan-btn-gold {
    background: #d2ae6d;
    color: #17130e;
}

.ramsan-btn-gold:hover {
    background: #fff;
    border-color: #fff;
    color: #17130e;
}

.ramsan-btn-outline {
    background: transparent;
    color: #fff;
}

.ramsan-btn-outline:hover {
    background: #d2ae6d;
    color: #17130e;
}


/* =========================================================
   LAWN INFO
========================================================= */

.ramsan-lawn-info {
    display: flex;

    align-items: center;

    margin-bottom: 30px;

    border-left: 1px solid rgba(210, 174, 109, 0.7);
}

.ramsan-lawn-info > div {
    min-width: 130px;

    padding: 0 25px;
}

.ramsan-lawn-info > div:first-child {
    padding-left: 20px;
}

.ramsan-lawn-info strong {
    display: block;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 28px;
    font-weight: 400;

    color: #d2ae6d;
}

.ramsan-lawn-info small {
    display: block;

    margin-top: 4px;

    font-size: 11px;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    color: #fff;
}


/* =========================================================
   ARROWS
========================================================= */

.ramsan-slider-arrow {
    position: absolute;

    z-index: 100;

    top: 50%;

    transform: translateY(-50%);

    width: 48px;
    height: 48px;

    padding: 0;

    border: 1px solid rgba(255, 255, 255, 0.45);

    border-radius: 50%;

    background: rgba(0, 0, 0, 0.30);

    color: #fff;

    font-size: 20px;

    cursor: pointer;

    transition: all 0.3s ease;
}

.ramsan-slider-arrow:hover {
    background: #d2ae6d;

    border-color: #d2ae6d;

    color: #111;
}

.ramsan-prev {
    left: 25px;
}

.ramsan-next {
    right: 25px;
}


/* =========================================================
   DOTS
========================================================= */

.ramsan-slider-dots {
    position: absolute;

    z-index: 100;

    left: 50%;
    bottom: 25px;

    transform: translateX(-50%);

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 9px;

    pointer-events: auto;
}

.ramsan-dot {
    display: block;

    width: 9px;
    height: 9px;

    padding: 0;
    margin: 0;

    border: 0;

    border-radius: 20px;

    background: rgba(255, 255, 255, 0.55);

    cursor: pointer;

    touch-action: manipulation;

    -webkit-tap-highlight-color: transparent;

    transition:
        width 0.3s ease,
        background 0.3s ease;
}

.ramsan-dot.active {
    width: 30px;

    background: #d2ae6d;
}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199px) {

    .ramsan-hero-slider {
        height: 650px;
    }

    .ramsan-slide-content {
        max-width: 1000px;
    }

    .ramsan-slide-content h1 {
        font-size: 62px;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ramsan-hero-slider {
        height: 620px;
    }

    .ramsan-slide-content {
        padding: 0 60px;
    }

    .ramsan-slide-content h1 {
        font-size: 54px;
    }

    .ramsan-slide-content p {
        max-width: 500px;
        font-size: 15px;
    }

    .ramsan-slider-arrow {
        width: 42px;
        height: 42px;
    }

    .ramsan-prev {
        left: 15px;
    }

    .ramsan-next {
        right: 15px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ramsan-hero-slider {
        height: 650px;
    }

    .ramsan-slide-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(0, 0, 0, 0.76),
                rgba(0, 0, 0, 0.42)
            );
    }

    .ramsan-slide-content {
        justify-content: center;

        padding: 80px 25px 60px;
    }

    .ramsan-slide-subtitle {
        margin-bottom: 15px;

        padding-left: 40px;

        font-size: 10px;

        letter-spacing: 2px;
    }

    .ramsan-slide-subtitle::before {
        width: 28px;
    }

    .ramsan-slide-content h1 {
        max-width: 100%;

        margin-bottom: 16px;

        font-size: 42px;

        line-height: 1.08;
    }

    .ramsan-slide-content p {
        max-width: 100%;

        margin-bottom: 24px;

        font-size: 14px;

        line-height: 1.7;
    }

    /* Hide arrows on mobile */

    .ramsan-slider-arrow {
        display: none;
    }

    /* Bigger touch target */

    .ramsan-slider-dots {
        bottom: 20px;

        z-index: 9999;

        gap: 10px;
    }

    .ramsan-dot {
        width: 14px;
        height: 14px;

        min-width: 14px;
        min-height: 14px;
    }

    .ramsan-dot.active {
        width: 32px;
    }

    .ramsan-lawn-info {
        margin-bottom: 24px;
    }

    .ramsan-lawn-info > div {
        min-width: 100px;

        padding: 0 15px;
    }

    .ramsan-lawn-info strong {
        font-size: 23px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .ramsan-hero-slider {
        height: 600px;
    }

    .ramsan-slide-content {
        padding: 70px 20px 55px;
    }

    .ramsan-slide-content h1 {
        font-size: 34px;
    }

    .ramsan-slide-content p {
        font-size: 13px;
        line-height: 1.6;
    }

    .ramsan-slide-buttons {
        width: 100%;
    }

    .ramsan-btn {
        flex: 1;

        min-width: 0;

        padding-left: 12px;
        padding-right: 12px;
    }

    .ramsan-lawn-info > div {
        min-width: auto;

        padding: 0 12px;
    }

    .ramsan-lawn-info strong {
        font-size: 20px;
    }

    .ramsan-lawn-info small {
        font-size: 9px;
    }
}
/* Home About */
/* =====================================================
   ABOUT HOTEL RAMSANPLAZA
===================================================== */

.ramsan-about-section {
    position: relative;

    padding: 110px 0;

    overflow: hidden;

    background: #eeeae2;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-about-section .container {
    width: 100%;

    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;
}


/* =====================================================
   MAIN WRAPPER
===================================================== */

.ramsan-about-wrapper {
    display: flex;

    align-items: center;

    gap: 85px;
}


/* =====================================================
   IMAGE AREA
===================================================== */

.ramsan-about-images {
    position: relative;

    width: 48%;

    min-height: 540px;
}


/* =====================================================
   MAIN IMAGE
===================================================== */

.ramsan-about-main-image {
    position: absolute;

    top: 0;
    left: 0;

    width: 78%;
    height: 470px;

    overflow: hidden;

    z-index: 2;
}

.ramsan-about-main-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.7s ease;
}

.ramsan-about-main-image:hover img {
    transform: scale(1.04);
}


/* =====================================================
   SMALL IMAGE
===================================================== */

.ramsan-about-small-image {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 48%;
    height: 275px;

    overflow: hidden;

    border: 8px solid #eeeae2;

    z-index: 4;
}

.ramsan-about-small-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.7s ease;
}

.ramsan-about-small-image:hover img {
    transform: scale(1.05);
}


/* =====================================================
   GOLD DECORATION
===================================================== */

.ramsan-about-decoration {
    position: absolute;

    top: 25px;
    right: 35px;

    width: 100px;
    height: 100px;

    border-top: 1px solid #c8a45a;
    border-right: 1px solid #c8a45a;

    z-index: 3;

    pointer-events: none;
}


/* =====================================================
   CONTENT
===================================================== */

.ramsan-about-content {
    width: 52%;
}


/* =====================================================
   SUBTITLE
===================================================== */

.ramsan-about-subtitle {
    position: relative;

    display: inline-block;

    margin-bottom: 16px;

    padding-left: 50px;

    color: #b28b43;

    font-size: 12px;

    font-weight: 600;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}

.ramsan-about-subtitle::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 35px;
    height: 1px;

    background: #c8a45a;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-about-content h2 {
    max-width: 600px;

    margin: 0 0 25px;

    color: #25221e;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 48px;

    font-weight: 400;

    line-height: 1.15;
}

.ramsan-about-content h2 span {
    display: block;

    color: #b28b43;
}


/* =====================================================
   PARAGRAPHS
===================================================== */

.ramsan-about-content p {
    margin: 0 0 18px;

    color: #66615a;

    font-size: 15px;

    line-height: 1.8;
}

.ramsan-about-intro {
    color: #3f3b35 !important;

    font-size: 16px !important;

    line-height: 1.85 !important;
}


/* =====================================================
   FEATURES
===================================================== */

.ramsan-about-features {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px 25px;

    margin-top: 30px;

    margin-bottom: 32px;
}


/* =====================================================
   FEATURE
===================================================== */

.ramsan-about-feature {
    display: flex;

    align-items: flex-start;

    gap: 14px;
}


/* =====================================================
   FEATURE ICON
===================================================== */

.ramsan-feature-icon {
    flex: 0 0 45px;

    width: 45px;
    height: 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(200, 164, 90, 0.5);

    color: #b28b43;

    font-size: 17px;

    transition: all 0.3s ease;
}

.ramsan-about-feature:hover .ramsan-feature-icon {
    background: #c8a45a;

    border-color: #c8a45a;

    color: #fff;
}


/* =====================================================
   FEATURE TEXT
===================================================== */

.ramsan-about-feature h4 {
    margin: 0 0 5px;

    color: #28251f;

    font-size: 14px;

    font-weight: 600;

    letter-spacing: 0.3px;
}

.ramsan-about-feature p {
    margin: 0;

    color: #77716a;

    font-size: 12px;

    line-height: 1.5;
}


/* =====================================================
   BUTTON
===================================================== */

.ramsan-about-btn {
    display: inline-flex;

    align-items: center;

    gap: 15px;

    padding: 13px 24px;

    border: 1px solid #c8a45a;

    background: #c8a45a;

    color: #fff;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 1.2px;

    text-transform: uppercase;

    text-decoration: none;

    transition: all 0.3s ease;
}

.ramsan-about-btn i {
    font-size: 13px;

    transition: transform 0.3s ease;
}

.ramsan-about-btn:hover {
    background: #24211d;

    border-color: #24211d;

    color: #fff;
}

.ramsan-about-btn:hover i {
    transform: translateX(5px);
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-about-section {
        padding: 90px 0;
    }

    .ramsan-about-wrapper {
        gap: 55px;
    }

    .ramsan-about-images {
        min-height: 500px;
    }

    .ramsan-about-main-image {
        height: 430px;
    }

    .ramsan-about-content h2 {
        font-size: 42px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-about-section {
        padding: 80px 0;
    }

    .ramsan-about-wrapper {
        gap: 45px;
    }

    .ramsan-about-images {
        width: 46%;

        min-height: 430px;
    }

    .ramsan-about-main-image {
        width: 82%;
        height: 380px;
    }

    .ramsan-about-small-image {
        width: 52%;
        height: 210px;
    }

    .ramsan-about-content {
        width: 54%;
    }

    .ramsan-about-content h2 {
        font-size: 36px;
    }

    .ramsan-about-content p {
        font-size: 14px;
    }

    .ramsan-about-features {
        gap: 18px 15px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-about-section {
        padding: 70px 0;
    }

    .ramsan-about-wrapper {
        display: block;
    }

    /* IMAGE */

    .ramsan-about-images {
        width: 100%;

        min-height: 470px;

        margin-bottom: 55px;
    }

    .ramsan-about-main-image {
        width: 82%;

        height: 390px;
    }

    .ramsan-about-small-image {
        width: 50%;

        height: 205px;

        border-width: 6px;
    }

    .ramsan-about-decoration {
        top: 15px;
        right: 20px;

        width: 75px;
        height: 75px;
    }

    /* CONTENT */

    .ramsan-about-content {
        width: 100%;
    }

    .ramsan-about-subtitle {
        margin-bottom: 14px;

        padding-left: 40px;

        font-size: 10px;

        letter-spacing: 2px;
    }

    .ramsan-about-subtitle::before {
        width: 28px;
    }

    .ramsan-about-content h2 {
        margin-bottom: 20px;

        font-size: 34px;

        line-height: 1.18;
    }

    .ramsan-about-content p {
        font-size: 14px;

        line-height: 1.75;
    }

    .ramsan-about-intro {
        font-size: 15px !important;
    }

    .ramsan-about-features {
        grid-template-columns: 1fr;

        gap: 18px;

        margin-top: 28px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-about-section {
        padding: 60px 0;
    }

    .ramsan-about-images {
        min-height: 390px;

        margin-bottom: 45px;
    }

    .ramsan-about-main-image {
        width: 86%;

        height: 320px;
    }

    .ramsan-about-small-image {
        width: 52%;

        height: 165px;
    }

    .ramsan-about-content h2 {
        font-size: 30px;
    }

    .ramsan-about-feature {
        gap: 12px;
    }

    .ramsan-feature-icon {
        flex-basis: 42px;

        width: 42px;
        height: 42px;
    }

}
/* =====================================================
   HOTEL RAMSANPLAZA
   ROOMS & SUITES
===================================================== */

.ramsan-rooms-section {
    position: relative;

    padding: 115px 0 120px;

    overflow: hidden;

    background: #eeeae2;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-rooms-section .container {
    position: relative;

    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;

    z-index: 2;
}


/* =====================================================
   LARGE BACKGROUND TEXT
===================================================== */

.ramsan-rooms-bg-text {
    position: absolute;

    top: 45px;
    right: -40px;

    color: rgba(40, 35, 28, 0.035);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 170px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 10px;

    pointer-events: none;

    user-select: none;
}


/* =====================================================
   HEADING AREA
===================================================== */

.ramsan-rooms-heading {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 50px;

    margin-bottom: 55px;
}


/* LEFT */

.ramsan-rooms-heading-left {
    width: 50%;
}


/* RIGHT */

.ramsan-rooms-heading-right {
    width: 43%;

    padding-bottom: 5px;
}


/* =====================================================
   SUBTITLE
===================================================== */

.ramsan-rooms-subtitle {
    position: relative;

    display: inline-block;

    margin-bottom: 15px;

    padding-left: 50px;

    color: #b28b43;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 2.8px;

    text-transform: uppercase;
}

.ramsan-rooms-subtitle::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 35px;
    height: 1px;

    background: #c8a45a;
}


/* =====================================================
   MAIN HEADING
===================================================== */

.ramsan-rooms-heading h2 {
    margin: 0;

    color: #25221e;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 54px;

    font-weight: 400;

    line-height: 1.1;
}

.ramsan-rooms-heading h2 span {
    color: #b28b43;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ramsan-rooms-heading-right p {
    margin: 0 0 18px;

    color: #706b63;

    font-size: 14px;

    line-height: 1.8;
}


/* =====================================================
   VIEW ALL BUTTON
===================================================== */

.ramsan-rooms-view-btn {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #29251f;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 1.2px;

    text-transform: uppercase;

    text-decoration: none;

    transition: color 0.3s ease;
}

.ramsan-rooms-view-btn i {
    color: #b28b43;

    transition: transform 0.3s ease;
}

.ramsan-rooms-view-btn:hover {
    color: #b28b43;
}

.ramsan-rooms-view-btn:hover i {
    transform: translateX(6px);
}


/* =====================================================
   ROOMS GRID
===================================================== */

.ramsan-rooms-grid {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 25px;

    align-items: start;
}


/* =====================================================
   ROOM CARD
===================================================== */

.ramsan-room-card {
    position: relative;

    background: #fff;

    box-shadow:
        0 15px 45px rgba(35, 30, 22, 0.07);

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}

.ramsan-room-card:hover {
    transform: translateY(-8px);

    box-shadow:
        0 22px 55px rgba(35, 30, 22, 0.13);
}

/* =====================================================
   IMAGE
===================================================== */

.ramsan-room-image {
    position: relative;

    width: 100%;

    height: 310px;

    overflow: hidden;
}

.ramsan-room-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.7s ease;
}

.ramsan-room-card:hover
.ramsan-room-image img {
    transform: scale(1.06);
}


/* =====================================================
   IMAGE OVERLAY
===================================================== */

.ramsan-room-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(0, 0, 0, 0.62),
            rgba(0, 0, 0, 0.04) 65%
        );

    pointer-events: none;
}


/* =====================================================
   ROOM SIZE
===================================================== */

.ramsan-room-size {
    position: absolute;

    left: 20px;
    bottom: 20px;

    display: flex;

    align-items: baseline;

    gap: 5px;

    color: #fff;
}

.ramsan-room-size strong {
    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 30px;

    font-weight: 400;

    line-height: 1;
}

.ramsan-room-size span {
    font-size: 10px;

    letter-spacing: 1px;

    text-transform: uppercase;

    opacity: 0.9;
}


/* =====================================================
   ROOM NUMBER
===================================================== */

.ramsan-room-number {
    position: absolute;

    top: 20px;
    right: 20px;

    color: rgba(255, 255, 255, 0.8);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 14px;

    letter-spacing: 2px;
}


/* =====================================================
   CONTENT
===================================================== */

.ramsan-room-content {
    min-height: 235px;

    padding: 30px 30px 32px;
}


/* =====================================================
   LABEL
===================================================== */

.ramsan-room-label {
    display: block;

    margin-bottom: 9px;

    color: #b28b43;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 2px;

    text-transform: uppercase;
}


/* =====================================================
   ROOM TITLE
===================================================== */

.ramsan-room-content h3 {
    margin: 0 0 12px;

    color: #29251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 26px;

    font-weight: 400;

    line-height: 1.2;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ramsan-room-content p {
    max-width: 320px;

    min-height: 50px;

    margin: 0 0 22px;

    color: #777169;

    font-size: 13px;

    line-height: 1.7;
}


/* =====================================================
   ROOM LINK
===================================================== */

.ramsan-room-link {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #29251f;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 1.3px;

    text-transform: uppercase;

    text-decoration: none;

    transition: color 0.3s ease;
}

.ramsan-room-link i {
    color: #b28b43;

    transition: transform 0.3s ease;
}

.ramsan-room-link:hover {
    color: #b28b43;
}

.ramsan-room-link:hover i {
    transform: translateX(6px);
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-rooms-section {
        padding: 95px 0 100px;
    }

    .ramsan-rooms-heading {
        margin-bottom: 45px;
    }

    .ramsan-rooms-heading h2 {
        font-size: 46px;
    }

    .ramsan-room-image {
        height: 285px;
    }

    .ramsan-room-content {
        padding: 27px 25px 30px;
    }

    .ramsan-room-content h3 {
        font-size: 23px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-rooms-section {
        padding: 80px 0 85px;
    }

    .ramsan-rooms-bg-text {
        font-size: 120px;
    }

    .ramsan-rooms-heading {
        align-items: flex-start;

        gap: 35px;
    }

    .ramsan-rooms-heading-left {
        width: 48%;
    }

    .ramsan-rooms-heading-right {
        width: 52%;
    }

    .ramsan-rooms-heading h2 {
        font-size: 40px;
    }

    .ramsan-rooms-grid {
        grid-template-columns:
            repeat(2, 1fr);

        gap: 25px;
    }

    .ramsan-room-featured {
        margin-top: 0;
    }

    .ramsan-room-image {
        height: 280px;
    }

    .ramsan-room-content {
        min-height: 225px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-rooms-section {
        padding: 70px 0 75px;
    }

    .ramsan-rooms-bg-text {
        top: 35px;
        right: -20px;

        font-size: 80px;

        letter-spacing: 4px;
    }

    /* Heading */

    .ramsan-rooms-heading {
        display: block;

        margin-bottom: 38px;
    }

    .ramsan-rooms-heading-left,
    .ramsan-rooms-heading-right {
        width: 100%;
    }

    .ramsan-rooms-heading h2 {
        font-size: 36px;
    }

    .ramsan-rooms-heading-right {
        margin-top: 20px;
    }

    .ramsan-rooms-heading-right p {
        font-size: 13px;
    }

    /* Grid */

    .ramsan-rooms-grid {
        grid-template-columns: 1fr;

        gap: 25px;
    }

    /* Card */

    .ramsan-room-featured {
        margin-top: 0;
    }

    .ramsan-room-image {
        height: 290px;
    }

    .ramsan-room-content {
        min-height: auto;

        padding: 27px 25px 30px;
    }

    .ramsan-room-content h3 {
        font-size: 25px;
    }

    .ramsan-room-content p {
        max-width: 100%;

        min-height: auto;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-rooms-section {
        padding: 60px 0 65px;
    }

    .ramsan-rooms-heading h2 {
        font-size: 31px;
    }

    .ramsan-rooms-subtitle {
        padding-left: 40px;

        font-size: 9px;

        letter-spacing: 2px;
    }

    .ramsan-rooms-subtitle::before {
        width: 28px;
    }

    .ramsan-room-image {
        height: 250px;
    }

    .ramsan-room-size strong {
        font-size: 27px;
    }

    .ramsan-room-content h3 {
        font-size: 23px;
    }

}
.ramsan-rooms-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    align-items: stretch;
}
.ramsan-room-card {
    position: relative;

    display: flex;
    flex-direction: column;

    height: 100%;

    background: #fff;

    box-shadow: 0 15px 45px rgba(35, 30, 22, 0.07);

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}
.ramsan-room-image {
    position: relative;

    width: 100%;
    height: 310px;

    flex-shrink: 0;

    overflow: hidden;
}
.ramsan-room-content {
    display: flex;
    flex-direction: column;

    flex: 1;

    min-height: 235px;

    padding: 30px;
}
.ramsan-room-content p {
    max-width: 320px;

    margin: 0 0 22px;

    color: #777169;

    font-size: 13px;

    line-height: 1.7;
}
.ramsan-room-link {
    margin-top: auto;
}
.ramsan-room-featured {
    margin-top: 0;
}
@media (max-width: 767px) {

    .ramsan-rooms-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .ramsan-room-featured {
        margin-top: 0;
    }

    .ramsan-room-card {
        height: auto;
    }

    .ramsan-room-content {
        min-height: auto;
    }

}
/* =====================================================
   HOTEL RAMSANPLAZA
   BANQUET & EVENTS
===================================================== */

.ramsan-banquet-section {
    position: relative;

    padding: 120px 0;

    overflow: hidden;

    background: #eeeae2;

    color: #fff;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-banquet-section .container {
    position: relative;

    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;

    z-index: 2;
}


/* =====================================================
   BACKGROUND TEXT
===================================================== */

.ramsan-banquet-bg-text {
    position: absolute;

    top: 25px;
    left: -35px;

    color: rgba(255, 255, 255, 0.025);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 145px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 5px;

    pointer-events: none;

    user-select: none;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-banquet-heading {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 60px;

    margin-bottom: 55px;
}


/* =====================================================
   SUBTITLE
===================================================== */

.ramsan-banquet-subtitle {
    position: relative;

    display: inline-block;

    margin-bottom: 16px;

    padding-left: 50px;

    color: #b28b43;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 2.8px;

    text-transform: uppercase;
}

.ramsan-banquet-subtitle::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 35px;
    height: 1px;

    background: #d2ae6d;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-banquet-heading h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 54px;

    font-weight: 400;

    line-height: 1.1;

    color: #28251f;
}

.ramsan-banquet-heading h2 span {
    color: #d2ae6d;
}


/* =====================================================
   HEADING DESCRIPTION
===================================================== */

.ramsan-banquet-heading-text {
    width: 42%;

    padding-bottom: 3px;
}

.ramsan-banquet-heading-text p {
    margin: 0 0 18px;

    color: #68635c;

    font-size: 14px;

    line-height: 1.8;
}


/* =====================================================
   VIEW ALL
===================================================== */

.ramsan-banquet-view-btn {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #fff;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 1.3px;

    text-transform: uppercase;

    text-decoration: none;
}

.ramsan-banquet-view-btn i {
    color: #d2ae6d;

    transition: transform 0.3s ease;
}

.ramsan-banquet-view-btn:hover {
    color: #d2ae6d;
}

.ramsan-banquet-view-btn:hover i {
    transform: translateX(6px);
}


/* =====================================================
   FEATURED VENUE
===================================================== */

.ramsan-featured-venue {
    position: relative;

    width: 100%;
    height: 480px;

    overflow: hidden;

    margin-bottom: 30px;
}


/* IMAGE */

.ramsan-featured-venue-image {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.8s ease;
}

.ramsan-featured-venue:hover
.ramsan-featured-venue-image {
    transform: scale(1.04);
}


/* OVERLAY */

.ramsan-featured-venue-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.80) 0%,
            rgba(0, 0, 0, 0.58) 40%,
            rgba(0, 0, 0, 0.12) 80%
        );
}


/* =====================================================
   FEATURED CONTENT
===================================================== */

.ramsan-featured-venue-content {
    position: relative;

    z-index: 2;

    width: 100%;
    max-width: 570px;

    height: 100%;

    padding: 65px;

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: flex-start;
}


/* LABEL */

.ramsan-featured-label {
    margin-bottom: 15px;

    color: #d2ae6d;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}


/* TITLE */

.ramsan-featured-venue-content h3 {
    margin: 0 0 15px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 48px;

    font-weight: 400;

    color: #fff;
}


/* TEXT */

.ramsan-featured-venue-content p {
    max-width: 470px;

    margin: 0 0 25px;

    color: rgba(255, 255, 255, 0.82);

    font-size: 14px;

    line-height: 1.8;
}


/* =====================================================
   FEATURED DETAILS
===================================================== */

.ramsan-featured-details {
    display: flex;

    align-items: center;

    margin-bottom: 28px;

    border-left: 1px solid #d2ae6d;
}

.ramsan-featured-details > div {
    min-width: 125px;

    padding: 0 22px;
}

.ramsan-featured-details > div:first-child {
    padding-left: 18px;
}

.ramsan-featured-details strong {
    display: block;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 27px;

    font-weight: 400;

    color: #d2ae6d;
}

.ramsan-featured-details span {
    display: block;

    margin-top: 3px;

    color: rgba(255, 255, 255, 0.8);

    font-size: 9px;

    letter-spacing: 1.5px;

    text-transform: uppercase;
}


/* =====================================================
   FEATURED BUTTON
===================================================== */

.ramsan-featured-btn {
    display: inline-flex;

    align-items: center;

    gap: 13px;

    padding: 13px 22px;

    border: 1px solid #d2ae6d;

    background: #d2ae6d;

    color: #191611;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 1.2px;

    text-transform: uppercase;

    text-decoration: none;

    transition: all 0.3s ease;
}

.ramsan-featured-btn i {
    transition: transform 0.3s ease;
}

.ramsan-featured-btn:hover {
    background: transparent;

    color: #fff;
}

.ramsan-featured-btn:hover i {
    transform: translateX(5px);
}


/* =====================================================
   VENUE GRID
===================================================== */

.ramsan-banquet-grid {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 20px;
}


/* =====================================================
   VENUE CARD
===================================================== */

.ramsan-banquet-card {
    background: #2d2924;

    border: 1px solid rgba(255, 255, 255, 0.07);

    transition:
        transform 0.4s ease,
        border-color 0.4s ease;
}

.ramsan-banquet-card:hover {
    transform: translateY(-7px);

    border-color: rgba(210, 174, 109, 0.5);
}


/* =====================================================
   CARD IMAGE
===================================================== */

.ramsan-banquet-card-image {
    position: relative;

    width: 100%;
    height: 190px;

    overflow: hidden;
}

.ramsan-banquet-card-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.7s ease;
}

.ramsan-banquet-card:hover
.ramsan-banquet-card-image img {
    transform: scale(1.06);
}


/* CARD NUMBER */

.ramsan-banquet-number {
    position: absolute;

    top: 15px;
    right: 15px;

    color: rgba(255, 255, 255, 0.75);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 12px;

    letter-spacing: 1px;
}


/* =====================================================
   CARD CONTENT
===================================================== */

.ramsan-banquet-card-content {
    padding: 22px 20px 20px;
}


/* TOP */

.ramsan-banquet-card-top {
    display: flex;

    align-items: flex-start;

    justify-content: space-between;

    gap: 10px;

    min-height: 70px;
}


/* LABEL */

.ramsan-banquet-card-label {
    display: block;

    margin-bottom: 7px;

    color: #c8a45a;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 1.6px;

    text-transform: uppercase;
}


/* TITLE */

.ramsan-banquet-card h3 {
    margin: 0;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 22px;

    font-weight: 400;

    line-height: 1.2;
}


/* CAPACITY */

.ramsan-banquet-capacity {
    text-align: right;

    flex-shrink: 0;
}

.ramsan-banquet-capacity strong {
    display: block;

    color: #d2ae6d;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 18px;

    font-weight: 400;
}

.ramsan-banquet-capacity span {
    color: rgba(255, 255, 255, 0.45);

    font-size: 8px;

    letter-spacing: 1px;
}


/* =====================================================
   CARD BOTTOM
===================================================== */

.ramsan-banquet-card-bottom {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 10px;

    padding-top: 17px;

    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.ramsan-banquet-card-bottom > span {
    color: rgba(255, 255, 255, 0.55);

    font-size: 10px;

    letter-spacing: 0.5px;
}

.ramsan-banquet-card-bottom a {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #fff;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 1px;

    text-transform: uppercase;

    text-decoration: none;
}

.ramsan-banquet-card-bottom a i {
    color: #d2ae6d;

    transition: transform 0.3s ease;
}

.ramsan-banquet-card-bottom a:hover {
    color: #d2ae6d;
}

.ramsan-banquet-card-bottom a:hover i {
    transform: translateX(4px);
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-banquet-section {
        padding: 100px 0;
    }

    .ramsan-banquet-heading h2 {
        font-size: 46px;
    }

    .ramsan-featured-venue {
        height: 450px;
    }

    .ramsan-featured-venue-content {
        padding: 55px;
    }

    .ramsan-banquet-card-image {
        height: 175px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-banquet-section {
        padding: 85px 0;
    }

    .ramsan-banquet-bg-text {
        font-size: 105px;
    }

    .ramsan-banquet-heading {
        align-items: flex-start;

        gap: 35px;
    }

    .ramsan-banquet-heading h2 {
        font-size: 40px;
    }

    .ramsan-banquet-heading-text {
        width: 50%;
    }

    .ramsan-featured-venue {
        height: 430px;
    }

    .ramsan-featured-venue-content {
        padding: 45px;
    }

    .ramsan-featured-venue-content h3 {
        font-size: 40px;
    }

    .ramsan-banquet-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .ramsan-banquet-card-image {
        height: 210px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-banquet-section {
        padding: 70px 0 75px;
    }

    .ramsan-banquet-bg-text {
        top: 30px;
        left: -15px;

        font-size: 65px;
    }

    /* Heading */

    .ramsan-banquet-heading {
        display: block;

        margin-bottom: 35px;
    }

    .ramsan-banquet-heading h2 {
        font-size: 35px;
    }

    .ramsan-banquet-heading-text {
        width: 100%;

        margin-top: 20px;
    }

    .ramsan-banquet-heading-text p {
        font-size: 13px;
    }

    /* Featured */

    .ramsan-featured-venue {
        height: 520px;

        margin-bottom: 25px;
    }

    .ramsan-featured-venue-overlay {
        background:
            linear-gradient(
                to top,
                rgba(0, 0, 0, 0.85) 0%,
                rgba(0, 0, 0, 0.35) 70%
            );
    }

    .ramsan-featured-venue-content {
        max-width: 100%;

        padding: 30px;

        justify-content: flex-end;
    }

    .ramsan-featured-venue-content h3 {
        font-size: 35px;
    }

    .ramsan-featured-venue-content p {
        font-size: 13px;
    }

    .ramsan-featured-details > div {
        min-width: 110px;

        padding: 0 15px;
    }

    .ramsan-featured-details strong {
        font-size: 23px;
    }

    /* Cards */

    .ramsan-banquet-grid {
        grid-template-columns: 1fr;

        gap: 20px;
    }

    .ramsan-banquet-card-image {
        height: 240px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-banquet-section {
        padding: 60px 0 65px;
    }

    .ramsan-banquet-heading h2 {
        font-size: 31px;
    }

    .ramsan-banquet-subtitle {
        padding-left: 40px;

        font-size: 9px;
    }

    .ramsan-banquet-subtitle::before {
        width: 28px;
    }

    .ramsan-featured-venue {
        height: 500px;
    }

    .ramsan-featured-venue-content {
        padding: 25px;
    }

    .ramsan-featured-venue-content h3 {
        font-size: 31px;
    }

    .ramsan-featured-details > div {
        min-width: 95px;

        padding: 0 10px;
    }

    .ramsan-featured-details strong {
        font-size: 20px;
    }

    .ramsan-banquet-card-image {
        height: 220px;
    }

}
.ramsan-banquet-bg-text {
    position: absolute;

    top: 25px;
    left: -35px;

    color: rgba(40, 37, 31, 0.045) !important;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 145px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 5px;

    white-space: nowrap;

    pointer-events: none;
    user-select: none;

    z-index: 0;
}
@media (max-width: 991px) {

    .ramsan-banquet-bg-text {
        font-size: 105px;

        left: -25px;

        color: rgba(40, 37, 31, 0.035) !important;
    }

}


@media (max-width: 767px) {

    .ramsan-banquet-bg-text {
        top: 35px;
        left: -15px;

        font-size: 65px;

        letter-spacing: 2px;

        color: rgba(40, 37, 31, 0.035) !important;
    }

}
.ramsan-banquet-bg-text {
    top: -5px;
    left: 20px;

    color: rgba(40, 37, 31, 0.04) !important;

    font-size: 145px;
    font-weight: 700;

    line-height: 1;

    letter-spacing: 5px;

    white-space: nowrap;

    pointer-events: none;
    user-select: none;

    z-index: 0;
}
@media (max-width: 767px) {

    .ramsan-banquet-bg-text {
        top: 25px;
        left: 50%;

        transform: translateX(-50%);

        width: 100%;

        text-align: center;

        font-size: 58px;

        line-height: 1;

        letter-spacing: 1px;

        white-space: nowrap;

        color: rgba(40, 37, 31, 0.035) !important;

        z-index: 0;
    }

}
@media (max-width: 767px) {

    .ramsan-banquet-bg-text {
        top: -5px;

        left: 50%;
        transform: translateX(-50%);

        width: 100%;

        text-align: center;

        font-size: 58px;

        line-height: 1;

        letter-spacing: 1px;

        white-space: nowrap;

        color: rgba(40, 37, 31, 0.035) !important;

        z-index: 0;
    }

}
@media (max-width: 480px) {

    .ramsan-banquet-bg-text {
        top: 30px;

        left: 50%;

        transform: translateX(-50%);

        width: 100%;

        font-size: 48px;

        letter-spacing: 0;

        text-align: center;

        white-space: nowrap;

        color: rgba(40, 37, 31, 0.035) !important;
    }

}
@media (max-width: 480px) {

    .ramsan-banquet-bg-text {
        top: -2px;

        left: 50%;
        transform: translateX(-50%);

        width: 100%;

        font-size: 48px;

        letter-spacing: 0;

        text-align: center;

        white-space: nowrap;

        color: rgba(40, 37, 31, 0.035) !important;
    }

}
/* =====================================================
   HOTEL RAMSANPLAZA
   SIYA MILAN LAWN - FEATURED VENUE
===================================================== */

.ramsan-siya-section {
    position: relative;

    padding: 120px 0;

    overflow: hidden;

    background: #eeeae2;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-siya-section .container {
    position: relative;

    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;

    z-index: 2;
}


/* =====================================================
   BACKGROUND DECORATIVE TEXT
===================================================== */

.ramsan-siya-bg-text {
    position: absolute;

    top: 20px;
    right: -25px;

    color: rgba(40, 37, 31, 0.035);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 155px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 5px;

    white-space: nowrap;

    pointer-events: none;

    user-select: none;
}


/* =====================================================
   MAIN WRAPPER
===================================================== */

.ramsan-siya-wrapper {
    display: grid;

    grid-template-columns: 1.05fr 0.95fr;

    align-items: center;

    gap: 75px;
}


/* =====================================================
   IMAGE AREA
===================================================== */

.ramsan-siya-image-wrap {
    position: relative;

    padding-right: 30px;
    padding-bottom: 30px;
}


/* =====================================================
   IMAGE
===================================================== */

.ramsan-siya-image {
    position: relative;

    width: 100%;

    height: 540px;

    overflow: hidden;

    z-index: 2;
}

.ramsan-siya-image::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to bottom,
            rgba(0, 0, 0, 0.02),
            rgba(0, 0, 0, 0.20)
        );

    pointer-events: none;
}

.ramsan-siya-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.8s ease;
}

.ramsan-siya-image-wrap:hover
.ramsan-siya-image img {
    transform: scale(1.04);
}


/* =====================================================
   IMAGE GOLD FRAME
===================================================== */

.ramsan-siya-image-wrap::before {
    content: "";

    position: absolute;

    right: 0;
    bottom: 0;

    width: 82%;
    height: 82%;

    border-right: 1px solid #c8a45a;
    border-bottom: 1px solid #c8a45a;

    z-index: 1;
}


/* =====================================================
   IMAGE BADGE
===================================================== */

.ramsan-siya-badge {
    position: absolute;

    left: -25px;
    bottom: 5px;

    width: 125px;
    height: 125px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    background: #c8a45a;

    color: #fff;

    z-index: 4;

    box-shadow:
        0 15px 35px rgba(40, 35, 28, 0.15);
}

.ramsan-siya-badge span {
    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 27px;

    font-weight: 400;

    line-height: 1;
}

.ramsan-siya-badge small {
    margin-top: 7px;

    font-size: 9px;

    letter-spacing: 1.5px;

    text-transform: uppercase;
}


/* =====================================================
   CONTENT
===================================================== */

.ramsan-siya-content {
    padding-right: 10px;
}


/* =====================================================
   SUBTITLE
===================================================== */

.ramsan-siya-subtitle {
    position: relative;

    display: inline-block;

    margin-bottom: 16px;

    padding-left: 50px;

    color: #b28b43;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}

.ramsan-siya-subtitle::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 35px;
    height: 1px;

    background: #c8a45a;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-siya-content h2 {
    margin: 0 0 25px;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 55px;

    font-weight: 400;

    line-height: 1.05;
}

.ramsan-siya-content h2 span {
    display: block;

    color: #b28b43;
}


/* =====================================================
   PARAGRAPHS
===================================================== */

.ramsan-siya-content p {
    margin: 0 0 18px;

    color: #68635c;

    font-size: 14px;

    line-height: 1.85;
}

.ramsan-siya-content .ramsan-siya-intro {
    color: #3f3a34;

    font-size: 16px;

    line-height: 1.8;
}


/* =====================================================
   DETAILS
===================================================== */

.ramsan-siya-details {
    display: flex;

    align-items: center;

    gap: 35px;

    margin: 30px 0 32px;

    padding: 20px 0;

    border-top: 1px solid rgba(40, 37, 31, 0.12);

    border-bottom: 1px solid rgba(40, 37, 31, 0.12);
}


/* =====================================================
   DETAIL ITEM
===================================================== */

.ramsan-siya-detail {
    display: flex;

    align-items: center;

    gap: 13px;
}


/* =====================================================
   ICON
===================================================== */

.ramsan-siya-detail-icon {
    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(200, 164, 90, 0.55);

    color: #b28b43;

    font-size: 15px;
}


/* =====================================================
   DETAIL TEXT
===================================================== */

.ramsan-siya-detail strong {
    display: block;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 22px;

    font-weight: 400;

    line-height: 1.1;
}

.ramsan-siya-detail span {
    display: block;

    margin-top: 4px;

    color: #777169;

    font-size: 9px;

    letter-spacing: 1px;

    text-transform: uppercase;
}


/* =====================================================
   BUTTONS
===================================================== */

.ramsan-siya-buttons {
    display: flex;

    align-items: center;

    gap: 15px;
}


/* =====================================================
   PRIMARY BUTTON
===================================================== */

.ramsan-siya-btn {
    display: inline-flex;

    align-items: center;

    gap: 13px;

    padding: 14px 22px;

    background: #c8a45a;

    border: 1px solid #c8a45a;

    color: #fff;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 1.1px;

    text-transform: uppercase;

    text-decoration: none;

    transition: all 0.3s ease;
}

.ramsan-siya-btn i {
    transition: transform 0.3s ease;
}

.ramsan-siya-btn:hover {
    background: #28251f;

    border-color: #28251f;

    color: #fff;
}

.ramsan-siya-btn:hover i {
    transform: translateX(5px);
}


/* =====================================================
   OUTLINE BUTTON
===================================================== */

.ramsan-siya-outline-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 14px 22px;

    border: 1px solid #28251f;

    color: #28251f;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 1.1px;

    text-transform: uppercase;

    text-decoration: none;

    transition: all 0.3s ease;
}

.ramsan-siya-outline-btn:hover {
    background: #28251f;

    color: #fff;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-siya-section {
        padding: 100px 0;
    }

    .ramsan-siya-wrapper {
        gap: 55px;
    }

    .ramsan-siya-image {
        height: 500px;
    }

    .ramsan-siya-content h2 {
        font-size: 47px;
    }

    .ramsan-siya-bg-text {
        font-size: 125px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-siya-section {
        padding: 85px 0;
    }

    .ramsan-siya-wrapper {
        grid-template-columns: 1fr 1fr;

        gap: 40px;
    }

    .ramsan-siya-image-wrap {
        padding-right: 20px;
        padding-bottom: 20px;
    }

    .ramsan-siya-image {
        height: 450px;
    }

    .ramsan-siya-badge {
        left: -15px;

        width: 105px;
        height: 105px;
    }

    .ramsan-siya-badge span {
        font-size: 23px;
    }

    .ramsan-siya-content h2 {
        font-size: 40px;
    }

    .ramsan-siya-content p {
        font-size: 13px;
    }

    .ramsan-siya-content .ramsan-siya-intro {
        font-size: 14px;
    }

    .ramsan-siya-details {
        gap: 20px;
    }

    .ramsan-siya-detail {
        gap: 9px;
    }

    .ramsan-siya-detail strong {
        font-size: 18px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-siya-section {
        padding: 70px 0 75px;
    }

    .ramsan-siya-bg-text {
        top: 20px;

        left: 50%;

        transform: translateX(-50%);

        width: 100%;

        text-align: center;

        font-size: 58px;

        letter-spacing: 1px;

        color: rgba(40, 37, 31, 0.035);
    }


    /* Wrapper */

    .ramsan-siya-wrapper {
        display: flex;

        flex-direction: column;

        gap: 45px;
    }


    /* Image */

    .ramsan-siya-image-wrap {
        width: 100%;

        padding-right: 18px;
        padding-bottom: 18px;
    }

    .ramsan-siya-image {
        height: 360px;
    }

    .ramsan-siya-image-wrap::before {
        width: 80%;
        height: 80%;
    }

    .ramsan-siya-badge {
        left: -5px;
        bottom: 0;

        width: 95px;
        height: 95px;
    }

    .ramsan-siya-badge span {
        font-size: 21px;
    }

    .ramsan-siya-badge small {
        font-size: 8px;
    }


    /* Content */

    .ramsan-siya-content {
        width: 100%;

        padding-right: 0;
    }

    .ramsan-siya-subtitle {
        margin-bottom: 14px;

        padding-left: 40px;

        font-size: 9px;

        letter-spacing: 2px;
    }

    .ramsan-siya-subtitle::before {
        width: 28px;
    }

    .ramsan-siya-content h2 {
        margin-bottom: 20px;

        font-size: 36px;

        line-height: 1.1;
    }

    .ramsan-siya-content p {
        font-size: 13px;

        line-height: 1.75;
    }

    .ramsan-siya-content .ramsan-siya-intro {
        font-size: 14px;

        line-height: 1.75;
    }


    /* Details */

    .ramsan-siya-details {
        gap: 20px;

        margin: 25px 0 28px;

        padding: 18px 0;
    }

    .ramsan-siya-detail {
        gap: 9px;
    }

    .ramsan-siya-detail-icon {
        width: 40px;
        height: 40px;

        font-size: 13px;
    }

    .ramsan-siya-detail strong {
        font-size: 19px;
    }

    .ramsan-siya-detail span {
        font-size: 8px;
    }


    /* Buttons */

    .ramsan-siya-buttons {
        flex-wrap: wrap;
    }

    .ramsan-siya-btn,
    .ramsan-siya-outline-btn {
        padding: 13px 18px;

        font-size: 9px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-siya-section {
        padding: 60px 0 65px;
    }

    .ramsan-siya-bg-text {
        top: 25px;

        font-size: 45px;

        letter-spacing: 0;
    }

    .ramsan-siya-image {
        height: 300px;
    }

    .ramsan-siya-badge {
        width: 85px;
        height: 85px;
    }

    .ramsan-siya-badge span {
        font-size: 19px;
    }

    .ramsan-siya-content h2 {
        font-size: 31px;
    }

    .ramsan-siya-details {
        gap: 12px;
    }

    .ramsan-siya-detail-icon {
        width: 37px;
        height: 37px;
    }

    .ramsan-siya-detail strong {
        font-size: 17px;
    }

    .ramsan-siya-buttons {
        display: grid;

        grid-template-columns: 1fr;

        gap: 10px;
    }

    .ramsan-siya-btn,
    .ramsan-siya-outline-btn {
        width: 100%;

        justify-content: center;
    }

}
/* =====================================================
   SIYA MILAN - BACKGROUND WATERMARK
===================================================== */

.ramsan-siya-bg-text {
    position: absolute;

    top: -35px;
    right: -25px;

    color: rgba(40, 37, 31, 0.035);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 155px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 5px;

    white-space: nowrap;

    pointer-events: none;
    user-select: none;

    z-index: 0;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-siya-bg-text {
        top: -30px;

        right: -20px;

        font-size: 90px;

        letter-spacing: 4px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-siya-bg-text {
        top: -25px;

        right: -15px;

        font-size: 105px;

        letter-spacing: 3px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-siya-bg-text {
        top: -10px;

        left: 50%;

        right: auto;

        transform: translateX(-50%);

        width: 100%;

        text-align: center;

        font-size: 58px;

        letter-spacing: 1px;

        white-space: nowrap;

        color: rgba(40, 37, 31, 0.035);
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-siya-bg-text {
        top: -5px;

        font-size: 45px;

        letter-spacing: 0;
    }

}
/* =====================================================
   HOTEL RAMSANPLAZA
   MASALA TREE RESTAURANT
===================================================== */

.ramsan-restaurant-section {
    position: relative;

    padding: 115px 0;

    overflow: hidden;

    background: #eeeae2;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-restaurant-section .container {
    position: relative;

    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;

    z-index: 2;
}


/* =====================================================
   BACKGROUND TEXT
===================================================== */

.ramsan-restaurant-bg-text {
    position: absolute;

    top: 15px;
    left: -20px;

    color: rgba(40, 37, 31, 0.035);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 140px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 8px;

    white-space: nowrap;

    pointer-events: none;

    user-select: none;

    z-index: 0;
}


/* =====================================================
   MAIN WRAPPER
===================================================== */

.ramsan-restaurant-wrapper {
    display: grid;

    grid-template-columns: 1fr 1fr;

    align-items: center;

    gap: 75px;
}


/* =====================================================
   IMAGE AREA
===================================================== */

.ramsan-restaurant-image-wrap {
    position: relative;

    padding-left: 25px;
    padding-bottom: 25px;
}


/* =====================================================
   IMAGE
===================================================== */

.ramsan-restaurant-image {
    position: relative;

    width: 100%;

    height: 500px;

    overflow: hidden;

    z-index: 2;
}

.ramsan-restaurant-image::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to bottom,
            rgba(0, 0, 0, 0.02),
            rgba(0, 0, 0, 0.25)
        );

    pointer-events: none;
}

.ramsan-restaurant-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.8s ease;
}

.ramsan-restaurant-image-wrap:hover
.ramsan-restaurant-image img {
    transform: scale(1.04);
}


/* =====================================================
   GOLD FRAME
===================================================== */

.ramsan-restaurant-frame {
    position: absolute;

    left: 0;
    bottom: 0;

    width: 80%;
    height: 80%;

    border-left: 1px solid #c8a45a;
    border-bottom: 1px solid #c8a45a;

    z-index: 1;
}


/* =====================================================
   RESTAURANT BADGE
===================================================== */

.ramsan-restaurant-badge {
    position: absolute;

    right: -25px;
    bottom: 0;

    width: 145px;
    height: 90px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    background: #c8a45a;

    color: #fff;

    z-index: 4;

    box-shadow:
        0 15px 35px rgba(40, 35, 28, 0.15);
}

.ramsan-restaurant-badge i {
    margin-bottom: 8px;

    font-size: 17px;
}

.ramsan-restaurant-badge span {
    font-size: 10px;

    font-weight: 600;

    letter-spacing: 2px;

    text-transform: uppercase;
}


/* =====================================================
   CONTENT
===================================================== */

.ramsan-restaurant-content {
    padding-right: 15px;
}


/* =====================================================
   SUBTITLE
===================================================== */

.ramsan-restaurant-subtitle {
    position: relative;

    display: inline-block;

    margin-bottom: 16px;

    padding-left: 50px;

    color: #b28b43;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}

.ramsan-restaurant-subtitle::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 35px;
    height: 1px;

    background: #c8a45a;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-restaurant-content h2 {
    margin: 0 0 25px;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 53px;

    font-weight: 400;

    line-height: 1.08;
}

.ramsan-restaurant-content h2 span {
    display: block;

    color: #b28b43;
}


/* =====================================================
   PARAGRAPHS
===================================================== */

.ramsan-restaurant-content p {
    margin: 0 0 18px;

    color: #68635c;

    font-size: 14px;

    line-height: 1.85;
}

.ramsan-restaurant-content .ramsan-restaurant-intro {
    color: #3f3a34;

    font-size: 16px;

    line-height: 1.8;
}


/* =====================================================
   HIGHLIGHTS
===================================================== */

.ramsan-restaurant-highlights {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 25px;

    margin: 30px 0 32px;

    padding: 22px 0;

    border-top: 1px solid rgba(40, 37, 31, 0.12);

    border-bottom: 1px solid rgba(40, 37, 31, 0.12);
}


/* =====================================================
   HIGHLIGHT
===================================================== */

.ramsan-restaurant-highlight {
    display: flex;

    align-items: flex-start;

    gap: 13px;
}


/* =====================================================
   ICON
===================================================== */

.ramsan-restaurant-icon {
    flex: 0 0 43px;

    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(200, 164, 90, 0.55);

    color: #b28b43;

    font-size: 15px;

    transition: all 0.3s ease;
}

.ramsan-restaurant-highlight:hover
.ramsan-restaurant-icon {
    background: #c8a45a;

    border-color: #c8a45a;

    color: #fff;
}


/* =====================================================
   HIGHLIGHT TEXT
===================================================== */

.ramsan-restaurant-highlight h4 {
    margin: 0 0 5px;

    color: #28251f;

    font-size: 13px;

    font-weight: 600;
}

.ramsan-restaurant-highlight p {
    margin: 0;

    color: #777169;

    font-size: 11px;

    line-height: 1.55;
}


/* =====================================================
   BUTTON
===================================================== */

.ramsan-restaurant-btn {
    display: inline-flex;

    align-items: center;

    gap: 13px;

    padding: 14px 22px;

    background: #c8a45a;

    border: 1px solid #c8a45a;

    color: #fff;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 1.1px;

    text-transform: uppercase;

    text-decoration: none;

    transition: all 0.3s ease;
}

.ramsan-restaurant-btn i {
    transition: transform 0.3s ease;
}

.ramsan-restaurant-btn:hover {
    background: #28251f;

    border-color: #28251f;

    color: #fff;
}

.ramsan-restaurant-btn:hover i {
    transform: translateX(5px);
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-restaurant-section {
        padding: 100px 0;
    }

    .ramsan-restaurant-wrapper {
        gap: 55px;
    }

    .ramsan-restaurant-image {
        height: 470px;
    }

    .ramsan-restaurant-content h2 {
        font-size: 46px;
    }

    .ramsan-restaurant-bg-text {
        font-size: 115px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-restaurant-section {
        padding: 85px 0;
    }

    .ramsan-restaurant-wrapper {
        grid-template-columns: 1fr 1fr;

        gap: 40px;
    }

    .ramsan-restaurant-image-wrap {
        padding-left: 15px;
        padding-bottom: 20px;
    }

    .ramsan-restaurant-image {
        height: 420px;
    }

    .ramsan-restaurant-badge {
        right: -10px;

        width: 120px;
        height: 80px;
    }

    .ramsan-restaurant-content h2 {
        font-size: 39px;
    }

    .ramsan-restaurant-content p {
        font-size: 13px;
    }

    .ramsan-restaurant-content .ramsan-restaurant-intro {
        font-size: 14px;
    }

    .ramsan-restaurant-highlights {
        gap: 15px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-restaurant-section {
        padding: 70px 0 75px;
    }

    .ramsan-restaurant-bg-text {
        top: 15px;

        left: 50%;

        transform: translateX(-50%);

        width: 100%;

        text-align: center;

        font-size: 55px;

        letter-spacing: 1px;
    }


    /* Wrapper */

    .ramsan-restaurant-wrapper {
        display: flex;

        flex-direction: column;

        gap: 45px;
    }


    /* Image */

    .ramsan-restaurant-image-wrap {
        width: 100%;

        padding-left: 12px;
        padding-bottom: 18px;
    }

    .ramsan-restaurant-image {
        height: 340px;
    }

    .ramsan-restaurant-frame {
        width: 80%;
        height: 80%;
    }

    .ramsan-restaurant-badge {
        right: -5px;
        bottom: 0;

        width: 115px;
        height: 75px;
    }

    .ramsan-restaurant-badge i {
        font-size: 14px;

        margin-bottom: 5px;
    }

    .ramsan-restaurant-badge span {
        font-size: 8px;
    }


    /* Content */

    .ramsan-restaurant-content {
        width: 100%;

        padding-right: 0;
    }

    .ramsan-restaurant-subtitle {
        margin-bottom: 14px;

        padding-left: 40px;

        font-size: 9px;

        letter-spacing: 2px;
    }

    .ramsan-restaurant-subtitle::before {
        width: 28px;
    }

    .ramsan-restaurant-content h2 {
        margin-bottom: 20px;

        font-size: 35px;

        line-height: 1.1;
    }

    .ramsan-restaurant-content p {
        font-size: 13px;

        line-height: 1.75;
    }

    .ramsan-restaurant-content .ramsan-restaurant-intro {
        font-size: 14px;

        line-height: 1.75;
    }


    /* Highlights */

    .ramsan-restaurant-highlights {
        grid-template-columns: 1fr;

        gap: 18px;

        margin: 25px 0 28px;

        padding: 20px 0;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-restaurant-section {
        padding: 60px 0 65px;
    }

    .ramsan-restaurant-bg-text {
        top: 20px;

        font-size: 43px;

        letter-spacing: 0;
    }

    .ramsan-restaurant-image {
        height: 290px;
    }

    .ramsan-restaurant-content h2 {
        font-size: 31px;
    }

    .ramsan-restaurant-badge {
        width: 100px;
        height: 68px;
    }

}
/* =====================================================
   MASALA TREE - BACKGROUND WATERMARK
===================================================== */

.ramsan-restaurant-bg-text {
    position: absolute;

    top: -35px;
    left: -20px;

    color: rgba(40, 37, 31, 0.035);

    font-family: Georgia, "Times New Roman", serif;

    font-size: 110px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 5px;

    white-space: nowrap;

    pointer-events: none;
    user-select: none;

    z-index: 0;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-restaurant-bg-text {
        top: -30px;
        left: -15px;

        font-size: 95px;

        letter-spacing: 4px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-restaurant-bg-text {
        top: -20px;
        left: -10px;

        font-size: 80px;

        letter-spacing: 3px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-restaurant-bg-text {
        top: -10px;

        left: 50%;

        right: auto;

        transform: translateX(-50%);

        width: 100%;

        text-align: center;

        font-size: 55px;

        letter-spacing: 1px;

        white-space: nowrap;

        color: rgba(40, 37, 31, 0.035);
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-restaurant-bg-text {
        top: -5px;

        font-size: 43px;

        letter-spacing: 0;
    }

}
.ramsan-restaurant-section {
    position: relative;
    overflow: hidden;
}
.ramsan-restaurant-section .container {
    position: relative;
    z-index: 2;
}
/* =====================================================
   WHY CHOOSE RAMSANPLAZA
===================================================== */

.ramsan-why-section {
    position: relative;

    padding: 115px 0 120px;

    background: #eeeae2;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-why-section .container {
    position: relative;

    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;

    z-index: 2;
}


/* =====================================================
   BACKGROUND WATERMARK
===================================================== */

.ramsan-why-bg-text {
    position: absolute;

    top: 10px;
    left: 50%;

    transform: translateX(-50%);

    color: rgba(40, 37, 31, 0.035);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 145px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 8px;

    white-space: nowrap;

    pointer-events: none;

    user-select: none;

    z-index: 0;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-why-heading {
    max-width: 720px;

    margin: 0 auto 65px;

    text-align: center;
}


/* =====================================================
   SUBTITLE
===================================================== */

.ramsan-why-subtitle {
    position: relative;

    display: inline-flex;

    align-items: center;

    gap: 15px;

    margin-bottom: 17px;

    color: #b28b43;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 2.8px;

    text-transform: uppercase;
}

.ramsan-why-subtitle::before,
.ramsan-why-subtitle::after {
    content: "";

    width: 30px;
    height: 1px;

    background: #c8a45a;
}


/* =====================================================
   MAIN HEADING
===================================================== */

.ramsan-why-heading h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 52px;

    font-weight: 400;

    line-height: 1.08;
}

.ramsan-why-heading h2 span {
    color: #b28b43;
}


/* =====================================================
   INTRO
===================================================== */

.ramsan-why-heading p {
    max-width: 650px;

    margin: 22px auto 0;

    color: #68635c;

    font-size: 14px;

    line-height: 1.85;
}


/* =====================================================
   FEATURE GRID
===================================================== */

.ramsan-why-grid {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 1px;

    background: rgba(40, 37, 31, 0.13);

    border: 1px solid rgba(40, 37, 31, 0.13);
}


/* =====================================================
   FEATURE CARD
===================================================== */

.ramsan-why-card {
    position: relative;

    min-height: 285px;

    padding: 30px 30px 28px;

    background: #f4f1eb;

    transition:
        transform 0.35s ease,
        background 0.35s ease,
        box-shadow 0.35s ease;

    z-index: 1;
}

.ramsan-why-card:hover {
    transform: translateY(-7px);

    background: #ffffff;

    box-shadow:
        0 20px 45px rgba(40, 37, 31, 0.12);

    z-index: 3;
}


/* =====================================================
   CARD TOP
===================================================== */

.ramsan-why-card-top {
    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 30px;
}


/* =====================================================
   NUMBER
===================================================== */

.ramsan-why-number {
    color: #b28b43;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 13px;

    letter-spacing: 1px;
}


/* =====================================================
   ICON
===================================================== */

.ramsan-why-icon {
    width: 50px;
    height: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(200, 164, 90, 0.55);

    color: #b28b43;

    font-size: 17px;

    transition:
        background 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease;
}

.ramsan-why-card:hover
.ramsan-why-icon {
    background: #c8a45a;

    border-color: #c8a45a;

    color: #fff;
}


/* =====================================================
   CARD HEADING
===================================================== */

.ramsan-why-card h3 {
    margin: 0 0 12px;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 23px;

    font-weight: 400;

    line-height: 1.2;
}


/* =====================================================
   CARD TEXT
===================================================== */

.ramsan-why-card p {
    min-height: 52px;

    margin: 0 0 20px;

    color: #777169;

    font-size: 12px;

    line-height: 1.7;
}


/* =====================================================
   CARD LINK
===================================================== */

.ramsan-why-card a {
    display: inline-flex;

    align-items: center;

    gap: 9px;

    color: #28251f;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 1.2px;

    text-transform: uppercase;

    text-decoration: none;
}

.ramsan-why-card a i {
    color: #b28b43;

    transition:
        transform 0.3s ease;
}

.ramsan-why-card a:hover i {
    transform: translateX(5px);
}


/* =====================================================
   DARK FEATURE CARD
===================================================== */

.ramsan-why-card-dark {
    background: #302d28;
}

.ramsan-why-card-dark h3 {
    color: #fff;
}

.ramsan-why-card-dark p {
    color: rgba(255, 255, 255, 0.62);
}

.ramsan-why-card-dark a {
    color: #fff;
}

.ramsan-why-card-dark .ramsan-why-number {
    color: #d2ae6d;
}

.ramsan-why-card-dark .ramsan-why-icon {
    border-color: rgba(200, 164, 90, 0.6);

    color: #d2ae6d;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-why-section {
        padding: 100px 0;
    }

    .ramsan-why-heading {
        margin-bottom: 55px;
    }

    .ramsan-why-heading h2 {
        font-size: 46px;
    }

    .ramsan-why-bg-text {
        font-size: 115px;
    }

    .ramsan-why-card {
        padding: 27px 25px;

        min-height: 275px;
    }

    .ramsan-why-card h3 {
        font-size: 21px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-why-section {
        padding: 85px 0;
    }

    .ramsan-why-bg-text {
        font-size: 90px;

        top: 20px;
    }

    .ramsan-why-heading {
        margin-bottom: 45px;
    }

    .ramsan-why-heading h2 {
        font-size: 40px;
    }

    .ramsan-why-heading p {
        font-size: 13px;
    }

    .ramsan-why-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .ramsan-why-card {
        min-height: 260px;

        padding: 25px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-why-section {
        padding: 70px 0 75px;
    }

    .ramsan-why-bg-text {
        top: 15px;

        left: 50%;

        width: 100%;

        font-size: 58px;

        letter-spacing: 1px;

        text-align: center;
    }

    .ramsan-why-heading {
        margin-bottom: 38px;
    }

    .ramsan-why-subtitle {
        gap: 10px;

        font-size: 8px;

        letter-spacing: 2px;
    }

    .ramsan-why-subtitle::before,
    .ramsan-why-subtitle::after {
        width: 20px;
    }

    .ramsan-why-heading h2 {
        font-size: 35px;

        line-height: 1.12;
    }

    .ramsan-why-heading p {
        margin-top: 17px;

        font-size: 12px;

        line-height: 1.75;
    }

    .ramsan-why-grid {
        grid-template-columns: 1fr;
    }

    .ramsan-why-card {
        min-height: auto;

        padding: 25px;
    }

    .ramsan-why-card-top {
        margin-bottom: 23px;
    }

    .ramsan-why-card h3 {
        font-size: 22px;
    }

    .ramsan-why-card p {
        min-height: auto;

        font-size: 12px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-why-section {
        padding: 60px 0 65px;
    }

    .ramsan-why-bg-text {
        top: 20px;

        font-size: 45px;

        letter-spacing: 0;
    }

    .ramsan-why-heading h2 {
        font-size: 31px;
    }

    .ramsan-why-card {
        padding: 23px;
    }

    .ramsan-why-icon {
        width: 45px;
        height: 45px;

        font-size: 15px;
    }

}
/* =====================================================
   WARM HOSPITALITY - KEEP DARK ON HOVER
===================================================== */

.ramsan-why-card-dark:hover {
    background: #302d28;
    color: #fff;

    transform: translateY(-7px);

    box-shadow:
        0 20px 45px rgba(40, 37, 31, 0.20);
}


/* Keep heading white */

.ramsan-why-card-dark:hover h3 {
    color: #fff;
}


/* Keep paragraph visible */

.ramsan-why-card-dark:hover p {
    color: rgba(255, 255, 255, 0.62);
}


/* Keep number gold */

.ramsan-why-card-dark:hover .ramsan-why-number {
    color: #d2ae6d;
}


/* Keep icon visible */

.ramsan-why-card-dark:hover .ramsan-why-icon {
    background: #c8a45a;
    border-color: #c8a45a;
    color: #fff;
}


/* Keep link white */

.ramsan-why-card-dark:hover a {
    color: #fff;
}


/* Keep arrow gold */

.ramsan-why-card-dark:hover a i {
    color: #d2ae6d;
}
/* =====================================================
   HOTEL EXPERIENCE / FACILITIES
   LIGHT PREMIUM THEME
===================================================== */

.ramsan-experience-section {
    position: relative;
    padding: 115px 0 0;
    background: #eeeae2;
    color: #28251f;
    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-experience-section .container {
    position: relative;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
    z-index: 2;
}


/* =====================================================
   BACKGROUND WATERMARK
===================================================== */

.ramsan-experience-watermark {
    position: absolute;

    top: 15px;
    right: -25px;

    color: rgba(40, 37, 31, 0.035);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 145px;
    font-weight: 700;

    line-height: 1;
    letter-spacing: 5px;

    white-space: nowrap;

    pointer-events: none;
    user-select: none;

    z-index: 0;
}


/* =====================================================
   MAIN CONTENT
===================================================== */

.ramsan-experience-main {
    display: grid;

    grid-template-columns:
        0.82fr 1.18fr;

    gap: 90px;

    align-items: start;
}


/* =====================================================
   LEFT INTRO
===================================================== */

.ramsan-experience-intro {
    padding-top: 25px;
}


/* =====================================================
   KICKER
===================================================== */

.ramsan-experience-kicker {
    position: relative;

    display: inline-block;

    padding-left: 48px;
    margin-bottom: 20px;

    color: #b28b43;

    font-size: 10px;
    font-weight: 600;

    letter-spacing: 2.7px;

    text-transform: uppercase;
}

.ramsan-experience-kicker::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 33px;
    height: 1px;

    background: #c8a45a;
}


/* =====================================================
   MAIN HEADING
===================================================== */

.ramsan-experience-intro h2 {
    max-width: 480px;

    margin: 0 0 25px;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 51px;
    font-weight: 400;

    line-height: 1.08;
}

.ramsan-experience-intro h2 span {
    display: block;

    color: #b28b43;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ramsan-experience-intro > p {
    max-width: 455px;

    margin: 0;

    color: #68635c;

    font-size: 14px;

    line-height: 1.9;
}


/* =====================================================
   DECORATIVE LINE
===================================================== */

.ramsan-experience-line {
    width: 55px;
    height: 1px;

    margin: 35px 0 25px;

    background: #c8a45a;
}


/* =====================================================
   PLAN YOUR STAY LINK
===================================================== */

.ramsan-experience-link {
    display: inline-flex;

    align-items: center;

    gap: 13px;

    color: #28251f;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    text-decoration: none;

    transition: color 0.3s ease;
}

.ramsan-experience-link i {
    color: #b28b43;

    transition:
        transform 0.3s ease;
}

.ramsan-experience-link:hover {
    color: #b28b43;
}

.ramsan-experience-link:hover i {
    transform: translateX(6px);
}


/* =====================================================
   FACILITY LIST
===================================================== */

.ramsan-experience-list {
    border-top: 1px solid rgba(40, 37, 31, 0.14);
}


/* =====================================================
   FACILITY ITEM
===================================================== */

.ramsan-experience-item {
    position: relative;

    display: grid;

    grid-template-columns:
        35px 55px 1fr 30px;

    align-items: center;

    gap: 22px;

    min-height: 135px;

    padding: 25px 0;

    border-bottom: 1px solid rgba(40, 37, 31, 0.14);

    transition:
        padding 0.35s ease,
        background 0.35s ease;
}


/* =====================================================
   NUMBER
===================================================== */

.ramsan-experience-number {
    align-self: start;

    padding-top: 5px;

    color: #b28b43;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 11px;

    letter-spacing: 1px;
}


/* =====================================================
   ICON
===================================================== */

.ramsan-experience-icon {
    width: 52px;
    height: 52px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(200, 164, 90, 0.6);

    color: #b28b43;

    background: transparent;

    font-size: 16px;

    transition:
        background 0.35s ease,
        border-color 0.35s ease,
        color 0.35s ease;
}


/* =====================================================
   FACILITY CONTENT
===================================================== */

.ramsan-experience-content h3 {
    margin: 0 0 7px;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 22px;

    font-weight: 400;

    line-height: 1.2;
}

.ramsan-experience-content p {
    max-width: 520px;

    margin: 0;

    color: #716c65;

    font-size: 12px;

    line-height: 1.7;
}


/* =====================================================
   ARROW
===================================================== */

.ramsan-experience-arrow {
    color: #b28b43;

    font-size: 14px;

    transition:
        transform 0.35s ease;
}


/* =====================================================
   HOVER
===================================================== */

.ramsan-experience-item:hover {
    padding-left: 15px;

    background: rgba(255, 255, 255, 0.35);
}

.ramsan-experience-item:hover
.ramsan-experience-icon {
    background: #c8a45a;

    border-color: #c8a45a;

    color: #fff;
}

.ramsan-experience-item:hover
.ramsan-experience-arrow {
    transform: translateX(5px);
}


/* =====================================================
   EXPERIENCE STATS
===================================================== */

.ramsan-experience-stats {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    margin-top: 90px;

    border-top: 1px solid rgba(40, 37, 31, 0.14);
}


/* =====================================================
   STAT ITEM
===================================================== */

.ramsan-experience-stat {
    min-height: 145px;

    display: flex;

    flex-direction: column;

    justify-content: center;

    padding: 25px 30px;

    border-right: 1px solid rgba(40, 37, 31, 0.14);
}

.ramsan-experience-stat:first-child {
    border-left: 1px solid rgba(40, 37, 31, 0.14);
}


/* =====================================================
   STAT NUMBER
===================================================== */

.ramsan-experience-stat strong {
    color: #b28b43;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 34px;

    font-weight: 400;

    line-height: 1.1;
}


/* =====================================================
   STAT LABEL
===================================================== */

.ramsan-experience-stat span {
    margin-top: 8px;

    color: #777169;

    font-size: 9px;

    letter-spacing: 1.5px;

    text-transform: uppercase;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-experience-section {
        padding-top: 100px;
    }

    .ramsan-experience-main {
        gap: 60px;
    }

    .ramsan-experience-intro h2 {
        font-size: 45px;
    }

    .ramsan-experience-watermark {
        font-size: 115px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-experience-section {
        padding-top: 85px;
    }

    .ramsan-experience-main {
        grid-template-columns:
            0.75fr 1.25fr;

        gap: 40px;
    }

    .ramsan-experience-intro h2 {
        font-size: 37px;
    }

    .ramsan-experience-intro > p {
        font-size: 13px;
    }

    .ramsan-experience-item {
        grid-template-columns:
            30px 48px 1fr 20px;

        gap: 15px;
    }

    .ramsan-experience-icon {
        width: 46px;
        height: 46px;
    }

    .ramsan-experience-content h3 {
        font-size: 19px;
    }

    .ramsan-experience-content p {
        font-size: 11px;
    }

    .ramsan-experience-stats {
        margin-top: 65px;
    }

    .ramsan-experience-stat {
        padding: 22px 18px;
    }

    .ramsan-experience-stat strong {
        font-size: 27px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-experience-section {
        padding-top: 70px;
    }

    .ramsan-experience-watermark {
        top: 15px;
        right: -15px;

        font-size: 58px;

        letter-spacing: 2px;
    }

    .ramsan-experience-main {
        display: flex;

        flex-direction: column;

        gap: 50px;
    }


    /* INTRO */

    .ramsan-experience-intro {
        padding-top: 10px;
    }

    .ramsan-experience-kicker {
        padding-left: 40px;

        font-size: 9px;

        letter-spacing: 2px;
    }

    .ramsan-experience-kicker::before {
        width: 28px;
    }

    .ramsan-experience-intro h2 {
        font-size: 35px;

        line-height: 1.12;
    }

    .ramsan-experience-intro > p {
        font-size: 13px;

        line-height: 1.8;
    }


    /* FACILITY LIST */

    .ramsan-experience-item {
        grid-template-columns:
            30px 45px 1fr 18px;

        gap: 12px;

        min-height: 120px;

        padding: 22px 0;
    }

    .ramsan-experience-item:hover {
        padding-left: 8px;
    }

    .ramsan-experience-icon {
        width: 43px;
        height: 43px;

        font-size: 14px;
    }

    .ramsan-experience-content h3 {
        font-size: 18px;
    }

    .ramsan-experience-content p {
        font-size: 11px;

        line-height: 1.6;
    }


    /* STATS */

    .ramsan-experience-stats {
        grid-template-columns:
            repeat(2, 1fr);

        margin-top: 55px;
    }

    .ramsan-experience-stat {
        min-height: 115px;

        padding: 20px;
    }

    .ramsan-experience-stat:nth-child(2) {
        border-right: none;
    }

    .ramsan-experience-stat:nth-child(3),
    .ramsan-experience-stat:nth-child(4) {
        border-top: 1px solid rgba(40, 37, 31, 0.14);
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-experience-section {
        padding-top: 60px;
    }

    .ramsan-experience-watermark {
        font-size: 45px;

        top: 20px;
    }

    .ramsan-experience-intro h2 {
        font-size: 31px;
    }

    .ramsan-experience-item {
        grid-template-columns:
            25px 42px 1fr 12px;

        gap: 9px;
    }

    .ramsan-experience-number {
        font-size: 9px;
    }

    .ramsan-experience-icon {
        width: 40px;
        height: 40px;

        font-size: 13px;
    }

    .ramsan-experience-content h3 {
        font-size: 16px;
    }

    .ramsan-experience-content p {
        font-size: 10px;
    }

    .ramsan-experience-stat {
        padding: 18px 15px;
    }

    .ramsan-experience-stat strong {
        font-size: 23px;
    }

}
/* =====================================================
   GALLERY PREVIEW
===================================================== */

.ramsan-gallery-section {
    position: relative;

    padding: 115px 0 120px;

    background: #eeeae2;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-gallery-section .container {
    position: relative;

    max-width: 1200px;

    width: 100%;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;

    z-index: 2;
}


/* =====================================================
   BACKGROUND WATERMARK
===================================================== */

.ramsan-gallery-watermark {
    position: absolute;

    top: 20px;
    left: 50%;

    transform: translateX(-50%);

    color: rgba(40, 37, 31, 0.035);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 135px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 7px;

    white-space: nowrap;

    pointer-events: none;

    user-select: none;

    z-index: 0;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-gallery-heading {
    display: grid;

    grid-template-columns: 1fr 0.85fr;

    gap: 80px;

    align-items: end;

    margin-bottom: 55px;
}


/* =====================================================
   KICKER
===================================================== */

.ramsan-gallery-kicker {
    position: relative;

    display: inline-block;

    padding-left: 48px;

    margin-bottom: 18px;

    color: #b28b43;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 2.7px;

    text-transform: uppercase;
}

.ramsan-gallery-kicker::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 33px;
    height: 1px;

    background: #c8a45a;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-gallery-heading-left h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 52px;

    font-weight: 400;

    line-height: 1.08;
}

.ramsan-gallery-heading-left h2 span {
    color: #b28b43;
}


/* =====================================================
   RIGHT INTRO
===================================================== */

.ramsan-gallery-heading-right {
    padding-bottom: 3px;
}

.ramsan-gallery-heading-right p {
    max-width: 430px;

    margin: 0 0 22px;

    color: #6e6962;

    font-size: 13px;

    line-height: 1.85;
}


/* =====================================================
   VIEW GALLERY LINK
===================================================== */

.ramsan-gallery-view-link {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #28251f;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 1.4px;

    text-transform: uppercase;

    text-decoration: none;

    transition: color 0.3s ease;
}

.ramsan-gallery-view-link i {
    color: #b28b43;

    transition:
        transform 0.3s ease;
}

.ramsan-gallery-view-link:hover {
    color: #b28b43;
}

.ramsan-gallery-view-link:hover i {
    transform: translateX(6px);
}


/* =====================================================
   GALLERY GRID
===================================================== */

.ramsan-gallery-grid {
    display: grid;

    grid-template-columns:
        1.35fr 0.8fr 0.8fr;

    grid-template-rows:
        270px 270px;

    gap: 10px;
}


/* =====================================================
   GALLERY ITEM
===================================================== */

.ramsan-gallery-item {
    position: relative;

    display: block;

    overflow: hidden;

    text-decoration: none;

    background: #d8d2c8;
}


/* =====================================================
   LARGE IMAGE
===================================================== */

.ramsan-gallery-large {
    grid-row: span 2;
}


/* =====================================================
   IMAGE
===================================================== */

.ramsan-gallery-item img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.7s cubic-bezier(
            0.22,
            1,
            0.36,
            1
        );
}


/* =====================================================
   IMAGE HOVER
===================================================== */

.ramsan-gallery-item:hover img {
    transform: scale(1.06);
}


/* =====================================================
   OVERLAY
===================================================== */

.ramsan-gallery-overlay {
    position: absolute;

    inset: 0;

    display: flex;

    align-items: flex-end;

    padding: 28px;

    background:
        linear-gradient(
            to top,
            rgba(25, 22, 18, 0.78),
            rgba(25, 22, 18, 0.18) 55%,
            rgba(25, 22, 18, 0)
        );

    opacity: 0;

    transition:
        opacity 0.4s ease;
}


/* =====================================================
   SHOW OVERLAY
===================================================== */

.ramsan-gallery-item:hover
.ramsan-gallery-overlay {
    opacity: 1;
}


/* =====================================================
   OVERLAY CONTENT
===================================================== */

.ramsan-gallery-overlay-content {
    width: 100%;

    transform: translateY(15px);

    transition:
        transform 0.4s ease;
}

.ramsan-gallery-item:hover
.ramsan-gallery-overlay-content {
    transform: translateY(0);
}


/* =====================================================
   OVERLAY SMALL TEXT
===================================================== */

.ramsan-gallery-overlay-content span {
    display: block;

    margin-bottom: 7px;

    color: #d2ae6d;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 2px;
}


/* =====================================================
   OVERLAY TITLE
===================================================== */

.ramsan-gallery-overlay-content h3 {
    display: inline-block;

    margin: 0;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 24px;

    font-weight: 400;

    line-height: 1.15;
}


/* =====================================================
   PLUS ICON
===================================================== */

.ramsan-gallery-overlay-content i {
    position: absolute;

    right: 28px;
    bottom: 28px;

    width: 38px;
    height: 38px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(
        255,
        255,
        255,
        0.65
    );

    border-radius: 50%;

    color: #fff;

    font-size: 12px;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-gallery-section {
        padding: 100px 0 105px;
    }

    .ramsan-gallery-watermark {
        font-size: 115px;
    }

    .ramsan-gallery-heading {
        gap: 55px;
    }

    .ramsan-gallery-heading-left h2 {
        font-size: 46px;
    }

    .ramsan-gallery-grid {
        grid-template-rows:
            240px 240px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-gallery-section {
        padding: 85px 0 90px;
    }

    .ramsan-gallery-watermark {
        font-size: 90px;

        top: 25px;
    }

    .ramsan-gallery-heading {
        grid-template-columns: 1fr 1fr;

        gap: 35px;

        margin-bottom: 40px;
    }

    .ramsan-gallery-heading-left h2 {
        font-size: 39px;
    }

    .ramsan-gallery-heading-right p {
        font-size: 12px;
    }

    .ramsan-gallery-grid {
        grid-template-columns:
            1.3fr 0.85fr;

        grid-template-rows:
            240px 240px 240px;
    }

    .ramsan-gallery-large {
        grid-row: span 2;
    }

    .ramsan-gallery-item:nth-child(4) {
        grid-column: 1;
    }

    .ramsan-gallery-item:nth-child(5) {
        grid-column: 2;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-gallery-section {
        padding: 70px 0 75px;
    }

    .ramsan-gallery-watermark {
        top: 15px;

        font-size: 58px;

        letter-spacing: 2px;

        width: 100%;

        text-align: center;
    }


    /* Heading */

    .ramsan-gallery-heading {
        display: block;

        margin-bottom: 35px;
    }

    .ramsan-gallery-heading-left {
        margin-bottom: 22px;
    }

    .ramsan-gallery-kicker {
        padding-left: 40px;

        font-size: 8px;

        letter-spacing: 2px;
    }

    .ramsan-gallery-kicker::before {
        width: 28px;
    }

    .ramsan-gallery-heading-left h2 {
        font-size: 35px;

        line-height: 1.12;
    }

    .ramsan-gallery-heading-right p {
        margin-bottom: 18px;

        font-size: 12px;

        line-height: 1.75;
    }


    /* Gallery */

    .ramsan-gallery-grid {
        display: grid;

        grid-template-columns: 1fr;

        grid-template-rows: none;

        gap: 8px;
    }

    .ramsan-gallery-large {
        grid-row: auto;
    }

    .ramsan-gallery-item,
    .ramsan-gallery-large {
        height: 280px;

        grid-column: auto !important;
    }


    /* Mobile always show subtle overlay */

    .ramsan-gallery-overlay {
        opacity: 1;

        padding: 22px;

        background:
            linear-gradient(
                to top,
                rgba(25, 22, 18, 0.68),
                rgba(25, 22, 18, 0)
            );
    }

    .ramsan-gallery-overlay-content {
        transform: translateY(0);
    }

    .ramsan-gallery-overlay-content h3 {
        font-size: 21px;
    }

    .ramsan-gallery-overlay-content i {
        right: 22px;
        bottom: 22px;

        width: 34px;
        height: 34px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-gallery-section {
        padding: 60px 0 65px;
    }

    .ramsan-gallery-watermark {
        top: 20px;

        font-size: 45px;

        letter-spacing: 1px;
    }

    .ramsan-gallery-heading-left h2 {
        font-size: 31px;
    }

    .ramsan-gallery-item,
    .ramsan-gallery-large {
        height: 235px;
    }

    .ramsan-gallery-overlay-content h3 {
        font-size: 19px;
    }

}
/* =====================================================
   EVENTS / WEDDING CTA
===================================================== */

.ramsan-event-cta {
    position: relative;

    padding: 110px 0;

    background: #eeeae2;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-event-cta .container {
    position: relative;

    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;

    z-index: 2;
}


/* =====================================================
   BACKGROUND WATERMARK
===================================================== */

.ramsan-event-cta-watermark {
    position: absolute;

    top: 10px;
    left: 50%;

    transform: translateX(-50%);

    color: rgba(40, 37, 31, 0.035);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 145px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 6px;

    white-space: nowrap;

    pointer-events: none;

    user-select: none;
}


/* =====================================================
   CTA BOX
===================================================== */

.ramsan-event-cta-box {
    position: relative;

    padding: 75px 80px 0;

    text-align: center;

    background: #302d28;

    overflow: hidden;

    box-shadow:
        0 25px 60px rgba(40, 37, 31, 0.12);
}


/* =====================================================
   DECORATIVE TOP LINE
===================================================== */

.ramsan-event-cta-top-line {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 13px;

    margin-bottom: 25px;
}

.ramsan-event-cta-top-line span {
    width: 45px;
    height: 1px;

    background: #c8a45a;
}

.ramsan-event-cta-top-line i {
    color: #c8a45a;

    font-size: 9px;
}


/* =====================================================
   KICKER
===================================================== */

.ramsan-event-cta-kicker {
    display: block;

    margin-bottom: 17px;

    color: #d2ae6d;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 2.7px;

    line-height: 1.5;

    text-transform: uppercase;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-event-cta-box h2 {
    max-width: 720px;

    margin: 0 auto;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 55px;

    font-weight: 400;

    line-height: 1.08;
}

.ramsan-event-cta-box h2 span {
    display: block;

    color: #c8a45a;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ramsan-event-cta-box > p {
    max-width: 650px;

    margin: 23px auto 0;

    color: rgba(255, 255, 255, 0.62);

    font-size: 13px;

    line-height: 1.85;
}


/* =====================================================
   BUTTONS
===================================================== */

.ramsan-event-cta-buttons {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    margin-top: 32px;
}


/* =====================================================
   BUTTON BASE
===================================================== */

.ramsan-event-cta-btn {
    min-height: 52px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 13px;

    padding: 0 25px;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 1.2px;

    text-transform: uppercase;

    text-decoration: none;

    transition:
        background 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease;
}

.ramsan-event-cta-btn i {
    transition:
        transform 0.3s ease;
}

.ramsan-event-cta-btn:hover i {
    transform: translateX(5px);
}


/* =====================================================
   PRIMARY BUTTON
===================================================== */

.ramsan-event-cta-primary {
    background: #c8a45a;

    border: 1px solid #c8a45a;

    color: #28251f;
}

.ramsan-event-cta-primary:hover {
    background: #d5b66f;

    border-color: #d5b66f;

    color: #28251f;
}


/* =====================================================
   SECONDARY BUTTON
===================================================== */

.ramsan-event-cta-secondary {
    background: transparent;

    border: 1px solid rgba(255, 255, 255, 0.45);

    color: #fff;
}

.ramsan-event-cta-secondary:hover {
    background: #fff;

    border-color: #fff;

    color: #28251f;
}


/* =====================================================
   BOTTOM INFORMATION
===================================================== */

.ramsan-event-cta-info {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    margin-top: 65px;

    border-top: 1px solid rgba(255, 255, 255, 0.12);
}


/* =====================================================
   INFO ITEM
===================================================== */

.ramsan-event-cta-info > div {
    min-height: 105px;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    padding: 20px;

    border-right: 1px solid rgba(255, 255, 255, 0.12);
}

.ramsan-event-cta-info > div:last-child {
    border-right: none;
}


/* =====================================================
   INFO NUMBER
===================================================== */

.ramsan-event-cta-info strong {
    color: #c8a45a;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 28px;

    font-weight: 400;

    line-height: 1.1;
}


/* =====================================================
   INFO LABEL
===================================================== */

.ramsan-event-cta-info span {
    margin-top: 7px;

    color: rgba(255, 255, 255, 0.5);

    font-size: 8px;

    letter-spacing: 1.5px;

    text-transform: uppercase;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-event-cta {
        padding: 95px 0;
    }

    .ramsan-event-cta-watermark {
        font-size: 115px;
    }

    .ramsan-event-cta-box {
        padding: 65px 60px 0;
    }

    .ramsan-event-cta-box h2 {
        font-size: 47px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-event-cta {
        padding: 80px 0;
    }

    .ramsan-event-cta-watermark {
        font-size: 90px;
    }

    .ramsan-event-cta-box {
        padding: 55px 40px 0;
    }

    .ramsan-event-cta-box h2 {
        font-size: 40px;
    }

    .ramsan-event-cta-box > p {
        font-size: 12px;
    }

    .ramsan-event-cta-info {
        margin-top: 50px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-event-cta {
        padding: 65px 0;
    }

    .ramsan-event-cta-watermark {
        top: 15px;

        width: 100%;

        text-align: center;

        font-size: 58px;

        letter-spacing: 2px;
    }

    .ramsan-event-cta-box {
        padding: 45px 25px 0;
    }


    /* Top Decoration */

    .ramsan-event-cta-top-line {
        margin-bottom: 20px;
    }

    .ramsan-event-cta-top-line span {
        width: 28px;
    }


    /* Kicker */

    .ramsan-event-cta-kicker {
        font-size: 8px;

        letter-spacing: 1.8px;
    }


    /* Heading */

    .ramsan-event-cta-box h2 {
        font-size: 35px;

        line-height: 1.12;
    }


    /* Description */

    .ramsan-event-cta-box > p {
        margin-top: 18px;

        font-size: 12px;

        line-height: 1.75;
    }


    /* Buttons */

    .ramsan-event-cta-buttons {
        flex-direction: column;

        width: 100%;

        margin-top: 27px;
    }

    .ramsan-event-cta-btn {
        width: 100%;

        min-height: 50px;
    }


    /* Info */

    .ramsan-event-cta-info {
        grid-template-columns:
            1fr;

        margin-top: 45px;
    }

    .ramsan-event-cta-info > div {
        min-height: 85px;

        border-right: none;

        border-bottom: 1px solid rgba(
            255,
            255,
            255,
            0.12
        );
    }

    .ramsan-event-cta-info > div:last-child {
        border-bottom: none;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-event-cta {
        padding: 55px 0;
    }

    .ramsan-event-cta-watermark {
        font-size: 45px;

        letter-spacing: 1px;
    }

    .ramsan-event-cta-box {
        padding: 40px 20px 0;
    }

    .ramsan-event-cta-box h2 {
        font-size: 31px;
    }

    .ramsan-event-cta-kicker {
        font-size: 7px;
    }

    .ramsan-event-cta-box > p {
        font-size: 11px;
    }

}
/* =====================================================
   RAMSAN EVENT CTA - FINAL LIGHT THEME
   FULL WIDTH
===================================================== */

.ramsan-event-cta {
    width: 100%;
    padding: 110px 0 0;

    background: #eeeae2;

    overflow: hidden;
}


/* =====================================================
   REMOVE CONTAINER SIDE LIMIT
===================================================== */

.ramsan-event-cta .container {
    width: 100%;
    max-width: 100%;

    margin: 0;
    padding: 0;
}


/* =====================================================
   CTA BOX - FULL WIDTH LIGHT
===================================================== */

.ramsan-event-cta-box {

    width: 100%;
    margin: 0;

    padding: 90px 30px 0;

    background: #eeeae2;

    text-align: center;

    box-shadow: none;

    border: none;
}


/* =====================================================
   WATERMARK
===================================================== */

.ramsan-event-cta-watermark {
    color: rgba(40, 37, 31, 0.035);

    z-index: 0;
}


/* =====================================================
   TOP DECORATION
===================================================== */

.ramsan-event-cta-top-line {
    position: relative;
    z-index: 2;
}

.ramsan-event-cta-top-line span {
    background: #c8a45a;
}

.ramsan-event-cta-top-line i {
    color: #c8a45a;
}


/* =====================================================
   KICKER
===================================================== */

.ramsan-event-cta-kicker {
    position: relative;

    z-index: 2;

    color: #b28b43;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-event-cta-box h2 {
    position: relative;

    z-index: 2;

    color: #28251f;
}

.ramsan-event-cta-box h2 span {
    color: #b28b43;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ramsan-event-cta-box > p {
    position: relative;

    z-index: 2;

    color: #6e6962;
}


/* =====================================================
   BUTTONS
===================================================== */

.ramsan-event-cta-buttons {
    position: relative;

    z-index: 2;
}


/* =====================================================
   PRIMARY BUTTON
===================================================== */

.ramsan-event-cta-primary {
    background: #c8a45a;

    border-color: #c8a45a;

    color: #28251f;
}

.ramsan-event-cta-primary:hover {
    background: #b28b43;

    border-color: #b28b43;

    color: #fff;
}


/* =====================================================
   SECONDARY BUTTON
===================================================== */

.ramsan-event-cta-secondary {
    background: transparent;

    border: 1px solid #b9aa91;

    color: #28251f;
}

.ramsan-event-cta-secondary:hover {
    background: #28251f;

    border-color: #28251f;

    color: #fff;
}


/* =====================================================
   INFO SECTION
===================================================== */

.ramsan-event-cta-info {
    position: relative;

    z-index: 2;

    margin-top: 70px;

    border-top: 1px solid rgba(
        40,
        37,
        31,
        0.14
    );
}


/* =====================================================
   INFO ITEM
===================================================== */

.ramsan-event-cta-info > div {
    border-right: 1px solid rgba(
        40,
        37,
        31,
        0.14
    );
}

.ramsan-event-cta-info > div:last-child {
    border-right: none;
}


/* =====================================================
   INFO NUMBER
===================================================== */

.ramsan-event-cta-info strong {
    color: #b28b43;
}


/* =====================================================
   INFO LABEL
===================================================== */

.ramsan-event-cta-info span {
    color: #777169;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-event-cta {
        padding-top: 95px;
    }

    .ramsan-event-cta-box {
        padding-top: 75px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-event-cta {
        padding-top: 80px;
    }

    .ramsan-event-cta-box {
        padding: 65px 25px 0;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-event-cta {
        padding-top: 65px;
    }

    .ramsan-event-cta-box {
        padding: 55px 20px 0;
    }

    .ramsan-event-cta-info {
        margin-top: 50px;
    }

    .ramsan-event-cta-info > div {
        border-right: none;

        border-bottom: 1px solid rgba(
            40,
            37,
            31,
            0.14
        );
    }

    .ramsan-event-cta-info > div:last-child {
        border-bottom: none;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-event-cta {
        padding-top: 55px;
    }

    .ramsan-event-cta-box {
        padding: 45px 15px 0;
    }

}
/* =========================================
   REDUCE TOP GAP - EVENT CTA
========================================= */

.ramsan-event-cta {
    padding-top: 45px !important;
}

.ramsan-event-cta-box {
    padding-top: 45px !important;
}


/* Tablet */
@media (max-width: 991px) {
    .ramsan-event-cta {
        padding-top: 40px !important;
    }

    .ramsan-event-cta-box {
        padding-top: 40px !important;
    }
}


/* Mobile */
@media (max-width: 767px) {
    .ramsan-event-cta {
        padding-top: 35px !important;
    }

    .ramsan-event-cta-box {
        padding-top: 35px !important;
    }
}


/* Small Mobile */
@media (max-width: 480px) {
    .ramsan-event-cta {
        padding-top: 30px !important;
    }

    .ramsan-event-cta-box {
        padding-top: 30px !important;
    }
}
.ramsan-event-cta {
    padding-top: 30px !important;
}

.ramsan-event-cta-box {
    padding-top: 30px !important;
}
/* =====================================================
   RAMSANPLAZA PREMIUM FOOTER
===================================================== */

.ramsan-main-footer {
    position: relative;

    width: 100%;

    color: #fff;

    background-image:
        url("../images/slider/slider1.png");

    background-size: cover;

    background-position: center center;

    background-repeat: no-repeat;

    overflow: hidden;
}


/* =====================================================
   DARK IMAGE OVERLAY
===================================================== */

.ramsan-footer-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(24, 22, 19, 0.94),
            rgba(24, 22, 19, 0.86)
        );

    z-index: 1;
}


/* =====================================================
   FOOTER CONTENT
===================================================== */

.ramsan-footer-content {
    position: relative;

    z-index: 2;

    padding: 85px 0 65px;
}


.ramsan-footer-content .container {
    width: 100%;

    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;
}


/* =====================================================
   HOTEL ABOUT
===================================================== */

.ramsan-footer-about {
    padding-right: 55px;
}


/* =====================================================
   LOGO
===================================================== */

.ramsan-footer-logo {
    display: inline-block;

    margin-bottom: 24px;
}

.ramsan-footer-logo img {
    display: block;

    width: auto;

    max-width: 190px;

    max-height: 70px;

    object-fit: contain;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ramsan-footer-description {
    max-width: 480px;

    margin: 0 0 28px;

    color: rgba(255, 255, 255, 0.65);

    font-size: 13px;

    line-height: 1.9;
}

.ramsan-footer-description strong {
    color: #d0aa61;

    font-weight: 500;
}


/* =====================================================
   CONTACT
===================================================== */

.ramsan-footer-contact {
    display: flex;

    flex-direction: column;

    gap: 13px;
}


.ramsan-footer-contact a {
    display: flex;

    align-items: flex-start;

    gap: 13px;

    color: rgba(255, 255, 255, 0.65);

    font-size: 12px;

    line-height: 1.6;

    text-decoration: none;

    transition: color 0.3s ease;
}


.ramsan-footer-contact a:hover {
    color: #d0aa61;
}


/* =====================================================
   CONTACT ICON
===================================================== */

.ramsan-footer-contact-icon {
    flex: 0 0 30px;

    width: 30px;
    height: 30px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid
        rgba(200, 164, 90, 0.45);

    color: #c8a45a;

    font-size: 12px;
}


/* =====================================================
   SOCIAL
===================================================== */

.ramsan-footer-social {
    display: flex;

    gap: 8px;

    margin-top: 27px;
}


.ramsan-footer-social a {
    width: 36px;
    height: 36px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid
        rgba(255, 255, 255, 0.22);

    color: rgba(255, 255, 255, 0.7);

    font-size: 12px;

    text-decoration: none;

    transition:
        background 0.3s ease,
        border-color 0.3s ease,
        color 0.3s ease;
}


.ramsan-footer-social a:hover {
    background: #c8a45a;

    border-color: #c8a45a;

    color: #28251f;
}


/* =====================================================
   FOOTER WIDGET
===================================================== */

.ramsan-footer-widget {
    height: 100%;
}


/* =====================================================
   WIDGET KICKER
===================================================== */

.ramsan-footer-kicker {
    position: relative;

    display: block;

    padding-left: 37px;

    margin-bottom: 12px;

    color: #c8a45a;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 2px;

    text-transform: uppercase;
}


.ramsan-footer-kicker::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 25px;
    height: 1px;

    background: #c8a45a;
}


/* =====================================================
   WIDGET TITLE
===================================================== */

.ramsan-footer-widget h3 {
    margin: 0 0 25px;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 24px;

    font-weight: 400;

    line-height: 1.2;
}


/* =====================================================
   LIST
===================================================== */

.ramsan-footer-widget ul {
    margin: 0;

    padding: 0;

    list-style: none;
}


.ramsan-footer-widget ul li {
    margin-bottom: 12px;
}


.ramsan-footer-widget ul li a {
    position: relative;

    display: inline-block;

    padding-left: 0;

    color: rgba(255, 255, 255, 0.58);

    font-size: 11px;

    line-height: 1.5;

    text-decoration: none;

    transition:
        color 0.3s ease,
        padding-left 0.3s ease;
}


.ramsan-footer-widget ul li a::before {
    content: "→";

    position: absolute;

    left: -18px;

    color: #c8a45a;

    opacity: 0;

    transition:
        opacity 0.3s ease;
}


.ramsan-footer-widget ul li a:hover {
    padding-left: 18px;

    color: #d0aa61;
}


.ramsan-footer-widget ul li a:hover::before {
    opacity: 1;
}


/* =====================================================
   EVENT TEXT
===================================================== */

.ramsan-footer-event-text {
    margin: -5px 0 22px;

    color: rgba(255, 255, 255, 0.58);

    font-size: 11px;

    line-height: 1.8;
}


/* =====================================================
   FOOTER FEATURE
===================================================== */

.ramsan-footer-feature {
    display: flex;

    align-items: flex-start;

    gap: 13px;

    margin-bottom: 16px;
}


.ramsan-footer-feature > i {
    flex: 0 0 31px;

    width: 31px;
    height: 31px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid
        rgba(200, 164, 90, 0.45);

    color: #c8a45a;

    font-size: 11px;
}


.ramsan-footer-feature strong {
    display: block;

    margin-bottom: 4px;

    color: #fff;

    font-size: 11px;

    font-weight: 500;
}


.ramsan-footer-feature span {
    display: block;

    color: rgba(255, 255, 255, 0.5);

    font-size: 9px;

    line-height: 1.5;
}


/* =====================================================
   ENQUIRE BUTTON
===================================================== */

.ramsan-footer-enquire {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    margin-top: 10px;

    padding: 14px 20px;

    background: #c8a45a;

    border: 1px solid #c8a45a;

    color: #28251f;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 1.2px;

    text-transform: uppercase;

    text-decoration: none;

    transition:
        background 0.3s ease,
        border-color 0.3s ease,
        color 0.3s ease;
}


.ramsan-footer-enquire i {
    transition:
        transform 0.3s ease;
}


.ramsan-footer-enquire:hover {
    background: transparent;

    border-color: #c8a45a;

    color: #c8a45a;
}


.ramsan-footer-enquire:hover i {
    transform: translateX(5px);
}


/* =====================================================
   FOOTER BOTTOM
===================================================== */

.ramsan-footer-bottom {
    position: relative;

    z-index: 2;

    border-top: 1px solid
        rgba(255, 255, 255, 0.12);
}


.ramsan-footer-bottom .container {
    width: 100%;

    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;
}


.ramsan-footer-bottom-inner {
    min-height: 70px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;
}


.ramsan-footer-bottom p {
    margin: 0;

    color: rgba(255, 255, 255, 0.45);

    font-size: 10px;

    line-height: 1.6;
}


.ramsan-footer-bottom strong {
    color: rgba(255, 255, 255, 0.75);

    font-weight: 500;
}


.ramsan-footer-bottom a {
    color: #c8a45a;

    text-decoration: none;

    transition: color 0.3s ease;
}


.ramsan-footer-bottom a:hover {
    color: #e0c17b;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-footer-content {
        padding: 75px 0 55px;
    }

    .ramsan-footer-about {
        padding-right: 30px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-footer-content {
        padding: 65px 0 45px;
    }

    .ramsan-footer-about {
        padding-right: 15px;

        margin-bottom: 45px;
    }

    .ramsan-footer-widget {
        margin-bottom: 40px;
    }

    .ramsan-footer-widget h3 {
        font-size: 21px;
    }

    .ramsan-footer-bottom-inner {
        min-height: 65px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-main-footer {
        background-position: center center;
    }

    .ramsan-footer-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(24, 22, 19, 0.94),
                rgba(24, 22, 19, 0.90)
            );
    }

    .ramsan-footer-content {
        padding: 60px 0 25px;
    }

    .ramsan-footer-about {
        padding-right: 0;

        margin-bottom: 45px;
    }

    .ramsan-footer-logo img {
        max-width: 175px;
    }

    .ramsan-footer-description {
        font-size: 12px;

        line-height: 1.8;
    }

    .ramsan-footer-widget {
        margin-bottom: 35px;
    }

    .ramsan-footer-widget h3 {
        font-size: 22px;
    }

    .ramsan-footer-bottom-inner {
        min-height: auto;

        flex-direction: column;

        align-items: center;

        justify-content: center;

        padding: 20px 0;

        text-align: center;

        gap: 7px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-footer-content {
        padding: 50px 0 20px;
    }

    .ramsan-footer-description {
        font-size: 11px;
    }

    .ramsan-footer-contact a {
        font-size: 11px;
    }

    .ramsan-footer-widget h3 {
        font-size: 20px;
    }

    .ramsan-footer-widget ul li a {
        font-size: 10px;
    }

    .ramsan-footer-feature strong {
        font-size: 10px;
    }

}
/* Desktop menu text only */
@media (min-width: 992px) {

    .mainmenu-area .navigation > li > a {
        color: #ffffff !important;
    }

    .mainmenu-area .navigation > li:hover > a {
        color: #ffffff !important;
    }

    /* Desktop dropdown text */
    .mainmenu-area .navigation > li > ul > li > a {
        color: #ffffff !important;
    }

    .mainmenu-area .navigation > li > ul > li:hover > a {
        color: #ffffff !important;
    }

}
/* =========================================
   DESKTOP MENU - TEXT + DROPDOWN HOVER
   MOBILE KO TOUCH NAHI KAREGA
========================================= */

@media (min-width: 992px) {

    /* Main menu text */
    .mainmenu-area .navigation > li > a {
        color: #ffffff !important;
    }

    /* Main menu hover */
    .mainmenu-area .navigation > li:hover > a {
        color: #c8a45a !important;
    }


    /* Dropdown text */
    .mainmenu-area .navigation > li > ul > li > a {
        color: #ffffff !important;
    }

    /* Dropdown item hover */
    .mainmenu-area .navigation > li > ul > li:hover > a {
        color: #c8a45a !important;
    }

    /* Dropdown item active/current */
    .mainmenu-area .navigation > li > ul > li.current > a,
    .mainmenu-area .navigation > li > ul > li.active > a {
        color: #c8a45a !important;
    }
}
/* about */
/* =====================================================
   ABOUT PAGE INNER HERO
===================================================== */

.ramsan-about-hero {
    position: relative;

    width: 100%;
    height: 430px;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;
}


/* =====================================================
   BACKGROUND IMAGE
===================================================== */

.ramsan-about-hero-bg {
    position: absolute;
    inset: 0;

    background-image:
        url("../images/slider/about-small.jpeg");

    background-size: cover;
    background-position: center center;

    transform: scale(1.02);
}


/* =====================================================
   DARK OVERLAY
===================================================== */

.ramsan-about-hero-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(25, 23, 20, 0.72),
            rgba(25, 23, 20, 0.42),
            rgba(25, 23, 20, 0.72)
        );
}


/* =====================================================
   CONTENT
===================================================== */

.ramsan-about-hero-content {
    position: relative;

    z-index: 2;

    width: 100%;

    padding: 0 20px;

    text-align: center;
}


/* =====================================================
   KICKER
===================================================== */

.ramsan-about-hero-kicker {
    display: block;

    margin-bottom: 14px;

    color: #d2ae6d;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


/* =====================================================
   TITLE
===================================================== */

.ramsan-about-hero-content h1 {
    margin: 0;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 58px;

    font-weight: 400;

    line-height: 1.1;
}


/* =====================================================
   SUBTITLE
===================================================== */

.ramsan-about-hero-content p {
    margin: 13px 0 0;

    color: rgba(255, 255, 255, 0.82);

    font-size: 13px;

    font-weight: 400;

    letter-spacing: 0.8px;
}


/* =====================================================
   DECORATIVE LINE
===================================================== */

.ramsan-about-hero-line {
    width: 45px;
    height: 1px;

    margin: 22px auto;

    background: #c8a45a;
}


/* =====================================================
   BREADCRUMB
===================================================== */

.ramsan-about-breadcrumb {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    font-size: 10px;

    letter-spacing: 0.5px;
}

.ramsan-about-breadcrumb a {
    color: #d2ae6d;

    text-decoration: none;

    transition: color 0.3s ease;
}

.ramsan-about-breadcrumb a:hover {
    color: #fff;
}

.ramsan-about-breadcrumb span {
    color: rgba(255, 255, 255, 0.55);
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-about-hero {
        height: 400px;
    }

    .ramsan-about-hero-content h1 {
        font-size: 52px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-about-hero {
        height: 360px;
    }

    .ramsan-about-hero-content h1 {
        font-size: 46px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-about-hero {
        height: 320px;
    }

    .ramsan-about-hero-bg {
        background-position: center center;
    }

    .ramsan-about-hero-kicker {
        font-size: 8px;

        letter-spacing: 2.2px;
    }

    .ramsan-about-hero-content h1 {
        font-size: 38px;
    }

    .ramsan-about-hero-content p {
        font-size: 11px;

        line-height: 1.6;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-about-hero {
        height: 290px;
    }

    .ramsan-about-hero-content h1 {
        font-size: 34px;
    }

    .ramsan-about-hero-line {
        margin: 18px auto;
    }

}
/* =====================================================
   ABOUT HOTEL RAMSANPLAZA
===================================================== */

.ramsan-about-main {
    width: 100%;

    padding: 105px 0 95px;

    background: #f4f0e8;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-about-main .container {
    width: 100%;

    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-about-heading {
    max-width: 800px;

    margin: 0 auto 55px;

    text-align: center;
}


.ramsan-about-eyebrow {
    display: block;

    margin-bottom: 14px;

    color: #b28b43;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.ramsan-about-heading h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 52px;

    font-weight: 400;

    line-height: 1.1;
}


.ramsan-about-heading h2 span {
    color: #b28b43;
}


.ramsan-about-heading-line {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    margin: 20px 0;
}


.ramsan-about-heading-line span {
    width: 40px;
    height: 1px;

    background: #c8a45a;
}


.ramsan-about-heading-line i {
    color: #c8a45a;

    font-size: 7px;
}


.ramsan-about-heading p {
    max-width: 620px;

    margin: 0 auto;

    color: #716b62;

    font-size: 13px;

    line-height: 1.8;
}


/* =====================================================
   BIG IMAGE
===================================================== */

.ramsan-about-big-image {
    position: relative;

    width: 100%;

    height: 540px;

    overflow: hidden;

    background: #ddd;
}


.ramsan-about-big-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform 0.8s ease;
}


.ramsan-about-big-image:hover img {
    transform: scale(1.025);
}


/* =====================================================
   IMAGE OVERLAY
===================================================== */

.ramsan-about-image-overlay {
    position: absolute;

    left: 0;
    bottom: 0;

    width: 100%;

    padding: 75px 50px 35px;

    background:
        linear-gradient(
            to top,
            rgba(25, 23, 20, 0.78),
            rgba(25, 23, 20, 0)
        );

    color: #fff;
}


.ramsan-about-image-overlay span {
    display: block;

    margin-bottom: 7px;

    color: #d0aa61;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 2.5px;
}


.ramsan-about-image-overlay strong {
    display: block;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 26px;

    font-weight: 400;
}


/* =====================================================
   CONTENT AREA
===================================================== */

.ramsan-about-body {
    display: grid;

    grid-template-columns: 0.75fr 1.25fr;

    gap: 100px;

    padding: 75px 70px 70px;

    background: #ebe5db;
}


/* =====================================================
   CONTENT LEFT
===================================================== */

.ramsan-about-body-left {
    padding-top: 5px;
}


.ramsan-about-small-title {
    position: relative;

    display: inline-block;

    padding-left: 42px;

    margin-bottom: 18px;

    color: #b28b43;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}


.ramsan-about-small-title::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 28px;
    height: 1px;

    background: #c8a45a;
}


.ramsan-about-body-left h3 {
    max-width: 350px;

    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 42px;

    font-weight: 400;

    line-height: 1.12;
}


.ramsan-about-body-left h3 span {
    display: block;

    color: #b28b43;
}


/* =====================================================
   CONTENT RIGHT
===================================================== */

.ramsan-about-body-right {
    max-width: 650px;
}


.ramsan-about-body-right p {
    margin: 0 0 17px;

    color: #6c665e;

    font-size: 12px;

    line-height: 1.9;
}


.ramsan-about-body-right .ramsan-about-lead {
    margin-bottom: 23px;

    color: #3f3a34;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;

    line-height: 1.6;
}


/* =====================================================
   HIGHLIGHTS
===================================================== */

.ramsan-about-highlights {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    border-bottom: 1px solid
        rgba(40, 37, 31, 0.13);
}


.ramsan-about-highlight {
    position: relative;

    min-height: 205px;

    padding: 35px 35px 30px;

    border-right: 1px solid
        rgba(40, 37, 31, 0.13);
}


.ramsan-about-highlight:last-child {
    border-right: none;
}


.ramsan-about-highlight-number {
    display: block;

    margin-bottom: 20px;

    color: #c8a45a;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;
}


.ramsan-about-highlight h4 {
    margin: 0 0 10px;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;

    font-weight: 400;
}


.ramsan-about-highlight p {
    max-width: 230px;

    margin: 0;

    color: #777169;

    font-size: 10px;

    line-height: 1.8;
}


/* =====================================================
   BOTTOM CTA
===================================================== */

.ramsan-about-bottom {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 25px;

    padding-top: 35px;
}


.ramsan-about-bottom-line {
    width: 75px;
    height: 1px;

    background: #c8a45a;
}


.ramsan-about-bottom a {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #28251f;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 1.3px;

    text-transform: uppercase;

    text-decoration: none;

    transition: color 0.3s ease;
}


.ramsan-about-bottom a i {
    color: #b28b43;

    transition:
        transform 0.3s ease;
}


.ramsan-about-bottom a:hover {
    color: #b28b43;
}


.ramsan-about-bottom a:hover i {
    transform: translateX(5px);
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-about-main {
        padding: 95px 0 85px;
    }

    .ramsan-about-heading h2 {
        font-size: 47px;
    }

    .ramsan-about-big-image {
        height: 500px;
    }

    .ramsan-about-body {
        gap: 60px;

        padding-left: 50px;
        padding-right: 50px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-about-main {
        padding: 80px 0 70px;
    }

    .ramsan-about-heading {
        margin-bottom: 45px;
    }

    .ramsan-about-heading h2 {
        font-size: 40px;
    }

    .ramsan-about-big-image {
        height: 420px;
    }

    .ramsan-about-body {
        grid-template-columns: 1fr;

        gap: 35px;

        padding: 55px 45px;
    }

    .ramsan-about-body-left h3 {
        max-width: 500px;

        font-size: 37px;
    }

    .ramsan-about-body-right {
        max-width: 100%;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-about-main {
        padding: 65px 0 55px;
    }

    .ramsan-about-main .container {
        padding-left: 15px;
        padding-right: 15px;
    }


    /* Heading */

    .ramsan-about-heading {
        margin-bottom: 35px;
    }

    .ramsan-about-eyebrow {
        font-size: 8px;

        letter-spacing: 2px;
    }

    .ramsan-about-heading h2 {
        font-size: 34px;

        line-height: 1.15;
    }

    .ramsan-about-heading p {
        font-size: 11px;

        line-height: 1.8;
    }


    /* Image */

    .ramsan-about-big-image {
        height: 330px;
    }

    .ramsan-about-image-overlay {
        padding: 65px 25px 25px;
    }

    .ramsan-about-image-overlay strong {
        font-size: 21px;
    }


    /* Content */

    .ramsan-about-body {
        padding: 45px 25px;

        gap: 30px;
    }

    .ramsan-about-body-left h3 {
        font-size: 32px;
    }

    .ramsan-about-body-right .ramsan-about-lead {
        font-size: 17px;
    }

    .ramsan-about-body-right p {
        font-size: 11px;

        line-height: 1.8;
    }


    /* Highlights */

    .ramsan-about-highlights {
        grid-template-columns: 1fr;
    }

    .ramsan-about-highlight {
        min-height: auto;

        padding: 30px 25px;

        border-right: none;

        border-bottom: 1px solid
            rgba(40, 37, 31, 0.13);
    }

    .ramsan-about-highlight:last-child {
        border-bottom: none;
    }

    .ramsan-about-highlight-number {
        margin-bottom: 12px;
    }


    /* CTA */

    .ramsan-about-bottom {
        gap: 12px;

        padding-top: 28px;
    }

    .ramsan-about-bottom-line {
        width: 25px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-about-main {
        padding: 55px 0 45px;
    }

    .ramsan-about-heading h2 {
        font-size: 30px;
    }

    .ramsan-about-big-image {
        height: 270px;
    }

    .ramsan-about-image-overlay {
        padding: 55px 20px 20px;
    }

    .ramsan-about-image-overlay strong {
        font-size: 18px;
    }

    .ramsan-about-body {
        padding: 38px 20px;
    }

    .ramsan-about-body-left h3 {
        font-size: 29px;
    }

    .ramsan-about-body-right .ramsan-about-lead {
        font-size: 15px;
    }

    .ramsan-about-highlight h4 {
        font-size: 18px;
    }

}
/* =====================================================
   OUR STORY - PREMIUM EDITORIAL
===================================================== */

.ramsan-story-section {
    position: relative;

    width: 100%;

    padding: 110px 0 90px;

    background: #eeeae2;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-story-section .container {
    position: relative;

    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;

    z-index: 2;
}


/* =====================================================
   WATERMARK
===================================================== */

.ramsan-story-watermark {
    position: absolute;

    top: 25px;
    right: -15px;

    color: rgba(40, 37, 31, 0.035);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 135px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 6px;

    white-space: nowrap;

    pointer-events: none;

    user-select: none;
}


/* =====================================================
   MAIN WRAPPER
===================================================== */

.ramsan-story-wrapper {
    display: grid;

    grid-template-columns:
        1fr 0.82fr;

    gap: 95px;

    align-items: center;
}


/* =====================================================
   LEFT CONTENT
===================================================== */

.ramsan-story-content {
    max-width: 600px;
}


/* =====================================================
   KICKER
===================================================== */

.ramsan-story-kicker {
    position: relative;

    display: inline-block;

    padding-left: 45px;

    margin-bottom: 25px;

    color: #b28b43;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}


.ramsan-story-kicker::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 30px;
    height: 1px;

    background: #c8a45a;
}


/* =====================================================
   NUMBER
===================================================== */

.ramsan-story-number {
    margin-bottom: 10px;

    color: #c8a45a;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 15px;

    letter-spacing: 2px;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-story-content h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 53px;

    font-weight: 400;

    line-height: 1.08;
}


.ramsan-story-content h2 span {
    display: block;

    color: #b28b43;
}


/* =====================================================
   DIVIDER
===================================================== */

.ramsan-story-divider {
    width: 55px;
    height: 1px;

    margin: 27px 0;

    background: #c8a45a;
}


/* =====================================================
   LEAD
===================================================== */

.ramsan-story-lead {
    max-width: 560px;

    margin: 0 0 22px;

    color: #3e3933;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 19px;

    line-height: 1.65;
}


/* =====================================================
   NORMAL PARAGRAPHS
===================================================== */

.ramsan-story-content > p:not(.ramsan-story-lead) {
    max-width: 560px;

    margin: 0 0 16px;

    color: #6d6860;

    font-size: 12px;

    line-height: 1.9;
}


/* =====================================================
   SIGNATURE
===================================================== */

.ramsan-story-signature {
    display: flex;

    align-items: center;

    gap: 16px;

    margin-top: 30px;

    padding-top: 22px;

    border-top: 1px solid
        rgba(40, 37, 31, 0.13);
}


.ramsan-story-sign-line {
    width: 40px;
    height: 1px;

    background: #c8a45a;
}


.ramsan-story-signature strong {
    display: block;

    margin-bottom: 3px;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 15px;

    font-weight: 400;
}


.ramsan-story-signature small {
    display: block;

    color: #8a847c;

    font-size: 8px;

    letter-spacing: 1.5px;

    text-transform: uppercase;
}


/* =====================================================
   RIGHT VISUAL
===================================================== */

.ramsan-story-visual {
    position: relative;

    width: 100%;

    padding: 18px 18px 55px 0;
}


/* =====================================================
   IMAGE
===================================================== */

.ramsan-story-image {
    position: relative;

    width: 100%;

    height: 570px;

    overflow: hidden;
}


.ramsan-story-image::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(20, 18, 15, 0.42),
            transparent 35%
        );

    pointer-events: none;
}


.ramsan-story-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform 0.8s ease;
}


.ramsan-story-image:hover img {
    transform: scale(1.035);
}


/* =====================================================
   IMAGE CAPTION
===================================================== */

.ramsan-story-image-caption {
    position: absolute;

    left: 25px;
    bottom: 75px;

    z-index: 3;
}


.ramsan-story-image-caption span {
    display: block;

    margin-bottom: 6px;

    color: #d2ae6d;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 2.5px;
}


.ramsan-story-image-caption strong {
    display: block;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 21px;

    font-weight: 400;
}


/* =====================================================
   DECORATIVE NUMBER
===================================================== */

.ramsan-story-image-number {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 90px;
    height: 90px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #c8a45a;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 26px;

    z-index: 4;
}


/* =====================================================
   BOTTOM QUOTE
===================================================== */

.ramsan-story-quote {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 18px;

    max-width: 850px;

    margin: 80px auto 0;

    padding-top: 30px;

    border-top: 1px solid
        rgba(40, 37, 31, 0.13);

    text-align: center;
}


.ramsan-story-quote-mark {
    color: #c8a45a;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 48px;

    line-height: 1;
}


.ramsan-story-quote p {
    margin: 0;

    color: #6d665d;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;

    font-style: italic;

    line-height: 1.6;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-story-section {
        padding: 95px 0 80px;
    }

    .ramsan-story-wrapper {
        gap: 65px;
    }

    .ramsan-story-content h2 {
        font-size: 46px;
    }

    .ramsan-story-image {
        height: 520px;
    }

    .ramsan-story-watermark {
        font-size: 105px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-story-section {
        padding: 80px 0 70px;
    }

    .ramsan-story-wrapper {
        grid-template-columns:
            1fr 0.9fr;

        gap: 40px;
    }

    .ramsan-story-content h2 {
        font-size: 38px;
    }

    .ramsan-story-lead {
        font-size: 16px;
    }

    .ramsan-story-content > p:not(.ramsan-story-lead) {
        font-size: 11px;
    }

    .ramsan-story-image {
        height: 440px;
    }

    .ramsan-story-watermark {
        font-size: 80px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-story-section {
        padding: 65px 0 55px;
    }

    .ramsan-story-watermark {
        top: 15px;
        right: -5px;

        font-size: 55px;

        letter-spacing: 2px;
    }


    /* Main Layout */

    .ramsan-story-wrapper {
        display: flex;

        flex-direction: column;

        gap: 45px;
    }


    /* Content */

    .ramsan-story-content {
        max-width: 100%;
    }

    .ramsan-story-kicker {
        margin-bottom: 20px;

        padding-left: 40px;

        font-size: 8px;
    }

    .ramsan-story-content h2 {
        font-size: 35px;

        line-height: 1.12;
    }

    .ramsan-story-divider {
        margin: 22px 0;
    }

    .ramsan-story-lead {
        font-size: 17px;

        line-height: 1.6;
    }

    .ramsan-story-content > p:not(.ramsan-story-lead) {
        font-size: 11px;

        line-height: 1.8;
    }


    /* Image */

    .ramsan-story-visual {
        padding: 10px 10px 45px 0;
    }

    .ramsan-story-image {
        height: 430px;
    }

    .ramsan-story-image-caption {
        left: 20px;
        bottom: 62px;
    }

    .ramsan-story-image-caption strong {
        font-size: 19px;
    }

    .ramsan-story-image-number {
        width: 72px;
        height: 72px;

        font-size: 21px;
    }


    /* Quote */

    .ramsan-story-quote {
        margin-top: 55px;

        gap: 10px;

        padding-top: 25px;
    }

    .ramsan-story-quote-mark {
        font-size: 38px;
    }

    .ramsan-story-quote p {
        font-size: 13px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-story-section {
        padding: 55px 0 45px;
    }

    .ramsan-story-watermark {
        font-size: 42px;
    }

    .ramsan-story-content h2 {
        font-size: 30px;
    }

    .ramsan-story-lead {
        font-size: 15px;
    }

    .ramsan-story-image {
        height: 360px;
    }

    .ramsan-story-image-caption strong {
        font-size: 17px;
    }

    .ramsan-story-quote p {
        font-size: 12px;
    }

}
/* =====================================================
   OUR PHILOSOPHY
===================================================== */

.ramsan-philosophy-section {
    position: relative;

    padding: 105px 0 95px;

    background: #f8f5ef;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-philosophy-section .container {
    position: relative;

    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;

    z-index: 2;
}


/* =====================================================
   WATERMARK
===================================================== */

.ramsan-philosophy-watermark {
    position: absolute;

    top: 20px;
    left: 50%;

    transform: translateX(-50%);

    color: rgba(40, 37, 31, 0.035);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 125px;

    font-weight: 700;

    letter-spacing: 8px;

    line-height: 1;

    white-space: nowrap;

    pointer-events: none;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-philosophy-heading {
    max-width: 780px;

    margin: 0 auto;

    text-align: center;
}


.ramsan-philosophy-kicker {
    display: block;

    margin-bottom: 17px;

    color: #b28b43;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.ramsan-philosophy-heading h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 52px;

    font-weight: 400;

    line-height: 1.1;
}


.ramsan-philosophy-heading h2 span {
    color: #b28b43;
}


.ramsan-philosophy-heading p {
    max-width: 650px;

    margin: 24px auto 0;

    color: #716b62;

    font-size: 12px;

    line-height: 1.9;
}


/* =====================================================
   PRINCIPLES
===================================================== */

.ramsan-philosophy-principles {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    margin-top: 70px;

    border-top: 1px solid
        rgba(40, 37, 31, 0.13);

    border-bottom: 1px solid
        rgba(40, 37, 31, 0.13);
}


/* =====================================================
   ITEM
===================================================== */

.ramsan-philosophy-item {
    min-height: 310px;

    padding: 35px 45px 40px;

    border-right: 1px solid
        rgba(40, 37, 31, 0.13);
}


.ramsan-philosophy-item:last-child {
    border-right: none;
}


/* =====================================================
   TOP
===================================================== */

.ramsan-philosophy-top {
    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 40px;
}


.ramsan-philosophy-number {
    color: #c8a45a;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;
}


.ramsan-philosophy-icon {
    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid
        rgba(200, 164, 90, 0.75);

    color: #b28b43;

    font-size: 13px;
}


/* =====================================================
   TITLE
===================================================== */

.ramsan-philosophy-item h3 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 27px;

    font-weight: 400;
}


/* =====================================================
   LINE
===================================================== */

.ramsan-philosophy-line {
    width: 35px;
    height: 1px;

    margin: 17px 0;

    background: #c8a45a;
}


/* =====================================================
   TEXT
===================================================== */

.ramsan-philosophy-item p {
    max-width: 260px;

    margin: 0;

    color: #756f67;

    font-size: 11px;

    line-height: 1.85;
}


/* =====================================================
   BOTTOM
===================================================== */

.ramsan-philosophy-bottom {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 25px;

    margin-top: 55px;
}


.ramsan-philosophy-bottom-line {
    width: 75px;
    height: 1px;

    background: #c8a45a;
}


.ramsan-philosophy-bottom-text {
    max-width: 570px;

    text-align: center;
}


.ramsan-philosophy-bottom-text span {
    display: block;

    margin-bottom: 10px;

    color: #b28b43;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 2px;
}


.ramsan-philosophy-bottom-text p {
    margin: 0;

    color: #59534b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 15px;

    font-style: italic;

    line-height: 1.6;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-philosophy-section {
        padding: 95px 0 85px;
    }

    .ramsan-philosophy-watermark {
        font-size: 105px;
    }

    .ramsan-philosophy-heading h2 {
        font-size: 47px;
    }

    .ramsan-philosophy-item {
        padding-left: 30px;
        padding-right: 30px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-philosophy-section {
        padding: 80px 0 70px;
    }

    .ramsan-philosophy-watermark {
        font-size: 80px;
    }

    .ramsan-philosophy-heading h2 {
        font-size: 40px;
    }

    .ramsan-philosophy-heading p {
        font-size: 11px;
    }

    .ramsan-philosophy-principles {
        margin-top: 55px;
    }

    .ramsan-philosophy-item {
        min-height: 290px;

        padding: 30px 22px;
    }

    .ramsan-philosophy-item h3 {
        font-size: 23px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-philosophy-section {
        padding: 65px 0 55px;
    }

    .ramsan-philosophy-watermark {
        top: 15px;

        font-size: 52px;

        letter-spacing: 3px;
    }

    .ramsan-philosophy-kicker {
        font-size: 8px;

        letter-spacing: 2px;
    }

    .ramsan-philosophy-heading h2 {
        font-size: 34px;

        line-height: 1.13;
    }

    .ramsan-philosophy-heading p {
        margin-top: 18px;

        font-size: 11px;

        line-height: 1.8;
    }


    /* Principles */

    .ramsan-philosophy-principles {
        display: block;

        margin-top: 45px;
    }

    .ramsan-philosophy-item {
        min-height: auto;

        padding: 30px 25px;

        border-right: none;

        border-bottom: 1px solid
            rgba(40, 37, 31, 0.13);
    }

    .ramsan-philosophy-item:last-child {
        border-bottom: none;
    }

    .ramsan-philosophy-top {
        margin-bottom: 25px;
    }

    .ramsan-philosophy-item h3 {
        font-size: 23px;
    }

    .ramsan-philosophy-item p {
        max-width: 100%;

        font-size: 11px;
    }


    /* Bottom */

    .ramsan-philosophy-bottom {
        gap: 12px;

        margin-top: 40px;
    }

    .ramsan-philosophy-bottom-line {
        width: 25px;
    }

    .ramsan-philosophy-bottom-text p {
        font-size: 12px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-philosophy-section {
        padding: 55px 0 45px;
    }

    .ramsan-philosophy-watermark {
        font-size: 40px;
    }

    .ramsan-philosophy-heading h2 {
        font-size: 30px;
    }

    .ramsan-philosophy-item {
        padding: 27px 20px;
    }

    .ramsan-philosophy-bottom-text p {
        font-size: 11px;
    }

}
/* =====================================================
   A PLACE FOR EVERY OCCASION
===================================================== */

.ramsan-occasion-section {
    width: 100%;

    padding: 105px 0 90px;

    background: #f4f0e8;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-occasion-section .container {
    width: 100%;

    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-occasion-heading {
    max-width: 760px;

    margin: 0 auto 65px;

    text-align: center;
}


.ramsan-occasion-kicker {
    display: block;

    margin-bottom: 16px;

    color: #b28b43;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.ramsan-occasion-heading h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 52px;

    font-weight: 400;

    line-height: 1.1;
}


.ramsan-occasion-heading h2 span {
    color: #b28b43;
}


.ramsan-occasion-heading p {
    max-width: 620px;

    margin: 23px auto 0;

    color: #716b62;

    font-size: 12px;

    line-height: 1.9;
}


/* =====================================================
   OCCASION LIST
===================================================== */

.ramsan-occasion-list {
    border-top: 1px solid
        rgba(40, 37, 31, 0.15);
}


/* =====================================================
   OCCASION ITEM
===================================================== */

.ramsan-occasion-item {
    display: grid;

    grid-template-columns:
        70px 1fr 1.05fr 100px;

    align-items: center;

    gap: 35px;

    min-height: 150px;

    padding: 25px 15px;

    border-bottom: 1px solid
        rgba(40, 37, 31, 0.15);

    transition:
        background 0.3s ease,
        padding-left 0.3s ease;
}


.ramsan-occasion-item:hover {
    background: #ebe5db;

    padding-left: 25px;
}


/* =====================================================
   NUMBER
===================================================== */

.ramsan-occasion-number {
    color: #c8a45a;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 18px;
}


/* =====================================================
   MAIN CONTENT
===================================================== */

.ramsan-occasion-main > span {
    display: block;

    margin-bottom: 7px;

    color: #b28b43;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 1.8px;
}


.ramsan-occasion-main h3 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 28px;

    font-weight: 400;

    line-height: 1.15;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ramsan-occasion-item > p {
    max-width: 400px;

    margin: 0;

    color: #716b62;

    font-size: 11px;

    line-height: 1.8;
}


/* =====================================================
   LINK
===================================================== */

.ramsan-occasion-item > a {
    display: inline-flex;

    align-items: center;

    justify-content: flex-end;

    gap: 9px;

    color: #28251f;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 1.2px;

    text-transform: uppercase;

    text-decoration: none;

    white-space: nowrap;

    transition:
        color 0.3s ease;
}


.ramsan-occasion-item > a i {
    color: #b28b43;

    transition:
        transform 0.3s ease;
}


.ramsan-occasion-item > a:hover {
    color: #b28b43;
}


.ramsan-occasion-item > a:hover i {
    transform: translateX(5px);
}


/* =====================================================
   BOTTOM
===================================================== */

.ramsan-occasion-bottom {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 20px;

    margin-top: 35px;
}


.ramsan-occasion-bottom span {
    width: 55px;
    height: 1px;

    background: #c8a45a;
}


.ramsan-occasion-bottom p {
    margin: 0;

    color: #8a8175;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 12px;

    font-style: italic;

    text-align: center;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-occasion-section {
        padding: 95px 0 80px;
    }

    .ramsan-occasion-heading h2 {
        font-size: 47px;
    }

    .ramsan-occasion-item {
        grid-template-columns:
            55px 1fr 1fr 85px;

        gap: 25px;
    }

    .ramsan-occasion-main h3 {
        font-size: 25px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-occasion-section {
        padding: 80px 0 70px;
    }

    .ramsan-occasion-heading {
        margin-bottom: 50px;
    }

    .ramsan-occasion-heading h2 {
        font-size: 40px;
    }

    .ramsan-occasion-item {
        grid-template-columns:
            45px 1fr 1fr;

        gap: 22px;

        min-height: 145px;
    }

    .ramsan-occasion-item > a {
        grid-column: 2 / 4;

        justify-content: flex-start;

        margin-top: -8px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-occasion-section {
        padding: 65px 0 55px;
    }

    .ramsan-occasion-section .container {
        padding-left: 18px;
        padding-right: 18px;
    }


    /* Heading */

    .ramsan-occasion-kicker {
        font-size: 8px;

        letter-spacing: 2px;
    }

    .ramsan-occasion-heading h2 {
        font-size: 34px;

        line-height: 1.13;
    }

    .ramsan-occasion-heading p {
        margin-top: 18px;

        font-size: 11px;

        line-height: 1.8;
    }


    /* List */

    .ramsan-occasion-heading {
        margin-bottom: 40px;
    }

    .ramsan-occasion-item {
        display: grid;

        grid-template-columns:
            35px 1fr;

        gap: 0 18px;

        min-height: auto;

        padding: 30px 5px;
    }


    .ramsan-occasion-item:hover {
        padding-left: 10px;
    }


    .ramsan-occasion-number {
        grid-row: 1 / 4;

        align-self: start;

        padding-top: 3px;

        font-size: 14px;
    }


    .ramsan-occasion-main {
        grid-column: 2;
    }


    .ramsan-occasion-main > span {
        font-size: 7px;

        letter-spacing: 1.5px;
    }


    .ramsan-occasion-main h3 {
        font-size: 23px;
    }


    .ramsan-occasion-item > p {
        grid-column: 2;

        max-width: 100%;

        margin-top: 12px;

        font-size: 10px;

        line-height: 1.8;
    }


    .ramsan-occasion-item > a {
        grid-column: 2;

        justify-content: flex-start;

        margin-top: 18px;

        font-size: 8px;
    }


    /* Bottom */

    .ramsan-occasion-bottom {
        gap: 10px;

        margin-top: 28px;
    }

    .ramsan-occasion-bottom span {
        width: 25px;
    }

    .ramsan-occasion-bottom p {
        font-size: 10px;

        line-height: 1.5;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-occasion-section {
        padding: 55px 0 45px;
    }

    .ramsan-occasion-heading h2 {
        font-size: 30px;
    }

    .ramsan-occasion-item {
        padding-left: 0;
        padding-right: 0;
    }

    .ramsan-occasion-item:hover {
        padding-left: 5px;
    }

    .ramsan-occasion-main h3 {
        font-size: 21px;
    }

}
/* =====================================================
   MASALA TREE DINING PHILOSOPHY
===================================================== */

.ramsan-dining-section {
    width: 100%;

    padding: 105px 0;

    background: #ebe5db;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-dining-section .container {
    width: 100%;

    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;
}


/* =====================================================
   MAIN LAYOUT
===================================================== */

.ramsan-dining-layout {
    display: grid;

    grid-template-columns:
        1fr 0.9fr;

    gap: 90px;

    align-items: center;
}


/* =====================================================
   IMAGE
===================================================== */

.ramsan-dining-image {
    position: relative;

    width: 100%;

    height: 570px;

    overflow: hidden;
}


.ramsan-dining-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform 0.8s ease;
}


.ramsan-dining-image:hover img {
    transform: scale(1.035);
}


/* =====================================================
   IMAGE LABEL
===================================================== */

.ramsan-dining-image-label {
    position: absolute;

    left: 0;
    bottom: 0;

    padding: 65px 35px 28px;

    width: 100%;

    background:
        linear-gradient(
            to top,
            rgba(25, 23, 20, 0.78),
            rgba(25, 23, 20, 0)
        );

    color: #fff;
}


.ramsan-dining-image-label span {
    display: block;

    margin-bottom: 5px;

    color: #d2ae6d;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 2.5px;
}


.ramsan-dining-image-label strong {
    display: block;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;

    font-weight: 400;
}


/* =====================================================
   CONTENT
===================================================== */

.ramsan-dining-content {
    max-width: 500px;
}


/* =====================================================
   KICKER
===================================================== */

.ramsan-dining-kicker {
    position: relative;

    display: inline-block;

    padding-left: 43px;

    margin-bottom: 18px;

    color: #b28b43;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}


.ramsan-dining-kicker::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 28px;
    height: 1px;

    background: #c8a45a;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-dining-content h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 49px;

    font-weight: 400;

    line-height: 1.08;
}


.ramsan-dining-content h2 span {
    display: block;

    color: #b28b43;
}


/* =====================================================
   LINE
===================================================== */

.ramsan-dining-line {
    width: 50px;
    height: 1px;

    margin: 25px 0;

    background: #c8a45a;
}


/* =====================================================
   LEAD
===================================================== */

.ramsan-dining-lead {
    margin: 0 0 20px;

    color: #3f3a34;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 19px;

    line-height: 1.6;
}


/* =====================================================
   TEXT
===================================================== */

.ramsan-dining-content > p:not(.ramsan-dining-lead) {
    margin: 0 0 15px;

    color: #6e6860;

    font-size: 12px;

    line-height: 1.85;
}


/* =====================================================
   DINING POINTS
===================================================== */

.ramsan-dining-points {
    display: flex;

    gap: 0;

    margin-top: 28px;

    padding: 20px 0;

    border-top: 1px solid
        rgba(40, 37, 31, 0.13);

    border-bottom: 1px solid
        rgba(40, 37, 31, 0.13);
}


.ramsan-dining-points > div {
    flex: 1;

    padding: 0 18px;

    border-right: 1px solid
        rgba(40, 37, 31, 0.13);
}


.ramsan-dining-points > div:first-child {
    padding-left: 0;
}


.ramsan-dining-points > div:last-child {
    padding-right: 0;

    border-right: none;
}


.ramsan-dining-points span {
    display: block;

    margin-bottom: 5px;

    color: #c8a45a;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 13px;
}


.ramsan-dining-points strong {
    display: block;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 13px;

    font-weight: 400;

    white-space: nowrap;
}


/* =====================================================
   BUTTON
===================================================== */

.ramsan-dining-button {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    margin-top: 30px;

    padding: 14px 21px;

    background: #28251f;

    border: 1px solid #28251f;

    color: #fff;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 1.2px;

    text-transform: uppercase;

    text-decoration: none;

    transition:
        background 0.3s ease,
        color 0.3s ease;
}


.ramsan-dining-button i {
    color: #c8a45a;

    transition:
        transform 0.3s ease;
}


.ramsan-dining-button:hover {
    background: #c8a45a;

    border-color: #c8a45a;

    color: #28251f;
}


.ramsan-dining-button:hover i {
    color: #28251f;

    transform: translateX(5px);
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-dining-section {
        padding: 95px 0;
    }

    .ramsan-dining-layout {
        gap: 60px;
    }

    .ramsan-dining-image {
        height: 520px;
    }

    .ramsan-dining-content h2 {
        font-size: 44px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-dining-section {
        padding: 80px 0;
    }

    .ramsan-dining-layout {
        gap: 40px;
    }

    .ramsan-dining-image {
        height: 440px;
    }

    .ramsan-dining-content h2 {
        font-size: 37px;
    }

    .ramsan-dining-lead {
        font-size: 16px;
    }

    .ramsan-dining-content > p:not(.ramsan-dining-lead) {
        font-size: 11px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-dining-section {
        padding: 65px 0 55px;
    }

    .ramsan-dining-section .container {
        padding-left: 18px;
        padding-right: 18px;
    }

    .ramsan-dining-layout {
        display: flex;

        flex-direction: column;

        gap: 40px;
    }


    /* Image */

    .ramsan-dining-image {
        height: 350px;
    }

    .ramsan-dining-image-label {
        padding: 55px 22px 22px;
    }

    .ramsan-dining-image-label strong {
        font-size: 21px;
    }


    /* Content */

    .ramsan-dining-kicker {
        font-size: 8px;

        padding-left: 40px;
    }

    .ramsan-dining-content h2 {
        font-size: 34px;

        line-height: 1.12;
    }

    .ramsan-dining-lead {
        font-size: 17px;

        line-height: 1.6;
    }

    .ramsan-dining-content > p:not(.ramsan-dining-lead) {
        font-size: 11px;

        line-height: 1.8;
    }


    /* Points */

    .ramsan-dining-points {
        margin-top: 25px;
    }

    .ramsan-dining-points > div {
        padding: 0 10px;
    }

    .ramsan-dining-points > div:first-child {
        padding-left: 0;
    }

    .ramsan-dining-points > div:last-child {
        padding-right: 0;
    }

    .ramsan-dining-points strong {
        font-size: 10px;

        white-space: normal;

        line-height: 1.4;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-dining-section {
        padding: 55px 0 45px;
    }

    .ramsan-dining-image {
        height: 285px;
    }

    .ramsan-dining-content h2 {
        font-size: 30px;
    }

    .ramsan-dining-lead {
        font-size: 15px;
    }

    .ramsan-dining-points strong {
        font-size: 9px;
    }

}
/* =====================================================
   STAY. CELEBRATE. DINE. REMEMBER.
===================================================== */

.ramsan-memory-section {
    width: 100%;

    padding: 110px 0 100px;

    background: #ebe5db;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-memory-section .container {
    width: 100%;

    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-memory-heading {
    max-width: 850px;

    margin: 0 auto 55px;

    text-align: center;
}


.ramsan-memory-heading > span {
    display: block;

    margin-bottom: 18px;

    color: #b28b43;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.ramsan-memory-heading h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 58px;

    font-weight: 400;

    line-height: 1.12;

    letter-spacing: -0.5px;
}


.ramsan-memory-heading h2 strong {
    color: #b28b43;

    font-weight: 400;
}


.ramsan-memory-heading h2 em {
    color: #b28b43;

    font-weight: 400;

    font-style: italic;
}


.ramsan-memory-heading p {
    max-width: 650px;

    margin: 25px auto 0;

    color: #716b62;

    font-size: 12px;

    line-height: 1.9;
}


/* =====================================================
   IMAGE
===================================================== */

.ramsan-memory-image {
    position: relative;

    width: 100%;

    height: 480px;

    overflow: hidden;
}


.ramsan-memory-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform 0.9s ease;
}


.ramsan-memory-image:hover img {
    transform: scale(1.025);
}


/* =====================================================
   IMAGE OVERLAY
===================================================== */

.ramsan-memory-overlay {
    position: absolute;

    left: 0;
    bottom: 0;

    width: 100%;

    padding: 100px 45px 35px;

    background:
        linear-gradient(
            to top,
            rgba(25, 23, 20, 0.72),
            rgba(25, 23, 20, 0)
        );

    color: #fff;
}


.ramsan-memory-overlay span {
    display: block;

    margin-bottom: 8px;

    color: #d2ae6d;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 2.5px;
}


.ramsan-memory-overlay h3 {
    margin: 0;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 27px;

    font-weight: 400;
}


/* =====================================================
   BOTTOM
===================================================== */

.ramsan-memory-bottom {
    display: flex;

    justify-content: center;

    padding-top: 35px;
}


.ramsan-memory-bottom a {
    display: inline-flex;

    align-items: center;

    gap: 13px;

    color: #28251f;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 1.4px;

    text-transform: uppercase;

    text-decoration: none;

    transition:
        color 0.3s ease;
}


.ramsan-memory-bottom a i {
    color: #b28b43;

    transition:
        transform 0.3s ease;
}


.ramsan-memory-bottom a:hover {
    color: #b28b43;
}


.ramsan-memory-bottom a:hover i {
    transform: translateX(6px);
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-memory-section {
        padding: 95px 0 85px;
    }

    .ramsan-memory-heading h2 {
        font-size: 51px;
    }

    .ramsan-memory-image {
        height: 440px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-memory-section {
        padding: 80px 0 70px;
    }

    .ramsan-memory-heading {
        margin-bottom: 45px;
    }

    .ramsan-memory-heading h2 {
        font-size: 43px;
    }

    .ramsan-memory-heading p {
        font-size: 11px;
    }

    .ramsan-memory-image {
        height: 390px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-memory-section {
        padding: 65px 0 55px;
    }

    .ramsan-memory-section .container {
        padding-left: 18px;
        padding-right: 18px;
    }


    /* Heading */

    .ramsan-memory-heading {
        margin-bottom: 35px;
    }

    .ramsan-memory-heading > span {
        font-size: 8px;

        letter-spacing: 2px;
    }

    .ramsan-memory-heading h2 {
        font-size: 35px;

        line-height: 1.18;
    }

    .ramsan-memory-heading p {
        margin-top: 18px;

        font-size: 11px;

        line-height: 1.8;
    }


    /* Image */

    .ramsan-memory-image {
        height: 330px;
    }

    .ramsan-memory-overlay {
        padding: 70px 25px 25px;
    }

    .ramsan-memory-overlay h3 {
        font-size: 21px;
    }


    /* Bottom */

    .ramsan-memory-bottom {
        padding-top: 28px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {
    .ramsan-memory-section {
        padding: 55px 0 45px;
    }
    .ramsan-memory-heading h2 {
        font-size: 29px;
    }
    .ramsan-memory-image {
        height: 270px;
    }
    .ramsan-memory-overlay {
        padding: 55px 20px 20px;
    }
    .ramsan-memory-overlay h3 {
        font-size: 18px;
    }
}
/* deluxe room */
/* =====================================================
   DELUXE ROOM HERO
===================================================== */

.ramsan-deluxe-hero {
    position: relative;

    width: 100%;
    height: 650px;

    overflow: hidden;

    background: #28251f;
}


/* =====================================================
   HERO IMAGE
===================================================== */

.ramsan-deluxe-hero-image {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    overflow: hidden;
}


.ramsan-deluxe-hero-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transform: scale(1.01);

    transition:
        transform 1.2s ease;
}


.ramsan-deluxe-hero:hover
.ramsan-deluxe-hero-image img {
    transform: scale(1.025);
}


/* =====================================================
   SOFT OVERLAY
===================================================== */

.ramsan-deluxe-hero-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(32, 29, 24, 0.72) 0%,
            rgba(32, 29, 24, 0.45) 34%,
            rgba(32, 29, 24, 0.08) 70%,
            rgba(32, 29, 24, 0.20) 100%
        );

    z-index: 1;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-deluxe-hero .container {
    position: relative;

    width: 100%;
    max-width: 1200px;

    height: 100%;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;

    z-index: 2;
}


/* =====================================================
   MAIN CONTENT
===================================================== */

.ramsan-deluxe-hero-content {
    position: absolute;

    top: 50%;
    left: 15px;
    right: 15px;

    transform: translateY(-50%);

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 70px;
}


/* =====================================================
   LEFT TEXT
===================================================== */

.ramsan-deluxe-hero-text {
    width: 58%;

    max-width: 610px;

    color: #fff;
}


.ramsan-deluxe-hero-kicker {
    position: relative;

    display: inline-block;

    padding-left: 45px;

    margin-bottom: 18px;

    color: #d2ae6d;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.ramsan-deluxe-hero-kicker::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 30px;
    height: 1px;

    background: #d2ae6d;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-deluxe-hero-text h1 {
    margin: 0;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 72px;

    font-weight: 400;

    line-height: 0.98;

    text-shadow:
        0 2px 12px rgba(0, 0, 0, 0.18);
}


.ramsan-deluxe-hero-text h1 span {
    display: block;

    color: #d2ae6d;

    font-style: italic;

    font-weight: 400;
}


/* =====================================================
   GOLD LINE
===================================================== */

.ramsan-deluxe-hero-line {
    width: 55px;
    height: 1px;

    margin: 25px 0;

    background: #d0aa61;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ramsan-deluxe-hero-text p {
    max-width: 500px;

    margin: 0;

    color: rgba(255, 255, 255, 0.88);

    font-size: 13px;

    line-height: 1.85;
}


/* =====================================================
   BUTTON
===================================================== */

.ramsan-deluxe-hero-buttons {
    margin-top: 28px;
}


.ramsan-deluxe-hero-btn {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    min-height: 46px;

    padding: 0 22px;

    background: #c8a45a;

    border: 1px solid #c8a45a;

    color: #28251f;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 1.3px;

    text-transform: uppercase;

    text-decoration: none;

    transition:
        background 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease;
}


.ramsan-deluxe-hero-btn i {
    transition:
        transform 0.3s ease;
}


.ramsan-deluxe-hero-btn:hover {
    background: #fff;

    border-color: #fff;

    color: #28251f;
}


.ramsan-deluxe-hero-btn:hover i {
    transform: translateX(5px);
}


/* =====================================================
   ROOM INFO PANEL
===================================================== */

.ramsan-deluxe-hero-info {
    width: 235px;

    min-height: 290px;

    padding: 27px 25px;

    background: rgba(244, 240, 232, 0.94);

    border: 1px solid
        rgba(200, 164, 90, 0.75);

    box-shadow:
        0 18px 45px rgba(0, 0, 0, 0.18);

    backdrop-filter: blur(5px);

    color: #28251f;
}


/* =====================================================
   INFO TOP
===================================================== */

.ramsan-deluxe-info-top {
    display: flex;

    align-items: center;

    justify-content: space-between;

    padding-bottom: 18px;

    border-bottom: 1px solid
        rgba(40, 37, 31, 0.12);
}


.ramsan-deluxe-info-top span {
    color: #b28b43;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 1.8px;
}


.ramsan-deluxe-info-top i {
    color: #b28b43;

    font-size: 17px;
}


/* =====================================================
   SIZE
===================================================== */

.ramsan-deluxe-info-size {
    display: flex;

    align-items: baseline;

    gap: 8px;

    margin-top: 30px;
}


.ramsan-deluxe-info-size strong {
    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 54px;

    font-weight: 400;

    line-height: 1;
}


.ramsan-deluxe-info-size span {
    color: #8a8175;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 1px;
}


/* =====================================================
   INFO DIVIDER
===================================================== */

.ramsan-deluxe-info-divider {
    width: 35px;
    height: 1px;

    margin: 22px 0;

    background: #c8a45a;
}


/* =====================================================
   INFO TEXT
===================================================== */

.ramsan-deluxe-info-text span {
    display: block;

    margin-bottom: 8px;

    color: #b28b43;

    font-size: 7px;

    font-weight: 600;

    letter-spacing: 1.7px;
}


.ramsan-deluxe-info-text p {
    max-width: 170px;

    margin: 0;

    color: #625d56;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 13px;

    line-height: 1.55;
}


/* =====================================================
   SCROLL INDICATOR
===================================================== */

.ramsan-deluxe-scroll {
    position: absolute;

    left: 15px;
    bottom: 28px;

    display: flex;

    align-items: center;

    gap: 12px;

    color: rgba(255, 255, 255, 0.8);
}


.ramsan-deluxe-scroll span {
    position: relative;

    width: 1px;
    height: 34px;

    background: #d0aa61;
}


.ramsan-deluxe-scroll small {
    font-size: 7px;

    font-weight: 600;

    letter-spacing: 2px;

    writing-mode: vertical-rl;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-deluxe-hero {
        height: 600px;
    }

    .ramsan-deluxe-hero-content {
        gap: 45px;
    }

    .ramsan-deluxe-hero-text h1 {
        font-size: 62px;
    }

    .ramsan-deluxe-hero-info {
        width: 215px;

        min-height: 270px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-deluxe-hero {
        height: 560px;
    }

    .ramsan-deluxe-hero-content {
        gap: 35px;
    }

    .ramsan-deluxe-hero-text {
        width: 60%;
    }

    .ramsan-deluxe-hero-text h1 {
        font-size: 50px;
    }

    .ramsan-deluxe-hero-text p {
        font-size: 11px;

        max-width: 430px;
    }

    .ramsan-deluxe-hero-info {
        width: 195px;

        min-height: 245px;

        padding: 22px 20px;
    }

    .ramsan-deluxe-info-size {
        margin-top: 22px;
    }

    .ramsan-deluxe-info-size strong {
        font-size: 45px;
    }

    .ramsan-deluxe-scroll {
        display: none;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-deluxe-hero {
        height: 610px;
    }


    /* Mobile overlay */

    .ramsan-deluxe-hero-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(32, 29, 24, 0.08) 0%,
                rgba(32, 29, 24, 0.25) 35%,
                rgba(32, 29, 24, 0.78) 100%
            );
    }


    /* Content */

    .ramsan-deluxe-hero-content {
        top: auto;
        bottom: 30px;

        left: 18px;
        right: 18px;

        transform: none;

        display: flex;

        flex-direction: column;

        align-items: stretch;

        gap: 25px;
    }


    .ramsan-deluxe-hero-text {
        width: 100%;

        max-width: none;

        text-align: center;
    }


    .ramsan-deluxe-hero-kicker {
        padding-left: 0;

        margin-bottom: 12px;

        font-size: 8px;

        letter-spacing: 2px;
    }


    .ramsan-deluxe-hero-kicker::before {
        display: none;
    }


    .ramsan-deluxe-hero-text h1 {
        font-size: 42px;

        line-height: 1.05;
    }


    .ramsan-deluxe-hero-text h1 span {
        display: inline;
    }


    .ramsan-deluxe-hero-line {
        margin: 16px auto;
    }


    .ramsan-deluxe-hero-text p {
        max-width: 430px;

        margin: 0 auto;

        font-size: 10px;

        line-height: 1.7;
    }


    .ramsan-deluxe-hero-buttons {
        margin-top: 20px;
    }


    .ramsan-deluxe-hero-btn {
        min-height: 42px;

        padding: 0 20px;
    }


    /* Info Panel */

    .ramsan-deluxe-hero-info {
        width: 100%;

        min-height: auto;

        padding: 15px 18px;

        display: flex;

        align-items: center;

        justify-content: space-between;

        gap: 15px;

        text-align: left;
    }


    .ramsan-deluxe-info-top {
        width: auto;

        padding: 0;

        border: none;
    }


    .ramsan-deluxe-info-top i {
        display: none;
    }


    .ramsan-deluxe-info-size {
        margin: 0;

        gap: 5px;
    }


    .ramsan-deluxe-info-size strong {
        font-size: 31px;
    }


    .ramsan-deluxe-info-divider {
        width: 1px;
        height: 30px;

        margin: 0;
    }


    .ramsan-deluxe-info-text {
        flex: 1;
    }


    .ramsan-deluxe-info-text span {
        margin-bottom: 3px;
    }


    .ramsan-deluxe-info-text p {
        max-width: none;

        font-size: 10px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-deluxe-hero {
        height: 590px;
    }

    .ramsan-deluxe-hero-content {
        bottom: 22px;

        gap: 20px;
    }

    .ramsan-deluxe-hero-text h1 {
        font-size: 35px;
    }

    .ramsan-deluxe-hero-text p {
        font-size: 9px;
    }

    .ramsan-deluxe-hero-info {
        padding: 13px 14px;
    }

    .ramsan-deluxe-info-top span {
        font-size: 7px;
    }

    .ramsan-deluxe-info-size strong {
        font-size: 27px;
    }

    .ramsan-deluxe-info-text p {
        font-size: 9px;
    }

}
/* =====================================================
   DELUXE ROOM — 3 IMAGE PREMIUM SECTION
===================================================== */

.ramsan-deluxe-welcome {
    width: 100%;

    padding: 110px 0 95px;

    background: #f4f0e8;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-deluxe-welcome .container {
    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-deluxe-welcome-heading {
    max-width: 760px;

    margin: 0 auto 60px;

    text-align: center;
}


.welcome-kicker {
    display: block;

    margin-bottom: 14px;

    color: #b28b43;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.ramsan-deluxe-welcome-heading h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 62px;

    font-weight: 400;

    line-height: 1;
}


.welcome-heading-line {
    width: 45px;
    height: 1px;

    margin: 22px auto 18px;

    background: #c8a45a;
}


.ramsan-deluxe-welcome-heading p {
    margin: 0;

    color: #716b62;

    font-size: 12px;

    line-height: 1.8;
}


/* =====================================================
   THREE IMAGE AREA
===================================================== */

.ramsan-deluxe-three-images {
    position: relative;

    width: 100%;

    height: 590px;

    margin-bottom: 85px;
}


/* =====================================================
   COMMON IMAGE
===================================================== */

.deluxe-image {
    position: absolute;

    overflow: hidden;

    background: #ddd;
}


.deluxe-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.8s ease;
}


.deluxe-image:hover img {
    transform: scale(1.04);
}


/* =====================================================
   IMAGE 1 — MAIN
===================================================== */

.deluxe-image-main {
    top: 0;
    left: 5%;

    width: 57%;
    height: 500px;

    z-index: 1;
}


/* =====================================================
   IMAGE 2
===================================================== */

.deluxe-image-two {
    top: 85px;
    right: 4%;

    width: 32%;
    height: 225px;

    z-index: 2;

    border: 8px solid #f4f0e8;
}


/* =====================================================
   IMAGE 3
===================================================== */

.deluxe-image-three {
    right: 13%;
    bottom: 0;

    width: 31%;
    height: 225px;

    z-index: 3;

    border: 8px solid #f4f0e8;
}


/* =====================================================
   MAIN IMAGE CAPTION
===================================================== */

.deluxe-image-caption {
    position: absolute;

    left: 0;
    bottom: 0;

    width: 100%;

    padding: 70px 30px 25px;

    background:
        linear-gradient(
            to top,
            rgba(30, 27, 23, 0.72),
            rgba(30, 27, 23, 0)
        );

    color: #fff;
}


.deluxe-image-caption span {
    display: block;

    margin-bottom: 5px;

    color: #d0aa61;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 12px;
}


.deluxe-image-caption strong {
    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 19px;

    font-weight: 400;
}


/* =====================================================
   SMALL IMAGE NUMBER
===================================================== */

.deluxe-small-number {
    position: absolute;

    right: 12px;
    bottom: 12px;

    width: 30px;
    height: 30px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: rgba(40, 37, 31, 0.82);

    color: #d0aa61;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 10px;
}


/* =====================================================
   ROOM SIZE CARD
===================================================== */

.deluxe-size-card {
    position: absolute;

    left: 51%;

    bottom: 35px;

    width: 125px;
    height: 125px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    background: #28251f;

    border: 1px solid #c8a45a;

    z-index: 5;

    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.18);
}


.deluxe-size-card span {
    margin-bottom: 6px;

    color: #c8a45a;

    font-size: 7px;

    font-weight: 600;

    letter-spacing: 2px;
}


.deluxe-size-card strong {
    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 38px;

    font-weight: 400;

    line-height: 1;
}


.deluxe-size-card small {
    margin-top: 5px;

    color: rgba(255,255,255,0.65);

    font-size: 7px;

    letter-spacing: 1.5px;
}


/* =====================================================
   CONTENT AREA
===================================================== */

.ramsan-deluxe-welcome-content {
    display: grid;

    grid-template-columns: 0.8fr 1.15fr 0.6fr;

    gap: 65px;

    padding-top: 45px;

    border-top: 1px solid
        rgba(40, 37, 31, 0.14);
}


/* =====================================================
   CONTENT HEADING
===================================================== */

.deluxe-content-heading > span {
    display: block;

    margin-bottom: 14px;

    color: #b28b43;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 2.3px;
}


.deluxe-content-heading h3 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 32px;

    font-weight: 400;

    line-height: 1.18;
}


.deluxe-content-heading h3 em {
    display: block;

    color: #b28b43;

    font-weight: 400;

    font-style: italic;
}


/* =====================================================
   CONTENT TEXT
===================================================== */

.deluxe-content-text p {
    margin: 0 0 14px;

    color: #716b62;

    font-size: 11px;

    line-height: 1.9;
}


.deluxe-content-text .deluxe-content-lead {
    margin-bottom: 18px;

    color: #3f3a34;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;

    line-height: 1.6;
}


/* =====================================================
   ROOM DETAILS
===================================================== */

.deluxe-room-details {
    display: flex;

    flex-direction: column;

    border-left: 1px solid
        rgba(40, 37, 31, 0.13);
}


.deluxe-room-details > div {
    padding: 0 0 15px 25px;

    margin-bottom: 15px;

    border-bottom: 1px solid
        rgba(40, 37, 31, 0.13);
}


.deluxe-room-details > div:last-child {
    margin-bottom: 0;

    border-bottom: none;
}


.deluxe-room-details strong {
    display: block;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 21px;

    font-weight: 400;
}


.deluxe-room-details span {
    display: block;

    margin-top: 4px;

    color: #8a8175;

    font-size: 7px;

    letter-spacing: 1px;

    text-transform: uppercase;
}


/* =====================================================
   BOTTOM NOTE
===================================================== */

.deluxe-bottom-note {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 15px;

    margin-top: 55px;
}


.deluxe-bottom-note span {
    width: 45px;
    height: 1px;

    background: #c8a45a;
}


.deluxe-bottom-note p {
    margin: 0;

    color: #8a8175;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 11px;

    font-style: italic;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-deluxe-welcome {
        padding: 95px 0 85px;
    }

    .ramsan-deluxe-welcome-heading h2 {
        font-size: 54px;
    }

    .ramsan-deluxe-three-images {
        height: 530px;
    }

    .deluxe-image-main {
        height: 455px;
    }

    .deluxe-image-two,
    .deluxe-image-three {
        height: 205px;
    }

    .ramsan-deluxe-welcome-content {
        gap: 45px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-deluxe-welcome {
        padding: 80px 0 75px;
    }

    .ramsan-deluxe-welcome-heading h2 {
        font-size: 45px;
    }

    .ramsan-deluxe-three-images {
        height: 450px;

        margin-bottom: 60px;
    }

    .deluxe-image-main {
        left: 3%;

        width: 63%;

        height: 390px;
    }

    .deluxe-image-two {
        width: 34%;

        height: 185px;

        right: 2%;
    }

    .deluxe-image-three {
        width: 34%;

        height: 185px;

        right: 9%;
    }

    .deluxe-size-card {
        width: 105px;
        height: 105px;

        left: 53%;
    }

    .deluxe-size-card strong {
        font-size: 32px;
    }


    .ramsan-deluxe-welcome-content {
        grid-template-columns:
            0.8fr 1.2fr;

        gap: 35px;
    }

    .deluxe-room-details {
        grid-column: 1 / 3;

        flex-direction: row;

        border-left: none;

        border-top: 1px solid
            rgba(40,37,31,0.13);

        padding-top: 20px;
    }

    .deluxe-room-details > div {
        flex: 1;

        padding: 0 15px;

        border-bottom: none;

        border-right: 1px solid
            rgba(40,37,31,0.13);
    }

    .deluxe-room-details > div:first-child {
        padding-left: 0;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-deluxe-welcome {
        padding: 65px 0 55px;
    }

    .ramsan-deluxe-welcome .container {
        padding-left: 18px;
        padding-right: 18px;
    }


    /* Heading */

    .ramsan-deluxe-welcome-heading {
        margin-bottom: 35px;
    }

    .welcome-kicker {
        font-size: 8px;

        letter-spacing: 2px;
    }

    .ramsan-deluxe-welcome-heading h2 {
        font-size: 36px;
    }

    .ramsan-deluxe-welcome-heading p {
        font-size: 10px;
    }


    /* Images */

    .ramsan-deluxe-three-images {
        height: 470px;

        margin-bottom: 50px;
    }

    .deluxe-image-main {
        left: 0;

        width: 84%;

        height: 350px;
    }

    .deluxe-image-two {
        top: 205px;

        right: 0;

        width: 47%;

        height: 175px;

        border-width: 6px;
    }

    .deluxe-image-three {
        right: 24%;

        bottom: 0;

        width: 42%;

        height: 145px;

        border-width: 6px;
    }

    .deluxe-image-caption {
        padding: 60px 18px 18px;
    }

    .deluxe-image-caption strong {
        font-size: 15px;
    }


    /* Size */

    .deluxe-size-card {
        left: 5%;

        bottom: 25px;

        width: 85px;
        height: 85px;
    }

    .deluxe-size-card strong {
        font-size: 25px;
    }

    .deluxe-size-card span,
    .deluxe-size-card small {
        font-size: 6px;
    }


    /* Content */

    .ramsan-deluxe-welcome-content {
        display: flex;

        flex-direction: column;

        gap: 30px;

        padding-top: 30px;
    }

    .deluxe-content-heading h3 {
        font-size: 29px;
    }

    .deluxe-content-text .deluxe-content-lead {
        font-size: 14px;
    }

    .deluxe-content-text p {
        font-size: 10px;

        line-height: 1.85;
    }


    /* Details */

    .deluxe-room-details {
        width: 100%;

        flex-direction: row;

        padding-top: 18px;
    }

    .deluxe-room-details > div {
        padding: 0 9px;
    }

    .deluxe-room-details strong {
        font-size: 17px;
    }

    .deluxe-room-details span {
        font-size: 6px;

        line-height: 1.4;
    }


    /* Bottom */

    .deluxe-bottom-note {
        margin-top: 35px;
    }

    .deluxe-bottom-note span {
        width: 25px;
    }

    .deluxe-bottom-note p {
        font-size: 9px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-deluxe-welcome {
        padding: 55px 0 45px;
    }

    .ramsan-deluxe-welcome-heading h2 {
        font-size: 31px;
    }

    .ramsan-deluxe-three-images {
        height: 420px;
    }

    .deluxe-image-main {
        height: 315px;
    }

    .deluxe-image-two {
        top: 185px;

        height: 155px;
    }

    .deluxe-image-three {
        height: 125px;
    }

    .deluxe-size-card {
        width: 76px;
        height: 76px;
    }

    .deluxe-size-card strong {
        font-size: 22px;
    }

    .deluxe-content-heading h3 {
        font-size: 26px;
    }

}
/* =========================================
   DELUXE ROOM CONTENT - DESKTOP SIZE
========================================= */

.deluxe-content-heading > span {
    font-size: 11px;
    letter-spacing: 3px;
    font-weight: 600;
    margin-bottom: 18px;
}

.deluxe-content-heading h3 {
    font-size: 40px;
    line-height: 1.2;
}


/* Main Description */

.deluxe-content-text {
    padding-right: 20px;
}

.deluxe-content-text .deluxe-content-lead {
    font-size: 19px;
    line-height: 1.65;
    margin-bottom: 22px;
}

.deluxe-content-text p {
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 18px;
}


/* Room Details */

.deluxe-room-details strong {
    font-size: 28px;
    line-height: 1.2;
}

.deluxe-room-details span {
    font-size: 9px;
    letter-spacing: 1.5px;
    margin-top: 7px;
}


/* Bottom Text */

.deluxe-bottom-note p {
    font-size: 13px;
}
/* =====================================================
   DELUXE ROOM — AMENITIES SECTION
===================================================== */

.ramsan-deluxe-amenities {
    width: 100%;

    padding: 105px 0 100px;

    background: #eee9df;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-deluxe-amenities .container {
    width: 100%;
    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;
}


/* =====================================================
   INTRO
===================================================== */

.deluxe-amenities-intro {
    max-width: 780px;

    margin-bottom: 65px;
}


.amenities-intro-label {
    display: flex;

    align-items: center;

    gap: 15px;

    margin-bottom: 17px;

    color: #b28b43;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.amenities-intro-label::before {
    content: "";

    width: 42px;
    height: 1px;

    background: #c8a45a;
}


.deluxe-amenities-intro h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 54px;

    line-height: 1.12;

    font-weight: 400;
}


.deluxe-amenities-intro h2 span {
    display: block;

    color: #b28b43;

    font-style: italic;
}


.deluxe-amenities-intro p {
    max-width: 650px;

    margin: 22px 0 0;

    color: #716b62;

    font-size: 14px;

    line-height: 1.9;
}


/* =====================================================
   MAIN LAYOUT
===================================================== */

.deluxe-amenities-layout {
    display: grid;

    grid-template-columns: 0.9fr 1.1fr;

    gap: 75px;

    align-items: start;
}


/* =====================================================
   IMAGE
===================================================== */

.deluxe-amenities-image {
    position: relative;

    width: 100%;

    height: 650px;

    overflow: hidden;
}


.deluxe-amenities-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.8s ease;
}


.deluxe-amenities-image:hover img {
    transform: scale(1.035);
}


/* Image Overlay */

.deluxe-amenities-image::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(30, 27, 23, 0.7),
            rgba(30, 27, 23, 0) 45%
        );

    pointer-events: none;
}


/* Image Label */

.amenities-image-label {
    position: absolute;

    left: 32px;
    bottom: 30px;

    z-index: 2;
}


.amenities-image-label span {
    display: block;

    margin-bottom: 8px;

    color: #d0aa61;

    font-size: 9px;

    letter-spacing: 2.5px;

    font-weight: 600;
}


.amenities-image-label strong {
    display: block;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;

    font-weight: 400;
}


/* =====================================================
   AMENITIES LIST
===================================================== */

.deluxe-amenities-list {
    padding-top: 8px;
}


.amenity-list-heading {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 30px;

    padding-bottom: 22px;

    border-bottom: 1px solid
        rgba(40, 37, 31, 0.15);
}


.amenity-list-heading span {
    color: #b28b43;

    font-size: 10px;

    letter-spacing: 2.5px;

    font-weight: 600;
}


.amenity-list-heading p {
    max-width: 250px;

    margin: 0;

    color: #81796e;

    font-size: 11px;

    line-height: 1.6;

    text-align: right;
}


/* =====================================================
   AMENITY ITEM
===================================================== */

.amenity-items {
    width: 100%;
}


.amenity-item {
    display: grid;

    grid-template-columns: 35px 48px 1fr;

    gap: 18px;

    align-items: center;

    min-height: 105px;

    padding: 18px 0;

    border-bottom: 1px solid
        rgba(40, 37, 31, 0.13);

    transition:
        padding-left 0.3s ease,
        background 0.3s ease;
}


.amenity-item:hover {
    padding-left: 10px;
}


/* Number */

.amenity-number {
    color: #b28b43;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 11px;
}


/* Icon */

.amenity-icon {
    width: 48px;
    height: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid
        rgba(194, 155, 82, 0.55);

    color: #b28b43;

    font-size: 16px;

    transition:
        background 0.3s ease,
        color 0.3s ease;
}


.amenity-item:hover .amenity-icon {
    background: #b28b43;

    color: #fff;
}


/* Content */

.amenity-content h3 {
    margin: 0 0 5px;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 19px;

    font-weight: 400;
}


.amenity-content p {
    max-width: 430px;

    margin: 0;

    color: #756e64;

    font-size: 12px;

    line-height: 1.65;
}


/* =====================================================
   BOTTOM FACILITIES
===================================================== */

.deluxe-amenities-bottom {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    margin-top: 65px;

    border-top: 1px solid
        rgba(40, 37, 31, 0.16);

    border-bottom: 1px solid
        rgba(40, 37, 31, 0.16);
}


.amenity-bottom-item {
    display: flex;

    align-items: center;

    gap: 15px;

    min-height: 105px;

    padding: 20px 25px;

    border-right: 1px solid
        rgba(40, 37, 31, 0.14);
}


.amenity-bottom-item:last-child {
    border-right: none;
}


.amenity-bottom-item > i {
    color: #b28b43;

    font-size: 19px;
}


.amenity-bottom-item strong {
    display: block;

    margin-bottom: 4px;

    color: #302c27;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 15px;

    font-weight: 400;
}


.amenity-bottom-item span {
    display: block;

    color: #857c70;

    font-size: 9px;

    letter-spacing: 0.5px;
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-deluxe-amenities {
        padding: 90px 0;
    }

    .deluxe-amenities-intro h2 {
        font-size: 48px;
    }

    .deluxe-amenities-layout {
        gap: 50px;
    }

    .deluxe-amenities-image {
        height: 590px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-deluxe-amenities {
        padding: 75px 0;
    }

    .deluxe-amenities-intro {
        margin-bottom: 45px;
    }

    .deluxe-amenities-intro h2 {
        font-size: 42px;
    }

    .deluxe-amenities-layout {
        grid-template-columns: 1fr;

        gap: 45px;
    }

    .deluxe-amenities-image {
        height: 500px;
    }

    .deluxe-amenities-bottom {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .amenity-bottom-item:nth-child(2) {
        border-right: none;
    }

    .amenity-bottom-item:nth-child(-n+2) {
        border-bottom: 1px solid
            rgba(40, 37, 31, 0.14);
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-deluxe-amenities {
        padding: 60px 0 55px;
    }

    .ramsan-deluxe-amenities .container {
        padding-left: 18px;
        padding-right: 18px;
    }


    /* Intro */

    .deluxe-amenities-intro {
        margin-bottom: 35px;
    }

    .amenities-intro-label {
        font-size: 8px;

        letter-spacing: 2px;
    }

    .deluxe-amenities-intro h2 {
        font-size: 34px;
    }

    .deluxe-amenities-intro p {
        font-size: 11px;

        line-height: 1.8;
    }


    /* Image */

    .deluxe-amenities-image {
        height: 400px;
    }

    .amenities-image-label {
        left: 20px;
        bottom: 22px;
    }

    .amenities-image-label strong {
        font-size: 20px;
    }


    /* List */

    .amenity-list-heading {
        display: block;
    }

    .amenity-list-heading span {
        font-size: 8px;
    }

    .amenity-list-heading p {
        max-width: 100%;

        margin-top: 10px;

        font-size: 10px;

        text-align: left;
    }


    .amenity-item {
        grid-template-columns:
            28px 42px 1fr;

        gap: 12px;

        min-height: 90px;

        padding: 15px 0;
    }

    .amenity-icon {
        width: 42px;
        height: 42px;

        font-size: 14px;
    }

    .amenity-content h3 {
        font-size: 16px;
    }

    .amenity-content p {
        font-size: 10px;

        line-height: 1.6;
    }


    /* Bottom */

    .deluxe-amenities-bottom {
        grid-template-columns: 1fr;

        margin-top: 40px;
    }

    .amenity-bottom-item,
    .amenity-bottom-item:nth-child(2) {
        border-right: none;

        border-bottom: 1px solid
            rgba(40, 37, 31, 0.14);
    }

    .amenity-bottom-item:last-child {
        border-bottom: none;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .deluxe-amenities-intro h2 {
        font-size: 30px;
    }

    .deluxe-amenities-image {
        height: 350px;
    }

    .amenity-content h3 {
        font-size: 15px;
    }

}
/* =====================================================
   DELUXE ROOM — THE DELUXE DIFFERENCE
===================================================== */

.ramsan-deluxe-difference {
    width: 100%;

    padding: 110px 0 115px;

    background: #f4f0e8;

    overflow: hidden;
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-deluxe-difference .container {
    width: 100%;

    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;
    padding-right: 15px;
}


/* =====================================================
   HEADING
===================================================== */

.deluxe-difference-heading {
    margin-bottom: 65px;
}


.deluxe-difference-heading > span {
    display: block;

    margin-bottom: 15px;

    color: #b28b43;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.deluxe-difference-heading h2 {
    margin: 0;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 56px;

    font-weight: 400;

    line-height: 1.08;
}


.deluxe-difference-heading h2 em {
    color: #b28b43;

    font-weight: 400;

    font-style: italic;
}


/* =====================================================
   MAIN LAYOUT
===================================================== */

.deluxe-difference-layout {
    display: grid;

    grid-template-columns: 1fr 0.9fr;

    align-items: center;

    gap: 90px;
}


/* =====================================================
   VISUAL
===================================================== */

.deluxe-difference-visual {
    position: relative;

    min-height: 590px;
}


/* =====================================================
   MAIN IMAGE
===================================================== */

.difference-main-image {
    position: absolute;

    top: 0;
    left: 0;

    width: 82%;

    height: 510px;

    overflow: hidden;
}


.difference-main-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform 0.8s ease;
}


.difference-main-image:hover img {
    transform: scale(1.035);
}


/* =====================================================
   SMALL IMAGE
===================================================== */

.difference-small-image {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 47%;

    height: 260px;

    padding: 8px;

    background: #f4f0e8;

    z-index: 3;
}


.difference-small-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.8s ease;
}


.difference-small-image:hover img {
    transform: scale(1.04);
}


/* =====================================================
   VERTICAL IMAGE LABEL
===================================================== */

.difference-image-label {
    position: absolute;

    left: -35px;

    top: 50%;

    transform:
        translateY(-50%)
        rotate(-90deg);

    z-index: 4;
}


.difference-image-label span {
    color: #9b8f80;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 3px;
}


/* =====================================================
   CONTENT
===================================================== */

.deluxe-difference-content {
    padding-top: 5px;
}


.difference-content-number {
    display: block;

    margin-bottom: 14px;

    color: #c8a45a;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 14px;
}


.difference-content-line {
    width: 42px;
    height: 1px;

    margin-bottom: 28px;

    background: #c8a45a;
}


/* =====================================================
   TEXT
===================================================== */

.deluxe-difference-content p {
    margin: 0 0 17px;

    color: #716b62;

    font-size: 14px;

    line-height: 1.9;
}


.deluxe-difference-content .difference-lead {
    margin-bottom: 22px;

    color: #3f3a34;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;

    line-height: 1.65;
}


/* =====================================================
   HIGHLIGHTS
===================================================== */

.deluxe-difference-highlights {
    margin-top: 32px;

    border-top: 1px solid
        rgba(40, 37, 31, 0.14);
}


.difference-highlight {
    display: flex;

    align-items: center;

    gap: 18px;

    padding: 18px 0;

    border-bottom: 1px solid
        rgba(40, 37, 31, 0.14);
}


/* Icon */

.difference-highlight-icon {
    flex-shrink: 0;

    width: 48px;
    height: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid
        rgba(194, 155, 82, 0.55);

    color: #b28b43;

    font-size: 16px;

    transition:
        background 0.3s ease,
        color 0.3s ease;
}


.difference-highlight:hover
.difference-highlight-icon {
    background: #b28b43;

    color: #fff;
}


/* Highlight Text */

.difference-highlight h3 {
    margin: 0 0 4px;

    color: #28251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 18px;

    font-weight: 400;
}


.difference-highlight p {
    margin: 0;

    color: #81796e;

    font-size: 11px;

    line-height: 1.6;
}


/* =====================================================
   CTA
===================================================== */

.difference-enquire-btn {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    margin-top: 32px;

    padding: 14px 22px;

    background: #c8a45a;

    border: 1px solid #c8a45a;

    color: #28251f;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 1.3px;

    text-transform: uppercase;

    text-decoration: none;

    transition:
        all 0.3s ease;
}


.difference-enquire-btn i {
    transition:
        transform 0.3s ease;
}


.difference-enquire-btn:hover {
    background: #28251f;

    border-color: #28251f;

    color: #fff;
}


.difference-enquire-btn:hover i {
    transform: translateX(5px);
}


/* =====================================================
   LAPTOP
===================================================== */

@media (max-width: 1199px) {

    .ramsan-deluxe-difference {
        padding: 95px 0 100px;
    }

    .deluxe-difference-layout {
        gap: 60px;
    }

    .deluxe-difference-heading h2 {
        font-size: 50px;
    }

    .deluxe-difference-visual {
        min-height: 530px;
    }

    .difference-main-image {
        height: 455px;
    }

    .difference-small-image {
        height: 225px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-deluxe-difference {
        padding: 80px 0 85px;
    }

    .deluxe-difference-heading {
        margin-bottom: 50px;
    }

    .deluxe-difference-heading h2 {
        font-size: 43px;
    }

    .deluxe-difference-layout {
        grid-template-columns: 1fr;

        gap: 55px;
    }

    .deluxe-difference-visual {
        min-height: 500px;
    }

    .difference-main-image {
        width: 78%;

        height: 430px;
    }

    .difference-small-image {
        width: 40%;

        height: 210px;
    }

    .difference-image-label {
        left: -25px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-deluxe-difference {
        padding: 65px 0 65px;
    }

    .ramsan-deluxe-difference .container {
        padding-left: 18px;
        padding-right: 18px;
    }


    /* Heading */

    .deluxe-difference-heading {
        margin-bottom: 38px;
    }

    .deluxe-difference-heading > span {
        font-size: 8px;

        letter-spacing: 2px;
    }

    .deluxe-difference-heading h2 {
        font-size: 35px;

        line-height: 1.12;
    }


    /* Visual */

    .deluxe-difference-visual {
        min-height: 400px;
    }

    .difference-main-image {
        width: 83%;

        height: 335px;
    }

    .difference-small-image {
        width: 47%;

        height: 175px;

        padding: 6px;
    }

    .difference-image-label {
        display: none;
    }


    /* Content */

    .deluxe-difference-content {
        padding-top: 0;
    }

    .deluxe-difference-content p {
        font-size: 10px;

        line-height: 1.85;
    }

    .deluxe-difference-content .difference-lead {
        font-size: 15px;

        line-height: 1.65;
    }


    /* Highlights */

    .deluxe-difference-highlights {
        margin-top: 25px;
    }

    .difference-highlight {
        gap: 13px;

        padding: 14px 0;
    }

    .difference-highlight-icon {
        width: 42px;
        height: 42px;

        font-size: 14px;
    }

    .difference-highlight h3 {
        font-size: 16px;
    }

    .difference-highlight p {
        font-size: 9px;
    }


    /* CTA */

    .difference-enquire-btn {
        margin-top: 25px;

        padding: 13px 18px;

        font-size: 8px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-deluxe-difference {
        padding: 55px 0;
    }

    .deluxe-difference-heading h2 {
        font-size: 30px;
    }

    .deluxe-difference-visual {
        min-height: 350px;
    }

    .difference-main-image {
        height: 290px;
    }

    .difference-small-image {
        height: 145px;
    }

}
/* =========================================
   DELUXE ROOM CTA
========================================= */

.ramsan-deluxe-cta {
    position: relative;
    padding: 90px 0;
    background: #f3eee5;
    overflow: hidden;
}

.ramsan-deluxe-cta::before {
    content: "";
    position: absolute;
    top: 0;
    left: 8%;
    width: 1px;
    height: 100%;
    background: rgba(186, 143, 64, 0.22);
}

.ramsan-deluxe-cta::after {
    content: "";
    position: absolute;
    right: 8%;
    top: 0;
    width: 1px;
    height: 100%;
    background: rgba(186, 143, 64, 0.22);
}


/* Main Box */

.deluxe-cta-inner {
    width: 86%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 65px 75px;
    border: 1px solid rgba(186, 143, 64, 0.45);
    background: #eee8dd;

    display: flex;
    align-items: center;
    justify-content: space-between;

    position: relative;
}


/* Small decorative line */

.deluxe-cta-inner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 75px;
    width: 80px;
    height: 2px;
    background: #c49a50;
}


/* Content */

.deluxe-cta-content {
    max-width: 760px;
}

.deluxe-cta-label {
    display: block;
    margin-bottom: 18px;

    font-size: 12px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;

    color: #b28338;
}


/* Heading */

.deluxe-cta-content h2 {
    margin: 0 0 22px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 48px;
    line-height: 1.15;
    font-weight: 400;

    color: #292621;
}

.deluxe-cta-content h2 em {
    display: block;

    font-style: italic;
    color: #b98b3d;
}


/* Paragraph */

.deluxe-cta-content p {
    max-width: 680px;
    margin: 0 0 32px;

    font-size: 17px;
    line-height: 1.8;

    color: #665f56;
}


/* Buttons */

.deluxe-cta-buttons {
    display: flex;
    align-items: center;
    gap: 14px;
}

.deluxe-cta-primary,
.deluxe-cta-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;

    min-height: 52px;
    padding: 0 28px;

    text-decoration: none !important;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;

    transition: all 0.3s ease;
}


/* Primary */

.deluxe-cta-primary {
    background: #c49a50;
    color: #fff !important;
    border: 1px solid #c49a50;
}

.deluxe-cta-primary:hover {
    background: #aa7e37;
    border-color: #aa7e37;
    color: #fff !important;
}

.deluxe-cta-primary i {
    font-size: 13px;
}


/* Secondary */

.deluxe-cta-secondary {
    background: transparent;
    color: #302c27 !important;
    border: 1px solid rgba(48, 44, 39, 0.35);
}

.deluxe-cta-secondary:hover {
    background: #302c27;
    color: #fff !important;
    border-color: #302c27;
}

.deluxe-cta-secondary i {
    font-size: 13px;
}


/* Side Number */

.deluxe-cta-side {
    width: 150px;
    min-width: 150px;

    padding-left: 35px;

    border-left: 1px solid rgba(186, 143, 64, 0.4);

    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.deluxe-cta-number {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 52px;
    line-height: 1;

    color: #c49a50;
}

.deluxe-cta-side-text {
    margin-top: 10px;

    font-size: 10px;
    letter-spacing: 2px;
    text-transform: uppercase;

    color: #777067;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-deluxe-cta {
        padding: 70px 0;
    }

    .deluxe-cta-inner {
        width: 90%;
        padding: 55px 45px;
    }

    .deluxe-cta-content h2 {
        font-size: 42px;
    }

    .deluxe-cta-content p {
        font-size: 16px;
    }

    .deluxe-cta-side {
        width: 120px;
        min-width: 120px;
        padding-left: 25px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-deluxe-cta {
        padding: 55px 0;
    }

    .ramsan-deluxe-cta::before,
    .ramsan-deluxe-cta::after {
        display: none;
    }

    .deluxe-cta-inner {
        width: calc(100% - 30px);
        padding: 42px 25px;

        display: block;
    }

    .deluxe-cta-inner::before {
        left: 25px;
        width: 60px;
    }

    .deluxe-cta-content {
        max-width: 100%;
    }

    .deluxe-cta-label {
        font-size: 10px;
        letter-spacing: 2px;
        margin-bottom: 15px;
    }

    .deluxe-cta-content h2 {
        font-size: 34px;
        line-height: 1.2;
        margin-bottom: 18px;
    }

    .deluxe-cta-content p {
        font-size: 15px;
        line-height: 1.7;
        margin-bottom: 25px;
    }

    .deluxe-cta-buttons {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }

    .deluxe-cta-primary,
    .deluxe-cta-secondary {
        width: 100%;
        min-height: 50px;
    }

    .deluxe-cta-side {
        width: 100%;
        min-width: 0;

        margin-top: 30px;
        padding: 20px 0 0;

        border-left: none;
        border-top: 1px solid rgba(186, 143, 64, 0.35);

        flex-direction: row;
        align-items: center;
        gap: 15px;
    }

    .deluxe-cta-number {
        font-size: 34px;
    }

    .deluxe-cta-side-text {
        margin-top: 0;
    }

}
/* gallery */
/* =====================================================
   GALLERY HERO
===================================================== */

.ramsan-gallery-hero {
    position: relative;

    width: 100%;
    min-height: 650px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background: #292621;
}


/* =====================================================
   BACKGROUND IMAGE
===================================================== */

.ramsan-gallery-hero-image {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;
}


.ramsan-gallery-hero-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;
}


/* =====================================================
   SOFT OVERLAY
===================================================== */

.ramsan-gallery-hero-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(25, 22, 18, 0.72) 0%,
            rgba(25, 22, 18, 0.48) 45%,
            rgba(25, 22, 18, 0.25) 100%
        );
}


/* =====================================================
   CONTAINER
===================================================== */

.ramsan-gallery-hero .container {
    position: relative;

    z-index: 2;

    width: 100%;

    min-height: 650px;

    display: flex;
    flex-direction: column;
    justify-content: center;
}


/* =====================================================
   HERO CONTENT
===================================================== */

.ramsan-gallery-hero-content {
    max-width: 720px;

    padding-top: 30px;
}


/* Kicker */

.gallery-hero-kicker {
    display: block;

    margin-bottom: 18px;

    color: #d2ad67;

    font-size: 13px;

    font-weight: 600;

    letter-spacing: 4px;

    text-transform: uppercase;
}


/* Heading */

.ramsan-gallery-hero-content h1 {
    margin: 0;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 68px;

    font-weight: 400;

    line-height: 1.08;
}


.ramsan-gallery-hero-content h1 span {
    display: block;

    color: #d1a95e;

    font-style: italic;
}


/* Line */

.gallery-hero-line {
    width: 65px;
    height: 2px;

    margin: 25px 0;

    background: #d1a95e;
}


/* Description */

.ramsan-gallery-hero-content p {
    max-width: 650px;

    margin: 0 0 32px;

    color: rgba(255, 255, 255, 0.90);

    font-size: 18px;

    line-height: 1.8;
}


/* =====================================================
   BUTTON
===================================================== */

.gallery-hero-btn {
    display: inline-flex;

    align-items: center;

    gap: 14px;

    padding: 15px 25px;

    border: 1px solid #d1a95e;

    background: #d1a95e;

    color: #292621 !important;

    font-size: 12px;

    font-weight: 600;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    text-decoration: none !important;

    transition: all 0.3s ease;
}


.gallery-hero-btn i {
    transition: transform 0.3s ease;
}


.gallery-hero-btn:hover {
    background: transparent;

    color: #ffffff !important;

    border-color: #ffffff;
}


.gallery-hero-btn:hover i {
    transform: translateY(4px);
}


/* =====================================================
   BOTTOM INFORMATION
===================================================== */

.gallery-hero-bottom {
    position: absolute;

    left: 15px;
    right: 15px;
    bottom: 0;

    display: flex;

    justify-content: flex-end;

    gap: 0;

    border-top: 1px solid
        rgba(255, 255, 255, 0.25);
}


.gallery-hero-bottom-item {
    min-width: 190px;

    padding: 18px 25px;

    border-left: 1px solid
        rgba(255, 255, 255, 0.20);

    display: flex;

    align-items: center;

    gap: 14px;
}


.gallery-hero-bottom-item:last-child {
    border-right: 1px solid
        rgba(255, 255, 255, 0.20);
}


.gallery-hero-bottom-item strong {
    color: #d1a95e;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 22px;

    font-weight: 400;
}


.gallery-hero-bottom-item span {
    color: rgba(255, 255, 255, 0.85);

    font-size: 12px;

    letter-spacing: 0.5px;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-gallery-hero,
    .ramsan-gallery-hero .container {
        min-height: 590px;
    }


    .ramsan-gallery-hero-content {
        max-width: 650px;
    }


    .ramsan-gallery-hero-content h1 {
        font-size: 56px;
    }


    .ramsan-gallery-hero-content p {
        font-size: 16px;
    }


    .gallery-hero-bottom-item {
        min-width: 160px;

        padding: 16px 18px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-gallery-hero,
    .ramsan-gallery-hero .container {
        min-height: 620px;
    }


    .ramsan-gallery-hero .container {
        padding-left: 20px;
        padding-right: 20px;

        justify-content: center;
    }


    /* Overlay */

    .ramsan-gallery-hero-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(25, 22, 18, 0.78),
                rgba(25, 22, 18, 0.45)
            );
    }


    /* Content */

    .ramsan-gallery-hero-content {
        padding-top: 0;

        max-width: 100%;
    }


    .gallery-hero-kicker {
        margin-bottom: 14px;

        font-size: 10px;

        letter-spacing: 2.5px;
    }


    .ramsan-gallery-hero-content h1 {
        font-size: 43px;

        line-height: 1.12;
    }


    .gallery-hero-line {
        width: 50px;

        margin: 20px 0;
    }


    .ramsan-gallery-hero-content p {
        margin-bottom: 25px;

        font-size: 15px;

        line-height: 1.7;
    }


    .gallery-hero-btn {
        padding: 13px 20px;

        font-size: 10px;
    }


    /* Bottom */

    .gallery-hero-bottom {
        left: 20px;
        right: 20px;

        display: grid;

        grid-template-columns:
            repeat(3, 1fr);
    }


    .gallery-hero-bottom-item {
        min-width: 0;

        padding: 12px 8px;

        gap: 5px;

        flex-direction: column;

        align-items: flex-start;
    }


    .gallery-hero-bottom-item strong {
        font-size: 18px;
    }


    .gallery-hero-bottom-item span {
        font-size: 9px;

        line-height: 1.3;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .ramsan-gallery-hero,
    .ramsan-gallery-hero .container {
        min-height: 580px;
    }


    .ramsan-gallery-hero-content h1 {
        font-size: 37px;
    }


    .ramsan-gallery-hero-content p {
        font-size: 14px;
    }


    .gallery-hero-bottom-item {
        padding: 10px 5px;
    }

}
/* =========================================
   GALLERY HERO - DESKTOP LEFT SPACING
========================================= */

@media (min-width: 992px) {

    .ramsan-gallery-hero-content {
        margin-left: 90px;
    }

}
/* =====================================================
   GALLERY SHOWCASE
===================================================== */

.ramsan-gallery-showcase {
    padding: 115px 0 120px;

    background: #f5f1e9;

    overflow: hidden;
}


/* =====================================================
   SECTION HEADING
===================================================== */

.ramsan-gallery-heading {
    max-width: 850px;

    margin: 0 auto 65px;

    text-align: center;
}


.gallery-heading-kicker {
    display: block;

    margin-bottom: 18px;

    color: #b58b45;

    font-size: 12px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.ramsan-gallery-heading h2 {
    margin: 0;

    color: #28241f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 55px;

    font-weight: 400;

    line-height: 1.15;
}


.ramsan-gallery-heading h2 em {
    color: #b58b45;

    font-style: italic;
}


.gallery-heading-line {
    width: 65px;

    height: 2px;

    margin: 25px auto;

    background: #b58b45;
}


.ramsan-gallery-heading p {
    max-width: 760px;

    margin: 0 auto;

    color: #686158;

    font-size: 17px;

    line-height: 1.9;
}


/* =====================================================
   MAIN GALLERY GRID
===================================================== */

.ramsan-gallery-cards {

    display: grid;

    grid-template-columns: 1.5fr 1fr;

    grid-template-rows: 280px 280px;

    gap: 20px;

}


/* =====================================================
   GALLERY CARD
===================================================== */

.gallery-card {
    position: relative;

    overflow: hidden;

    background: #292621;
}


.gallery-card-large {
    grid-row: 1 / 3;
}


.gallery-card img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.7s ease;
}


.gallery-card:hover img {
    transform: scale(1.06);
}


/* =====================================================
   OVERLAY
===================================================== */

.gallery-card-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(20, 17, 13, 0.82) 0%,
            rgba(20, 17, 13, 0.20) 55%,
            rgba(20, 17, 13, 0.05) 100%
        );
}


/* =====================================================
   CARD CONTENT
===================================================== */

.gallery-card-content {
    position: absolute;

    left: 30px;
    right: 30px;
    bottom: 28px;

    z-index: 2;
}


.gallery-card-content span {
    display: block;

    margin-bottom: 9px;

    color: #d4ae68;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 2px;
}


.gallery-card-content h3 {
    margin: 0;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 30px;

    font-weight: 400;
}


.gallery-card-content h3 em {
    color: #d4ae68;

    font-style: italic;
}


.gallery-card-content a {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-top: 17px;

    color: #ffffff !important;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 1px;

    text-transform: uppercase;

    text-decoration: none !important;
}


.gallery-card-content a i {
    transition: transform 0.3s ease;
}


.gallery-card-content a:hover i {
    transform: translateX(5px);
}


/* =====================================================
   SECONDARY GALLERY
===================================================== */

.ramsan-gallery-secondary {

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 20px;

    margin-top: 20px;
}


.gallery-secondary-card {
    position: relative;

    height: 330px;

    overflow: hidden;

    background: #292621;
}


.gallery-secondary-card img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.7s ease;
}


.gallery-secondary-card:hover img {
    transform: scale(1.06);
}


/* =====================================================
   SECONDARY CARD CONTENT
===================================================== */

.secondary-card-content {
    position: absolute;

    left: 25px;
    right: 25px;
    bottom: 24px;

    z-index: 2;

    display: flex;

    align-items: flex-end;

    gap: 15px;
}


.gallery-secondary-card::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(20, 17, 13, 0.85),
            rgba(20, 17, 13, 0.05)
        );
}


.secondary-card-content > span {
    color: #d4ae68;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;
}


.secondary-card-content small {
    display: block;

    margin-bottom: 6px;

    color: #d4ae68;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 2px;
}


.secondary-card-content h3 {
    margin: 0;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 22px;

    font-weight: 400;

    line-height: 1.25;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-gallery-showcase {
        padding: 85px 0 90px;
    }


    .ramsan-gallery-heading h2 {
        font-size: 45px;
    }


    .ramsan-gallery-heading p {
        font-size: 16px;
    }


    .ramsan-gallery-cards {
        grid-template-columns: 1fr 1fr;

        grid-template-rows:
            350px 250px;

    }


    .gallery-card-large {
        grid-column: 1 / 3;

        grid-row: 1;
    }


    .gallery-card-small {
        grid-row: 2;
    }


    .ramsan-gallery-secondary {
        grid-template-columns: 1fr 1fr;
    }


    .gallery-secondary-card:last-child {
        grid-column: 1 / 3;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-gallery-showcase {
        padding: 65px 0 70px;
    }


    .ramsan-gallery-heading {
        margin-bottom: 40px;
    }


    .gallery-heading-kicker {
        font-size: 10px;

        letter-spacing: 2px;
    }


    .ramsan-gallery-heading h2 {
        font-size: 36px;

        line-height: 1.2;
    }


    .ramsan-gallery-heading p {
        font-size: 15px;

        line-height: 1.75;
    }


    /* Main Gallery */

    .ramsan-gallery-cards {
        display: grid;

        grid-template-columns: 1fr;

        grid-template-rows: none;

        gap: 15px;
    }


    .gallery-card-large,
    .gallery-card-small {
        grid-column: auto;

        grid-row: auto;

        height: 350px;
    }


    .gallery-card-content {
        left: 22px;
        right: 22px;
        bottom: 22px;
    }


    .gallery-card-content h3 {
        font-size: 27px;
    }


    /* Secondary */

    .ramsan-gallery-secondary {
        grid-template-columns: 1fr;

        gap: 15px;

        margin-top: 15px;
    }


    .gallery-secondary-card,
    .gallery-secondary-card:last-child {
        grid-column: auto;

        height: 300px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .gallery-card-large,
    .gallery-card-small {
        height: 300px;
    }


    .gallery-secondary-card,
    .gallery-secondary-card:last-child {
        height: 270px;
    }


    .ramsan-gallery-heading h2 {
        font-size: 32px;
    }

}
/* =========================================
   GALLERY HEADING - DESKTOP FIX
========================================= */

.ramsan-gallery-heading {
    width: 100%;
    max-width: 900px;

    margin: 0 auto 65px;

    display: block;

    text-align: center;
}


/* Kicker */

.ramsan-gallery-heading .gallery-heading-kicker {
    display: block;

    width: 100%;

    margin: 0 0 18px;

    text-align: center;
}


/* Heading */

.ramsan-gallery-heading h2 {
    display: block;

    width: 100%;

    margin: 0;

    text-align: center;

    font-size: 55px;

    line-height: 1.15;
}


/* Make both lines stay centered */

.ramsan-gallery-heading h2 em {
    display: inline;

    margin-left: 8px;
}


/* Line */

.ramsan-gallery-heading .gallery-heading-line {
    display: block;

    width: 65px;

    height: 2px;

    margin: 25px auto;

    background: #b58b45;
}


/* Paragraph */

.ramsan-gallery-heading p {
    display: block;

    width: 100%;

    max-width: 820px;

    margin: 0 auto;

    text-align: center;

    font-size: 17px;

    line-height: 1.85;

    color: #686158;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-gallery-heading {
        width: 100%;

        max-width: 100%;

        margin-bottom: 40px;
    }

    .ramsan-gallery-heading h2 {
        font-size: 36px;
    }

    .ramsan-gallery-heading h2 em {
        display: block;

        margin-left: 0;
    }

    .ramsan-gallery-heading p {
        max-width: 100%;

        font-size: 15px;

        line-height: 1.75;
    }

}
/* =====================================================
   CONTACT INTRO
===================================================== */

.ramsan-contact-intro {
    padding: 110px 0 115px;

    background: #f5f1e9;

    overflow: hidden;
}


/* =====================================================
   HEADING
===================================================== */

.ramsan-contact-heading {
    width: 100%;
    max-width: 900px;

    margin: 0 auto 65px;

    text-align: center;
}


.ramsan-contact-heading > span {
    display: block;

    margin-bottom: 18px;

    color: #b58b45;

    font-size: 12px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.ramsan-contact-heading h2 {
    margin: 0;

    color: #28241f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 52px;

    font-weight: 400;

    line-height: 1.15;
}


.ramsan-contact-heading h2 em {
    color: #b58b45;

    font-style: italic;
}


.contact-heading-line {
    width: 65px;

    height: 2px;

    margin: 25px auto;

    background: #b58b45;
}


.ramsan-contact-heading p {
    max-width: 780px;

    margin: 0 auto;

    color: #686158;

    font-size: 17px;

    line-height: 1.85;
}


/* =====================================================
   CONTACT CARDS
===================================================== */

.ramsan-contact-cards {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 20px;
}


.ramsan-contact-card {
    position: relative;

    min-height: 190px;

    padding: 32px 30px;

    display: flex;

    align-items: center;

    gap: 22px;

    background: #ffffff;

    border: 1px solid #e4ddd1;

    overflow: hidden;

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}


.ramsan-contact-card:hover {
    transform: translateY(-6px);

    border-color: #c7a15d;

    box-shadow:
        0 18px 40px rgba(43, 35, 25, 0.10);
}


/* =====================================================
   ICON
===================================================== */

.contact-card-icon {
    flex: 0 0 58px;

    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #d1b477;

    color: #b58b45;

    font-size: 20px;

    transition:
        background 0.3s ease,
        color 0.3s ease;
}


.ramsan-contact-card:hover .contact-card-icon {
    background: #b58b45;

    color: #ffffff;
}


/* =====================================================
   CONTENT
===================================================== */

.contact-card-content {
    position: relative;

    z-index: 2;
}


.contact-card-content > span {
    display: block;

    margin-bottom: 7px;

    color: #b58b45;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 2px;
}


.contact-card-content h3 {
    margin: 0 0 8px;

    color: #29251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 23px;

    font-weight: 400;
}


.contact-card-content a,
.contact-card-content p {
    margin: 0;

    color: #716a61;

    font-size: 14px;

    line-height: 1.6;

    text-decoration: none;
}


.contact-card-content a:hover {
    color: #b58b45;
}


/* =====================================================
   NUMBER
===================================================== */

.contact-card-number {
    position: absolute;

    right: 18px;
    top: 12px;

    color: #e8e0d3;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 42px;

    line-height: 1;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-contact-intro {
        padding: 85px 0 90px;
    }


    .ramsan-contact-heading h2 {
        font-size: 45px;
    }


    .ramsan-contact-cards {
        grid-template-columns: 1fr;

        gap: 15px;
    }


    .ramsan-contact-card {
        min-height: 160px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-contact-intro {
        padding: 65px 0 70px;
    }


    .ramsan-contact-heading {
        margin-bottom: 40px;
    }


    .ramsan-contact-heading > span {
        font-size: 10px;

        letter-spacing: 2px;
    }


    .ramsan-contact-heading h2 {
        font-size: 36px;

        line-height: 1.2;
    }


    .ramsan-contact-heading p {
        font-size: 15px;

        line-height: 1.75;
    }


    .ramsan-contact-card {
        min-height: 145px;

        padding: 25px 20px;

        gap: 17px;
    }


    .contact-card-icon {
        flex: 0 0 50px;

        width: 50px;
        height: 50px;

        font-size: 17px;
    }


    .contact-card-content h3 {
        font-size: 21px;
    }


    .contact-card-content a,
    .contact-card-content p {
        font-size: 13px;
    }

}
/* =====================================================
   CONTACT FORM SECTION
===================================================== */

.ramsan-contact-form-section {
    padding: 115px 0 120px;

    background: #292621;

    overflow: hidden;
}


/* =====================================================
   MAIN LAYOUT
===================================================== */

.ramsan-contact-form-layout {

    display: grid;

    grid-template-columns:
        0.9fr 1.1fr;

    gap: 85px;

    align-items: center;
}


/* =====================================================
   LEFT CONTENT
===================================================== */

.ramsan-contact-form-info {
    padding-right: 15px;
}


.contact-form-kicker {
    display: block;

    margin-bottom: 18px;

    color: #d1a95e;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;
}


.ramsan-contact-form-info h2 {

    margin: 0;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 50px;

    font-weight: 400;

    line-height: 1.15;
}


.ramsan-contact-form-info h2 em {

    color: #d1a95e;

    font-style: italic;
}


.contact-form-line {

    width: 65px;

    height: 2px;

    margin: 25px 0;

    background: #d1a95e;
}


.ramsan-contact-form-info p {

    margin: 0 0 18px;

    color: rgba(255,255,255,0.68);

    font-size: 16px;

    line-height: 1.85;
}


.ramsan-contact-form-info .contact-form-lead {

    color: rgba(255,255,255,0.88);

    font-size: 18px;

    line-height: 1.8;
}


/* =====================================================
   HIGHLIGHT
===================================================== */

.contact-form-highlight {

    display: flex;

    align-items: center;

    gap: 18px;

    margin-top: 35px;

    padding-top: 25px;

    border-top: 1px solid rgba(255,255,255,0.12);
}


.contact-highlight-icon {

    width: 55px;
    height: 55px;

    flex: 0 0 55px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #b58b45;

    color: #d1a95e;

    font-size: 19px;
}


.contact-form-highlight span {

    display: block;

    margin-bottom: 5px;

    color: #d1a95e;

    font-size: 9px;

    letter-spacing: 2px;

    font-weight: 600;
}


.contact-form-highlight strong {

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 18px;

    font-weight: 400;
}


/* =====================================================
   FORM BOX
===================================================== */

.ramsan-contact-form-box {

    padding: 42px;

    background: #f5f1e9;
}


.contact-form-box-heading {

    margin-bottom: 30px;
}


.contact-form-box-heading span {

    display: block;

    margin-bottom: 8px;

    color: #b58b45;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 2px;
}


.contact-form-box-heading h3 {

    margin: 0;

    color: #29251f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 32px;

    font-weight: 400;
}


/* =====================================================
   FORM ROW
===================================================== */

.contact-form-row {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 18px;
}


.contact-form-group {

    margin-bottom: 20px;
}


.contact-form-group label {

    display: block;

    margin-bottom: 8px;

    color: #4b453e;

    font-size: 12px;

    font-weight: 600;

    letter-spacing: 0.5px;
}


.contact-form-group input,
.contact-form-group select,
.contact-form-group textarea {

    width: 100%;

    padding: 14px 16px;

    border: 1px solid #ddd4c5;

    outline: none;

    background: #ffffff;

    color: #39342e;

    font-family: inherit;

    font-size: 14px;

    transition:
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}


.contact-form-group input,
.contact-form-group select {

    height: 52px;
}


.contact-form-group textarea {

    min-height: 130px;

    resize: vertical;
}


.contact-form-group input:focus,
.contact-form-group select:focus,
.contact-form-group textarea:focus {

    border-color: #b58b45;

    box-shadow:
        0 0 0 2px rgba(181,139,69,0.08);
}


.contact-form-group input::placeholder,
.contact-form-group textarea::placeholder {

    color: #9b948b;
}


/* =====================================================
   SUBMIT BUTTON
===================================================== */

.ramsan-contact-submit {

    width: 100%;

    min-height: 55px;

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 12px;

    border: none;

    background: #b58b45;

    color: #ffffff;

    cursor: pointer;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 1.5px;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}


.ramsan-contact-submit:hover {

    background: #947035;

    transform: translateY(-2px);
}


.ramsan-contact-submit i {

    transition:
        transform 0.3s ease;
}


.ramsan-contact-submit:hover i {

    transform: translateX(5px);
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ramsan-contact-form-section {

        padding: 85px 0 90px;
    }


    .ramsan-contact-form-layout {

        grid-template-columns: 1fr;

        gap: 50px;
    }


    .ramsan-contact-form-info {

        padding-right: 0;
    }


    .ramsan-contact-form-info h2 {

        font-size: 45px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ramsan-contact-form-section {

        padding: 65px 0 70px;
    }


    .ramsan-contact-form-info h2 {

        font-size: 36px;
    }


    .ramsan-contact-form-info p {

        font-size: 15px;

        line-height: 1.75;
    }


    .ramsan-contact-form-info .contact-form-lead {

        font-size: 16px;
    }


    .ramsan-contact-form-box {

        padding: 28px 20px;
    }


    .contact-form-box-heading h3 {

        font-size: 27px;
    }


    .contact-form-row {

        grid-template-columns: 1fr;

        gap: 0;
    }


    .contact-highlight-icon {

        width: 50px;
        height: 50px;

        flex: 0 0 50px;
    }

}
/* =========================================
   MASALA TREE RESTAURANT INTRO
========================================= */

.ramsan-restaurant-intro {
    padding: 120px 0 110px;
    background: #f6f1e8;
    overflow: hidden;
}


/* =========================================
   HEADING
========================================= */

.restaurant-intro-heading {
    display: grid;
    grid-template-columns: 1fr 0.85fr;
    gap: 90px;
    align-items: end;
    margin-bottom: 35px;
}

.restaurant-kicker {
    display: block;
    margin-bottom: 18px;
    color: #b98a3e;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 4px;
    text-transform: uppercase;
}

.restaurant-heading-left h2 {
    margin: 0;
    color: #201d19;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 52px;
    line-height: 1.08;
    font-weight: 400;
}

.restaurant-heading-left h2 em {
    display: block;
    color: #b98a3e;
    font-style: italic;
    font-weight: 400;
}

.restaurant-heading-right {
    padding-bottom: 5px;
}

.restaurant-heading-right p {
    margin: 0;
    color: #625d55;
    font-size: 18px;
    line-height: 1.85;
    max-width: 590px;
}


/* =========================================
   HEADING LINE
========================================= */

.restaurant-heading-line {
    width: 100%;
    height: 1px;
    background: #d8cdbb;
    margin-bottom: 55px;
}


/* =========================================
   IMAGE LAYOUT
========================================= */

.restaurant-image-layout {
    display: grid;
    grid-template-columns: 1.55fr 0.8fr;
    gap: 18px;
    min-height: 620px;
}


/* Main Image */

.restaurant-main-image {
    position: relative;
    height: 620px;
    overflow: hidden;
}

.restaurant-main-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.restaurant-main-image:hover img {
    transform: scale(1.04);
}


/* Image Overlay */

.restaurant-image-overlay {
    position: absolute;
    left: 30px;
    right: 30px;
    bottom: 30px;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 18px 22px;
    background: rgba(25, 21, 17, 0.78);
    backdrop-filter: blur(5px);
}

.restaurant-image-overlay > span {
    color: #d3a253;
    font-size: 14px;
    letter-spacing: 2px;
}

.restaurant-image-overlay small {
    display: block;
    margin-bottom: 4px;
    color: #d3a253;
    font-size: 10px;
    letter-spacing: 3px;
}

.restaurant-image-overlay strong {
    display: block;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    font-weight: 400;
}


/* Right Side */

.restaurant-side-images {
    display: grid;
    grid-template-rows: 1fr 1fr;
    gap: 18px;
}

.restaurant-small-image {
    position: relative;
    min-height: 0;
    overflow: hidden;
}

.restaurant-small-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.restaurant-small-image:hover img {
    transform: scale(1.05);
}

.restaurant-small-number {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: rgba(25, 21, 17, 0.75);
    font-size: 12px;
    letter-spacing: 1px;
}


/* =========================================
   BOTTOM CONTENT
========================================= */

.restaurant-bottom-content {
    display: grid;
    grid-template-columns: 1fr 1.2fr 0.75fr;
    gap: 70px;
    padding: 80px 0 65px;
    border-bottom: 1px solid #d8cdbb;
}


/* Title */

.restaurant-bottom-title > span {
    display: block;
    margin-bottom: 18px;
    color: #b98a3e;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 3px;
}

.restaurant-bottom-title h3 {
    margin: 0;
    color: #201d19;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 34px;
    line-height: 1.25;
    font-weight: 400;
}

.restaurant-bottom-title h3 em {
    color: #b98a3e;
    font-style: italic;
}


/* Text */

.restaurant-bottom-text p {
    margin: 0 0 20px;
    color: #625d55;
    font-size: 17px;
    line-height: 1.85;
}

.restaurant-bottom-text p:last-child {
    margin-bottom: 0;
}


/* Features */

.restaurant-features {
    border-left: 1px solid #d8cdbb;
    padding-left: 35px;
}

.restaurant-feature {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 18px 0;
    border-bottom: 1px solid #ddd3c4;
}

.restaurant-feature:first-child {
    padding-top: 0;
}

.restaurant-feature:last-child {
    border-bottom: none;
}

.restaurant-feature span {
    color: #b98a3e;
    font-size: 12px;
    letter-spacing: 1px;
}

.restaurant-feature strong {
    color: #302c27;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 17px;
    font-weight: 400;
}


/* =========================================
   BOTTOM NOTE
========================================= */

.restaurant-bottom-note {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    padding-top: 35px;
}

.restaurant-bottom-note span {
    width: 45px;
    height: 1px;
    background: #b98a3e;
}

.restaurant-bottom-note p {
    margin: 0;
    color: #81776b;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 15px;
    font-style: italic;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-restaurant-intro {
        padding: 90px 0;
    }

    .restaurant-intro-heading {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .restaurant-heading-left h2 {
        font-size: 44px;
    }

    .restaurant-heading-right p {
        font-size: 17px;
    }

    .restaurant-image-layout {
        grid-template-columns: 1fr;
        min-height: auto;
    }

    .restaurant-main-image {
        height: 500px;
    }

    .restaurant-side-images {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 300px;
    }

    .restaurant-bottom-content {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .restaurant-features {
        border-left: none;
        border-top: 1px solid #d8cdbb;
        padding: 25px 0 0;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-restaurant-intro {
        padding: 70px 0 65px;
    }

    .restaurant-intro-heading {
        gap: 20px;
    }

    .restaurant-kicker {
        font-size: 10px;
        letter-spacing: 3px;
    }

    .restaurant-heading-left h2 {
        font-size: 36px;
        line-height: 1.15;
    }

    .restaurant-heading-right p {
        font-size: 16px;
        line-height: 1.75;
    }

    .restaurant-heading-line {
        margin-bottom: 35px;
    }

    .restaurant-image-layout {
        display: block;
    }

    .restaurant-main-image {
        height: 420px;
        margin-bottom: 14px;
    }

    .restaurant-side-images {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px;
    }

    .restaurant-small-image {
        height: 230px;
    }

    .restaurant-image-overlay {
        left: 15px;
        right: 15px;
        bottom: 15px;
        padding: 14px 15px;
    }

    .restaurant-image-overlay strong {
        font-size: 18px;
    }

    .restaurant-bottom-content {
        padding: 55px 0 45px;
        gap: 35px;
    }

    .restaurant-bottom-title h3 {
        font-size: 29px;
    }

    .restaurant-bottom-text p {
        font-size: 16px;
        line-height: 1.75;
    }

    .restaurant-feature strong {
        font-size: 16px;
    }

    .restaurant-bottom-note {
        gap: 10px;
        text-align: center;
    }

    .restaurant-bottom-note span {
        width: 25px;
    }

    .restaurant-bottom-note p {
        font-size: 13px;
    }

}
/* =========================================
   RESTAURANT IMAGE LAYOUT - FIXED SIZE
========================================= */

.restaurant-image-layout {
    display: grid;
    grid-template-columns: 1.6fr 0.8fr;
    gap: 18px;
    width: 100%;
    height: 620px;
}


/* =========================================
   MAIN IMAGE
========================================= */

.restaurant-main-image {
    position: relative;
    width: 100%;
    height: 620px;
    min-height: 620px;
    overflow: hidden;
}

.restaurant-main-image img {
    width: 100% !important;
    height: 100% !important;
    min-width: 100%;
    min-height: 100%;
    display: block;
    object-fit: cover !important;
    object-position: center center;
}


/* =========================================
   RIGHT SIDE IMAGES
========================================= */

.restaurant-side-images {
    display: grid;
    grid-template-rows: 1fr 1fr;
    gap: 18px;
    width: 100%;
    height: 620px;
    min-height: 620px;
}


/* =========================================
   SMALL IMAGE CARD
========================================= */

.restaurant-small-image {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 0;
    overflow: hidden;
}

.restaurant-small-image img {
    width: 100% !important;
    height: 100% !important;
    min-width: 100%;
    min-height: 100%;
    display: block;
    object-fit: cover !important;
    object-position: center center;
}


/* =========================================
   IMAGE HOVER
========================================= */

.restaurant-main-image img,
.restaurant-small-image img {
    transition: transform 0.7s ease;
}

.restaurant-main-image:hover img,
.restaurant-small-image:hover img {
    transform: scale(1.04);
}


/* =========================================
   MAIN IMAGE CAPTION
========================================= */

.restaurant-image-overlay {
    position: absolute;
    left: 25px;
    right: 25px;
    bottom: 25px;
    z-index: 2;
}


/* =========================================
   SMALL IMAGE NUMBER
========================================= */

.restaurant-small-number {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 2;

    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;
    background: rgba(20, 18, 15, 0.75);

    font-size: 12px;
    letter-spacing: 1px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .restaurant-image-layout {
        grid-template-columns: 1fr;
        height: auto;
    }

    .restaurant-main-image {
        height: 500px;
        min-height: 500px;
    }

    .restaurant-side-images {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 300px;
        height: 300px;
        min-height: 300px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .restaurant-image-layout {
        display: block;
        height: auto;
    }

    .restaurant-main-image {
        width: 100%;
        height: 400px;
        min-height: 400px;
        margin-bottom: 14px;
    }

    .restaurant-side-images {
        width: 100%;
        height: 220px;
        min-height: 220px;

        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 220px;

        gap: 14px;
    }

    .restaurant-small-image {
        height: 220px;
        min-height: 220px;
    }

}
/* =========================================
   MASALA TREE DINING EXPERIENCE
========================================= */

.ramsan-restaurant-experience {
    padding: 110px 0;
    background: #f7f3eb;
    overflow: hidden;
}


/* =========================================
   MAIN LAYOUT
========================================= */

.restaurant-experience-layout {
    display: grid;
    grid-template-columns: 0.95fr 1.05fr;
    gap: 80px;
    align-items: center;
}


/* =========================================
   CONTENT
========================================= */

.restaurant-experience-content {
    padding-right: 20px;
}

.experience-kicker {
    display: block;
    margin-bottom: 18px;

    color: #b8893f;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 4px;
}

.restaurant-experience-content h2 {
    margin: 0;

    color: #25221e;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 52px;
    line-height: 1.1;
    font-weight: 400;
}

.restaurant-experience-content h2 em {
    display: block;

    color: #b8893f;
    font-style: italic;
}

.experience-line {
    width: 65px;
    height: 1px;
    margin: 28px 0;

    background: #b8893f;
}

.restaurant-experience-content p {
    max-width: 620px;
    margin: 0 0 18px;

    color: #68615a;
    font-size: 15px;
    line-height: 1.85;
}

.restaurant-experience-content .experience-lead {
    color: #39342f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 19px;
    line-height: 1.7;
}


/* =========================================
   EXPERIENCE POINTS
========================================= */

.restaurant-experience-points {
    margin-top: 35px;

    border-top: 1px solid #ddd4c6;
}

.experience-point {
    display: flex;
    gap: 18px;

    padding: 17px 0;

    border-bottom: 1px solid #ddd4c6;
}

.experience-point > span {
    min-width: 28px;

    color: #b8893f;
    font-size: 11px;
    letter-spacing: 1px;
}

.experience-point h3 {
    margin: 0 0 4px;

    color: #292520;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 18px;
    font-weight: 400;
}

.experience-point p {
    margin: 0 !important;

    color: #777068 !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
}


/* =========================================
   RIGHT VISUAL
========================================= */

.restaurant-experience-visual {
    position: relative;
    min-height: 620px;
}


/* Main Image */

.experience-main-photo {
    position: absolute;

    top: 0;
    right: 0;

    width: 82%;
    height: 535px;

    overflow: hidden;
}

.experience-main-photo img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform 0.6s ease;
}

.experience-main-photo:hover img {
    transform: scale(1.03);
}


/* Small Floating Image */

.experience-photo-card {
    position: absolute;

    left: 0;
    bottom: 0;

    width: 48%;
    height: 260px;

    overflow: hidden;

    border: 8px solid #f7f3eb;
}

.experience-photo-card img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


/* Image Label */

.experience-photo-label {
    position: absolute;

    left: 15px;
    right: 15px;
    bottom: 15px;

    padding: 12px 15px;

    background: rgba(35, 31, 27, 0.82);
}

.experience-photo-label span {
    display: block;

    margin-bottom: 4px;

    color: #d5a95e;
    font-size: 8px;
    letter-spacing: 3px;
}

.experience-photo-label strong {
    color: #fff;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 16px;
    font-weight: 400;
}


/* Number */

.experience-number {
    position: absolute;

    top: 20px;
    left: 20px;

    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;
    background: #b8893f;

    font-size: 12px;
    letter-spacing: 1px;
}


/* =========================================
   BOTTOM NOTE
========================================= */

.restaurant-experience-note {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 16px;

    margin-top: 70px;
}

.restaurant-experience-note span {
    width: 45px;
    height: 1px;

    background: #b8893f;
}

.restaurant-experience-note p {
    margin: 0;

    color: #766e65;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 14px;
    font-style: italic;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-restaurant-experience {
        padding: 90px 0;
    }

    .restaurant-experience-layout {
        grid-template-columns: 1fr;
        gap: 60px;
    }

    .restaurant-experience-content {
        padding-right: 0;
    }

    .restaurant-experience-content h2 {
        font-size: 45px;
    }

    .restaurant-experience-visual {
        min-height: 580px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-restaurant-experience {
        padding: 70px 0;
    }

    .restaurant-experience-layout {
        gap: 45px;
    }

    .restaurant-experience-content h2 {
        font-size: 36px;
    }

    .restaurant-experience-content .experience-lead {
        font-size: 18px;
    }

    .restaurant-experience-content p {
        font-size: 15px;
        line-height: 1.75;
    }

    .restaurant-experience-visual {
        min-height: 470px;
    }

    .experience-main-photo {
        width: 88%;
        height: 390px;
    }

    .experience-photo-card {
        width: 52%;
        height: 205px;

        border-width: 6px;
    }

    .experience-number {
        width: 44px;
        height: 44px;

        top: 12px;
        left: 12px;
    }

    .restaurant-experience-note {
        margin-top: 50px;
        gap: 10px;
        text-align: center;
    }

    .restaurant-experience-note span {
        width: 25px;
    }

    .restaurant-experience-note p {
        font-size: 12px;
    }

}
/* =========================================
   MASALA TREE FEATURES
========================================= */

.ramsan-restaurant-features {
    padding: 110px 0;
    background: #fffdf9;
}


/* =========================================
   HEADING
========================================= */

.restaurant-features-heading {
    max-width: 780px;
    margin: 0 auto 65px;
    text-align: center;
}

.restaurant-features-heading > span {
    display: block;

    margin-bottom: 18px;

    color: #b8893f;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 4px;
}

.restaurant-features-heading h2 {
    margin: 0;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 50px;
    line-height: 1.12;
    font-weight: 400;
}

.restaurant-features-heading h2 em {
    color: #b8893f;
    font-style: italic;
}

.restaurant-features-line {
    width: 65px;
    height: 1px;

    margin: 25px auto;

    background: #b8893f;
}

.restaurant-features-heading p {
    max-width: 680px;

    margin: auto;

    color: #706960;

    font-size: 15px;
    line-height: 1.85;
}


/* =========================================
   FEATURES GRID
========================================= */

.restaurant-features-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    border-top: 1px solid #ddd5ca;
    border-left: 1px solid #ddd5ca;
}


/* =========================================
   FEATURE ITEM
========================================= */

.restaurant-feature-item {
    min-height: 290px;

    padding: 35px 32px;

    background: #fffdf9;

    border-right: 1px solid #ddd5ca;
    border-bottom: 1px solid #ddd5ca;

    transition: all 0.35s ease;
}

.restaurant-feature-item:hover {
    background: #f8f3ea;

    transform: translateY(-3px);
}


/* =========================================
   TOP
========================================= */

.restaurant-feature-top {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    margin-bottom: 28px;
}

.restaurant-feature-top > span {
    color: #b8893f;

    font-size: 10px;
    letter-spacing: 2px;
}


/* =========================================
   ICON
========================================= */

.restaurant-feature-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #c9a568;

    border-radius: 50%;

    color: #b8893f;

    font-size: 21px;

    transition: all 0.35s ease;
}

.restaurant-feature-item:hover
.restaurant-feature-icon {
    background: #b8893f;
    color: #fff;

    transform: rotate(5deg);
}


/* =========================================
   CONTENT
========================================= */

.restaurant-feature-item h3 {
    margin: 0 0 13px;

    color: #2c2823;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 24px;
    line-height: 1.3;

    font-weight: 400;
}

.restaurant-feature-item p {
    max-width: 320px;

    margin: 0;

    color: #756e66;

    font-size: 14px;
    line-height: 1.8;
}


/* =========================================
   BOTTOM
========================================= */

.restaurant-features-bottom {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 18px;

    margin-top: 60px;
}

.restaurant-features-bottom span {
    width: 50px;
    height: 1px;

    background: #b8893f;
}

.restaurant-features-bottom p {
    margin: 0;

    color: #756d64;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 14px;
    font-style: italic;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-restaurant-features {
        padding: 90px 0;
    }

    .restaurant-features-heading h2 {
        font-size: 43px;
    }

    .restaurant-features-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-restaurant-features {
        padding: 70px 0;
    }

    .restaurant-features-heading {
        margin-bottom: 45px;
    }

    .restaurant-features-heading h2 {
        font-size: 35px;
    }

    .restaurant-features-heading p {
        font-size: 14px;
    }

    .restaurant-features-grid {
        grid-template-columns: 1fr;
    }

    .restaurant-feature-item {
        min-height: auto;
        padding: 28px 24px;
    }

    .restaurant-feature-item h3 {
        font-size: 22px;
    }

    .restaurant-feature-top {
        margin-bottom: 22px;
    }

    .restaurant-feature-icon {
        width: 52px;
        height: 52px;
        font-size: 19px;
    }

    .restaurant-features-bottom {
        margin-top: 45px;
        gap: 10px;
    }

    .restaurant-features-bottom span {
        width: 25px;
    }

    .restaurant-features-bottom p {
        font-size: 12px;
    }

}
/* =========================================
   MASALA TREE RESERVATION CTA
========================================= */

.ramsan-restaurant-reservation {
    padding: 110px 0;
    background: #fffdf9;
}


/* =========================================
   MAIN BOX
========================================= */

.restaurant-reservation-box {
    display: grid;

    grid-template-columns: 1.2fr 0.8fr;

    background: #f7f3eb;

    border: 1px solid #ded5c8;
}


/* =========================================
   LEFT CONTENT
========================================= */

.restaurant-reservation-content {
    padding: 70px 65px;
}

.restaurant-reservation-content > span {
    display: block;

    margin-bottom: 18px;

    color: #b8893f;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 4px;
}

.restaurant-reservation-content h2 {
    margin: 0;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 48px;
    line-height: 1.12;
    font-weight: 400;
}

.restaurant-reservation-content h2 em {
    display: block;

    color: #b8893f;

    font-style: italic;
}

.restaurant-reservation-line {
    width: 65px;
    height: 1px;

    margin: 27px 0;

    background: #b8893f;
}

.restaurant-reservation-content p {
    max-width: 620px;

    margin: 0 0 30px;

    color: #6f685f;

    font-size: 15px;
    line-height: 1.85;
}


/* =========================================
   BUTTONS
========================================= */

.restaurant-reservation-buttons {
    display: flex;

    align-items: center;

    gap: 12px;
}

.restaurant-reservation-primary,
.restaurant-reservation-secondary {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 12px;

    min-height: 50px;

    padding: 0 22px;

    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1.5px;

    text-decoration: none;

    transition: all 0.3s ease;
}

.restaurant-reservation-primary {
    background: #b8893f;
    color: #fff;
}

.restaurant-reservation-primary:hover {
    background: #29251f;
    color: #fff;
}

.restaurant-reservation-primary i {
    transition: transform 0.3s ease;
}

.restaurant-reservation-primary:hover i {
    transform: translateX(5px);
}

.restaurant-reservation-secondary {
    border: 1px solid #b8893f;

    color: #5c5349;

    background: transparent;
}

.restaurant-reservation-secondary:hover {
    background: #b8893f;
    color: #fff;
}


/* =========================================
   RIGHT INFO
========================================= */

.restaurant-reservation-info {
    padding: 45px 40px;

    display: flex;

    flex-direction: column;
    justify-content: center;

    background: #29251f;
}


/* =========================================
   INFO ITEM
========================================= */

.reservation-info-item {
    display: flex;

    align-items: center;

    gap: 20px;

    padding: 22px 0;
}

.reservation-info-icon {
    flex-shrink: 0;

    width: 52px;
    height: 52px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #b8893f;

    border-radius: 50%;

    color: #d2a55b;

    font-size: 17px;
}

.reservation-info-item span {
    display: block;

    margin-bottom: 7px;

    color: #b8893f;

    font-size: 9px;
    letter-spacing: 2px;
}

.reservation-info-item strong {
    display: block;

    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 18px;
    font-weight: 400;
}

.reservation-info-divider {
    width: 100%;
    height: 1px;

    background: rgba(255, 255, 255, 0.12);
}


/* =========================================
   BOTTOM
========================================= */

.restaurant-reservation-bottom {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 18px;

    margin-top: 50px;
}

.restaurant-reservation-bottom span {
    width: 45px;
    height: 1px;

    background: #b8893f;
}

.restaurant-reservation-bottom p {
    margin: 0;

    color: #756d64;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 13px;
    font-style: italic;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-restaurant-reservation {
        padding: 90px 0;
    }

    .restaurant-reservation-box {
        grid-template-columns: 1fr;
    }

    .restaurant-reservation-content {
        padding: 55px 45px;
    }

    .restaurant-reservation-content h2 {
        font-size: 43px;
    }

    .restaurant-reservation-info {
        padding: 30px 45px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-restaurant-reservation {
        padding: 70px 0;
    }

    .restaurant-reservation-content {
        padding: 40px 25px;
    }

    .restaurant-reservation-content h2 {
        font-size: 35px;
    }

    .restaurant-reservation-content p {
        font-size: 14px;
    }

    .restaurant-reservation-buttons {
        flex-direction: column;

        align-items: stretch;
    }

    .restaurant-reservation-primary,
    .restaurant-reservation-secondary {
        width: 100%;
    }

    .restaurant-reservation-info {
        padding: 25px;
    }

    .reservation-info-item {
        gap: 15px;
    }

    .reservation-info-icon {
        width: 46px;
        height: 46px;
    }

    .reservation-info-item strong {
        font-size: 16px;
    }

    .restaurant-reservation-bottom {
        gap: 9px;
    }

    .restaurant-reservation-bottom span {
        width: 25px;
    }

    .restaurant-reservation-bottom p {
        font-size: 11px;
        text-align: center;
    }

}
/* lawns */
/* =========================================
   SIYA MILAN LAWN - ABOUT
========================================= */

.ramsan-siya-about {
    padding: 115px 0 105px;
    background: #f7f3eb;
    overflow: hidden;
}


/* =========================================
   HEADING
========================================= */

.siya-about-heading {
    max-width: 850px;
    margin: 0 auto 65px;
    text-align: center;
}

.siya-about-heading > span {
    display: block;
    margin-bottom: 18px;

    color: #b8893f;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 4px;
}

.siya-about-heading h2 {
    margin: 0;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 50px;
    line-height: 1.12;
    font-weight: 400;
}

.siya-about-heading h2 em {
    display: block;

    color: #b8893f;

    font-style: italic;
}

.siya-about-line {
    width: 65px;
    height: 1px;

    margin: 25px auto;

    background: #b8893f;
}

.siya-about-heading p {
    max-width: 700px;

    margin: auto;

    color: #706960;

    font-size: 15px;
    line-height: 1.85;
}


/* =========================================
   MAIN LAYOUT
========================================= */

.siya-about-layout {
    display: grid;

    grid-template-columns: 1fr 0.9fr;

    gap: 85px;

    align-items: center;
}


/* =========================================
   VISUAL
========================================= */

.siya-about-visual {
    position: relative;

    min-height: 610px;
}


/* Main Image */

.siya-about-main-image {
    width: 88%;
    height: 570px;

    overflow: hidden;
}

.siya-about-main-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform 0.7s ease;
}

.siya-about-main-image:hover img {
    transform: scale(1.04);
}


/* Floating Card */

.siya-about-floating-card {
    position: absolute;

    right: 0;
    bottom: 35px;

    width: 240px;

    padding: 25px;

    background: #29251f;

    box-shadow: 0 15px 35px rgba(40, 33, 25, 0.16);
}

.siya-about-floating-card span {
    display: block;

    margin-bottom: 10px;

    color: #c49a52;

    font-size: 8px;
    letter-spacing: 3px;
}

.siya-about-floating-card strong {
    display: block;

    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 23px;
    line-height: 1.25;

    font-weight: 400;
}

.siya-about-floating-card em {
    color: #d1a45a;
    font-style: italic;
}


/* Number */

.siya-about-number {
    position: absolute;

    top: 25px;
    left: 25px;

    width: 50px;
    height: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #b8893f;

    color: #fff;

    font-size: 12px;
    letter-spacing: 1px;
}


/* =========================================
   CONTENT
========================================= */

.siya-about-content {
    padding-right: 15px;
}

.siya-about-kicker {
    display: block;

    margin-bottom: 17px;

    color: #b8893f;

    font-size: 10px;
    font-weight: 600;
    letter-spacing: 3px;
}

.siya-about-content h3 {
    margin: 0 0 25px;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 400;
}

.siya-about-content h3 em {
    display: block;

    color: #b8893f;

    font-style: italic;
}

.siya-about-content p {
    margin: 0 0 17px;

    color: #706960;

    font-size: 15px;
    line-height: 1.85;
}

.siya-about-content .siya-about-lead {
    color: #3d3832;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 19px;
    line-height: 1.7;
}


/* =========================================
   HIGHLIGHTS
========================================= */

.siya-about-highlights {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 15px;

    margin-top: 32px;
}

.siya-about-highlight {
    display: flex;

    align-items: center;

    gap: 12px;

    padding: 15px;

    border: 1px solid #ddd4c7;

    background: rgba(255,255,255,0.35);
}

.siya-highlight-icon {
    width: 42px;
    height: 42px;

    flex: 0 0 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #c6a064;

    color: #b8893f;

    font-size: 15px;
}

.siya-about-highlight strong {
    display: block;

    margin-bottom: 3px;

    color: #302b25;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 15px;
    font-weight: 400;
}

.siya-about-highlight span {
    display: block;

    color: #827a71;

    font-size: 10px;
}


/* =========================================
   BUTTON
========================================= */

.siya-about-btn {
    display: inline-flex;

    align-items: center;

    gap: 14px;

    margin-top: 30px;

    padding: 15px 23px;

    background: #b8893f;

    color: #fff;

    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1.5px;

    text-decoration: none;

    transition: all 0.3s ease;
}

.siya-about-btn i {
    transition: transform 0.3s ease;
}

.siya-about-btn:hover {
    background: #29251f;
    color: #fff;
}

.siya-about-btn:hover i {
    transform: translateX(5px);
}


/* =========================================
   BOTTOM
========================================= */

.siya-about-bottom {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 18px;

    margin-top: 75px;
}

.siya-about-bottom span {
    width: 50px;
    height: 1px;

    background: #b8893f;
}

.siya-about-bottom p {
    margin: 0;

    color: #756d64;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 14px;
    font-style: italic;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-siya-about {
        padding: 90px 0;
    }

    .siya-about-heading h2 {
        font-size: 43px;
    }

    .siya-about-layout {
        grid-template-columns: 1fr;

        gap: 65px;
    }

    .siya-about-visual {
        min-height: 580px;
    }

    .siya-about-main-image {
        width: 88%;
        height: 540px;
    }

    .siya-about-content {
        padding-right: 0;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-siya-about {
        padding: 70px 0;
    }

    .siya-about-heading {
        margin-bottom: 45px;
    }

    .siya-about-heading h2 {
        font-size: 35px;
    }

    .siya-about-heading p {
        font-size: 14px;
    }

    .siya-about-layout {
        gap: 45px;
    }

    .siya-about-visual {
        min-height: 430px;
    }

    .siya-about-main-image {
        width: 88%;
        height: 400px;
    }

    .siya-about-floating-card {
        width: 190px;
        right: 0;
        bottom: 15px;
        padding: 18px;
    }

    .siya-about-floating-card strong {
        font-size: 19px;
    }

    .siya-about-number {
        width: 43px;
        height: 43px;
        top: 15px;
        left: 15px;
    }

    .siya-about-content h3 {
        font-size: 31px;
    }

    .siya-about-content .siya-about-lead {
        font-size: 17px;
    }

    .siya-about-content p {
        font-size: 14px;
    }

    .siya-about-highlights {
        grid-template-columns: 1fr;
    }

    .siya-about-bottom {
        margin-top: 50px;
        gap: 10px;
    }

    .siya-about-bottom span {
        width: 25px;
    }

    .siya-about-bottom p {
        font-size: 12px;
        text-align: center;
    }

}
/* =========================================
   SIYA MILAN LAWN - EXPERIENCE SECTION
========================================= */

.ramsan-lawn-experience {
    position: relative;
    padding: 120px 0 90px;
    background: #f7f3ec;
    overflow: hidden;
}


/* =========================================
   SECTION HEADING
========================================= */

.lawn-experience-heading {
    max-width: 850px;
    margin: 0 auto 80px;
    text-align: center;
}

.lawn-experience-heading > span {
    display: block;
    margin-bottom: 18px;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
    text-transform: uppercase;

    color: #b98a3d;
}

.lawn-experience-heading h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 52px;
    line-height: 1.15;
    font-weight: 400;

    color: #25211d;
}

.lawn-experience-heading h2 em {
    display: block;

    font-weight: 400;
    font-style: italic;

    color: #b98a3d;
}

.lawn-heading-line {
    width: 65px;
    height: 2px;

    margin: 28px auto 28px;

    background: #c49a55;
}

.lawn-experience-heading p {
    max-width: 760px;
    margin: 0 auto;

    font-size: 16px;
    line-height: 1.9;
    font-weight: 400;

    color: #6c665f;
}


/* =========================================
   MAIN LAYOUT
========================================= */

.lawn-experience-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 90px;

    max-width: 1180px;
    margin: 0 auto;
}


/* =========================================
   LEFT CONTENT
========================================= */

.lawn-experience-content {
    position: relative;
    padding: 10px 20px 10px 0;
}

.lawn-experience-number {
    display: block;

    margin-bottom: 18px;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;

    color: #b98a3d;
}

.lawn-experience-line {
    width: 55px;
    height: 1px;

    margin-bottom: 35px;

    background: #c49a55;
}

.lawn-experience-content h3 {
    max-width: 520px;

    margin: 0 0 30px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 39px;
    line-height: 1.25;
    font-weight: 400;

    color: #28231e;
}

.lawn-experience-content h3 em {
    display: block;

    font-style: italic;
    font-weight: 400;

    color: #b98a3d;
}

.lawn-experience-content p {
    max-width: 540px;

    margin: 0 0 22px;

    font-size: 15px;
    line-height: 1.9;

    color: #6b655d;
}

.lawn-experience-content .lawn-experience-lead {
    margin-bottom: 25px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 19px;
    line-height: 1.65;

    color: #37312b;
}


/* =========================================
   RIGHT FEATURES
========================================= */

.lawn-experience-features {
    display: flex;
    flex-direction: column;

    border-top: 1px solid #ddd3c4;
}


/* =========================================
   FEATURE ITEM
========================================= */

.lawn-experience-feature {
    display: grid;
    grid-template-columns: 68px 1fr;
    gap: 22px;

    padding: 30px 0;

    border-bottom: 1px solid #ddd3c4;
}

.lawn-feature-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #c9a66a;

    font-size: 20px;

    color: #b98a3d;

    transition: all 0.3s ease;
}

.lawn-experience-feature:hover .lawn-feature-icon {
    background: #b98a3d;
    color: #fff;

    transform: translateY(-3px);
}

.lawn-feature-content > span {
    display: block;

    margin-bottom: 7px;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;

    color: #b98a3d;
}

.lawn-feature-content h4 {
    margin: 0 0 10px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
    line-height: 1.3;
    font-weight: 400;

    color: #29241f;
}

.lawn-feature-content p {
    max-width: 450px;

    margin: 0;

    font-size: 14px;
    line-height: 1.75;

    color: #756e66;
}


/* =========================================
   BOTTOM STATEMENT
========================================= */

.lawn-experience-bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;

    margin-top: 75px;
}

.lawn-experience-bottom span {
    width: 55px;
    height: 1px;

    background: #c49a55;
}

.lawn-experience-bottom p {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 14px;
    font-style: italic;

    color: #777067;
    text-align: center;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-lawn-experience {
        padding: 90px 0 70px;
    }

    .lawn-experience-heading {
        margin-bottom: 60px;
    }

    .lawn-experience-heading h2 {
        font-size: 44px;
    }

    .lawn-experience-layout {
        grid-template-columns: 1fr;
        gap: 60px;

        padding: 0 25px;
    }

    .lawn-experience-content {
        padding-right: 0;
    }

    .lawn-experience-content h3 {
        font-size: 35px;
    }

    .lawn-experience-content p {
        max-width: 100%;
    }

    .lawn-experience-features {
        width: 100%;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-lawn-experience {
        padding: 70px 0 55px;
    }

    .lawn-experience-heading {
        margin: 0 15px 45px;
    }

    .lawn-experience-heading > span {
        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .lawn-experience-heading h2 {
        font-size: 34px;
        line-height: 1.2;
    }

    .lawn-experience-heading p {
        font-size: 14px;
        line-height: 1.75;
    }

    .lawn-heading-line {
        margin: 22px auto;
    }


    .lawn-experience-layout {
        display: block;

        padding: 0 18px;
    }


    .lawn-experience-content {
        padding: 0;
        margin-bottom: 45px;
    }

    .lawn-experience-content h3 {
        font-size: 30px;
        line-height: 1.25;
        margin-bottom: 24px;
    }

    .lawn-experience-content .lawn-experience-lead {
        font-size: 17px;
        line-height: 1.65;
    }

    .lawn-experience-content p {
        font-size: 14px;
        line-height: 1.8;
    }


    .lawn-experience-feature {
        grid-template-columns: 52px 1fr;
        gap: 15px;

        padding: 24px 0;
    }

    .lawn-feature-icon {
        width: 48px;
        height: 48px;

        font-size: 17px;
    }

    .lawn-feature-content h4 {
        font-size: 20px;
    }

    .lawn-feature-content p {
        font-size: 13px;
        line-height: 1.7;
    }


    .lawn-experience-bottom {
        margin-top: 50px;
        padding: 0 15px;

        gap: 12px;
    }

    .lawn-experience-bottom span {
        width: 30px;
    }

    .lawn-experience-bottom p {
        font-size: 12px;
    }

}
.ramsan-lawn-experience {
    padding: 40px 0 60px;
}
/* =========================================
   SIYA MILAN LAWN - EVENTS SECTION
========================================= */

.ramsan-lawn-events {
    padding: 105px 0 90px;
    background: #fffdf9;
    overflow: hidden;
}


/* =========================================
   SECTION HEADING
========================================= */

.lawn-events-heading {
    max-width: 850px;
    margin: 0 auto 65px;
    text-align: center;
}

.lawn-events-heading > span {
    display: block;

    margin-bottom: 18px;

    color: #b8893f;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
    text-transform: uppercase;
}

.lawn-events-heading h2 {
    margin: 0;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 50px;
    line-height: 1.15;
    font-weight: 400;
}

.lawn-events-heading h2 em {
    display: block;

    color: #b8893f;

    font-style: italic;
}

.lawn-events-line {
    width: 65px;
    height: 1px;

    margin: 25px auto;

    background: #b8893f;
}

.lawn-events-heading p {
    max-width: 740px;

    margin: 0 auto;

    color: #706960;

    font-size: 15px;
    line-height: 1.85;
}


/* =========================================
   EVENTS GRID
========================================= */

.lawn-events-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    border-top: 1px solid #ded5c9;
    border-left: 1px solid #ded5c9;
}


/* =========================================
   EVENT CARD
========================================= */

.lawn-event-card {
    min-height: 355px;

    padding: 32px 30px 30px;

    background: #fffdf9;

    border-right: 1px solid #ded5c9;
    border-bottom: 1px solid #ded5c9;

    transition:
        background 0.35s ease,
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.lawn-event-card:hover {
    position: relative;

    z-index: 2;

    background: #f8f2e8;

    transform: translateY(-4px);

    box-shadow: 0 15px 35px rgba(45, 37, 27, 0.08);
}


/* =========================================
   CARD TOP
========================================= */

.lawn-event-top {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    margin-bottom: 28px;
}

.lawn-event-top > span {
    color: #b8893f;

    font-size: 10px;
    font-weight: 600;
    letter-spacing: 2px;
}


/* =========================================
   ICON
========================================= */

.lawn-event-icon {
    width: 56px;
    height: 56px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #c8a56a;

    border-radius: 50%;

    color: #b8893f;

    font-size: 19px;

    transition:
        background 0.35s ease,
        color 0.35s ease,
        transform 0.35s ease;
}

.lawn-event-card:hover .lawn-event-icon {
    background: #b8893f;

    color: #fff;

    transform: rotate(5deg);
}


/* =========================================
   CARD CONTENT
========================================= */

.lawn-event-card h3 {
    margin: 0 0 14px;

    color: #2b2621;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 25px;
    line-height: 1.3;
    font-weight: 400;
}

.lawn-event-card p {
    min-height: 105px;

    margin: 0;

    color: #736c64;

    font-size: 14px;
    line-height: 1.8;
}


/* =========================================
   CARD BOTTOM LINE
========================================= */

.lawn-event-line {
    width: 40px;
    height: 1px;

    margin: 22px 0 14px;

    background: #b8893f;
}

.lawn-event-card > strong {
    display: block;

    color: #887d70;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 13px;
    font-style: italic;
    font-weight: 400;
}


/* =========================================
   BOTTOM CTA
========================================= */

.lawn-events-bottom {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 40px;

    margin-top: 65px;

    padding: 35px 40px;

    background: #f7f3eb;

    border: 1px solid #ded5c9;
}

.lawn-events-bottom > div > span {
    display: block;

    margin-bottom: 9px;

    color: #b8893f;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 3px;
}

.lawn-events-bottom h3 {
    margin: 0;

    color: #2c2722;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 25px;
    line-height: 1.3;
    font-weight: 400;
}

.lawn-events-bottom h3 em {
    color: #b8893f;

    font-style: italic;
}


/* =========================================
   CTA BUTTON
========================================= */

.lawn-events-bottom a {
    flex-shrink: 0;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 14px;

    min-height: 50px;

    padding: 0 24px;

    background: #b8893f;

    color: #fff;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;

    text-decoration: none;

    transition: all 0.3s ease;
}

.lawn-events-bottom a i {
    transition: transform 0.3s ease;
}

.lawn-events-bottom a:hover {
    background: #29251f;

    color: #fff;
}

.lawn-events-bottom a:hover i {
    transform: translateX(5px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-lawn-events {
        padding: 90px 0 75px;
    }

    .lawn-events-heading {
        margin-bottom: 55px;
    }

    .lawn-events-heading h2 {
        font-size: 43px;
    }

    .lawn-events-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .lawn-event-card {
        min-height: 350px;
    }

    .lawn-event-card p {
        min-height: auto;
    }

    .lawn-events-bottom {
        padding: 30px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-lawn-events {
        padding: 70px 0 55px;
    }

    .lawn-events-heading {
        margin: 0 15px 45px;
    }

    .lawn-events-heading > span {
        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .lawn-events-heading h2 {
        font-size: 34px;
        line-height: 1.2;
    }

    .lawn-events-heading p {
        font-size: 14px;
        line-height: 1.75;
    }


    /* Grid */

    .lawn-events-grid {
        grid-template-columns: 1fr;

        margin: 0 5px;
    }


    /* Cards */

    .lawn-event-card {
        min-height: auto;

        padding: 27px 23px;
    }

    .lawn-event-top {
        margin-bottom: 23px;
    }

    .lawn-event-icon {
        width: 50px;
        height: 50px;

        font-size: 17px;
    }

    .lawn-event-card h3 {
        font-size: 22px;
    }

    .lawn-event-card p {
        min-height: auto;

        font-size: 13px;
        line-height: 1.75;
    }

    .lawn-event-line {
        margin-top: 20px;
    }


    /* Bottom CTA */

    .lawn-events-bottom {
        flex-direction: column;

        align-items: flex-start;

        gap: 25px;

        margin-top: 45px;

        padding: 27px 23px;
    }

    .lawn-events-bottom h3 {
        font-size: 22px;
    }

    .lawn-events-bottom a {
        width: 100%;
    }

}
.ramsan-lawn-events {
    padding: 40px 0 60px;
}
/* =========================================
   SIYA MILAN LAWN - DECORATION & SETUP
========================================= */

.ramsan-lawn-decoration {
    padding: 105px 0 90px;
    background: #f7f3eb;
    overflow: hidden;
}


/* =========================================
   SECTION HEADING
========================================= */

.lawn-decoration-heading {
    max-width: 850px;
    margin: 0 auto 65px;
    text-align: center;
}

.lawn-decoration-heading > span {
    display: block;

    margin-bottom: 18px;

    color: #b8893f;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
    text-transform: uppercase;
}

.lawn-decoration-heading h2 {
    margin: 0;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 50px;
    line-height: 1.15;
    font-weight: 400;
}

.lawn-decoration-heading h2 em {
    display: block;

    color: #b8893f;
    font-style: italic;
    font-weight: 400;
}

.lawn-decoration-line {
    width: 65px;
    height: 1px;

    margin: 25px auto;

    background: #b8893f;
}

.lawn-decoration-heading p {
    max-width: 750px;

    margin: 0 auto;

    color: #706960;

    font-size: 15px;
    line-height: 1.85;
}


/* =========================================
   MAIN LAYOUT
========================================= */

.lawn-decoration-layout {
    display: grid;

    grid-template-columns: 1.05fr 0.95fr;

    gap: 70px;

    align-items: stretch;

    max-width: 1180px;
    margin: 0 auto;
}


/* =========================================
   MAIN IMAGE
========================================= */

.lawn-decoration-main {
    position: relative;

    height: 610px;

    overflow: hidden;

    background: #e8e0d3;
}

.lawn-decoration-main img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform 0.7s ease;
}

.lawn-decoration-main:hover img {
    transform: scale(1.04);
}


/* =========================================
   IMAGE CAPTION
========================================= */

.lawn-decoration-main-caption {
    position: absolute;

    left: 25px;
    right: 25px;
    bottom: 25px;

    display: flex;
    align-items: center;

    gap: 18px;

    padding: 20px 22px;

    background: rgba(40, 35, 29, 0.88);

    backdrop-filter: blur(4px);
}

.lawn-decoration-main-caption > span {
    width: 42px;
    height: 42px;

    flex: 0 0 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #c69b54;

    color: #d1a55d;

    font-size: 11px;
    letter-spacing: 1px;
}

.lawn-decoration-main-caption strong {
    display: block;

    margin-bottom: 4px;

    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 20px;
    font-weight: 400;
}

.lawn-decoration-main-caption p {
    margin: 0;

    color: #d4cec5;

    font-size: 12px;
    line-height: 1.5;
}


/* =========================================
   RIGHT CONTENT
========================================= */

.lawn-decoration-content {
    display: flex;

    flex-direction: column;

    justify-content: center;

    border-top: 1px solid #ddd3c5;
}


/* =========================================
   DECORATION ITEM
========================================= */

.lawn-decoration-item {
    display: grid;

    grid-template-columns: 60px 1fr;

    gap: 22px;

    padding: 27px 0;

    border-bottom: 1px solid #ddd3c5;
}


/* =========================================
   ICON
========================================= */

.decoration-item-icon {
    width: 52px;
    height: 52px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #c8a263;

    color: #b8893f;

    font-size: 18px;

    transition: all 0.35s ease;
}

.lawn-decoration-item:hover .decoration-item-icon {
    background: #b8893f;

    color: #fff;

    transform: translateY(-3px);
}


/* =========================================
   ITEM CONTENT
========================================= */

.lawn-decoration-item > div:last-child > span {
    display: block;

    margin-bottom: 7px;

    color: #b8893f;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2px;
}

.lawn-decoration-item h3 {
    margin: 0 0 9px;

    color: #2b2621;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 23px;
    line-height: 1.3;
    font-weight: 400;
}

.lawn-decoration-item p {
    max-width: 500px;

    margin: 0;

    color: #756e66;

    font-size: 13px;
    line-height: 1.75;
}


/* =========================================
   BOTTOM NOTE
========================================= */

.lawn-decoration-bottom {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 18px;

    margin-top: 65px;
}

.lawn-decoration-bottom span {
    width: 50px;
    height: 1px;

    background: #b8893f;
}

.lawn-decoration-bottom p {
    max-width: 650px;

    margin: 0;

    color: #756d64;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 14px;
    line-height: 1.6;

    font-style: italic;

    text-align: center;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-lawn-decoration {
        padding: 90px 0 75px;
    }

    .lawn-decoration-heading {
        margin-bottom: 55px;
    }

    .lawn-decoration-heading h2 {
        font-size: 43px;
    }

    .lawn-decoration-layout {
        grid-template-columns: 1fr;

        gap: 50px;

        padding: 0 25px;
    }

    .lawn-decoration-main {
        height: 520px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-lawn-decoration {
        padding: 70px 0 55px;
    }

    .lawn-decoration-heading {
        margin: 0 15px 45px;
    }

    .lawn-decoration-heading > span {
        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .lawn-decoration-heading h2 {
        font-size: 34px;
        line-height: 1.2;
    }

    .lawn-decoration-heading p {
        font-size: 14px;
        line-height: 1.75;
    }


    .lawn-decoration-layout {
        display: block;

        padding: 0 15px;
    }


    /* Image */

    .lawn-decoration-main {
        height: 390px;

        margin-bottom: 35px;
    }

    .lawn-decoration-main-caption {
        left: 12px;
        right: 12px;
        bottom: 12px;

        gap: 12px;

        padding: 14px;
    }

    .lawn-decoration-main-caption > span {
        width: 36px;
        height: 36px;

        flex-basis: 36px;
    }

    .lawn-decoration-main-caption strong {
        font-size: 17px;
    }

    .lawn-decoration-main-caption p {
        font-size: 11px;
    }


    /* Items */

    .lawn-decoration-item {
        grid-template-columns: 50px 1fr;

        gap: 15px;

        padding: 23px 0;
    }

    .decoration-item-icon {
        width: 45px;
        height: 45px;

        font-size: 16px;
    }

    .lawn-decoration-item h3 {
        font-size: 20px;
    }

    .lawn-decoration-item p {
        font-size: 13px;
        line-height: 1.7;
    }


    /* Bottom */

    .lawn-decoration-bottom {
        margin-top: 45px;

        gap: 10px;

        padding: 0 15px;
    }

    .lawn-decoration-bottom span {
        width: 25px;
    }

    .lawn-decoration-bottom p {
        font-size: 12px;
    }

}
.ramsan-lawn-decoration {
    padding: 40px 0 60px;
}
/* =========================================
   SIYA MILAN LAWN - CTA
========================================= */

.ramsan-lawn-cta {
    position: relative;

    padding: 100px 0 0;

    background:
        linear-gradient(
            rgba(35, 28, 20, 0.88),
            rgba(35, 28, 20, 0.92)
        ),
        url("../images/slider/siya-decoration.jpeg")
        center center / cover no-repeat;

    overflow: hidden;
}


/* =========================================
   OVERLAY
========================================= */

.lawn-cta-overlay {
    position: absolute;

    inset: 0;

    background:
        radial-gradient(
            circle at center,
            rgba(194, 150, 76, 0.12),
            transparent 55%
        );

    pointer-events: none;
}


/* =========================================
   CONTENT
========================================= */

.lawn-cta-content {
    position: relative;

    max-width: 850px;

    margin: 0 auto;

    text-align: center;

    z-index: 2;
}


.lawn-cta-kicker {
    display: block;

    margin-bottom: 20px;

    color: #d0a45c;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 4px;

    text-transform: uppercase;
}


.lawn-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 55px;
    line-height: 1.15;

    font-weight: 400;
}


.lawn-cta-content h2 em {
    display: block;

    margin-top: 4px;

    color: #d0a45c;

    font-style: italic;

    font-weight: 400;
}


.lawn-cta-line {
    width: 70px;
    height: 1px;

    margin: 28px auto;

    background: #d0a45c;
}


.lawn-cta-content p {
    max-width: 720px;

    margin: 0 auto;

    color: #ddd6cc;

    font-size: 15px;

    line-height: 1.85;
}


/* =========================================
   BUTTONS
========================================= */

.lawn-cta-buttons {
    display: flex;

    justify-content: center;
    align-items: center;

    gap: 15px;

    margin-top: 35px;
}


.lawn-cta-primary,
.lawn-cta-secondary {
    min-height: 52px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 0 27px;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-decoration: none;

    transition: all 0.35s ease;
}


/* Primary */

.lawn-cta-primary {
    background: #c69a51;

    color: #ffffff;

    border: 1px solid #c69a51;
}


.lawn-cta-primary i {
    margin-left: 13px;

    font-size: 13px;
}


.lawn-cta-primary:hover {
    background: #ffffff;

    border-color: #ffffff;

    color: #29231d;
}


/* Secondary */

.lawn-cta-secondary {
    border: 1px solid rgba(255,255,255,0.45);

    color: #ffffff;

    background: rgba(255,255,255,0.04);
}


.lawn-cta-secondary i {
    margin-right: 10px;

    color: #d0a45c;
}


.lawn-cta-secondary:hover {
    background: #c69a51;

    border-color: #c69a51;

    color: #ffffff;
}


.lawn-cta-secondary:hover i {
    color: #ffffff;
}


/* =========================================
   BOTTOM INFORMATION BAR
========================================= */

.lawn-cta-bottom {
    position: relative;

    display: flex;

    align-items: center;

    justify-content: center;

    max-width: 1150px;

    margin: 85px auto 0;

    padding: 28px 20px;

    border-top: 1px solid rgba(255,255,255,0.18);

    z-index: 2;
}


.lawn-cta-info {
    flex: 1;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 15px;

    padding: 0 25px;
}


.lawn-cta-info > i {
    width: 45px;
    height: 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    border: 1px solid rgba(208,164,92,0.65);

    color: #d0a45c;

    font-size: 16px;
}


.lawn-cta-info div {
    text-align: left;
}


.lawn-cta-info span {
    display: block;

    margin-bottom: 5px;

    color: #c9c1b7;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;
}


.lawn-cta-info strong {
    display: block;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 14px;

    font-weight: 400;
}


.lawn-cta-divider {
    width: 1px;
    height: 45px;

    background: rgba(255,255,255,0.15);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-lawn-cta {
        padding-top: 85px;
    }

    .lawn-cta-content {
        padding: 0 25px;
    }

    .lawn-cta-content h2 {
        font-size: 45px;
    }

    .lawn-cta-bottom {
        margin-top: 65px;
    }

    .lawn-cta-info {
        padding: 0 12px;
    }

    .lawn-cta-info strong {
        font-size: 12px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-lawn-cta {
        padding: 70px 0 0;
    }


    .lawn-cta-content {
        padding: 0 18px;
    }


    .lawn-cta-kicker {
        margin-bottom: 15px;

        font-size: 9px;

        letter-spacing: 2.5px;
    }


    .lawn-cta-content h2 {
        font-size: 34px;

        line-height: 1.2;
    }


    .lawn-cta-line {
        margin: 22px auto;
    }


    .lawn-cta-content p {
        font-size: 13px;

        line-height: 1.75;
    }


    /* Buttons */

    .lawn-cta-buttons {
        flex-direction: column;

        width: 100%;

        gap: 10px;

        margin-top: 28px;
    }


    .lawn-cta-primary,
    .lawn-cta-secondary {
        width: 100%;

        min-height: 50px;
    }


    /* Bottom */

    .lawn-cta-bottom {
        flex-direction: column;

        margin-top: 55px;

        padding: 25px 18px;

        gap: 22px;
    }


    .lawn-cta-info {
        width: 100%;

        justify-content: flex-start;

        padding: 0;
    }


    .lawn-cta-info div {
        text-align: left;
    }


    .lawn-cta-divider {
        width: 100%;
        height: 1px;
    }

}
/* hall */
/* =========================================
   GANESHA HALL - ABOUT SECTION
========================================= */

.ramsan-ganesha-about {
    padding: 70px 0 90px;
    background: #f7f3eb;
    overflow: hidden;
}


/* =========================================
   SECTION HEADING
========================================= */

.ganesha-about-heading {
    max-width: 850px;
    margin: 0 auto 65px;
    text-align: center;
}

.ganesha-about-heading > span {
    display: block;
    margin-bottom: 17px;

    color: #b8893f;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
    text-transform: uppercase;
}

.ganesha-about-heading h2 {
    margin: 0;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 50px;
    line-height: 1.15;
    font-weight: 400;
}

.ganesha-about-heading h2 em {
    display: block;

    color: #b8893f;

    font-style: italic;
    font-weight: 400;
}

.ganesha-about-line {
    width: 65px;
    height: 1px;

    margin: 25px auto;

    background: #b8893f;
}

.ganesha-about-heading p {
    max-width: 720px;

    margin: 0 auto;

    color: #706960;

    font-size: 15px;
    line-height: 1.85;
}


/* =========================================
   MAIN LAYOUT
========================================= */

.ganesha-about-layout {
    display: grid;

    grid-template-columns: 1fr 0.95fr;

    gap: 75px;

    align-items: center;

    max-width: 1180px;
    margin: 0 auto;
}


/* =========================================
   LEFT VISUAL
========================================= */

.ganesha-about-visual {
    position: relative;

    min-height: 580px;
}


/* Main Image */

.ganesha-about-main-image {
    width: 88%;
    height: 550px;

    overflow: hidden;

    background: #e5ddd0;
}

.ganesha-about-main-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform 0.7s ease;
}

.ganesha-about-main-image:hover img {
    transform: scale(1.04);
}


/* =========================================
   SIZE CARD
========================================= */

.ganesha-about-size-card {
    position: absolute;

    right: 0;
    bottom: 35px;

    width: 190px;

    padding: 25px;

    background: #29251f;

    box-shadow: 0 18px 40px rgba(40, 33, 25, 0.16);

    z-index: 2;
}

.ganesha-about-size-card span {
    display: block;

    margin-bottom: 7px;

    color: #caa05a;

    font-size: 8px;
    font-weight: 700;
    letter-spacing: 3px;
}

.ganesha-about-size-card strong {
    display: inline-block;

    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 38px;
    line-height: 1;

    font-weight: 400;
}

.ganesha-about-size-card small {
    margin-left: 5px;

    color: #d5cec5;

    font-size: 9px;
    letter-spacing: 1px;
}


/* Number */

.ganesha-about-number {
    position: absolute;

    top: 25px;
    left: 25px;

    width: 48px;
    height: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #b8893f;

    color: #fff;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1px;

    z-index: 3;
}


/* =========================================
   RIGHT CONTENT
========================================= */

.ganesha-about-content {
    padding-right: 10px;
}

.ganesha-about-kicker {
    display: block;

    margin-bottom: 16px;

    color: #b8893f;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 3px;
}

.ganesha-about-content h3 {
    margin: 0 0 25px;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 40px;
    line-height: 1.2;
    font-weight: 400;
}

.ganesha-about-content h3 em {
    display: block;

    color: #b8893f;

    font-style: italic;
}

.ganesha-about-content p {
    margin: 0 0 17px;

    color: #706960;

    font-size: 14px;
    line-height: 1.85;
}

.ganesha-about-content .ganesha-about-lead {
    margin-bottom: 22px;

    color: #3c3731;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 18px;
    line-height: 1.7;
}


/* =========================================
   HALL DETAILS
========================================= */

.ganesha-about-details {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 12px;

    margin-top: 30px;
}

.ganesha-detail-item {
    display: flex;

    align-items: center;

    gap: 10px;

    padding: 14px 10px;

    border: 1px solid #ddd4c7;

    background: rgba(255, 255, 255, 0.35);
}

.ganesha-detail-icon {
    width: 40px;
    height: 40px;

    flex: 0 0 40px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #c6a064;

    color: #b8893f;

    font-size: 14px;
}

.ganesha-detail-item strong {
    display: block;

    margin-bottom: 3px;

    color: #302b25;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 15px;
    line-height: 1.2;

    font-weight: 400;
}

.ganesha-detail-item span {
    display: block;

    color: #81796f;

    font-size: 9px;
    line-height: 1.3;
}


/* =========================================
   CTA
========================================= */

.ganesha-about-btn {
    display: inline-flex;

    align-items: center;

    gap: 14px;

    margin-top: 30px;

    padding: 15px 23px;

    background: #b8893f;

    color: #fff;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.4px;

    text-decoration: none;

    transition: all 0.3s ease;
}

.ganesha-about-btn i {
    transition: transform 0.3s ease;
}

.ganesha-about-btn:hover {
    background: #29251f;
    color: #fff;
}

.ganesha-about-btn:hover i {
    transform: translateX(5px);
}


/* =========================================
   BOTTOM NOTE
========================================= */

.ganesha-about-bottom {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 18px;

    margin-top: 70px;
}

.ganesha-about-bottom span {
    width: 50px;
    height: 1px;

    background: #b8893f;
}

.ganesha-about-bottom p {
    margin: 0;

    color: #756d64;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 13px;
    font-style: italic;

    text-align: center;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-ganesha-about {
        padding: 60px 0 75px;
    }

    .ganesha-about-heading {
        margin-bottom: 55px;
    }

    .ganesha-about-heading h2 {
        font-size: 43px;
    }

    .ganesha-about-layout {
        grid-template-columns: 1fr;

        gap: 60px;

        padding: 0 25px;
    }

    .ganesha-about-visual {
        min-height: 550px;
    }

    .ganesha-about-main-image {
        width: 88%;
        height: 520px;
    }

    .ganesha-about-content {
        padding-right: 0;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-ganesha-about {
        padding: 50px 0 55px;
    }

    .ganesha-about-heading {
        margin: 0 15px 42px;
    }

    .ganesha-about-heading > span {
        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .ganesha-about-heading h2 {
        font-size: 34px;
        line-height: 1.2;
    }

    .ganesha-about-heading p {
        font-size: 14px;
        line-height: 1.75;
    }


    /* Visual */

    .ganesha-about-layout {
        display: block;

        padding: 0 15px;
    }

    .ganesha-about-visual {
        min-height: 420px;

        margin-bottom: 45px;
    }

    .ganesha-about-main-image {
        width: 88%;
        height: 390px;
    }

    .ganesha-about-size-card {
        right: 0;
        bottom: 15px;

        width: 165px;

        padding: 18px;
    }

    .ganesha-about-size-card strong {
        font-size: 30px;
    }

    .ganesha-about-number {
        top: 15px;
        left: 15px;

        width: 42px;
        height: 42px;
    }


    /* Content */

    .ganesha-about-content h3 {
        font-size: 30px;
        line-height: 1.25;
    }

    .ganesha-about-content .ganesha-about-lead {
        font-size: 17px;
    }

    .ganesha-about-content p {
        font-size: 14px;
        line-height: 1.8;
    }


    /* Details */

    .ganesha-about-details {
        grid-template-columns: 1fr;

        gap: 10px;
    }

    .ganesha-detail-item {
        padding: 13px;
    }


    /* Bottom */

    .ganesha-about-bottom {
        margin-top: 50px;

        gap: 10px;

        padding: 0 15px;
    }

    .ganesha-about-bottom span {
        width: 25px;
    }

    .ganesha-about-bottom p {
        font-size: 12px;
    }

}
/* =========================================
   GANESHA HALL - IDEAL FOR SECTION
========================================= */

.ramsan-ganesha-ideal {
    padding: 95px 0 85px;
    background: #fffdf9;
    overflow: hidden;
}


/* =========================================
   SECTION HEADING
========================================= */

.ganesha-ideal-heading {
    max-width: 850px;
    margin: 0 auto 65px;
    text-align: center;
}

.ganesha-ideal-heading > span {
    display: block;

    margin-bottom: 17px;

    color: #b8893f;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
    text-transform: uppercase;
}

.ganesha-ideal-heading h2 {
    margin: 0;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 50px;
    line-height: 1.15;
    font-weight: 400;
}

.ganesha-ideal-heading h2 em {
    display: block;

    color: #b8893f;

    font-style: italic;
    font-weight: 400;
}

.ganesha-ideal-line {
    width: 65px;
    height: 1px;

    margin: 25px auto;

    background: #b8893f;
}

.ganesha-ideal-heading p {
    max-width: 740px;

    margin: 0 auto;

    color: #706960;

    font-size: 15px;
    line-height: 1.85;
}


/* =========================================
   CARDS GRID
========================================= */

.ganesha-ideal-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    border-top: 1px solid #ded5c9;
    border-left: 1px solid #ded5c9;

    max-width: 1180px;
    margin: 0 auto;
}


/* =========================================
   CARD
========================================= */

.ganesha-ideal-card {
    min-height: 355px;

    padding: 30px;

    background: #fffdf9;

    border-right: 1px solid #ded5c9;
    border-bottom: 1px solid #ded5c9;

    transition:
        background 0.35s ease,
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.ganesha-ideal-card:hover {
    position: relative;

    z-index: 2;

    background: #f8f2e8;

    transform: translateY(-4px);

    box-shadow: 0 18px 35px rgba(45, 37, 27, 0.08);
}


/* =========================================
   CARD TOP
========================================= */

.ganesha-ideal-card-top {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    margin-bottom: 27px;
}

.ganesha-ideal-card-top > span {
    color: #b8893f;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
}


/* =========================================
   ICON
========================================= */

.ganesha-ideal-icon {
    width: 55px;
    height: 55px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #c8a263;
    border-radius: 50%;

    color: #b8893f;

    font-size: 18px;

    transition: all 0.35s ease;
}

.ganesha-ideal-card:hover .ganesha-ideal-icon {
    background: #b8893f;

    color: #fff;

    transform: translateY(-3px);
}


/* =========================================
   CARD CONTENT
========================================= */

.ganesha-ideal-card h3 {
    margin: 0 0 14px;

    color: #2b2621;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 24px;
    line-height: 1.3;
    font-weight: 400;
}

.ganesha-ideal-card p {
    min-height: 108px;

    margin: 0;

    color: #736c64;

    font-size: 14px;
    line-height: 1.8;
}


/* =========================================
   CARD BOTTOM
========================================= */

.ganesha-ideal-card-line {
    width: 40px;
    height: 1px;

    margin: 22px 0 13px;

    background: #b8893f;
}

.ganesha-ideal-card > strong {
    display: block;

    color: #887d70;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 13px;
    font-style: italic;
    font-weight: 400;
}


/* =========================================
   BOTTOM HIGHLIGHT
========================================= */

.ganesha-ideal-bottom {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 30px;

    max-width: 1180px;

    margin: 60px auto 0;

    padding: 30px 35px;

    background: #f7f3eb;

    border: 1px solid #ded5c9;
}

.ganesha-ideal-bottom > div > span {
    display: block;

    margin-bottom: 7px;

    color: #b8893f;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 3px;
}

.ganesha-ideal-bottom h3 {
    margin: 0;

    color: #2c2722;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 24px;
    line-height: 1.3;
    font-weight: 400;
}

.ganesha-ideal-bottom h3 em {
    color: #b8893f;

    font-style: italic;
}


/* =========================================
   CTA BUTTON
========================================= */

.ganesha-ideal-bottom a {
    flex-shrink: 0;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 13px;

    min-height: 50px;

    padding: 0 25px;

    background: #b8893f;

    color: #fff;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;

    text-decoration: none;

    transition: all 0.3s ease;
}

.ganesha-ideal-bottom a i {
    transition: transform 0.3s ease;
}

.ganesha-ideal-bottom a:hover {
    background: #29251f;

    color: #fff;
}

.ganesha-ideal-bottom a:hover i {
    transform: translateX(5px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-ganesha-ideal {
        padding: 80px 0 70px;
    }

    .ganesha-ideal-heading {
        margin-bottom: 55px;
    }

    .ganesha-ideal-heading h2 {
        font-size: 43px;
    }

    .ganesha-ideal-grid {
        grid-template-columns: repeat(2, 1fr);

        margin: 0 20px;
    }

    .ganesha-ideal-card {
        min-height: 350px;
    }

    .ganesha-ideal-card p {
        min-height: auto;
    }

    .ganesha-ideal-bottom {
        margin: 50px 20px 0;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-ganesha-ideal {
        padding: 65px 0 55px;
    }


    .ganesha-ideal-heading {
        margin: 0 15px 42px;
    }

    .ganesha-ideal-heading > span {
        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .ganesha-ideal-heading h2 {
        font-size: 34px;
        line-height: 1.2;
    }

    .ganesha-ideal-heading p {
        font-size: 14px;
        line-height: 1.75;
    }


    /* Grid */

    .ganesha-ideal-grid {
        grid-template-columns: 1fr;

        margin: 0 8px;
    }


    /* Card */

    .ganesha-ideal-card {
        min-height: auto;

        padding: 27px 23px;
    }

    .ganesha-ideal-card-top {
        margin-bottom: 23px;
    }

    .ganesha-ideal-icon {
        width: 50px;
        height: 50px;

        font-size: 17px;
    }

    .ganesha-ideal-card h3 {
        font-size: 22px;
    }

    .ganesha-ideal-card p {
        min-height: auto;

        font-size: 13px;
        line-height: 1.75;
    }


    /* Bottom */

    .ganesha-ideal-bottom {
        flex-direction: column;

        align-items: flex-start;

        gap: 22px;

        margin: 45px 15px 0;

        padding: 27px 22px;
    }

    .ganesha-ideal-bottom h3 {
        font-size: 21px;
    }

    .ganesha-ideal-bottom a {
        width: 100%;
    }

}
/* =========================================
   GANESHA HALL - SETUP & SEATING
========================================= */

.ramsan-ganesha-setup {
    padding: 95px 0 85px;
    background: #f7f3eb;
    overflow: hidden;
}


/* =========================================
   SECTION HEADING
========================================= */

.ganesha-setup-heading {
    max-width: 850px;
    margin: 0 auto 65px;
    text-align: center;
}

.ganesha-setup-heading > span {
    display: block;
    margin-bottom: 17px;

    color: #b8893f;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;
}

.ganesha-setup-heading h2 {
    margin: 0;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 50px;
    line-height: 1.15;
    font-weight: 400;
}

.ganesha-setup-heading h2 em {
    display: block;

    color: #b8893f;

    font-style: italic;
    font-weight: 400;
}

.ganesha-setup-line {
    width: 65px;
    height: 1px;

    margin: 25px auto;

    background: #b8893f;
}

.ganesha-setup-heading p {
    max-width: 750px;

    margin: 0 auto;

    color: #706960;

    font-size: 15px;
    line-height: 1.85;
}


/* =========================================
   MAIN LAYOUT
========================================= */

.ganesha-setup-layout {
    display: grid;

    grid-template-columns: 1fr 0.95fr;

    gap: 75px;

    align-items: center;

    max-width: 1180px;
    margin: 0 auto;
}


/* =========================================
   IMAGE
========================================= */

.ganesha-setup-visual {
    position: relative;

    height: 560px;
}

.ganesha-setup-image {
    width: 100%;
    height: 100%;

    overflow: hidden;

    background: #e4ddd2;
}

.ganesha-setup-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform 0.7s ease;
}

.ganesha-setup-image:hover img {
    transform: scale(1.04);
}


/* =========================================
   IMAGE CARD
========================================= */

.ganesha-setup-image-card {
    position: absolute;

    left: 25px;
    bottom: 25px;

    min-width: 245px;

    padding: 20px 22px;

    background: rgba(40, 35, 29, 0.92);

    z-index: 2;
}

.ganesha-setup-image-card span {
    display: block;

    margin-bottom: 6px;

    color: #caa05a;

    font-size: 8px;
    font-weight: 700;
    letter-spacing: 3px;
}

.ganesha-setup-image-card strong {
    display: block;

    margin-bottom: 5px;

    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 23px;
    font-weight: 400;
}

.ganesha-setup-image-card small {
    color: #d4cec5;

    font-size: 9px;
    letter-spacing: 1px;
}


/* =========================================
   CONTENT
========================================= */

.ganesha-setup-content {
    padding-right: 10px;
}

.ganesha-setup-kicker {
    display: block;

    margin-bottom: 16px;

    color: #b8893f;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 3px;
}

.ganesha-setup-content h3 {
    margin: 0 0 25px;

    color: #29251f;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 40px;
    line-height: 1.2;
    font-weight: 400;
}

.ganesha-setup-content h3 em {
    display: block;

    color: #b8893f;

    font-style: italic;
}

.ganesha-setup-content p {
    margin: 0 0 18px;

    color: #706960;

    font-size: 14px;
    line-height: 1.85;
}

.ganesha-setup-content .ganesha-setup-lead {
    color: #3d3832;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 18px;
    line-height: 1.7;
}


/* =========================================
   FEATURES
========================================= */

.ganesha-setup-features {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 12px;

    margin-top: 30px;
}

.ganesha-setup-feature {
    display: flex;

    align-items: center;

    gap: 12px;

    padding: 14px;

    border: 1px solid #ddd4c7;

    background: rgba(255,255,255,0.3);

    transition: all 0.3s ease;
}

.ganesha-setup-feature:hover {
    background: #fffdf9;

    border-color: #c8a263;
}

.ganesha-setup-icon {
    width: 42px;
    height: 42px;

    flex: 0 0 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #c6a064;

    color: #b8893f;

    font-size: 14px;
}

.ganesha-setup-feature strong {
    display: block;

    margin-bottom: 3px;

    color: #302b25;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 14px;
    font-weight: 400;
}

.ganesha-setup-feature span {
    display: block;

    color: #81796f;

    font-size: 9px;
    line-height: 1.4;
}


/* =========================================
   BUTTON
========================================= */

.ganesha-setup-btn {
    display: inline-flex;

    align-items: center;

    gap: 14px;

    margin-top: 30px;

    padding: 15px 23px;

    background: #b8893f;

    color: #fff;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;

    text-decoration: none;

    transition: all 0.3s ease;
}

.ganesha-setup-btn i {
    transition: transform 0.3s ease;
}

.ganesha-setup-btn:hover {
    background: #29251f;
    color: #fff;
}

.ganesha-setup-btn:hover i {
    transform: translateX(5px);
}


/* =========================================
   BOTTOM
========================================= */

.ganesha-setup-bottom {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 18px;

    margin-top: 70px;
}

.ganesha-setup-bottom span {
    width: 50px;
    height: 1px;

    background: #b8893f;
}

.ganesha-setup-bottom p {
    margin: 0;

    color: #756d64;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 13px;
    font-style: italic;

    text-align: center;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-ganesha-setup {
        padding: 80px 0 70px;
    }

    .ganesha-setup-heading {
        margin-bottom: 55px;
    }

    .ganesha-setup-heading h2 {
        font-size: 43px;
    }

    .ganesha-setup-layout {
        grid-template-columns: 1fr;

        gap: 55px;

        padding: 0 25px;
    }

    .ganesha-setup-visual {
        height: 520px;
    }

    .ganesha-setup-content {
        padding-right: 0;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-ganesha-setup {
        padding: 65px 0 55px;
    }

    .ganesha-setup-heading {
        margin: 0 15px 42px;
    }

    .ganesha-setup-heading > span {
        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .ganesha-setup-heading h2 {
        font-size: 34px;
        line-height: 1.2;
    }

    .ganesha-setup-heading p {
        font-size: 14px;
        line-height: 1.75;
    }


    .ganesha-setup-layout {
        display: block;

        padding: 0 15px;
    }


    /* Image */

    .ganesha-setup-visual {
        height: 390px;

        margin-bottom: 40px;
    }

    .ganesha-setup-image-card {
        left: 12px;
        bottom: 12px;

        min-width: 0;
        width: calc(100% - 24px);

        padding: 16px 18px;
    }

    .ganesha-setup-image-card strong {
        font-size: 20px;
    }


    /* Content */

    .ganesha-setup-content h3 {
        font-size: 30px;
        line-height: 1.25;
    }

    .ganesha-setup-content .ganesha-setup-lead {
        font-size: 17px;
    }

    .ganesha-setup-content p {
        font-size: 14px;
        line-height: 1.8;
    }


    /* Features */

    .ganesha-setup-features {
        grid-template-columns: 1fr;

        gap: 10px;
    }

    .ganesha-setup-feature {
        padding: 13px;
    }


    /* Bottom */

    .ganesha-setup-bottom {
        margin-top: 50px;

        gap: 10px;

        padding: 0 15px;
    }

    .ganesha-setup-bottom span {
        width: 25px;
    }

    .ganesha-setup-bottom p {
        font-size: 12px;
    }

}
/* =========================================
   GANESHA HALL - CTA
========================================= */

.ramsan-ganesha-cta {
    position: relative;

    padding: 95px 0 0;

    background:
        linear-gradient(
            rgba(40, 33, 25, 0.88),
            rgba(40, 33, 25, 0.93)
        ),
        url("../images/slider/ganesha-hall.jpeg")
        center center / cover no-repeat;

    overflow: hidden;
}


/* =========================================
   OVERLAY
========================================= */

.ganesha-cta-overlay {
    position: absolute;

    inset: 0;

    background:
        radial-gradient(
            circle at center,
            rgba(194, 150, 76, 0.12),
            transparent 55%
        );

    pointer-events: none;
}


/* =========================================
   CONTENT
========================================= */

.ganesha-cta-content {
    position: relative;

    max-width: 850px;

    margin: 0 auto;

    text-align: center;

    z-index: 2;
}


.ganesha-cta-kicker {
    display: block;

    margin-bottom: 19px;

    color: #d0a45c;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 4px;
}


.ganesha-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 53px;
    line-height: 1.15;

    font-weight: 400;
}


.ganesha-cta-content h2 em {
    display: block;

    margin-top: 4px;

    color: #d0a45c;

    font-style: italic;

    font-weight: 400;
}


.ganesha-cta-line {
    width: 70px;
    height: 1px;

    margin: 27px auto;

    background: #d0a45c;
}


.ganesha-cta-content p {
    max-width: 720px;

    margin: 0 auto;

    color: #ddd6cc;

    font-size: 15px;

    line-height: 1.85;
}


/* =========================================
   BUTTONS
========================================= */

.ganesha-cta-buttons {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 14px;

    margin-top: 34px;
}


.ganesha-cta-primary,
.ganesha-cta-secondary {
    min-height: 51px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 0 25px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.4px;

    text-decoration: none;

    transition: all 0.3s ease;
}


/* Primary */

.ganesha-cta-primary {
    background: #c69a51;

    border: 1px solid #c69a51;

    color: #fff;
}


.ganesha-cta-primary i {
    margin-left: 13px;

    transition: transform 0.3s ease;
}


.ganesha-cta-primary:hover {
    background: #fff;

    border-color: #fff;

    color: #29231d;
}


.ganesha-cta-primary:hover i {
    transform: translateX(5px);
}


/* Secondary */

.ganesha-cta-secondary {
    background: rgba(255,255,255,0.04);

    border: 1px solid rgba(255,255,255,0.4);

    color: #fff;
}


.ganesha-cta-secondary i {
    margin-right: 9px;

    color: #d0a45c;
}


.ganesha-cta-secondary:hover {
    background: #c69a51;

    border-color: #c69a51;

    color: #fff;
}


.ganesha-cta-secondary:hover i {
    color: #fff;
}


/* =========================================
   BOTTOM INFORMATION
========================================= */

.ganesha-cta-bottom {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: center;

    max-width: 1150px;

    margin: 80px auto 0;

    padding: 27px 20px;

    border-top: 1px solid rgba(255,255,255,0.18);

    z-index: 2;
}


.ganesha-cta-info {
    flex: 1;

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 14px;

    padding: 0 25px;
}


.ganesha-cta-info > i {
    width: 44px;
    height: 44px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(208,164,92,0.65);

    color: #d0a45c;

    font-size: 15px;
}


.ganesha-cta-info div {
    text-align: left;
}


.ganesha-cta-info span {
    display: block;

    margin-bottom: 5px;

    color: #c9c1b7;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 2px;
}


.ganesha-cta-info strong {
    display: block;

    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 14px;

    font-weight: 400;
}


.ganesha-cta-divider {
    width: 1px;
    height: 42px;

    background: rgba(255,255,255,0.15);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-ganesha-cta {
        padding-top: 80px;
    }

    .ganesha-cta-content {
        padding: 0 25px;
    }

    .ganesha-cta-content h2 {
        font-size: 44px;
    }

    .ganesha-cta-bottom {
        margin-top: 60px;
    }

    .ganesha-cta-info {
        padding: 0 12px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-ganesha-cta {
        padding: 65px 0 0;
    }

    .ganesha-cta-content {
        padding: 0 18px;
    }

    .ganesha-cta-kicker {
        margin-bottom: 15px;

        font-size: 9px;

        letter-spacing: 2.5px;
    }

    .ganesha-cta-content h2 {
        font-size: 34px;

        line-height: 1.2;
    }

    .ganesha-cta-line {
        margin: 22px auto;
    }

    .ganesha-cta-content p {
        font-size: 13px;

        line-height: 1.75;
    }


    /* Buttons */

    .ganesha-cta-buttons {
        flex-direction: column;

        width: 100%;

        gap: 10px;

        margin-top: 27px;
    }

    .ganesha-cta-primary,
    .ganesha-cta-secondary {
        width: 100%;

        min-height: 50px;
    }


    /* Bottom */

    .ganesha-cta-bottom {
        flex-direction: column;

        margin-top: 50px;

        padding: 24px 18px;

        gap: 20px;
    }

    .ganesha-cta-info {
        width: 100%;

        justify-content: flex-start;

        padding: 0;
    }

    .ganesha-cta-info div {
        text-align: left;
    }

    .ganesha-cta-divider {
        width: 100%;
        height: 1px;
    }

}
/* =========================================
   RADHA HALL CTA
========================================= */

.ramsan-radha-cta {
    position: relative;
    padding: 95px 0 0;

    background:
        linear-gradient(
            rgba(40, 33, 25, 0.82),
            rgba(40, 33, 25, 0.92)
        ),
        url("../images/slider/radha-hall.png")
        center center / cover no-repeat;

    overflow: hidden;
}


/* =========================================
   OVERLAY
========================================= */

.radha-cta-overlay {
    position: absolute;
    inset: 0;

    background:
        radial-gradient(
            circle at center,
            rgba(194, 150, 76, 0.12),
            transparent 55%
        );

    pointer-events: none;
}


/* =========================================
   MAIN CONTENT
========================================= */

.radha-cta-content {
    position: relative;

    max-width: 850px;

    margin: 0 auto;

    text-align: center;

    z-index: 2;
}


/* Kicker */

.radha-cta-kicker {
    display: block;

    margin-bottom: 19px;

    color: #d0a45c;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 4px;
}


/* Heading */

.radha-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 53px;
    line-height: 1.15;

    font-weight: 400;
}


.radha-cta-content h2 em {
    display: block;

    margin-top: 4px;

    color: #d0a45c;

    font-style: italic;

    font-weight: 400;
}


/* Line */

.radha-cta-line {
    width: 70px;
    height: 1px;

    margin: 27px auto;

    background: #d0a45c;
}


/* Paragraph */

.radha-cta-content p {
    max-width: 720px;

    margin: 0 auto;

    color: #ddd6cc;

    font-size: 15px;

    line-height: 1.85;
}


/* =========================================
   BUTTONS
========================================= */

.radha-cta-buttons {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 14px;

    margin-top: 34px;
}


.radha-cta-primary,
.radha-cta-secondary {
    min-height: 51px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 0 25px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.4px;

    text-decoration: none;

    transition: all 0.3s ease;
}


/* Primary Button */

.radha-cta-primary {
    background: #c69a51;

    border: 1px solid #c69a51;

    color: #fff;
}


.radha-cta-primary i {
    margin-left: 13px;

    transition: transform 0.3s ease;
}


.radha-cta-primary:hover {
    background: #fff;

    border-color: #fff;

    color: #29231d;
}


.radha-cta-primary:hover i {
    transform: translateX(5px);
}


/* Secondary Button */

.radha-cta-secondary {
    background: rgba(255,255,255,0.04);

    border: 1px solid rgba(255,255,255,0.4);

    color: #fff;
}


.radha-cta-secondary i {
    margin-right: 9px;

    color: #d0a45c;
}


.radha-cta-secondary:hover {
    background: #c69a51;

    border-color: #c69a51;

    color: #fff;
}


.radha-cta-secondary:hover i {
    color: #fff;
}


/* =========================================
   BOTTOM INFORMATION
========================================= */

.radha-cta-bottom {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: center;

    max-width: 1150px;

    margin: 80px auto 0;

    padding: 27px 20px;

    border-top: 1px solid rgba(255,255,255,0.18);

    z-index: 2;
}


/* Info Item */

.radha-cta-info {
    flex: 1;

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 14px;

    padding: 0 25px;
}


/* Icon */

.radha-cta-info > i {
    width: 44px;
    height: 44px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(208,164,92,0.65);

    color: #d0a45c;

    font-size: 15px;
}


/* Text */

.radha-cta-info div {
    text-align: left;
}


.radha-cta-info span {
    display: block;

    margin-bottom: 5px;

    color: #c9c1b7;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 2px;
}


.radha-cta-info strong {
    display: block;

    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 14px;

    font-weight: 400;
}


/* Divider */

.radha-cta-divider {
    width: 1px;
    height: 42px;

    background: rgba(255,255,255,0.15);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-radha-cta {
        padding-top: 80px;
    }

    .radha-cta-content {
        padding: 0 25px;
    }

    .radha-cta-content h2 {
        font-size: 44px;
    }

    .radha-cta-bottom {
        margin-top: 60px;
    }

    .radha-cta-info {
        padding: 0 12px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-radha-cta {
        padding: 65px 0 0;
    }

    .radha-cta-content {
        padding: 0 18px;
    }

    .radha-cta-kicker {
        margin-bottom: 15px;

        font-size: 9px;

        letter-spacing: 2.5px;
    }

    .radha-cta-content h2 {
        font-size: 34px;

        line-height: 1.2;
    }

    .radha-cta-line {
        margin: 22px auto;
    }

    .radha-cta-content p {
        font-size: 13px;

        line-height: 1.75;
    }


    /* Buttons */

    .radha-cta-buttons {
        flex-direction: column;

        width: 100%;

        gap: 10px;

        margin-top: 27px;
    }

    .radha-cta-primary,
    .radha-cta-secondary {
        width: 100%;

        min-height: 50px;
    }


    /* Bottom */

    .radha-cta-bottom {
        flex-direction: column;

        margin-top: 50px;

        padding: 24px 18px;

        gap: 20px;
    }

    .radha-cta-info {
        width: 100%;

        justify-content: flex-start;

        padding: 0;
    }

    .radha-cta-info div {
        text-align: left;
    }

    .radha-cta-divider {
        width: 100%;
        height: 1px;
    }

}
/* =========================================
   KRISHNA HALL CTA
========================================= */

.ramsan-krishna-cta {
    position: relative;

    padding: 95px 0 0;

    background:
        linear-gradient(
            rgba(40, 33, 25, 0.82),
            rgba(40, 33, 25, 0.93)
        ),
        url("../images/slider/krishna-hall2.jpeg")
        center center / cover no-repeat;

    overflow: hidden;
}


/* =========================================
   OVERLAY
========================================= */

.krishna-cta-overlay {
    position: absolute;

    inset: 0;

    background:
        radial-gradient(
            circle at center,
            rgba(194, 150, 76, 0.12),
            transparent 55%
        );

    pointer-events: none;
}


/* =========================================
   MAIN CONTENT
========================================= */

.krishna-cta-content {
    position: relative;

    max-width: 850px;

    margin: 0 auto;

    text-align: center;

    z-index: 2;
}


/* Kicker */

.krishna-cta-kicker {
    display: block;

    margin-bottom: 19px;

    color: #d0a45c;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 4px;
}


/* Heading */

.krishna-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 53px;
    line-height: 1.15;

    font-weight: 400;
}


.krishna-cta-content h2 em {
    display: block;

    margin-top: 4px;

    color: #d0a45c;

    font-style: italic;

    font-weight: 400;
}


/* Line */

.krishna-cta-line {
    width: 70px;
    height: 1px;

    margin: 27px auto;

    background: #d0a45c;
}


/* Paragraph */

.krishna-cta-content p {
    max-width: 720px;

    margin: 0 auto;

    color: #ddd6cc;

    font-size: 15px;

    line-height: 1.85;
}


/* =========================================
   BUTTONS
========================================= */

.krishna-cta-buttons {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 14px;

    margin-top: 34px;
}


.krishna-cta-primary,
.krishna-cta-secondary {
    min-height: 51px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 0 25px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.4px;

    text-decoration: none;

    transition: all 0.3s ease;
}


/* Primary */

.krishna-cta-primary {
    background: #c69a51;

    border: 1px solid #c69a51;

    color: #fff;
}


.krishna-cta-primary i {
    margin-left: 13px;

    transition: transform 0.3s ease;
}


.krishna-cta-primary:hover {
    background: #fff;

    border-color: #fff;

    color: #29231d;
}


.krishna-cta-primary:hover i {
    transform: translateX(5px);
}


/* Secondary */

.krishna-cta-secondary {
    background: rgba(255,255,255,0.04);

    border: 1px solid rgba(255,255,255,0.4);

    color: #fff;
}


.krishna-cta-secondary i {
    margin-right: 9px;

    color: #d0a45c;
}


.krishna-cta-secondary:hover {
    background: #c69a51;

    border-color: #c69a51;

    color: #fff;
}


.krishna-cta-secondary:hover i {
    color: #fff;
}


/* =========================================
   BOTTOM INFORMATION
========================================= */

.krishna-cta-bottom {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: center;

    max-width: 1150px;

    margin: 80px auto 0;

    padding: 27px 20px;

    border-top: 1px solid rgba(255,255,255,0.18);

    z-index: 2;
}


/* Info */

.krishna-cta-info {
    flex: 1;

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 14px;

    padding: 0 25px;
}


/* Icon */

.krishna-cta-info > i {
    width: 44px;
    height: 44px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(208,164,92,0.65);

    color: #d0a45c;

    font-size: 15px;
}


/* Text */

.krishna-cta-info div {
    text-align: left;
}


.krishna-cta-info span {
    display: block;

    margin-bottom: 5px;

    color: #c9c1b7;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 2px;
}


.krishna-cta-info strong {
    display: block;

    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 14px;

    font-weight: 400;
}


/* Divider */

.krishna-cta-divider {
    width: 1px;
    height: 42px;

    background: rgba(255,255,255,0.15);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-krishna-cta {
        padding-top: 80px;
    }

    .krishna-cta-content {
        padding: 0 25px;
    }

    .krishna-cta-content h2 {
        font-size: 44px;
    }

    .krishna-cta-bottom {
        margin-top: 60px;
    }

    .krishna-cta-info {
        padding: 0 12px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-krishna-cta {
        padding: 65px 0 0;
    }

    .krishna-cta-content {
        padding: 0 18px;
    }

    .krishna-cta-kicker {
        margin-bottom: 15px;

        font-size: 9px;

        letter-spacing: 2.5px;
    }

    .krishna-cta-content h2 {
        font-size: 34px;

        line-height: 1.2;
    }

    .krishna-cta-line {
        margin: 22px auto;
    }

    .krishna-cta-content p {
        font-size: 13px;

        line-height: 1.75;
    }


    /* Buttons */

    .krishna-cta-buttons {
        flex-direction: column;

        width: 100%;

        gap: 10px;

        margin-top: 27px;
    }

    .krishna-cta-primary,
    .krishna-cta-secondary {
        width: 100%;

        min-height: 50px;
    }


    /* Bottom */

    .krishna-cta-bottom {
        flex-direction: column;

        margin-top: 50px;

        padding: 24px 18px;

        gap: 20px;
    }

    .krishna-cta-info {
        width: 100%;

        justify-content: flex-start;

        padding: 0;
    }

    .krishna-cta-info div {
        text-align: left;
    }

    .krishna-cta-divider {
        width: 100%;
        height: 1px;
    }

}
/* =========================================
   RAMA HALL CTA
========================================= */

.ramsan-rama-cta {
    position: relative;

    padding: 95px 0 0;

    background:
        linear-gradient(
            rgba(40, 33, 25, 0.82),
            rgba(40, 33, 25, 0.93)
        ),
        url("../images/slider/rama-hall1.png")
        center center / cover no-repeat;

    overflow: hidden;
}


/* =========================================
   OVERLAY
========================================= */

.rama-cta-overlay {
    position: absolute;

    inset: 0;

    background:
        radial-gradient(
            circle at center,
            rgba(194, 150, 76, 0.12),
            transparent 55%
        );

    pointer-events: none;
}


/* =========================================
   MAIN CONTENT
========================================= */

.rama-cta-content {
    position: relative;

    max-width: 850px;

    margin: 0 auto;

    text-align: center;

    z-index: 2;
}


/* Kicker */

.rama-cta-kicker {
    display: block;

    margin-bottom: 19px;

    color: #d0a45c;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 4px;
}


/* Heading */

.rama-cta-content h2 {
    margin: 0;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 53px;
    line-height: 1.15;

    font-weight: 400;
}


.rama-cta-content h2 em {
    display: block;

    margin-top: 4px;

    color: #d0a45c;

    font-style: italic;

    font-weight: 400;
}


/* Line */

.rama-cta-line {
    width: 70px;
    height: 1px;

    margin: 27px auto;

    background: #d0a45c;
}


/* Paragraph */

.rama-cta-content p {
    max-width: 720px;

    margin: 0 auto;

    color: #ddd6cc;

    font-size: 15px;

    line-height: 1.85;
}


/* =========================================
   BUTTONS
========================================= */

.rama-cta-buttons {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 14px;

    margin-top: 34px;
}


.rama-cta-primary,
.rama-cta-secondary {
    min-height: 51px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 0 25px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.4px;

    text-decoration: none;

    transition: all 0.3s ease;
}


/* Primary */

.rama-cta-primary {
    background: #c69a51;

    border: 1px solid #c69a51;

    color: #fff;
}


.rama-cta-primary i {
    margin-left: 13px;

    transition: transform 0.3s ease;
}


.rama-cta-primary:hover {
    background: #fff;

    border-color: #fff;

    color: #29231d;
}


.rama-cta-primary:hover i {
    transform: translateX(5px);
}


/* Secondary */

.rama-cta-secondary {
    background: rgba(255,255,255,0.04);

    border: 1px solid rgba(255,255,255,0.4);

    color: #fff;
}


.rama-cta-secondary i {
    margin-right: 9px;

    color: #d0a45c;
}


.rama-cta-secondary:hover {
    background: #c69a51;

    border-color: #c69a51;

    color: #fff;
}


.rama-cta-secondary:hover i {
    color: #fff;
}


/* =========================================
   BOTTOM INFORMATION
========================================= */

.rama-cta-bottom {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: center;

    max-width: 1150px;

    margin: 80px auto 0;

    padding: 27px 20px;

    border-top: 1px solid rgba(255,255,255,0.18);

    z-index: 2;
}


/* Info */

.rama-cta-info {
    flex: 1;

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 14px;

    padding: 0 25px;
}


/* Icon */

.rama-cta-info > i {
    width: 44px;
    height: 44px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(208,164,92,0.65);

    color: #d0a45c;

    font-size: 15px;
}


/* Text */

.rama-cta-info div {
    text-align: left;
}


.rama-cta-info span {
    display: block;

    margin-bottom: 5px;

    color: #c9c1b7;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 2px;
}


.rama-cta-info strong {
    display: block;

    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 14px;

    font-weight: 400;
}


/* Divider */

.rama-cta-divider {
    width: 1px;
    height: 42px;

    background: rgba(255,255,255,0.15);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-rama-cta {
        padding-top: 80px;
    }

    .rama-cta-content {
        padding: 0 25px;
    }

    .rama-cta-content h2 {
        font-size: 44px;
    }

    .rama-cta-bottom {
        margin-top: 60px;
    }

    .rama-cta-info {
        padding: 0 12px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-rama-cta {
        padding: 65px 0 0;
    }

    .rama-cta-content {
        padding: 0 18px;
    }

    .rama-cta-kicker {
        margin-bottom: 15px;

        font-size: 9px;

        letter-spacing: 2.5px;
    }

    .rama-cta-content h2 {
        font-size: 34px;

        line-height: 1.2;
    }

    .rama-cta-line {
        margin: 22px auto;
    }

    .rama-cta-content p {
        font-size: 13px;

        line-height: 1.75;
    }


    /* Buttons */

    .rama-cta-buttons {
        flex-direction: column;

        width: 100%;

        gap: 10px;

        margin-top: 27px;
    }

    .rama-cta-primary,
    .rama-cta-secondary {
        width: 100%;

        min-height: 50px;
    }


    /* Bottom */

    .rama-cta-bottom {
        flex-direction: column;

        margin-top: 50px;

        padding: 24px 18px;

        gap: 20px;
    }

    .rama-cta-info {
        width: 100%;

        justify-content: flex-start;

        padding: 0;
    }

    .rama-cta-info div {
        text-align: left;
    }

    .rama-cta-divider {
        width: 100%;
        height: 1px;
    }

}
/* =========================================
   HOME GYM SECTION
========================================= */

.ramsan-home-gym {
    padding: 85px 0;
    background: #faf8f4;
}


/* Main Wrapper */

.home-gym-wrapper {
    display: grid;

    grid-template-columns: 0.95fr 1.05fr;

    align-items: center;

    gap: 70px;
}


/* =========================================
   IMAGE
========================================= */

.home-gym-image {
    position: relative;

    height: 480px;

    overflow: hidden;
}


.home-gym-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform 0.6s ease;
}


.home-gym-image:hover img {
    transform: scale(1.04);
}


/* Image Badge */

.home-gym-image-badge {
    position: absolute;

    left: 25px;
    bottom: 25px;

    padding: 16px 22px;

    background: rgba(255,255,255,0.94);

    border-left: 3px solid #c69a51;
}


.home-gym-image-badge span {
    display: block;

    margin-bottom: 4px;

    color: #9a8a76;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 2px;
}


.home-gym-image-badge strong {
    color: #29231d;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 20px;

    font-weight: 400;
}


/* =========================================
   CONTENT
========================================= */

.home-gym-content {
    max-width: 600px;
}


.home-gym-kicker {
    display: block;

    margin-bottom: 15px;

    color: #b18443;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 3px;
}


.home-gym-content h2 {
    margin: 0;

    color: #29231d;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 48px;
    line-height: 1.15;

    font-weight: 400;
}


.home-gym-content h2 em {
    display: block;

    color: #b18443;

    font-style: italic;
}


.home-gym-line {
    width: 60px;
    height: 1px;

    margin: 23px 0;

    background: #c69a51;
}


.home-gym-content > p {
    margin: 0;

    color: #6f685f;

    font-size: 14px;

    line-height: 1.9;
}


/* =========================================
   FEATURES
========================================= */

.home-gym-features {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 20px;

    margin-top: 30px;

    padding-top: 25px;

    border-top: 1px solid #e5dfd6;
}


.home-gym-feature {
    display: flex;

    align-items: flex-start;

    gap: 11px;
}


.home-gym-feature > i {
    flex-shrink: 0;

    width: 34px;
    height: 34px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #d8c19c;

    color: #b18443;

    font-size: 13px;
}


/* Feature Text */

.home-gym-feature strong {
    display: block;

    margin-bottom: 4px;

    color: #302a24;

    font-size: 11px;

    font-weight: 700;
}


.home-gym-feature span {
    display: block;

    color: #8a8177;

    font-size: 10px;

    line-height: 1.5;
}


/* =========================================
   BUTTON
========================================= */

.home-gym-btn {
    display: inline-flex;

    align-items: center;

    margin-top: 32px;

    padding: 15px 23px;

    background: #c69a51;

    border: 1px solid #c69a51;

    color: #fff;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1.5px;

    text-decoration: none;

    transition: all 0.3s ease;
}


.home-gym-btn i {
    margin-left: 13px;

    transition: transform 0.3s ease;
}


.home-gym-btn:hover {
    background: #29231d;

    border-color: #29231d;

    color: #fff;
}


.home-gym-btn:hover i {
    transform: translateX(5px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-home-gym {
        padding: 70px 0;
    }

    .home-gym-wrapper {
        grid-template-columns: 1fr 1fr;

        gap: 40px;
    }

    .home-gym-image {
        height: 430px;
    }

    .home-gym-content h2 {
        font-size: 40px;
    }

    .home-gym-features {
        grid-template-columns: 1fr;
        gap: 14px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-home-gym {
        padding: 55px 0;
    }

    .home-gym-wrapper {
        display: flex;

        flex-direction: column;

        gap: 35px;
    }


    .home-gym-image {
        width: 100%;

        height: 360px;
    }


    .home-gym-content {
        width: 100%;
    }


    .home-gym-content h2 {
        font-size: 34px;
    }


    .home-gym-content > p {
        font-size: 13px;

        line-height: 1.8;
    }


    .home-gym-features {
        grid-template-columns: 1fr;

        gap: 15px;

        margin-top: 25px;
    }


    .home-gym-btn {
        width: 100%;

        justify-content: center;

        margin-top: 27px;
    }

}
/* =========================================
   OUR TEAM / LEADERSHIP
========================================= */

.ramsan-about-team {
    padding: 100px 0;
    background: #faf8f4;
}


/* =========================================
   SECTION HEADING
========================================= */

.about-team-heading {
    max-width: 760px;
    margin: 0 auto 70px;
    text-align: center;
}


.about-team-heading > span {
    display: block;

    margin-bottom: 15px;

    color: #b18443;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 3px;
}


.about-team-heading h2 {
    margin: 0;

    color: #29231d;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 48px;
    line-height: 1.2;

    font-weight: 400;
}


.about-team-heading h2 em {
    color: #b18443;

    font-style: italic;
}


.about-team-line {
    width: 65px;
    height: 1px;

    margin: 24px auto;

    background: #c69a51;
}


.about-team-heading p {
    margin: 0;

    color: #716a61;

    font-size: 14px;

    line-height: 1.9;
}


/* =========================================
   PROFILE
========================================= */

.about-team-profile {
    display: grid;

    grid-template-columns: 0.85fr 1.15fr;

    align-items: center;

    gap: 75px;

    max-width: 1120px;

    margin: 0 auto 100px;
}


.about-team-profile:last-child {
    margin-bottom: 0;
}


/* =========================================
   IMAGE
========================================= */

.about-team-image {
    position: relative;

    height: 570px;

    overflow: hidden;

    background: #eee9e1;
}


.about-team-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform 0.6s ease;
}


.about-team-image:hover img {
    transform: scale(1.03);
}


/* Number */

.about-team-number {
    position: absolute;

    right: 20px;
    bottom: 20px;

    width: 55px;
    height: 55px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: rgba(255,255,255,0.94);

    color: #b18443;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 18px;
}


/* =========================================
   CONTENT
========================================= */

.about-team-content {
    max-width: 610px;
}


.about-team-role {
    display: block;

    margin-bottom: 10px;

    color: #b18443;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 3px;
}


.about-team-content h3 {
    margin: 0;

    color: #29231d;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 40px;

    font-weight: 400;
}


.about-team-small-line {
    width: 50px;
    height: 1px;

    margin: 20px 0;

    background: #c69a51;
}


.about-team-content p {
    margin: 0 0 17px;

    color: #706960;

    font-size: 14px;

    line-height: 1.85;
}


.about-team-content p.about-team-lead {
    color: #49423b;

    font-size: 16px;

    line-height: 1.8;
}


/* =========================================
   HIGHLIGHT
========================================= */

.about-team-highlight {
    display: flex;

    align-items: center;

    gap: 15px;

    margin-top: 28px;

    padding: 17px 20px;

    border-left: 2px solid #c69a51;

    background: #f1ede6;
}


.about-team-highlight > i {
    width: 38px;
    height: 38px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #d4bd98;

    color: #b18443;

    font-size: 14px;
}


.about-team-highlight strong {
    display: block;

    margin-bottom: 3px;

    color: #302a24;

    font-size: 12px;
}


.about-team-highlight span {
    display: block;

    color: #8a8177;

    font-size: 10px;
}


/* =========================================
   REVERSE PROFILE
========================================= */

.about-team-profile-reverse {
    grid-template-columns: 1.15fr 0.85fr;
}


.about-team-profile-reverse .about-team-image {
    order: 2;
}


.about-team-profile-reverse .about-team-content {
    order: 1;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .ramsan-about-team {
        padding: 80px 0;
    }


    .about-team-heading {
        margin-bottom: 55px;
    }


    .about-team-heading h2 {
        font-size: 42px;
    }


    .about-team-profile,
    .about-team-profile-reverse {
        grid-template-columns: 1fr 1fr;

        gap: 40px;

        margin-bottom: 75px;
    }


    .about-team-image {
        height: 500px;
    }


    .about-team-content h3 {
        font-size: 34px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-about-team {
        padding: 60px 0;
    }


    .about-team-heading {
        margin-bottom: 45px;

        padding: 0 15px;
    }


    .about-team-heading h2 {
        font-size: 34px;
    }


    .about-team-heading p {
        font-size: 13px;

        line-height: 1.8;
    }


    .about-team-profile,
    .about-team-profile-reverse {
        display: flex;

        flex-direction: column;

        gap: 35px;

        margin-bottom: 65px;
    }


    .about-team-profile-reverse .about-team-image,
    .about-team-profile-reverse .about-team-content {
        order: unset;
    }


    .about-team-image {
        width: 100%;

        height: 430px;
    }


    .about-team-content {
        width: 100%;
    }


    .about-team-content h3 {
        font-size: 32px;
    }


    .about-team-content p {
        font-size: 13px;

        line-height: 1.8;
    }


    .about-team-content p.about-team-lead {
        font-size: 14px;
    }


    .about-team-highlight {
        margin-top: 24px;
    }

}
/* social  */
/* =========================================
   PREMIUM FLOATING SOCIAL BUTTONS
========================================= */

.ramsan-floating-social {
    position: fixed;

    left: 18px;
    top: 50%;

    transform: translateY(-50%);

    z-index: 99999;

    display: flex;
    flex-direction: column;

    gap: 10px;
}


/* Individual Button */

.ramsan-floating-social a {
    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: #fff !important;

    text-decoration: none !important;

    font-size: 18px;

    box-shadow:
        0 5px 15px rgba(0, 0, 0, 0.22);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background 0.3s ease;
}


/* Facebook */

.ramsan-social-facebook {
    background: #1877f2;
}


/* Instagram */

.ramsan-social-instagram {
    background: linear-gradient(
        135deg,
        #833ab4,
        #fd1d1d,
        #fcb045
    );
}


/* Hover */

.ramsan-floating-social a:hover {

    transform: translateX(6px) scale(1.08);

    color: #fff !important;

    box-shadow:
        0 7px 20px rgba(0, 0, 0, 0.30);
}


/* Facebook Hover */

.ramsan-social-facebook:hover {
    background: #0d65d9;
}


/* Mobile */

@media (max-width: 767px) {

    .ramsan-floating-social {
        left: 10px;
        gap: 8px;
    }

    .ramsan-floating-social a {
        width: 40px;
        height: 40px;

        font-size: 16px;
    }

}
/* =========================================
   RAMSAN FLOATING SOCIAL
========================================= */

.ramsan-floating-social {
    position: fixed;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);

    z-index: 99999;

    display: flex;
    flex-direction: column;
    gap: 10px;
}


/* Social Buttons */

.ramsan-floating-social a {
    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: #fff !important;
    text-decoration: none !important;

    font-size: 18px;

    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.22);

    transition: all 0.3s ease;
}


/* Facebook */

.ramsan-social-facebook {
    background: #1877f2;
}


/* Instagram */

.ramsan-social-instagram {
    background: linear-gradient(
        135deg,
        #833ab4,
        #fd1d1d,
        #fcb045
    );
}


/* Hover */

.ramsan-floating-social a:hover {
    transform: translateX(5px) scale(1.08);
    color: #fff !important;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ramsan-floating-social {

        /* Hero content se hata kar neeche */
        left: 12px;
        top: auto;
        bottom: 78px;

        transform: none;

        /* Horizontal layout */
        flex-direction: row;

        gap: 9px;
    }


    .ramsan-floating-social a {

        width: 40px;
        height: 40px;

        font-size: 16px;

        box-shadow:
            0 4px 12px rgba(0, 0, 0, 0.25);
    }


    .ramsan-floating-social a:hover {

        transform: translateY(-3px) scale(1.05);
    }

}
@media (max-width: 767px) {

    .ramsan-floating-social {
        left: 10px;
        top: 14%;
        bottom: auto;
        transform: translateY(-50%);

        flex-direction: column;
        gap: 8px;
    }

    .ramsan-floating-social a {
        width: 38px;
        height: 38px;
        font-size: 15px;
    }

}
/* ==========================================
   ABHAY PROFILE - EQUAL IMAGE & CONTENT HEIGHT
========================================== */

.abhay-team-profile {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    align-items: stretch !important;
    width: 100%;
}


/* IMAGE COLUMN */

.abhay-team-image {
    position: relative;
    width: 100%;
    height: 100% !important;
    min-height: 100% !important;
    overflow: hidden;
}

.abhay-team-image img {
    display: block;
    width: 100%;
    height: 100% !important;
    min-height: 100% !important;

    object-fit: cover;
    object-position: center top;
}


/* CONTENT COLUMN */

.abhay-team-content {
    width: 100%;
    height: 100%;
    min-height: 100%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    box-sizing: border-box;
}


/* ==========================================
   EXPERIENCE HIGHLIGHTS
========================================== */

.abhay-team-content .about-team-highlight {
    margin-top: 20px;
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 991px) and (min-width: 768px) {

    .abhay-team-profile {
        grid-template-columns: 1fr 1fr;
    }

}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    .abhay-team-profile {
        display: flex !important;
        flex-direction: column !important;
    }

    .abhay-team-image {
        width: 100%;
        height: 450px !important;
        min-height: 450px !important;
    }

    .abhay-team-image img {
        width: 100%;
        height: 100% !important;
        min-height: 100% !important;

        object-fit: cover;
        object-position: center top;
    }

    .abhay-team-content {
        width: 100%;
        height: auto !important;
        min-height: 0 !important;
    }

}


/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 480px) {

    .abhay-team-image {
        height: 400px !important;
        min-height: 400px !important;
    }

}

/* Hotel Royal Arch */
/* =====================================================
   HOTEL ROYAL ARCH
   PREMIUM CONTACT HERO
===================================================== */

.royal-contact-hero {
    position: relative;
    min-height: 720px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background: #102a25;

    isolation: isolate;
}


/* =====================================================
   BACKGROUND IMAGE
===================================================== */

.royal-contact-bg {
    position: absolute;
    inset: 0;

    background-image: url("../images/gallery/jr-suite2.jpg");
    background-size: cover;
    background-position: center center;

    transform: scale(1.02);

    z-index: -3;
}


/* =====================================================
   OVERLAY
===================================================== */

.royal-contact-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(10, 35, 30, 0.98) 0%,
            rgba(10, 35, 30, 0.94) 32%,
            rgba(10, 35, 30, 0.70) 58%,
            rgba(10, 35, 30, 0.28) 100%
        );

    z-index: -2;
}


/* =====================================================
   SOFT LIGHT
===================================================== */

.royal-contact-hero::before {
    content: "";

    position: absolute;

    width: 600px;
    height: 600px;

    right: -180px;
    top: 50%;

    transform: translateY(-50%);

    border-radius: 50%;

    background: rgba(226, 213, 180, 0.08);

    filter: blur(80px);

    pointer-events: none;

    z-index: -1;
}


/* =====================================================
   ARCH DECORATION
===================================================== */

.royal-arch-decoration {
    position: absolute;

    right: 7%;
    top: 50%;

    width: 430px;
    height: 520px;

    transform: translateY(-50%);

    border: 1px solid rgba(224, 211, 178, 0.22);

    border-bottom: 0;

    border-radius: 220px 220px 0 0;

    pointer-events: none;

    z-index: -1;
}


.royal-arch-decoration::before {
    content: "";

    position: absolute;

    inset: 18px;

    border: 1px solid rgba(224, 211, 178, 0.12);

    border-bottom: 0;

    border-radius: 200px 200px 0 0;
}


.royal-arch-decoration::after {
    content: "";

    position: absolute;

    width: 10px;
    height: 10px;

    left: 50%;
    top: -5px;

    transform: translateX(-50%) rotate(45deg);

    background: #d9c79d;

    box-shadow:
        0 0 0 5px rgba(217,199,157,0.08),
        0 0 30px rgba(217,199,157,0.25);
}


/* =====================================================
   MAIN WRAPPER
===================================================== */

.royal-contact-wrapper {
    position: relative;

    min-height: 720px;

    display: flex;
    align-items: center;

    justify-content: space-between;

    gap: 80px;

    padding: 100px 0 110px;
}


/* =====================================================
   LEFT CONTENT
===================================================== */

.royal-contact-content {
    position: relative;

    width: 55%;

    max-width: 720px;

    z-index: 2;
}


/* =====================================================
   LABEL
===================================================== */

.royal-contact-label {
    display: flex;

    align-items: center;

    gap: 14px;

    margin-bottom: 26px;

    color: #d9c79d;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 4px;

    text-transform: uppercase;
}


.royal-label-line {
    width: 55px;

    height: 1px;

    background: #d9c79d;
}


/* =====================================================
   HEADING
===================================================== */

.royal-contact-content h1 {
    margin: 0;

    max-width: 650px;

    color: #f7f3e9;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(52px, 6vw, 82px);

    font-weight: 400;

    line-height: 1.04;

    letter-spacing: -2px;
}


.royal-contact-content h1 em {
    display: block;

    margin-top: 10px;

    color: #d9c79d;

    font-size: 0.72em;

    font-weight: 400;

    font-style: italic;

    letter-spacing: -1px;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.royal-contact-description {
    max-width: 590px;

    margin: 30px 0 0;

    color: rgba(247,243,233,0.72);

    font-size: 15px;

    font-weight: 300;

    line-height: 1.9;

    letter-spacing: 0.2px;
}


/* =====================================================
   BREADCRUMB
===================================================== */

.royal-contact-breadcrumb {
    display: flex;

    align-items: center;

    gap: 12px;

    margin-top: 25px;

    font-size: 12px;

    letter-spacing: 1px;
}


.royal-contact-breadcrumb a {
    color: #d9c79d;

    text-decoration: none;

    transition: all 0.3s ease;
}


.royal-contact-breadcrumb a:hover {
    color: #fff;
}


.royal-breadcrumb-arrow {
    color: rgba(255,255,255,0.35);

    font-size: 16px;
}


.royal-contact-breadcrumb > span:last-child {
    color: rgba(255,255,255,0.58);
}


/* =====================================================
   ACTIONS
===================================================== */

.royal-contact-actions {
    display: flex;

    align-items: center;

    gap: 28px;

    margin-top: 38px;
}


/* =====================================================
   MAIN BUTTON
===================================================== */

.royal-contact-btn {
    display: inline-flex;

    align-items: center;

    gap: 18px;

    padding: 15px 23px;

    color: #12342d;

    background: #e3d4ae;

    border: 1px solid #e3d4ae;

    text-decoration: none;

    font-size: 12px;

    font-weight: 600;

    letter-spacing: 1.2px;

    transition:
        transform 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}


.royal-contact-btn i {
    font-size: 11px;

    transition: transform 0.3s ease;
}


.royal-contact-btn:hover {
    color: #12342d;

    background: #f0e5c9;

    transform: translateY(-3px);

    box-shadow:
        0 12px 30px rgba(0,0,0,0.25);
}


.royal-contact-btn:hover i {
    transform: translateX(5px);
}


/* =====================================================
   LOCATION LINK
===================================================== */

.royal-location-link {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    color: rgba(255,255,255,0.72);

    text-decoration: none;

    font-size: 12px;

    letter-spacing: 1px;

    transition: color 0.3s ease;
}


.royal-location-link i {
    color: #d9c79d;

    font-size: 14px;
}


.royal-location-link:hover {
    color: #fff;
}


/* =====================================================
   RIGHT INFORMATION CARD
===================================================== */

.royal-contact-info {
    position: relative;

    width: 390px;

    z-index: 3;
}


/* =====================================================
   GLASS CARD
===================================================== */

.royal-info-card {
    position: relative;

    padding: 35px 34px 28px;

    background: #615f5c;

    border: 1px solid rgba(229,215,178,0.28);

    box-shadow:
        0 30px 80px rgba(0,0,0,0.35);

    backdrop-filter: blur(16px);

    -webkit-backdrop-filter: blur(16px);
}


/* Top Accent */

.royal-info-card::before {
    content: "";

    position: absolute;

    top: 0;
    left: 34px;
    right: 34px;

    height: 2px;

    background:
        linear-gradient(
            90deg,
            transparent,
            #d9c79d,
            transparent
        );
}


/* =====================================================
   CARD HEADER
===================================================== */

.royal-info-header {
    display: flex;

    align-items: center;

    gap: 17px;
}


.royal-info-icon {
    width: 48px;
    height: 48px;

    flex: 0 0 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid rgba(217,199,157,0.45);

    color: #d9c79d;

    font-size: 17px;
}


.royal-info-header span {
    display: block;

    margin-bottom: 5px;

    color: #bcae8d;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 2px;
}


.royal-info-header h2 {
    margin: 0;

    color: #f5f1e7;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;

    font-weight: 400;
}


/* =====================================================
   DIVIDER
===================================================== */

.royal-info-divider {
    width: 100%;

    height: 1px;

    margin: 27px 0;

    background:
        linear-gradient(
            90deg,
            rgba(217,199,157,0.3),
            rgba(217,199,157,0.05)
        );
}


/* =====================================================
   INFO ITEM
===================================================== */

.royal-info-item {
    display: flex;

    align-items: flex-start;

    gap: 15px;

    margin-bottom: 25px;
}


.royal-item-icon {
    width: 36px;
    height: 36px;

    flex: 0 0 36px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid rgba(217,199,157,0.25);

    color: #d9c79d;

    font-size: 12px;
}


.royal-item-text span {
    display: block;

    margin-bottom: 7px;

    color: #bcae8d;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 1.8px;
}


.royal-item-text p {
    margin: 0;

    color: rgba(255,255,255,0.72);

    font-size: 13px;

    line-height: 1.75;

    font-weight: 300;
}


/* =====================================================
   FOOTER
===================================================== */

.royal-info-footer {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    margin-top: 28px;
}


.royal-info-footer p {
    margin: 0;

    color: #d9c79d;

    font-size: 9px;

    letter-spacing: 2px;

    white-space: nowrap;

    text-transform: uppercase;
}


.royal-footer-line {
    width: 30px;

    height: 1px;

    background: rgba(217,199,157,0.35);
}


/* =====================================================
   SCROLL INDICATOR
===================================================== */

.royal-scroll-indicator {
    position: absolute;

    left: 50%;

    bottom: 25px;

    transform: translateX(-50%);

    display: flex;

    align-items: center;

    gap: 15px;

    color: rgba(255,255,255,0.45);

    font-size: 8px;

    letter-spacing: 2.5px;

    white-space: nowrap;
}


.royal-scroll-line {
    width: 45px;

    height: 1px;

    background: rgba(217,199,157,0.45);
}


/* =====================================================
   RESPONSIVE - TABLET
===================================================== */

@media (max-width: 1100px) {

    .royal-contact-wrapper {
        gap: 45px;
    }

    .royal-contact-content {
        width: 52%;
    }

    .royal-contact-info {
        width: 360px;
    }

    .royal-arch-decoration {
        right: -100px;

        opacity: 0.6;
    }

}


/* =====================================================
   RESPONSIVE - MOBILE
===================================================== */

@media (max-width: 767px) {

    .royal-contact-hero {
        min-height: auto;

        background: #102a25;
    }


    .royal-contact-bg {
        background-position: 65% center;
    }


    .royal-contact-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(10,35,30,0.94) 0%,
                rgba(10,35,30,0.88) 45%,
                rgba(10,35,30,0.97) 100%
            );
    }


    .royal-contact-wrapper {
        min-height: auto;

        display: block;

        padding: 90px 20px 90px;
    }


    .royal-contact-content {
        width: 100%;

        max-width: 100%;

        text-align: center;
    }


    .royal-contact-label {
        justify-content: center;

        font-size: 9px;

        letter-spacing: 3px;
    }


    .royal-label-line {
        width: 30px;
    }


    .royal-contact-content h1 {
        font-size: 46px;

        letter-spacing: -1px;
    }


    .royal-contact-content h1 em {
        font-size: 0.72em;

        margin-top: 8px;
    }


    .royal-contact-description {
        margin: 23px auto 0;

        font-size: 13px;

        line-height: 1.8;
    }


    .royal-contact-breadcrumb {
        justify-content: center;

        margin-top: 20px;
    }


    .royal-contact-actions {
        flex-direction: column;

        gap: 20px;

        margin-top: 30px;
    }


    .royal-contact-btn {
        justify-content: center;

        width: 100%;

        max-width: 280px;

        box-sizing: border-box;
    }


    .royal-contact-info {
        width: 100%;

        max-width: 420px;

        margin: 55px auto 0;
    }


    .royal-info-card {
        padding: 30px 23px 25px;
    }


    .royal-info-header h2 {
        font-size: 22px;
    }


    .royal-arch-decoration {
        width: 280px;
        height: 350px;

        right: 50%;

        top: 15%;

        transform: translateX(50%);

        opacity: 0.18;
    }


    .royal-scroll-indicator {
        display: none;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .royal-contact-wrapper {
        padding: 75px 16px 80px;
    }


    .royal-contact-content h1 {
        font-size: 40px;
    }


    .royal-contact-description {
        font-size: 12.5px;
    }


    .royal-info-card {
        padding: 27px 19px 23px;
    }


    .royal-info-header {
        gap: 12px;
    }


    .royal-info-icon {
        width: 43px;
        height: 43px;

        flex-basis: 43px;
    }


    .royal-info-header h2 {
        font-size: 20px;
    }


    .royal-item-text p {
        font-size: 12px;
    }


    .royal-info-footer p {
        font-size: 8px;

        letter-spacing: 1.5px;
    }

}
/* =========================================
   HERO MAIN HEADING - BIGGER
========================================= */

.royal-contact-content h1 {
    margin: 0;
    max-width: 700px;

    color: #f7f3e9;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(58px, 6vw, 86px);

    font-weight: 400;

    line-height: 1.04;

    letter-spacing: -2px;
}

.royal-contact-content h1 em {
    display: block;

    margin-top: 10px;

    color: #d9c79d;

    font-size: 0.72em;

    font-weight: 400;

    font-style: italic;

    letter-spacing: -1px;
}


/* =========================================
   HERO DESCRIPTION - BIGGER
========================================= */

.royal-contact-description {
    max-width: 650px;

    margin: 32px 0 0;

    color: rgba(247,243,233,0.76);

    font-size: 17px;

    font-weight: 300;

    line-height: 1.85;

    letter-spacing: 0.2px;
}


/* =========================================
   BREADCRUMB
========================================= */

.royal-contact-breadcrumb {
    display: flex;

    align-items: center;

    gap: 13px;

    margin-top: 27px;

    font-size: 14px;

    letter-spacing: 1px;
}


/* =========================================
   BUTTON
========================================= */

.royal-contact-btn {
    display: inline-flex;

    align-items: center;

    gap: 18px;

    padding: 17px 27px;

    color: whitesmoke;

    background: #615f5c;

    border: 1px solid #e3d4ae;

    text-decoration: none;

    font-size: 13px;

    font-weight: 600;

    letter-spacing: 1.2px;

    transition:
        transform 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}


/* =========================================
   LOCATION LINK
========================================= */

.royal-location-link {
    display: inline-flex;

    align-items: center;

    gap: 11px;

    color: rgba(255,255,255,0.75);

    text-decoration: none;

    font-size: 13px;

    letter-spacing: 1px;

    transition: color 0.3s ease;
}

.royal-location-link i {
    color: #d9c79d;

    font-size: 16px;
}


/* =========================================
   INFO CARD HEADER ICON
========================================= */

.royal-info-icon {
    width: 58px;
    height: 58px;

    flex: 0 0 58px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid rgba(217,199,157,0.45);

    color: #d9c79d;

    font-size: 21px;

    line-height: 1;
}


/* =========================================
   INFO CARD HEADER TEXT
========================================= */

.royal-info-header span {
    display: block;

    margin-bottom: 7px;

    color: #bcae8d;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 2px;
}

.royal-info-header h2 {
    margin: 0;

    color: #f5f1e7;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 29px;

    font-weight: 400;

    line-height: 1.15;
}


/* =========================================
   INFO ITEM
========================================= */

.royal-info-item {
    display: flex;

    align-items: flex-start;

    gap: 17px;

    margin-bottom: 29px;
}


/* =========================================
   INFO ITEM ICON
========================================= */

.royal-item-icon {
    width: 44px;
    height: 44px;

    flex: 0 0 44px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid rgba(217,199,157,0.30);

    color: #d9c79d;

    font-size: 17px;

    line-height: 1;
}


/* =========================================
   INFO ITEM LABEL
========================================= */

.royal-item-text span {
    display: block;

    margin-bottom: 8px;

    color: #bcae8d;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 2px;
}


/* =========================================
   INFO ITEM DESCRIPTION
========================================= */

.royal-item-text p {
    margin: 0;

    color: rgba(255,255,255,0.78);

    font-size: 14px;

    line-height: 1.75;

    font-weight: 300;
}


/* =========================================
   FOOTER TEXT
========================================= */

.royal-info-footer p {
    margin: 0;

    color: #d9c79d;

    font-size: 10px;

    letter-spacing: 2.2px;

    white-space: nowrap;

    text-transform: uppercase;
}
/* =====================================================
   HOTEL ROYAL ARCH
   CONTACT INTRO SECTION
===================================================== */

.royal-contact-intro {
    position: relative;

    padding: 125px 0 135px;

    background: #f4f1e9;

    overflow: hidden;
}


/* =====================================================
   BACKGROUND DECORATION
===================================================== */

.royal-contact-intro::before {
    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    right: -180px;
    top: -160px;

    border: 1px solid rgba(28, 68, 59, 0.10);

    border-radius: 50%;
}


.royal-contact-intro::after {
    content: "";

    position: absolute;

    width: 280px;
    height: 280px;

    left: -150px;
    bottom: -130px;

    border: 1px solid rgba(28, 68, 59, 0.08);

    border-radius: 50%;
}


/* =====================================================
   CONTAINER
===================================================== */

.royal-contact-intro-container {
    width: min(1180px, calc(100% - 50px));

    margin: 0 auto;

    display: grid;

    grid-template-columns:
        minmax(0, 0.95fr)
        minmax(0, 1fr);

    align-items: center;

    gap: 100px;

    position: relative;

    z-index: 2;
}


/* =====================================================
   IMAGE AREA
===================================================== */

.royal-intro-image-wrap {
    position: relative;

    padding: 0 30px 30px 0;
}


/* Main Image */

.royal-intro-image {
    position: relative;

    width: 100%;

    height: 570px;

    overflow: hidden;

    background: #dcd8cc;
}


.royal-intro-image::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 55%,
            rgba(12, 38, 32, 0.28)
        );

    pointer-events: none;
}


.royal-intro-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.8s ease;
}


.royal-intro-image-wrap:hover
.royal-intro-image img {
    transform: scale(1.04);
}


/* =====================================================
   IMAGE FRAME
===================================================== */

.royal-intro-image-wrap::before {
    content: "";

    position: absolute;

    left: 28px;
    top: 28px;

    width: 100%;
    height: 100%;

    border: 1px solid #b7a878;

    z-index: -1;
}


/* =====================================================
   LOCATION BADGE
===================================================== */

.royal-intro-badge {
    position: absolute;

    right: 0;
    top: 75px;

    width: 145px;
    height: 145px;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    text-align: center;

    background: #615f5c;

    color: #f3eee2;

    border: 8px solid #f4f1e9;

    border-radius: 50%;

    box-shadow:
        0 15px 35px rgba(17, 48, 41, 0.18);
}


.royal-badge-arch {
    width: 35px;
    height: 35px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 8px;

    color: #d8c89d;

    border: 1px solid rgba(216, 200, 157, 0.5);

    border-radius: 50%;

    font-size: 13px;
}


.royal-intro-badge span {
    color: #cfc3a3;

    font-size: 8px;

    font-weight: 600;

    letter-spacing: 2px;
}


.royal-intro-badge strong {
    margin-top: 4px;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;

    font-weight: 400;

    letter-spacing: 1px;
}


/* =====================================================
   IMAGE NUMBER
===================================================== */

.royal-image-number {
    position: absolute;

    left: 22px;
    bottom: 2px;

    display: flex;

    align-items: center;

    gap: 12px;

    color: #615f5c;
}


.royal-image-number span:first-child {
    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 30px;

    font-style: italic;
}


.royal-image-number div {
    width: 38px;
    height: 1px;

    background: #b7a878;
}


.royal-image-number span:last-child {
    font-size: 8px;

    letter-spacing: 2px;

    color: #7a776c;
}


/* =====================================================
   CONTENT
===================================================== */

.royal-intro-content {
    max-width: 570px;
}


/* =====================================================
   LABEL
===================================================== */

.royal-intro-label {
    display: flex;

    align-items: center;

    gap: 13px;

    color: #615f5c;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 3px;

    margin-bottom: 22px;
}


.royal-intro-label span {
    width: 45px;

    height: 1px;

    background: #b7a878;
}


/* =====================================================
   HEADING
===================================================== */

.royal-intro-content h2 {
    margin: 0;

    color: #183a33;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(48px, 5vw, 68px);

    font-weight: 400;

    line-height: 1.05;

    letter-spacing: -1.8px;
}


.royal-intro-content h2 em {
    display: block;

    margin-top: 8px;

    color: #9b8150;

    font-size: 0.68em;

    font-weight: 400;

    font-style: italic;

    letter-spacing: -0.5px;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.royal-intro-description {
    margin: 27px 0 0;

    color: #626b66;

    font-size: 15px;

    font-weight: 300;

    line-height: 1.9;
}


/* =====================================================
   ADDRESS
===================================================== */

.royal-intro-address {
    display: flex;

    align-items: flex-start;

    gap: 17px;

    margin-top: 35px;

    padding: 22px 0;

    border-top: 1px solid rgba(24, 58, 51, 0.12);

    border-bottom: 1px solid rgba(24, 58, 51, 0.12);
}


.royal-address-icon {
    width: 44px;
    height: 44px;

    flex: 0 0 44px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #9b8150;

    border: 1px solid rgba(155, 129, 80, 0.35);

    font-size: 15px;
}


.royal-address-content span {
    display: block;

    margin-bottom: 7px;

    color: #8a7959;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;
}


.royal-address-content p {
    margin: 0;

    color: #615f5c;

    font-size: 14px;

    line-height: 1.7;
}


/* =====================================================
   FEATURES
===================================================== */

.royal-intro-features {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 10px;

    margin-top: 28px;
}


.royal-intro-feature {
    display: flex;

    align-items: center;

    gap: 11px;

    min-width: 0;
}


.royal-feature-icon {
    width: 38px;
    height: 38px;

    flex: 0 0 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #615f5c;

    border: 1px solid rgba(23, 60, 52, 0.18);

    font-size: 13px;
}


.royal-intro-feature strong {
    display: block;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 13px;

    font-weight: 500;
}


.royal-intro-feature span {
    display: block;

    margin-top: 3px;

    color: #8a908b;

    font-size: 9px;

    line-height: 1.3;
}


/* =====================================================
   CTA
===================================================== */

.royal-intro-cta {
    display: flex;

    align-items: center;

    gap: 20px;

    margin-top: 34px;
}


.royal-intro-button {
    display: inline-flex;

    align-items: center;

    gap: 20px;

    padding: 15px 22px;

    color: #f7f2e5;

    background: #615f5c;

    border: 1px solid #615f5c;

    text-decoration: none;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 1.3px;

    transition:
        background 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}


.royal-intro-button i {
    font-size: 10px;

    transition:
        transform 0.3s ease;
}


.royal-intro-button:hover {
    color: #fff;

    background: #244f45;

    transform: translateY(-3px);

    box-shadow:
        0 12px 25px rgba(23, 60, 52, 0.18);
}


.royal-intro-button:hover i {
    transform: translateX(5px);
}


.royal-intro-note {
    color: #858b85;

    font-size: 11px;

    font-style: italic;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .royal-contact-intro {
        padding: 100px 0 110px;
    }

    .royal-contact-intro-container {
        gap: 60px;
    }

    .royal-intro-image {
        height: 500px;
    }

    .royal-intro-badge {
        width: 125px;
        height: 125px;
    }

    .royal-intro-content h2 {
        font-size: 50px;
    }

    .royal-intro-features {
        grid-template-columns: 1fr;
        gap: 14px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .royal-contact-intro {
        padding: 80px 0 90px;
    }


    .royal-contact-intro-container {
        width: min(100% - 34px, 600px);

        display: flex;

        flex-direction: column;

        gap: 65px;

        align-items: stretch;
    }


    /* Image */

    .royal-intro-image-wrap {
        padding: 0 20px 25px 0;
    }


    .royal-intro-image {
        height: 440px;
    }


    .royal-intro-image-wrap::before {
        left: 18px;
        top: 18px;
    }


    .royal-intro-badge {
        right: -2px;

        top: 50px;

        width: 112px;
        height: 112px;

        border-width: 6px;
    }


    .royal-badge-arch {
        width: 29px;
        height: 29px;

        margin-bottom: 5px;
    }


    .royal-intro-badge strong {
        font-size: 14px;
    }


    .royal-image-number {
        left: 10px;
    }


    /* Content */

    .royal-intro-content {
        max-width: 100%;
    }


    .royal-intro-label {
        margin-bottom: 18px;
    }


    .royal-intro-content h2 {
        font-size: 46px;

        letter-spacing: -1px;
    }


    .royal-intro-content h2 em {
        margin-top: 7px;
    }


    .royal-intro-description {
        margin-top: 22px;

        font-size: 14px;

        line-height: 1.8;
    }


    /* Address */

    .royal-intro-address {
        margin-top: 28px;

        padding: 19px 0;
    }


    /* Features */

    .royal-intro-features {
        grid-template-columns: 1fr;

        gap: 14px;

        margin-top: 25px;
    }


    .royal-intro-feature {
        padding-bottom: 13px;

        border-bottom: 1px solid rgba(24,58,51,0.08);
    }


    .royal-intro-feature:last-child {
        border-bottom: 0;
    }


    /* CTA */

    .royal-intro-cta {
        align-items: flex-start;

        flex-direction: column;

        gap: 13px;

        margin-top: 28px;
    }


    .royal-intro-button {
        width: auto;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .royal-contact-intro-container {
        width: calc(100% - 28px);
    }


    .royal-intro-image {
        height: 390px;
    }


    .royal-intro-content h2 {
        font-size: 40px;
    }


    .royal-intro-description {
        font-size: 13px;
    }


    .royal-address-content p {
        font-size: 12px;
    }

}
/* =====================================================
   HOTEL ROYAL ARCH
   PREMIUM CONTACT INTRO - UPDATED LARGE VERSION
===================================================== */

.royal-contact-intro {
    position: relative;
    padding: 135px 0 145px;
    background: #f4f1e9;
    overflow: hidden;
}


/* Decorative circles */

.royal-contact-intro::before {
    content: "";
    position: absolute;

    width: 520px;
    height: 520px;

    right: -230px;
    top: -190px;

    border: 1px solid rgba(28, 68, 59, 0.10);
    border-radius: 50%;
}

.royal-contact-intro::after {
    content: "";

    position: absolute;

    width: 330px;
    height: 330px;

    left: -180px;
    bottom: -160px;

    border: 1px solid rgba(28, 68, 59, 0.08);

    border-radius: 50%;
}


/* =====================================================
   CONTAINER
===================================================== */

.royal-contact-intro-container {
    width: min(1250px, calc(100% - 70px));

    margin: 0 auto;

    display: grid;

    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);

    align-items: center;

    gap: 105px;

    position: relative;

    z-index: 2;
}


/* =====================================================
   IMAGE
===================================================== */

.royal-intro-image-wrap {
    position: relative;

    padding: 0 38px 38px 0;
}


.royal-intro-image {
    position: relative;

    width: 100%;

    height: 620px;

    overflow: hidden;

    background: #dcd8cc;
}


.royal-intro-image::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 55%,
            rgba(12, 38, 32, 0.25)
        );

    pointer-events: none;
}


.royal-intro-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.8s ease;
}


.royal-intro-image-wrap:hover
.royal-intro-image img {
    transform: scale(1.035);
}


/* Image frame */

.royal-intro-image-wrap::before {
    content: "";

    position: absolute;

    left: 35px;
    top: 35px;

    width: 100%;
    height: 100%;

    border: 1px solid #b7a878;

    z-index: -1;
}


/* =====================================================
   ROUND LOCATION BADGE
===================================================== */

.royal-intro-badge {
    position: absolute;

    right: -2px;
    top: 85px;

    width: 165px;
    height: 165px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    text-align: center;

    background: #615f5c;

    color: #f3eee2;

    border: 9px solid #f4f1e9;

    border-radius: 50%;

    box-shadow:
        0 18px 40px rgba(17, 48, 41, 0.20);
}


.royal-badge-arch {
    width: 40px;
    height: 40px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 9px;

    color: #d8c89d;

    border: 1px solid rgba(216, 200, 157, 0.5);

    border-radius: 50%;

    font-size: 15px;
}


.royal-intro-badge span {
    color: #cfc3a3;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 2.5px;
}


.royal-intro-badge strong {
    margin-top: 5px;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 18px;

    font-weight: 400;

    letter-spacing: 1px;
}


/* =====================================================
   IMAGE NUMBER
===================================================== */

.royal-image-number {
    position: absolute;

    left: 25px;
    bottom: 2px;

    display: flex;

    align-items: center;

    gap: 14px;

    color: #615f5c;
}


.royal-image-number span:first-child {
    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 34px;

    font-style: italic;
}


.royal-image-number div {
    width: 45px;
    height: 1px;

    background: #b7a878;
}


.royal-image-number span:last-child {
    font-size: 9px;

    letter-spacing: 2.5px;

    color: #7a776c;
}


/* =====================================================
   RIGHT CONTENT
===================================================== */

.royal-intro-content {
    max-width: 620px;
}


/* =====================================================
   SECTION LABEL
===================================================== */

.royal-intro-label {
    display: flex;

    align-items: center;

    gap: 15px;

    color: #615f5c;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 3.5px;

    margin-bottom: 25px;
}


.royal-intro-label span {
    width: 52px;
    height: 1px;

    background: #b7a878;
}


/* =====================================================
   MAIN HEADING
===================================================== */

.royal-intro-content h2 {
    margin: 0;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(58px, 5.2vw, 76px);

    font-weight: 400;

    line-height: 1.02;

    letter-spacing: -2.5px;
}


.royal-intro-content h2 em {
    display: block;

    margin-top: 12px;

    color: #9b8150;

    font-size: 0.67em;

    font-weight: 400;

    font-style: italic;

    line-height: 1.1;

    letter-spacing: -0.5px;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.royal-intro-description {
    margin: 32px 0 0;

    max-width: 610px;

    color: #626b66;

    font-size: 16px;

    font-weight: 300;

    line-height: 1.9;

    letter-spacing: 0.15px;
}


/* =====================================================
   ADDRESS
===================================================== */

.royal-intro-address {
    display: flex;

    align-items: flex-start;

    gap: 19px;

    margin-top: 38px;

    padding: 24px 0;

    border-top: 1px solid rgba(24, 58, 51, 0.14);

    border-bottom: 1px solid rgba(24, 58, 51, 0.14);
}


.royal-address-icon {
    width: 48px;
    height: 48px;

    flex: 0 0 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #9b8150;

    border: 1px solid rgba(155, 129, 80, 0.38);

    font-size: 16px;
}


.royal-address-content span {
    display: block;

    margin-bottom: 8px;

    color: #8a7959;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.2px;
}


.royal-address-content p {
    margin: 0;

    color: #615f5c;

    font-size: 15px;

    line-height: 1.75;

    font-weight: 400;
}


/* =====================================================
   FEATURES
===================================================== */

.royal-intro-features {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 20px;

    margin-top: 32px;
}


.royal-intro-feature {
    display: flex;

    align-items: center;

    gap: 12px;

    min-width: 0;
}


.royal-feature-icon {
    width: 43px;
    height: 43px;

    flex: 0 0 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #615f5c;

    border: 1px solid rgba(23, 60, 52, 0.20);

    font-size: 14px;
}


.royal-intro-feature strong {
    display: block;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 15px;

    font-weight: 500;

    line-height: 1.2;
}


.royal-intro-feature span {
    display: block;

    margin-top: 5px;

    color: #858c87;

    font-size: 10px;

    line-height: 1.35;
}


/* =====================================================
   CTA
===================================================== */

.royal-intro-cta {
    display: flex;

    align-items: center;

    gap: 22px;

    margin-top: 38px;
}


.royal-intro-button {
    display: inline-flex;

    align-items: center;

    gap: 22px;

    padding: 17px 27px;

    color: #f7f2e5;

    background: #615f5c;

    border: 1px solid #615f5c;

    text-decoration: none;

    font-size: 13px;

    font-weight: 600;

    letter-spacing: 1.4px;

    transition:
        background 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}


.royal-intro-button i {
    font-size: 11px;

    transition: transform 0.3s ease;
}


.royal-intro-button:hover {
    color: #fff;

    background: #244f45;

    transform: translateY(-3px);

    box-shadow:
        0 14px 30px rgba(23, 60, 52, 0.20);
}


.royal-intro-button:hover i {
    transform: translateX(6px);
}


.royal-intro-note {
    color: #858b85;

    font-size: 12px;

    font-style: italic;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

    .royal-contact-intro-container {
        gap: 65px;
    }

    .royal-intro-image {
        height: 560px;
    }

    .royal-intro-content h2 {
        font-size: 57px;
    }

    .royal-intro-features {
        gap: 12px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .royal-contact-intro {
        padding: 90px 0 100px;
    }


    .royal-contact-intro-container {
        width: calc(100% - 34px);

        display: flex;

        flex-direction: column;

        gap: 70px;

        align-items: stretch;
    }


    /* IMAGE */

    .royal-intro-image-wrap {
        padding: 0 22px 28px 0;
    }


    .royal-intro-image {
        height: 450px;
    }


    .royal-intro-image-wrap::before {
        left: 20px;
        top: 20px;
    }


    .royal-intro-badge {
        right: -2px;
        top: 55px;

        width: 120px;
        height: 120px;

        border-width: 7px;
    }


    .royal-badge-arch {
        width: 31px;
        height: 31px;

        margin-bottom: 5px;

        font-size: 12px;
    }


    .royal-intro-badge span {
        font-size: 7px;
    }


    .royal-intro-badge strong {
        font-size: 15px;
    }


    .royal-image-number {
        left: 10px;
    }


    /* CONTENT */

    .royal-intro-content {
        max-width: 100%;
    }


    .royal-intro-label {
        font-size: 9px;

        letter-spacing: 2.8px;
    }


    .royal-intro-content h2 {
        font-size: 49px;

        line-height: 1.04;

        letter-spacing: -1.3px;
    }


    .royal-intro-content h2 em {
        font-size: 0.69em;

        margin-top: 8px;
    }


    .royal-intro-description {
        margin-top: 24px;

        font-size: 14.5px;

        line-height: 1.85;
    }


    /* ADDRESS */

    .royal-intro-address {
        margin-top: 30px;

        padding: 21px 0;

        gap: 15px;
    }


    .royal-address-icon {
        width: 44px;
        height: 44px;

        flex-basis: 44px;
    }


    .royal-address-content span {
        font-size: 9px;
    }


    .royal-address-content p {
        font-size: 13.5px;
    }


    /* FEATURES */

    .royal-intro-features {
        grid-template-columns: 1fr;

        gap: 0;

        margin-top: 28px;
    }


    .royal-intro-feature {
        padding: 14px 0;

        border-bottom: 1px solid rgba(24,58,51,0.08);
    }


    .royal-intro-feature:last-child {
        border-bottom: 0;
    }


    .royal-intro-feature strong {
        font-size: 15px;
    }


    .royal-intro-feature span {
        font-size: 10px;
    }


    /* CTA */

    .royal-intro-cta {
        align-items: flex-start;

        flex-direction: column;

        gap: 14px;

        margin-top: 30px;
    }


    .royal-intro-button {
        padding: 16px 24px;

        font-size: 12px;
    }


    .royal-intro-note {
        font-size: 12px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .royal-contact-intro {
        padding: 75px 0 85px;
    }


    .royal-contact-intro-container {
        width: calc(100% - 28px);
    }


    .royal-intro-image {
        height: 400px;
    }


    .royal-intro-content h2 {
        font-size: 43px;
    }


    .royal-intro-description {
        font-size: 14px;
    }


    .royal-address-content p {
        font-size: 12.5px;
    }

}
/* =====================================================
   HOTEL ROYAL ARCH
   CONTACT SERVICES
===================================================== */

.royal-contact-services {
    position: relative;

    padding: 135px 0 145px;

    background: #615f5c;

    overflow: hidden;
}


/* =====================================================
   BACKGROUND DECORATION
===================================================== */

.royal-contact-services::before {
    content: "";

    position: absolute;

    width: 500px;
    height: 500px;

    right: -250px;
    top: -230px;

    border: 1px solid rgba(225, 211, 177, 0.13);

    border-radius: 50%;
}


.royal-contact-services::after {
    content: "";

    position: absolute;

    width: 360px;
    height: 360px;

    left: -190px;
    bottom: -190px;

    border: 1px solid rgba(225, 211, 177, 0.08);

    border-radius: 50%;
}


/* =====================================================
   CONTAINER
===================================================== */

.royal-services-container {
    width: min(1250px, calc(100% - 70px));

    margin: 0 auto;

    position: relative;

    z-index: 2;
}


/* =====================================================
   HEADING
===================================================== */

.royal-services-heading {
    max-width: 760px;

    margin: 0 auto 70px;

    text-align: center;
}


.royal-services-label {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 15px;

    margin-bottom: 24px;

    color: #cdbb91;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 3.5px;
}


.royal-services-label span {
    width: 45px;
    height: 1px;

    background: #cdbb91;
}


.royal-services-heading h2 {
    margin: 0;

    color: #f5f1e7;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(55px, 5vw, 72px);

    font-weight: 400;

    line-height: 1.05;

    letter-spacing: -2px;
}


.royal-services-heading h2 em {
    display: block;

    margin-top: 8px;

    color: #d5c294;

    font-size: .68em;

    font-weight: 400;

    font-style: italic;

    letter-spacing: -.5px;
}


.royal-services-heading p {
    max-width: 680px;

    margin: 27px auto 0;

    color: rgba(245,241,231,.68);

    font-size: 16px;

    line-height: 1.85;

    font-weight: 300;
}


/* =====================================================
   GRID
===================================================== */

.royal-services-grid {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 18px;
}


/* =====================================================
   SERVICE CARD
===================================================== */

.royal-service-card {
    position: relative;

    min-height: 455px;

    padding: 30px 28px 32px;

    background: #f4f1e9;

    border: 1px solid rgba(213,194,148,.20);

    transition:
        transform .4s ease,
        box-shadow .4s ease;
}


.royal-service-card:hover {
    transform: translateY(-8px);

    box-shadow:
        0 25px 50px rgba(0,0,0,.20);
}


/* =====================================================
   CARD TOP
===================================================== */

.royal-service-top {
    display: flex;

    align-items: flex-start;

    justify-content: space-between;

    margin-bottom: 45px;
}


.royal-service-number {
    color: #a08b5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;

    font-style: italic;
}


/* =====================================================
   BIG ICON
===================================================== */

.royal-service-icon {
    width: 66px;
    height: 66px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #615f5c;

    border: 1px solid rgba(23,60,52,.25);

    border-radius: 50%;

    background: rgba(23,60,52,.035);

    font-size: 27px;

    transition:
        background .35s ease,
        color .35s ease,
        transform .35s ease;
}


.royal-service-card:hover .royal-service-icon {
    color: #f4f1e9;

    background: #615f5c;

    transform: rotate(-5deg);
}


/* =====================================================
   CARD CONTENT
===================================================== */

.royal-service-content > span {
    display: block;

    margin-bottom: 12px;

    color: #9a8558;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2.2px;
}


.royal-service-content h3 {
    min-height: 64px;

    margin: 0;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;

    font-weight: 400;

    line-height: 1.18;

    letter-spacing: -.5px;
}


.royal-service-content p {
    margin: 18px 0 0;

    color: #615f5c;

    font-size: 13.5px;

    line-height: 1.75;

    font-weight: 300;
}


/* =====================================================
   CARD LINK
===================================================== */

.royal-service-content a {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    margin-top: 25px;

    color: #615f5c;

    text-decoration: none;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1px;

    transition: gap .3s ease;
}


.royal-service-content a i {
    font-size: 11px;

    color: #9a8558;
}


.royal-service-content a:hover {
    gap: 17px;
}


/* =====================================================
   CARD BOTTOM LINE
===================================================== */

.royal-service-card::after {
    content: "";

    position: absolute;

    left: 28px;
    right: 28px;
    bottom: 15px;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(23,60,52,.18),
            transparent
        );
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

    .royal-contact-services {
        padding: 110px 0 120px;
    }

    .royal-services-grid {
        grid-template-columns:
            repeat(2, 1fr);

        gap: 20px;
    }

    .royal-service-card {
        min-height: 420px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .royal-contact-services {
        padding: 90px 0 100px;
    }


    .royal-services-container {
        width: calc(100% - 34px);
    }


    .royal-services-heading {
        margin-bottom: 50px;
    }


    .royal-services-label {
        font-size: 9px;

        letter-spacing: 2.5px;

        gap: 10px;
    }


    .royal-services-label span {
        width: 28px;
    }


    .royal-services-heading h2 {
        font-size: 47px;

        letter-spacing: -1.2px;
    }


    .royal-services-heading p {
        margin-top: 22px;

        font-size: 14px;

        line-height: 1.8;
    }


    .royal-services-grid {
        grid-template-columns: 1fr;

        gap: 16px;
    }


    .royal-service-card {
        min-height: auto;

        padding: 27px 24px 30px;
    }


    .royal-service-top {
        margin-bottom: 35px;
    }


    .royal-service-icon {
        width: 62px;
        height: 62px;

        font-size: 25px;
    }


    .royal-service-content h3 {
        min-height: auto;

        font-size: 25px;
    }


    .royal-service-content p {
        font-size: 14px;

        line-height: 1.75;
    }


    .royal-service-content a {
        font-size: 11px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .royal-services-heading h2 {
        font-size: 42px;
    }


    .royal-service-card {
        padding: 25px 21px 28px;
    }


    .royal-service-icon {
        width: 58px;
        height: 58px;

        font-size: 23px;
    }


    .royal-service-content h3 {
        font-size: 23px;
    }


    .royal-service-content p {
        font-size: 13.5px;
    }

}
/* =========================================
   SERVICE CTA - ALWAYS ONE LINE
========================================= */

.royal-service-content a {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;

    gap: 12px;

    margin-top: 25px;

    width: max-content;
    max-width: 100%;

    white-space: nowrap;

    color: #615f5c;

    text-decoration: none;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 0.8px;

    line-height: 1.2;

    transition: gap .3s ease;
}

.royal-service-content a i {
    flex-shrink: 0;

    font-size: 12px;

    color: #9a8558;
}

.royal-service-content a:hover {
    gap: 17px;
}
/* =========================================
   FORCE ALL SERVICE LINKS TO ONE LINE
========================================= */

.royal-service-content a {
    display: inline-flex !important;

    flex-wrap: nowrap !important;

    align-items: center !important;

    width: auto !important;
    max-width: none !important;

    white-space: nowrap !important;

    word-break: keep-all !important;
    overflow-wrap: normal !important;

    gap: 12px !important;

    font-size: 12px !important;

    line-height: 1 !important;
}

.royal-service-content a i {
    display: inline-block !important;

    flex: 0 0 auto !important;

    white-space: nowrap !important;

    font-size: 12px !important;
}


/* Text itself should never wrap */

.royal-service-content a span {
    white-space: nowrap !important;
}


/* Keep the arrow beside the text */

.royal-service-content a:hover {
    gap: 17px !important;
}
.royal-service-card {
    display: flex;
    flex-direction: column;
}

.royal-service-content {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.royal-service-content a {
    margin-top: auto !important;

    padding-top: 25px;

    display: inline-flex !important;
    align-items: center !important;

    width: max-content !important;

    white-space: nowrap !important;

    flex-wrap: nowrap !important;

    gap: 12px !important;
}

.royal-service-content a span {
    white-space: nowrap !important;
}

.royal-service-content a i {
    flex-shrink: 0 !important;
}
/* =====================================================
   HOTEL ROYAL ARCH
   WHATSAPP ENQUIRY SECTION
===================================================== */

.royal-enquiry-section {
    position: relative;

    padding: 140px 0 150px;

    background: #f4f1e9;

    overflow: hidden;
}


/* Decorative Circle */

.royal-enquiry-section::before {
    content: "";

    position: absolute;

    width: 520px;
    height: 520px;

    right: -280px;
    bottom: -250px;

    border: 1px solid rgba(23,60,52,.08);

    border-radius: 50%;
}


/* =====================================================
   CONTAINER
===================================================== */

.royal-enquiry-container {
    width: min(1250px, calc(100% - 70px));

    margin: auto;

    display: grid;

    grid-template-columns:
        .85fr 1.15fr;

    gap: 100px;

    align-items: center;
}


/* =====================================================
   LEFT CONTENT
===================================================== */

.royal-enquiry-intro {
    max-width: 520px;
}


.royal-enquiry-label {
    display: flex;

    align-items: center;

    gap: 14px;

    margin-bottom: 25px;

    color: #8c7954;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 3px;
}


.royal-enquiry-label span {
    width: 50px;

    height: 1px;

    background: #b7a878;
}


/* Heading */

.royal-enquiry-intro h2 {
    margin: 0;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(58px, 5vw, 76px);

    font-weight: 400;

    line-height: 1.02;

    letter-spacing: -2px;
}


.royal-enquiry-intro h2 em {
    display: block;

    margin-top: 10px;

    color: #a18350;

    font-size: .68em;

    font-weight: 400;

    font-style: italic;

    letter-spacing: -.5px;
}


/* Description */

.royal-enquiry-intro > p {
    max-width: 510px;

    margin: 30px 0 0;

    color: #615f5c;

    font-size: 16px;

    line-height: 1.9;

    font-weight: 300;
}


/* =====================================================
   WHATSAPP BOX
===================================================== */

.royal-whatsapp-box {
    display: flex;

    align-items: center;

    gap: 18px;

    margin-top: 38px;

    padding: 23px 25px;

    background: #e9e6dc;

    border-left: 3px solid #2c9b68;
}


.royal-whatsapp-icon {
    width: 58px;
    height: 58px;

    flex: 0 0 58px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #fff;

    background: #168b55;

    border-radius: 50%;

    font-size: 29px;
}


.royal-whatsapp-box span {
    display: block;

    margin-bottom: 5px;

    color: #615f5c;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;
}


.royal-whatsapp-box h3 {
    margin: 0;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;

    font-weight: 400;
}


.royal-whatsapp-box p {
    margin: 6px 0 0;

    color: #727a75;

    font-size: 12px;

    line-height: 1.5;
}


/* =====================================================
   NOTE
===================================================== */

.royal-enquiry-note {
    display: flex;

    align-items: center;

    gap: 10px;

    margin-top: 27px;

    color: #777e79;

    font-size: 12px;

    line-height: 1.5;
}


.royal-enquiry-note i {
    color: #9b8150;

    font-size: 16px;
}


.royal-enquiry-note strong {
    color: #615f5c;

    font-weight: 600;
}


/* =====================================================
   FORM WRAPPER
===================================================== */

.royal-enquiry-form-wrap {
    position: relative;

    padding: 48px 48px 43px;

    background: #fffdf8;

    border: 1px solid rgba(23,60,52,.12);

    box-shadow:
        0 25px 70px rgba(23,60,52,.08);
}


/* Top line */

.royal-enquiry-form-wrap::before {
    content: "";

    position: absolute;

    left: 48px;
    right: 48px;
    top: 0;

    height: 3px;

    background: #615f5c;
}


/* =====================================================
   FORM HEADING
===================================================== */

.royal-form-heading {
    margin-bottom: 32px;
}


.royal-form-heading > span {
    display: block;

    margin-bottom: 7px;

    color: #9b8150;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2.5px;
}


.royal-form-heading h3 {
    margin: 0;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 32px;

    font-weight: 400;
}


/* =====================================================
   FORM ROW
===================================================== */

.royal-form-row {
    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 20px;

    margin-bottom: 21px;
}


/* =====================================================
   FORM GROUP
===================================================== */

.royal-form-group {
    min-width: 0;
}


.royal-form-group label {
    display: block;

    margin-bottom: 8px;

    color: #615f5c;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: .4px;
}


/* =====================================================
   INPUT WRAPPER
===================================================== */

.royal-input-wrap {
    position: relative;
}


.royal-input-wrap > i {
    position: absolute;

    left: 16px;
    top: 50%;

    transform: translateY(-50%);

    color: #a18a5d;

    font-size: 17px;

    pointer-events: none;

    z-index: 2;
}


.royal-input-wrap input,
.royal-input-wrap select,
.royal-input-wrap textarea {

    width: 100%;

    box-sizing: border-box;

    border: 1px solid #d9d7ce;

    background: #faf9f4;

    color: #233e37;

    outline: none;

    font-family: inherit;

    font-size: 14px;

    transition:
        border-color .3s ease,
        background .3s ease,
        box-shadow .3s ease;
}


.royal-input-wrap input,
.royal-input-wrap select {
    height: 54px;

    padding: 0 16px 0 48px;
}


.royal-input-wrap textarea {
    min-height: 130px;

    resize: vertical;

    padding: 16px 16px 16px 48px;

    line-height: 1.7;
}


/* Placeholder */

.royal-input-wrap input::placeholder,
.royal-input-wrap textarea::placeholder {
    color: #9a9d98;

    font-size: 13px;
}


/* Select */

.royal-input-wrap select {
    appearance: none;

    -webkit-appearance: none;

    cursor: pointer;
}


/* Focus */

.royal-input-wrap input:focus,
.royal-input-wrap select:focus,
.royal-input-wrap textarea:focus {

    border-color: #9b8150;

    background: #fff;

    box-shadow:
        0 0 0 3px rgba(155,129,80,.08);
}


/* =====================================================
   TEXTAREA ICON
===================================================== */

.royal-textarea-wrap > i {
    top: 22px;

    transform: none;
}


/* =====================================================
   SUBMIT
===================================================== */

.royal-form-submit {
    margin-top: 27px;
}


.royal-whatsapp-submit {
    width: 100%;

    min-height: 58px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 13px;

    padding: 15px 22px;

    border: 0;

    color: #fff;

    background: #168b55;

    cursor: pointer;

    font-family: inherit;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: .8px;

    transition:
        background .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}


.royal-whatsapp-submit > i:first-child {
    font-size: 23px;
}


.royal-submit-arrow {
    font-size: 12px !important;

    margin-left: 8px;

    transition: transform .3s ease;
}


.royal-whatsapp-submit:hover {
    background: #117447;

    transform: translateY(-3px);

    box-shadow:
        0 12px 30px rgba(22,139,85,.20);
}


.royal-whatsapp-submit:hover
.royal-submit-arrow {
    transform: translateX(5px);
}


.royal-form-submit p {
    margin: 12px 0 0;

    text-align: center;

    color: #989b96;

    font-size: 10px;

    font-style: italic;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

    .royal-enquiry-container {
        gap: 55px;
    }

    .royal-enquiry-intro h2 {
        font-size: 57px;
    }

    .royal-enquiry-form-wrap {
        padding: 40px 35px 35px;
    }

    .royal-enquiry-form-wrap::before {
        left: 35px;
        right: 35px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .royal-enquiry-section {
        padding: 90px 0 100px;
    }


    .royal-enquiry-container {
        width: calc(100% - 34px);

        display: flex;

        flex-direction: column;

        gap: 60px;
    }


    .royal-enquiry-intro {
        max-width: 100%;
    }


    .royal-enquiry-label {
        font-size: 9px;

        letter-spacing: 2.5px;
    }


    .royal-enquiry-intro h2 {
        font-size: 48px;

        letter-spacing: -1px;
    }


    .royal-enquiry-intro > p {
        margin-top: 23px;

        font-size: 14px;

        line-height: 1.8;
    }


    .royal-whatsapp-box {
        margin-top: 28px;

        padding: 19px;
    }


    .royal-whatsapp-icon {
        width: 50px;
        height: 50px;

        flex-basis: 50px;

        font-size: 25px;
    }


    .royal-whatsapp-box h3 {
        font-size: 18px;
    }


    .royal-enquiry-form-wrap {
        padding: 38px 22px 30px;
    }


    .royal-enquiry-form-wrap::before {
        left: 22px;
        right: 22px;
    }


    .royal-form-heading h3 {
        font-size: 28px;
    }


    .royal-form-row {
        grid-template-columns: 1fr;

        gap: 19px;

        margin-bottom: 19px;
    }


    .royal-form-group label {
        font-size: 11px;
    }


    .royal-input-wrap input,
    .royal-input-wrap select {
        height: 55px;

        font-size: 14px;
    }


    .royal-input-wrap textarea {
        font-size: 14px;
    }


    .royal-whatsapp-submit {
        min-height: 57px;

        font-size: 12px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .royal-enquiry-container {
        width: calc(100% - 28px);
    }


    .royal-enquiry-intro h2 {
        font-size: 42px;
    }


    .royal-enquiry-form-wrap {
        padding: 34px 18px 28px;
    }


    .royal-enquiry-form-wrap::before {
        left: 18px;
        right: 18px;
    }


    .royal-form-heading h3 {
        font-size: 25px;
    }


    .royal-whatsapp-submit {
        gap: 9px;

        padding-left: 12px;
        padding-right: 12px;
    }

}
/* =====================================================
   HOTEL ROYAL ARCH
   PREMIUM FOOTER
===================================================== */

.royal-footer {
    position: relative;

    background: #615f5c;

    color: #fff;

    overflow: hidden;
}


/* =====================================================
   DECORATIVE TOP LINE
===================================================== */

.royal-footer-top-line {
    width: 100%;
    height: 3px;

    background:
        linear-gradient(
            90deg,
            transparent 0%,
            #b8a16c 20%,
            #e0d0a3 50%,
            #b8a16c 80%,
            transparent 100%
        );
}


/* =====================================================
   BACKGROUND DECORATION
===================================================== */

.royal-footer::before {
    content: "";

    position: absolute;

    width: 600px;
    height: 600px;

    right: -300px;
    top: -300px;

    border: 1px solid rgba(221,207,169,.09);

    border-radius: 50%;

    pointer-events: none;
}


.royal-footer::after {
    content: "";

    position: absolute;

    width: 380px;
    height: 380px;

    left: -220px;
    bottom: -220px;

    border: 1px solid rgba(221,207,169,.06);

    border-radius: 50%;

    pointer-events: none;
}


/* =====================================================
   MAIN CONTAINER
===================================================== */

.royal-footer-container {
    position: relative;

    width: min(1250px, calc(100% - 70px));

    margin: 0 auto;

    padding: 90px 0 75px;

    display: grid;

    grid-template-columns:
        1.5fr
        .8fr
        .9fr
        1.2fr;

    gap: 65px;

    z-index: 2;
}


/* =====================================================
   BRAND
===================================================== */

.royal-footer-brand {
    max-width: 350px;
}


.royal-footer-logo {
    display: inline-block;

    margin-bottom: 25px;
}


.royal-footer-logo img {
    display: block;

    width: 155px;
    height: auto;

    object-fit: contain;
}


.royal-footer-brand > p {
    margin: 0;

    color: rgba(246,242,231,.65);

    font-size: 14px;

    line-height: 1.9;

    font-weight: 300;
}


/* =====================================================
   TAGLINE
===================================================== */

.royal-footer-tagline {
    display: flex;

    align-items: center;

    gap: 12px;

    margin-top: 28px;

    color: #cdbb91;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 2.5px;

    white-space: nowrap;
}


.royal-footer-tagline span {
    width: 28px;

    height: 1px;

    background: #9e895c;
}


/* =====================================================
   FOOTER HEADINGS
===================================================== */

.royal-footer-column h3,
.royal-footer-contact h3 {
    position: relative;

    margin: 0 0 28px;

    padding-bottom: 14px;

    color: #f5f0e4;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 22px;

    font-weight: 400;
}


.royal-footer-column h3::after,
.royal-footer-contact h3::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 35px;
    height: 1px;

    background: #b7a16d;
}


/* =====================================================
   QUICK LINKS
===================================================== */

.royal-footer-column ul {
    list-style: none;

    margin: 0;
    padding: 0;
}


.royal-footer-column li {
    margin-bottom: 14px;
}


.royal-footer-column li:last-child {
    margin-bottom: 0;
}


.royal-footer-column a {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: rgba(246,242,231,.65);

    text-decoration: none;

    font-size: 13px;

    line-height: 1.4;

    transition:
        color .3s ease,
        gap .3s ease;
}


.royal-footer-column a:hover {
    color: #e0cf9e;

    gap: 16px;
}


/* Number */

.royal-footer-column a span {
    width: 20px;

    color: #98855d;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 10px;

    font-style: italic;
}


/* Service icons */

.royal-footer-column a i {
    width: 21px;

    color: #bca773;

    font-size: 16px;

    text-align: center;
}


/* =====================================================
   CONTACT
===================================================== */

.royal-footer-contact-item {
    display: flex;

    align-items: flex-start;

    gap: 14px;

    margin-bottom: 22px;
}


.royal-footer-contact-icon {
    width: 43px;
    height: 43px;

    flex: 0 0 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #cdbb91;

    border: 1px solid rgba(205,187,145,.28);

    font-size: 18px;
}


.royal-footer-contact-item span {
    display: block;

    margin-bottom: 5px;

    color: #9f916f;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 2px;
}


.royal-footer-contact-item p {
    margin: 0;

    color: rgba(246,242,231,.68);

    font-size: 13px;

    line-height: 1.7;
}


.royal-footer-contact-item a {
    color: #f0e4c4;

    text-decoration: none;

    font-size: 15px;

    transition: color .3s ease;
}


.royal-footer-contact-item a:hover {
    color: #fff;
}


/* =====================================================
   WHATSAPP BUTTON
===================================================== */

.royal-footer-whatsapp {
    display: inline-flex;

    align-items: center;

    gap: 13px;

    margin-top: 7px;

    padding: 13px 17px;

    color: #615f5c;

    background: #ded0a8;

    text-decoration: none;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: .8px;

    transition:
        background .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}


.royal-footer-whatsapp i:first-child {
    font-size: 21px;
}


.royal-footer-whatsapp i:last-child {
    font-size: 10px;

    margin-left: 5px;

    transition: transform .3s ease;
}


.royal-footer-whatsapp:hover {
    color: #615f5c;

    background: #eee2c2;

    transform: translateY(-3px);

    box-shadow:
        0 10px 25px rgba(0,0,0,.18);
}


.royal-footer-whatsapp:hover i:last-child {
    transform: translateX(5px);
}


/* =====================================================
   BOTTOM
===================================================== */

.royal-footer-bottom {
    position: relative;

    border-top: 1px solid rgba(220,207,170,.12);

    background: rgba(5,25,21,.32);

    z-index: 2;
}


.royal-footer-bottom-inner {
    width: min(1250px, calc(100% - 70px));

    min-height: 85px;

    margin: 0 auto;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 30px;
}


/* Copyright */

.royal-footer-bottom p {
    margin: 0;

    color: rgba(246,242,231,.45);

    font-size: 11px;

    line-height: 1.5;
}


/* =====================================================
   DEVELOPER CREDIT
===================================================== */

.royal-footer-credit {
    display: flex;

    align-items: center;

    gap: 6px;

    color: rgba(246,242,231,.45);

    font-size: 11px;

    white-space: nowrap;
}


.royal-footer-credit a {
    color: #d5c294;

    text-decoration: none;

    font-weight: 600;

    transition: color .3s ease;
}


.royal-footer-credit a:hover {
    color: #fff;

    text-decoration: underline;
}


/* =====================================================
   SOCIAL
===================================================== */

.royal-footer-social {
    display: flex;

    align-items: center;

    gap: 9px;
}


.royal-footer-social a {
    width: 38px;
    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: rgba(246,242,231,.68);

    border: 1px solid rgba(220,207,170,.20);

    border-radius: 50%;

    text-decoration: none;

    font-size: 15px;

    transition:
        color .3s ease,
        background .3s ease,
        border-color .3s ease,
        transform .3s ease;
}


.royal-footer-social a:hover {
    color: #615f5c;

    background: #ded0a8;

    border-color: #ded0a8;

    transform: translateY(-3px);
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

    .royal-footer-container {
        grid-template-columns:
            1.3fr
            1fr
            1fr;

        gap: 50px;
    }


    .royal-footer-brand {
        max-width: 400px;
    }


    .royal-footer-contact {
        grid-column: span 1;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .royal-footer-container {
        width: calc(100% - 34px);

        padding: 70px 0 60px;

        display: grid;

        grid-template-columns: 1fr;

        gap: 48px;
    }


    .royal-footer-brand {
        max-width: 100%;
    }


    .royal-footer-logo img {
        width: 145px;
    }


    .royal-footer-brand > p {
        font-size: 14px;

        line-height: 1.8;
    }


    .royal-footer-column h3,
    .royal-footer-contact h3 {
        font-size: 22px;

        margin-bottom: 24px;
    }


    .royal-footer-column a {
        font-size: 14px;
    }


    .royal-footer-column li {
        margin-bottom: 16px;
    }


    .royal-footer-contact-item p {
        font-size: 13px;
    }


    .royal-footer-contact-item a {
        font-size: 15px;
    }


    .royal-footer-bottom-inner {
        width: calc(100% - 34px);

        padding: 25px 0;

        min-height: auto;

        display: flex;

        flex-direction: column;

        align-items: center;

        justify-content: center;

        gap: 18px;

        text-align: center;
    }


    .royal-footer-credit {
        order: 2;

        font-size: 11px;
    }


    .royal-footer-social {
        order: 3;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .royal-footer-container {
        width: calc(100% - 28px);
    }


    .royal-footer-bottom-inner {
        width: calc(100% - 28px);
    }


    .royal-footer-tagline {
        font-size: 8px;

        letter-spacing: 2px;
    }


    .royal-footer-brand > p {
        font-size: 13px;
    }

}
/* =========================================
   ROYAL ARCH FOOTER LOGO - SIZE FIX
========================================= */

.royal-footer-logo {
    display: flex !important;

    align-items: center !important;

    justify-content: flex-start !important;

    width: 190px !important;

    height: 82px !important;

    margin-bottom: 24px !important;

    overflow: hidden;
}

.royal-footer-logo img {
    display: block !important;

    width: 190px !important;

    height: 82px !important;

    max-width: none !important;

    object-fit: contain !important;

    object-position: left center !important;
}
 /* =========================================
    HOTEL ROYAL ARCH
    FOOTER LOGO - FINAL SIZE FIX
 ========================================= */

.royal-footer-brand .royal-footer-logo {
    display: block !important;

    width: 260px !important;
    height: 105px !important;

    margin: 0 0 22px 0 !important;

    overflow: visible !important;
}


.royal-footer-brand .royal-footer-logo img {
    display: block !important;

    width: 260px !important;
    height: 105px !important;

    max-width: none !important;

    object-fit: contain !important;

    object-position: left center !important;

    transform: scale(1.45) !important;

    transform-origin: left center !important;
}
/* =========================================
   HOTEL ROYAL ARCH
   FOOTER LOGO - PROPER ALIGNMENT
========================================= */

.royal-footer-brand .royal-footer-logo {
    display: flex !important;

    align-items: flex-start !important;
    justify-content: flex-start !important;

    width: 155px !important;
    height: auto !important;

    margin: 0 0 25px 0 !important;

    overflow: visible !important;
}


.royal-footer-brand .royal-footer-logo img {
    display: block !important;

    width: 155px !important;
    height: auto !important;

    max-width: 155px !important;

    object-fit: contain !important;

    transform: none !important;
}
.royal-footer-brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.royal-footer-brand .royal-footer-logo {
    margin-left: 50px !important;

    width: 155px !important;
    height: auto !important;
}


.royal-footer-brand .royal-footer-logo img {
    width: 155px !important;
    max-width: 155px !important;
    height: auto !important;

    transform: none !important;
}
/* =====================================================
   HOTEL ROYAL ARCH
   FOOTER FINAL RESPONSIVE FIX
===================================================== */


/* =========================
   DESKTOP
========================= */

@media (min-width: 768px) {

    .royal-footer-brand {
        padding-left: 0 !important;
    }

    .royal-footer-brand .royal-footer-logo {
        display: flex !important;

        width: 155px !important;
        height: 65px !important;

        margin: 0 0 25px 0 !important;

        align-items: flex-start !important;
        justify-content: flex-start !important;

        overflow: visible !important;
    }

    .royal-footer-brand .royal-footer-logo img {
        width: 155px !important;
        height: auto !important;

        max-width: 155px !important;

        transform: none !important;
    }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

    .royal-footer {
        overflow: hidden !important;
    }


    .royal-footer-container {
        width: calc(100% - 36px) !important;

        padding-top: 65px !important;
        padding-bottom: 55px !important;

        margin-left: auto !important;
        margin-right: auto !important;

        display: grid !important;

        grid-template-columns: 1fr !important;

        gap: 45px !important;
    }


    /* LOGO */

    .royal-footer-brand .royal-footer-logo {
        display: flex !important;

        width: 145px !important;
        height: 62px !important;

        margin: 0 0 22px 0 !important;

        align-items: flex-start !important;
        justify-content: flex-start !important;

        overflow: visible !important;
    }


    .royal-footer-brand .royal-footer-logo img {
        display: block !important;

        width: 145px !important;
        height: auto !important;

        max-width: 145px !important;

        transform: none !important;
    }


    /* DESCRIPTION */

    .royal-footer-brand > p {
        display: block !important;

        margin: 0 !important;

        max-width: 100% !important;

        color: rgba(246,242,231,.68) !important;

        font-size: 14px !important;

        line-height: 1.85 !important;
    }


    /* TAGLINE */

    .royal-footer-tagline {
        margin-top: 24px !important;

        font-size: 8px !important;

        letter-spacing: 2px !important;
    }


    /* FOOTER HEADINGS */

    .royal-footer-column h3,
    .royal-footer-contact h3 {
        font-size: 23px !important;

        margin-bottom: 24px !important;
    }


    /* LINKS */

    .royal-footer-column li {
        margin-bottom: 15px !important;
    }


    .royal-footer-column a {
        font-size: 14px !important;
    }


    /* CONTACT */

    .royal-footer-contact-item {
        gap: 14px !important;

        margin-bottom: 22px !important;
    }


    .royal-footer-contact-icon {
        width: 45px !important;
        height: 45px !important;

        flex: 0 0 45px !important;

        font-size: 18px !important;
    }


    .royal-footer-contact-item p {
        font-size: 13.5px !important;

        line-height: 1.75 !important;
    }


    .royal-footer-contact-item a {
        font-size: 15px !important;
    }


    /* BOTTOM */

    .royal-footer-bottom-inner {
        width: calc(100% - 36px) !important;

        padding: 25px 0 !important;

        min-height: auto !important;

        display: flex !important;

        flex-direction: column !important;

        align-items: center !important;

        justify-content: center !important;

        gap: 17px !important;

        text-align: center !important;
    }


    .royal-footer-bottom p {
        font-size: 11px !important;

        line-height: 1.6 !important;
    }


    .royal-footer-credit {
        font-size: 11px !important;

        white-space: normal !important;

        text-align: center !important;
    }


    .royal-footer-social {
        gap: 10px !important;
    }


    .royal-footer-social a {
        width: 40px !important;
        height: 40px !important;

        font-size: 15px !important;
    }

}


/* =========================
   SMALL MOBILE
========================= */

@media (max-width: 420px) {

    .royal-footer-container {
        width: calc(100% - 28px) !important;

        padding-top: 58px !important;
    }


    .royal-footer-brand .royal-footer-logo {
        width: 135px !important;
        height: 58px !important;
    }


    .royal-footer-brand .royal-footer-logo img {
        width: 135px !important;
        max-width: 135px !important;
    }


    .royal-footer-brand > p {
        font-size: 13.5px !important;

        line-height: 1.85 !important;
    }

}
/* =========================================
   HOTEL ROYAL ARCH
   FOOTER LOGO ALIGNMENT
========================================= */

@media (min-width: 768px) {

    .royal-footer-brand .royal-footer-logo {
        margin-left: 52px !important;

        width: 155px !important;
        height: auto !important;
    }

    .royal-footer-brand .royal-footer-logo img {
        width: 155px !important;
        max-width: 155px !important;
        height: auto !important;

        transform: none !important;
    }

}


/* =========================================
   MOBILE - DON'T SHIFT LOGO
========================================= */

@media (max-width: 767px) {

    .royal-footer-brand .royal-footer-logo {
        margin-left: 0 !important;

        width: 145px !important;
        height: auto !important;
    }

    .royal-footer-brand .royal-footer-logo img {
        width: 145px !important;
        max-width: 145px !important;
        height: auto !important;

        transform: none !important;
    }

}
/* =========================================
   ROYAL ARCH FOOTER
   GOLD TEXT CLIPPING FIX
========================================= */

.royal-footer span,
.royal-footer .royal-footer-contact-item span,
.royal-footer .royal-footer-tagline,
.royal-footer .royal-footer-column a span {
    overflow: visible !important;
}


/* Contact labels - VISIT US / WHATSAPP */

.royal-footer-contact-item > div > span {
    display: block !important;

    width: auto !important;
    height: auto !important;

    min-height: 14px !important;

    margin: 0 0 6px 0 !important;
    padding: 2px 0 1px 0 !important;

    line-height: 1.5 !important;

    overflow: visible !important;

    font-size: 9px !important;

    letter-spacing: 2px !important;

    color: #b9a36d !important;
}


/* Stay / Dine / Celebrate */

.royal-footer-tagline {
    display: flex !important;

    align-items: center !important;

    min-height: 20px !important;

    height: auto !important;

    padding: 3px 0 !important;

    line-height: 1.5 !important;

    overflow: visible !important;
}


/* Explore numbers 01, 02 etc. */

.royal-footer-column a span {
    display: inline-block !important;

    width: 20px !important;
    height: auto !important;

    min-height: 14px !important;

    padding: 1px 0 !important;

    line-height: 1.5 !important;

    overflow: visible !important;
}


/* =========================================
   MOBILE EXTRA FIX
========================================= */

@media (max-width: 767px) {

    .royal-footer-contact-item > div > span {
        min-height: 16px !important;

        padding-top: 3px !important;
        padding-bottom: 2px !important;

        line-height: 1.5 !important;

        font-size: 9px !important;

        letter-spacing: 2px !important;
    }


    .royal-footer-tagline {
        min-height: 22px !important;

        padding-top: 4px !important;
        padding-bottom: 4px !important;

        line-height: 1.5 !important;
    }


    .royal-footer-column a span {
        min-height: 15px !important;

        line-height: 1.5 !important;
    }

}
/* =========================================
   STAY · DINE · CELEBRATE
   FINAL CLIPPING FIX
========================================= */

.royal-footer .royal-footer-tagline {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    width: max-content !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 26px !important;

    margin-top: 24px !important;
    margin-bottom: 0 !important;

    padding: 5px 0 !important;

    line-height: 1.6 !important;

    overflow: visible !important;

    white-space: nowrap !important;

    box-sizing: content-box !important;
}

.royal-footer .royal-footer-tagline span {
    display: inline-block !important;

    width: 28px !important;
    height: 1px !important;

    min-height: 1px !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 1 !important;

    flex-shrink: 0 !important;

    overflow: visible !important;
}

.royal-footer .royal-footer-tagline {
    color: #cdbb91 !important;

    font-size: 9px !important;
    font-weight: 600 !important;

    letter-spacing: 2.5px !important;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .royal-footer .royal-footer-tagline {
        width: max-content !important;

        min-height: 28px !important;

        height: auto !important;

        padding: 6px 0 !important;

        margin-top: 22px !important;

        line-height: 1.6 !important;

        font-size: 8px !important;

        letter-spacing: 2px !important;

        white-space: nowrap !important;

        overflow: visible !important;
    }

    .royal-footer .royal-footer-tagline span {
        width: 25px !important;

        height: 1px !important;

        min-height: 1px !important;
    }

}
/* =========================================
   ROYAL ARCH FOOTER
   STAY DINE CELEBRATE - FINAL FIX
========================================= */

.royal-footer .royal-footer-tagline {
    display: block !important;

    width: auto !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 24px 0 0 0 !important;
    padding: 4px 0 !important;

    line-height: 20px !important;

    font-family: Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 600 !important;

    letter-spacing: 2.5px !important;

    color: #cdbb91 !important;

    white-space: nowrap !important;

    overflow: visible !important;

    box-sizing: border-box !important;
}


/* Lines */

.royal-footer .royal-footer-tagline span {
    display: inline-block !important;

    width: 28px !important;
    height: 1px !important;

    min-width: 28px !important;
    min-height: 1px !important;

    margin: 0 10px 3px 0 !important;
    padding: 0 !important;

    vertical-align: middle !important;

    background: #9e895c !important;

    overflow: visible !important;
}


/* Second line */

.royal-footer .royal-footer-tagline span:last-child {
    margin: 0 0 3px 10px !important;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .royal-footer .royal-footer-tagline {
        display: block !important;

        width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        margin-top: 22px !important;

        padding: 5px 0 !important;

        line-height: 20px !important;

        font-size: 9px !important;

        letter-spacing: 2px !important;

        white-space: nowrap !important;

        overflow: visible !important;
    }

    .royal-footer .royal-footer-tagline span {
        width: 24px !important;
        min-width: 24px !important;

        height: 1px !important;
        min-height: 1px !important;

        margin-right: 8px !important;
    }

    .royal-footer .royal-footer-tagline span:last-child {
        margin-left: 8px !important;
        margin-right: 0 !important;
    }

}
/* =====================================================
   HOTEL ROYAL ARCH
   UNIQUE LUXURY HERO
===================================================== */

.ra-new-hero {
    position: relative;

    width: 100%;
    height: 850px;

    min-height: 700px;

    overflow: hidden;

    background: #161514;

    color: #f6f0e5;
}


/* =====================================================
   SLIDER
===================================================== */

.ra-new-slider {
    position: absolute;

    inset: 0;
}


.ra-new-slide {
    position: absolute;

    inset: 0;

    visibility: hidden;

    opacity: 0;

    transition:
        opacity 1.1s ease,
        visibility 1.1s ease;
}


.ra-new-slide.active {
    visibility: visible;

    opacity: 1;

    z-index: 2;
}


/* =====================================================
   IMAGE
===================================================== */

.ra-new-photo {
    position: absolute;

    inset: 0;

    overflow: hidden;
}


.ra-new-photo img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transform: scale(1.08);

    transition:
        transform 8s cubic-bezier(.2,.6,.2,1);
}


.ra-new-slide.active .ra-new-photo img {
    transform: scale(1);
}


/* =====================================================
   DARK OVERLAY
===================================================== */

.ra-new-dark-layer {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(12,11,10,.90) 0%,
            rgba(12,11,10,.68) 28%,
            rgba(12,11,10,.20) 62%,
            rgba(12,11,10,.55) 100%
        );

    z-index: 1;
}


.ra-new-dark-layer::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            0deg,
            rgba(10,9,8,.72),
            transparent 40%
        );
}


/* =====================================================
   LARGE WATERMARK
===================================================== */

.ra-new-watermark {
    position: absolute;

    right: 8%;

    top: 42%;

    z-index: 2;

    color: transparent;

    -webkit-text-stroke:
        1px rgba(239,225,195,.18);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(100px, 15vw, 240px);

    line-height: .8;

    letter-spacing: -8px;

    pointer-events: none;

    user-select: none;
}


/* =====================================================
   MAIN CONTENT
===================================================== */

.ra-new-main-content {
    position: absolute;

    z-index: 5;

    left: 9%;

    top: 46%;

    width: min(650px, 48%);

    transform: translateY(-50%);
}


.ra-new-small-title {
    display: flex;

    align-items: center;

    gap: 13px;

    margin-bottom: 28px;

    color: #d6bd87;

    font-family: Arial, sans-serif;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 3px;
}


.ra-new-small-title span {
    color: #e7d6b0;

    font-family: Georgia, serif;

    font-size: 14px;
}


.ra-new-small-title i {
    display: block;

    width: 42px;

    height: 1px;

    background: #b89d67;
}


/* =====================================================
   HEADING
===================================================== */

.ra-new-main-content h1,
.ra-new-main-content h2 {
    margin: 0;

    color: #f7f1e7;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(55px, 6vw, 88px);

    font-weight: 400;

    line-height: .98;

    letter-spacing: -3px;
}


.ra-new-main-content h1 strong,
.ra-new-main-content h2 strong {
    display: block;

    color: #d3b77d;

    font-weight: 400;

    font-style: italic;

    margin-top: 8px;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ra-new-main-content p {
    width: min(500px, 100%);

    margin: 30px 0 0;

    color: rgba(250,245,236,.74);

    font-family: Arial, sans-serif;

    font-size: 16px;

    line-height: 1.8;

    font-weight: 300;
}


/* =====================================================
   BUTTONS
===================================================== */

.ra-new-buttons {
    display: flex;

    align-items: center;

    gap: 28px;

    margin-top: 35px;
}


.ra-new-primary {
    display: inline-flex;

    align-items: center;

    justify-content: space-between;

    gap: 28px;

    min-width: 205px;

    min-height: 56px;

    padding: 0 20px 0 24px;

    color: #201d19;

    background: #dfc999;

    text-decoration: none;

    font-family: Arial, sans-serif;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1px;

    transition:
        background .3s ease,
        transform .3s ease;
}


.ra-new-primary span {
    font-size: 18px;

    transition: transform .3s ease;
}


.ra-new-primary:hover {
    background: #f0dfb8;

    transform: translateY(-3px);
}


.ra-new-primary:hover span {
    transform: translate(4px,-3px);
}


.ra-new-secondary {
    color: #f4eee3;

    text-decoration: none;

    border-bottom:
        1px solid rgba(239,225,195,.55);

    padding-bottom: 7px;

    font-family: Arial, sans-serif;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 1.2px;
}


/* =====================================================
   RIGHT PANEL
===================================================== */

.ra-new-side-panel {
    position: absolute;

    z-index: 8;

    top: 0;

    right: 0;

    width: 285px;

    height: 100%;

    padding: 45px 35px 125px;

    display: flex;

    flex-direction: column;

    background:
        rgba(22,21,20,.72);

    border-left:
        1px solid rgba(224,201,153,.22);

    backdrop-filter: blur(10px);

    box-sizing: border-box;
}


/* Logo */

.ra-new-side-logo img {
    width: 125px;

    height: auto;

    display: block;
}


/* Divider */

.ra-new-side-divider {
    width: 45px;

    height: 1px;

    margin-top: 32px;

    background: #b99d67;
}


/* Side information */

.ra-new-side-info {
    margin-top: 85px;
}


.ra-new-side-info > span {
    display: block;

    margin-bottom: 22px;

    color: #bba16c;

    font-family: Arial, sans-serif;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 3px;
}


.ra-new-side-info h3 {
    margin: 0;

    color: #f5eee1;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 38px;

    line-height: 1.15;

    font-weight: 400;
}


/* Side bottom */

.ra-new-side-bottom {
    margin-top: auto;

    display: flex;

    flex-direction: column;

    gap: 25px;
}


.ra-new-side-bottom small {
    display: block;

    margin-bottom: 7px;

    color: #9d895f;

    font-family: Arial, sans-serif;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 2px;
}


.ra-new-side-bottom strong {
    color: #ddd1b8;

    font-family: Arial, sans-serif;

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 1px;
}


.ra-new-side-bottom a {
    display: flex;

    align-items: center;

    justify-content: space-between;

    width: 100%;

    padding: 16px 0;

    color: #e0c99b;

    border-top:
        1px solid rgba(224,201,153,.2);

    border-bottom:
        1px solid rgba(224,201,153,.2);

    text-decoration: none;

    font-family: Arial, sans-serif;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;
}


.ra-new-side-bottom a b {
    font-size: 17px;

    font-weight: 400;
}


/* =====================================================
   BOTTOM BOOKING BAR
===================================================== */

.ra-new-booking-bar {
    position: absolute;

    left: 7%;

    right: 285px;

    bottom: 0;

    z-index: 9;

    height: 105px;

    padding: 0 35px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    background: #f1eadc;

    color: #211f1b;

    box-sizing: border-box;
}


/* Booking item */

.ra-new-booking-item {
    display: flex;

    align-items: center;

    gap: 15px;
}


.ra-new-booking-item > span {
    color: #9f8350;

    font-family: Georgia, serif;

    font-size: 13px;

    font-style: italic;
}


.ra-new-booking-item small {
    display: block;

    margin-bottom: 5px;

    color: #92784d;

    font-family: Arial, sans-serif;

    font-size: 7px;

    font-weight: 700;

    letter-spacing: 2px;
}


.ra-new-booking-item strong {
    display: block;

    color: #24332f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 15px;

    font-weight: 400;
}


/* Reserve */

.ra-new-reserve {
    display: flex;

    align-items: center;

    gap: 25px;

    min-height: 56px;

    padding: 0 22px;

    color: #f5eee2;

    background: #7c2930;

    text-decoration: none;

    font-family: Arial, sans-serif;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 1.5px;

    transition:
        background .3s ease,
        transform .3s ease;
}


.ra-new-reserve span {
    font-size: 17px;
}


.ra-new-reserve:hover {
    background: #622027;

    transform: translateY(-2px);
}


/* =====================================================
   COUNTER
===================================================== */

.ra-new-counter {
    position: absolute;

    z-index: 9;

    right: 315px;

    bottom: 130px;

    display: flex;

    align-items: baseline;

    gap: 8px;
}


.ra-new-counter strong {
    color: #dfc48c;

    font-family: Georgia, serif;

    font-size: 30px;

    font-weight: 400;
}


.ra-new-counter span {
    color: rgba(255,255,255,.55);

    font-family: Arial, sans-serif;

    font-size: 11px;
}


/* =====================================================
   ARROWS
===================================================== */

.ra-new-arrows {
    position: absolute;

    z-index: 10;

    left: 9%;

    bottom: 132px;

    display: flex;

    gap: 8px;
}


.ra-new-arrows button {
    width: 45px;
    height: 45px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #eee4d3;

    border:
        1px solid rgba(238,228,211,.35);

    background: rgba(20,19,17,.25);

    cursor: pointer;

    font-size: 18px;

    transition:
        background .3s ease,
        color .3s ease;
}


.ra-new-arrows button:hover {
    color: #201e1a;

    background: #dfc999;
}


/* =====================================================
   CONTENT ANIMATION
===================================================== */

.ra-new-slide.active .ra-new-main-content {
    animation:
        raNewContent .9s ease both;
}


@keyframes raNewContent {

    from {
        opacity: 0;

        transform:
            translateY(-50%)
            translateX(-35px);
    }

    to {
        opacity: 1;

        transform:
            translateY(-50%)
            translateX(0);
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

    .ra-new-side-panel {
        width: 230px;

        padding-left: 25px;
        padding-right: 25px;
    }


    .ra-new-booking-bar {
        left: 4%;

        right: 230px;

        padding: 0 25px;
    }


    .ra-new-booking-item:nth-child(2) {
        display: none;
    }


    .ra-new-main-content {
        left: 7%;

        width: 58%;
    }


    .ra-new-counter {
        right: 255px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-new-hero {
        height: 760px;

        min-height: 680px;
    }


    /* Image */

    .ra-new-dark-layer {
        background:
            linear-gradient(
                180deg,
                rgba(12,11,10,.30) 0%,
                rgba(12,11,10,.40) 35%,
                rgba(12,11,10,.94) 100%
            );
    }


    /* Hide desktop panel */

    .ra-new-side-panel {
        top: 20px;

        left: 20px;
        right: 20px;

        width: auto;

        height: auto;

        padding: 0;

        display: flex;

        flex-direction: row;

        align-items: center;

        justify-content: space-between;

        background: transparent;

        border: 0;

        backdrop-filter: none;
    }


    .ra-new-side-logo img {
        width: 100px;
    }


    .ra-new-side-divider,
    .ra-new-side-info,
    .ra-new-side-bottom {
        display: none;
    }


    /* Main */

    .ra-new-main-content {
        left: 24px;
        right: 24px;

        top: 50%;

        width: auto;

        transform: translateY(-50%);
    }


    .ra-new-small-title {
        margin-bottom: 20px;

        font-size: 8px;

        letter-spacing: 2px;
    }


    .ra-new-small-title span {
        font-size: 12px;
    }


    .ra-new-small-title i {
        width: 25px;
    }


    .ra-new-main-content h1,
    .ra-new-main-content h2 {
        font-size: 46px;

        line-height: 1;

        letter-spacing: -1.5px;
    }


    .ra-new-main-content p {
        margin-top: 22px;

        font-size: 14px;

        line-height: 1.75;
    }


    .ra-new-buttons {
        margin-top: 27px;

        gap: 18px;

        flex-direction: column;

        align-items: flex-start;
    }


    .ra-new-primary {
        min-height: 52px;

        min-width: 190px;
    }


    .ra-new-secondary {
        font-size: 10px;
    }


    /* Watermark */

    .ra-new-watermark {
        top: 35%;

        right: -5%;

        font-size: 95px;

        letter-spacing: -5px;

        opacity: .65;
    }


    /* Counter */

    .ra-new-counter {
        right: 24px;

        top: 30px;

        bottom: auto;
    }


    .ra-new-counter strong {
        font-size: 24px;
    }


    /* Hide desktop booking */

    .ra-new-booking-bar {
        left: 18px;
        right: 18px;

        bottom: 18px;

        height: auto;

        min-height: 72px;

        padding: 14px 15px;

        gap: 10px;

        background: #f1eadc;
    }


    .ra-new-booking-item {
        display: none;
    }


    .ra-new-reserve {
        width: 100%;

        min-height: 48px;

        justify-content: space-between;

        padding: 0 18px;
    }


    /* Arrows */

    .ra-new-arrows {
        left: 24px;

        bottom: 105px;
    }


    .ra-new-arrows button {
        width: 40px;
        height: 40px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .ra-new-hero {
        height: 720px;
    }


    .ra-new-main-content {
        top: 49%;
    }


    .ra-new-main-content h1,
    .ra-new-main-content h2 {
        font-size: 39px;
    }


    .ra-new-main-content p {
        font-size: 13px;

        line-height: 1.7;
    }


    .ra-new-watermark {
        font-size: 80px;
    }

}
/* =====================================================
   HOTEL ROYAL ARCH
   LARGE PREMIUM HERO TYPOGRAPHY
===================================================== */

/* Main Hero Heading */
.ra-new-main-content h1,
.ra-new-main-content h2 {
    font-size: 88px !important;
    line-height: 0.98 !important;
    letter-spacing: -3px !important;
    font-weight: 400 !important;
}


/* Gold / Italic Heading */
.ra-new-main-content h1 strong,
.ra-new-main-content h2 strong {
    font-size: 88px !important;
    line-height: 1 !important;
}


/* Description */
.ra-new-main-content p {
    max-width: 570px !important;

    font-size: 18px !important;

    line-height: 1.8 !important;

    margin-top: 32px !important;
}


/* Small Heading / Category */
.ra-new-small-title {
    font-size: 12px !important;

    letter-spacing: 3.5px !important;

    margin-bottom: 30px !important;
}


.ra-new-small-title span {
    font-size: 16px !important;
}


/* Main Button */
.ra-new-primary {
    min-height: 60px !important;

    padding: 0 25px 0 28px !important;

    font-size: 13px !important;

    letter-spacing: 1.2px !important;
}


.ra-new-primary span {
    font-size: 20px !important;
}


/* Secondary Button */
.ra-new-secondary {
    font-size: 13px !important;

    letter-spacing: 1.3px !important;
}


/* Side Panel Text */
.ra-new-side-info h3 {
    font-size: 42px !important;
}


.ra-new-side-info > span {
    font-size: 9px !important;

    letter-spacing: 3px !important;
}


/* Bottom Booking Text */
.ra-new-booking-item small {
    font-size: 8px !important;

    letter-spacing: 2px !important;
}


.ra-new-booking-item strong {
    font-size: 17px !important;
}


/* Enquiry Button */
.ra-new-reserve {
    font-size: 11px !important;
}


/* Counter */
.ra-new-counter strong {
    font-size: 34px !important;
}


.ra-new-counter span {
    font-size: 12px !important;
}
@media (max-width: 767px) {

    .ra-new-main-content h1,
    .ra-new-main-content h2 {
        font-size: 52px !important;
        line-height: 1.02 !important;
        letter-spacing: -1.5px !important;
    }


    .ra-new-main-content h1 strong,
    .ra-new-main-content h2 strong {
        font-size: 52px !important;
    }


    .ra-new-main-content p {
        font-size: 16px !important;

        line-height: 1.75 !important;

        max-width: 100% !important;
    }


    .ra-new-small-title {
        font-size: 10px !important;

        letter-spacing: 2.5px !important;
    }


    .ra-new-small-title span {
        font-size: 14px !important;
    }


    .ra-new-primary {
        min-height: 56px !important;

        font-size: 12px !important;
    }


    .ra-new-secondary {
        font-size: 12px !important;
    }

}


@media (max-width: 420px) {

    .ra-new-main-content h1,
    .ra-new-main-content h2 {
        font-size: 44px !important;
    }


    .ra-new-main-content h1 strong,
    .ra-new-main-content h2 strong {
        font-size: 44px !important;
    }


    .ra-new-main-content p {
        font-size: 15px !important;
    }

}
@media (max-width: 767px) {

    .ra-new-side-logo {
        display: none !important;
    }

}
/* =====================================================
   FIX: MOBILE HERO TOP BLINK / FLASH
===================================================== */

@media (max-width: 767px) {

    .ra-new-hero {
        position: relative;
        overflow: hidden;
        isolation: isolate;
    }

    .ra-new-slider {
        position: absolute;
        inset: 0;
        overflow: hidden;
    }

    .ra-new-slide {
        position: absolute;
        inset: 0;

        opacity: 0;
        visibility: hidden;

        /* No transition on the slide itself */
        transition: none !important;

        pointer-events: none;

        z-index: 0;
    }

    .ra-new-slide.active {
        opacity: 1;
        visibility: visible;

        z-index: 2;

        pointer-events: auto;
    }

    .ra-new-photo {
        position: absolute;
        inset: 0;

        width: 100%;
        height: 100%;

        overflow: hidden;
    }

    .ra-new-photo img {
        display: block;

        width: 100%;
        height: 100%;

        object-fit: cover;

        transform: scale(1) !important;

        transition: none !important;
    }

    .ra-new-dark-layer {
        position: absolute;
        inset: 0;

        z-index: 1;
    }

}
/* =====================================================
   HOTEL ROYAL ARCH
   PREMIUM INTRO SECTION
===================================================== */

.ra-home-intro {
    position: relative;

    padding: 120px 7% 100px;

    background: #f3eee4;

    color: #172f2a;

    overflow: hidden;
}


/* Decorative circle */

.ra-home-intro::before {
    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    right: -210px;
    top: -210px;

    border: 1px solid rgba(125, 91, 43, .15);

    border-radius: 50%;
}


/* =====================================================
   TOP INTRO
===================================================== */

.ra-intro-top {
    max-width: 900px;

    margin: 0 auto;

    text-align: center;
}


.ra-intro-label {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 14px;

    margin-bottom: 27px;

    color: #927143;

    font-family: Arial, sans-serif;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 3.5px;
}


.ra-intro-label span {
    font-family: Georgia, serif;

    font-size: 15px;

    font-style: italic;

    color: #8c6d3e;
}


.ra-intro-label i {
    width: 45px;

    height: 1px;

    background: #b79a68;
}


/* =====================================================
   MAIN HEADING
===================================================== */

.ra-intro-top h2 {
    margin: 0;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(52px, 5.5vw, 82px);

    font-weight: 400;

    line-height: 1.02;

    letter-spacing: -3px;
}


.ra-intro-top h2 em {
    display: block;

    color: #9b7948;

    font-weight: 400;

    font-style: italic;

    margin-top: 7px;
}


/* =====================================================
   INTRO PARAGRAPH
===================================================== */

.ra-intro-top > p {
    max-width: 720px;

    margin: 30px auto 0;

    color: #53615d;

    font-family: Arial, sans-serif;

    font-size: 18px;

    line-height: 1.85;

    font-weight: 400;
}


/* =====================================================
   FEATURES
===================================================== */

.ra-intro-features {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    max-width: 1180px;

    margin: 90px auto 0;

    border-top:
        1px solid rgba(18,56,49,.18);

    border-bottom:
        1px solid rgba(18,56,49,.18);
}


.ra-intro-feature {
    position: relative;

    min-height: 410px;

    padding: 42px 45px;

    border-right:
        1px solid rgba(18,56,49,.15);
}


.ra-intro-feature:last-child {
    border-right: 0;
}


/* Number */

.ra-feature-number {
    color: #a98a58;

    font-family: Georgia, serif;

    font-size: 15px;

    font-style: italic;
}


/* Icon */

.ra-feature-icon {
    width: 68px;
    height: 68px;

    margin-top: 35px;

    display: flex;

    align-items: center;

    justify-content: center;

    border:
        1px solid rgba(18,56,49,.25);

    border-radius: 50%;

    color: #927143;
}


.ra-feature-icon i {
    font-size: 27px;
}


/* Heading */

.ra-intro-feature h3 {
    margin: 27px 0 0;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 31px;

    font-weight: 400;

    line-height: 1.05;

    letter-spacing: -.7px;
}


/* Paragraph */

.ra-intro-feature p {
    max-width: 285px;

    margin: 20px 0 0;

    color: #615f5c;

    font-family: Arial, sans-serif;

    font-size: 15px;

    line-height: 1.75;
}


/* Link */

.ra-intro-feature a {
    position: absolute;

    left: 45px;

    bottom: 40px;

    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #615f5c;

    text-decoration: none;

    font-family: Arial, sans-serif;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 1px;
}


.ra-intro-feature a span {
    color: #a07d4b;

    font-size: 18px;

    transition: transform .3s ease;
}


.ra-intro-feature a:hover span {
    transform: translate(4px,-3px);
}


/* =====================================================
   BOTTOM STATEMENT
===================================================== */

.ra-intro-bottom {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 18px;

    margin-top: 55px;

    color: #927143;

    font-family: Arial, sans-serif;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 4px;
}


.ra-intro-line {
    width: 55px;

    height: 1px;

    background: #b89b6a;
}


/* =====================================================
   HOVER EFFECT
===================================================== */
.ra-intro-feature {
    transition:
        background .35s ease,
        transform .35s ease;
}
.ra-intro-feature:hover {
    background: #ebe3d4;
    transform: translateY(-5px);
}
.ra-intro-feature:hover .ra-feature-icon {
    background: #615f5c;
    color: #dfc28d;
    border-color: #615f5c;
}
/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {
    .ra-home-intro {
        padding: 90px 5% 80px;
    }
    .ra-intro-top h2 {
        font-size: 58px;
    }
    .ra-intro-top > p {
        font-size: 17px;
    }
    .ra-intro-feature {
        padding: 35px 25px;
        min-height: 390px;
    }
    .ra-intro-feature h3 {
        font-size: 27px;
    }
    .ra-intro-feature a {
        left: 25px;
    }
}
/* =====================================================
   MOBILE
===================================================== */
@media (max-width: 767px) {
    .ra-home-intro {
        padding: 80px 22px 70px;
    }
    .ra-intro-label {
        font-size: 9px;
        letter-spacing: 2.5px;
        gap: 10px;
    }
    .ra-intro-label i {
        width: 28px;
    }
    .ra-intro-top h2 {
        font-size: 46px;
        line-height: 1.04;
        letter-spacing: -1.5px;
    }
    .ra-intro-top > p {
        margin-top: 24px;
        font-size: 16px;
        line-height: 1.75;
    }
    .ra-intro-features {
        display: block;
        margin-top: 60px;
    }
    .ra-intro-feature {
        min-height: 370px;
        padding: 32px 28px;
        border-right: 0;
        border-bottom:
            1px solid rgba(18,56,49,.15);
    }
    .ra-intro-feature:last-child {
        border-bottom: 0;
    }
    .ra-feature-icon {
        width: 62px;
        height: 62px;
        margin-top: 28px;
    }
    .ra-feature-icon i {
        font-size: 25px;
    }
    .ra-intro-feature h3 {
        font-size: 30px;
        line-height: 1.08;
    }
    .ra-intro-feature p {
        max-width: 100%;
        font-size: 15px;
        line-height: 1.75;
    }
    .ra-intro-feature a {
        left: 28px;
        bottom: 32px;
        font-size: 12px;
    }
    .ra-intro-bottom {
        margin-top: 45px;
        font-size: 8px;
        letter-spacing: 2.5px;
    }
    .ra-intro-line {
        width: 25px;
    }
}
@media (max-width: 420px) {
    .ra-intro-top h2 {
        font-size: 40px;
    }
    .ra-intro-top > p {
        font-size: 15px;
    }
}
/* =====================================================
   ROYAL ARCH - INTRO SECTION FINAL FIX
===================================================== */
.ra-home-intro {
    padding: 100px 7% 80px !important;
}
/* INTRO HEADING */
.ra-intro-top {
    max-width: 920px !important;
}
.ra-intro-top h2 {
    font-size: 68px !important;
    line-height: 1.05 !important;
    letter-spacing: -2px !important;
}
.ra-intro-top > p {
    max-width: 760px !important;
    margin-top: 25px !important;
    font-size: 18px !important;
    line-height: 1.8 !important;
}


/* =====================================================
   FEATURE CARDS
===================================================== */

.ra-intro-features {
    max-width: 1200px !important;

    margin-top: 70px !important;

    display: grid !important;

    grid-template-columns: repeat(3, 1fr) !important;

    align-items: stretch !important;
}


.ra-intro-feature {
    min-height: 390px !important;

    height: auto !important;

    padding: 35px 42px 38px !important;

    display: flex !important;

    flex-direction: column !important;

    box-sizing: border-box !important;
}


/* Number */

.ra-feature-number {
    font-size: 16px !important;

    margin-bottom: 5px !important;
}


/* =====================================================
   ICON
===================================================== */

.ra-feature-icon {
    width: 64px !important;

    height: 64px !important;

    min-width: 64px !important;

    margin-top: 22px !important;

    margin-bottom: 25px !important;

    flex-shrink: 0 !important;
}


.ra-feature-icon i {
    font-size: 26px !important;

    line-height: 1 !important;
}


/* =====================================================
   CARD HEADING
===================================================== */

.ra-intro-feature h3 {
    margin: 0 !important;

    font-size: 30px !important;

    line-height: 1.08 !important;

    letter-spacing: -.5px !important;
}


/* =====================================================
   CARD PARAGRAPH
===================================================== */
.ra-intro-feature p {
    max-width: 100% !important;
    margin: 18px 0 0 !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
}
/* =====================================================
   CARD LINK
   IMPORTANT: NO ABSOLUTE POSITION
===================================================== */
.ra-intro-feature a {
    position: static !important;
    margin-top: 25px !important;
    display: inline-flex !important;
    align-items: center !important;
    align-self: flex-start !important;
    gap: 12px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
}
.ra-intro-feature a span {
    font-size: 18px !important;
}
/* =====================================================
   BOTTOM TAGLINE
===================================================== */
.ra-intro-bottom {
    margin-top: 48px !important;
    font-size: 10px !important;
    letter-spacing: 4px !important;
}
/* =====================================================
   MOBILE
===================================================== */
@media (max-width: 767px) {
    .ra-home-intro {
        padding: 75px 22px 65px !important;
    }
    .ra-intro-top h2 {
        font-size: 45px !important;
        line-height: 1.05 !important;
        letter-spacing: -1.3px !important;
    }
    .ra-intro-top > p {
        margin-top: 22px !important;
        font-size: 16px !important;
        line-height: 1.75 !important;
    }
    .ra-intro-features {
        display: block !important;
        margin-top: 55px !important;
    }
    .ra-intro-feature {
        min-height: 0 !important;
        padding: 32px 27px 35px !important;
    }
    .ra-feature-icon {
        width: 62px !important;
        height: 62px !important;
        min-width: 62px !important;
        margin-top: 20px !important;
        margin-bottom: 22px !important;
    }
    .ra-feature-icon i {
        font-size: 25px !important;
    }
    .ra-intro-feature h3 {
        font-size: 30px !important;
    }
    .ra-intro-feature p {
        font-size: 15px !important;
        line-height: 1.75 !important;
        margin-top: 16px !important;
    }
    .ra-intro-feature a {
        margin-top: 22px !important;
        font-size: 12px !important;
    }
    .ra-intro-bottom {
        margin-top: 40px !important;
        font-size: 8px !important;
        letter-spacing: 2.5px !important;
    }
}
/* =========================================
   ALIGN ALL FEATURE CARD BUTTONS
========================================= */
.ra-intro-feature {
    display: flex !important;
    flex-direction: column !important;
}
.ra-intro-feature p {
    margin-bottom: 0 !important;
}
/* Push all CTA links to same position */
.ra-intro-feature a {
    margin-top: auto !important;
    padding-top: 28px !important;
    position: static !important;
    align-self: flex-start !important;
    white-space: nowrap !important;
}
/* =========================================
   STAY · DINE · CELEBRATE
========================================= */
.ra-intro-bottom {
    font-size: 12px !important;
    letter-spacing: 4px !important;
    font-weight: 700 !important;
}
@media (max-width: 767px) {
    .ra-intro-bottom {
        font-size: 11px !important;
        letter-spacing: 2.8px !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
    }
    .ra-intro-bottom .ra-intro-line {
        width: 30px !important;
        flex-shrink: 0 !important;
    }
}
@media (max-width: 420px) {
    .ra-intro-bottom {
        font-size: 10px !important;
        letter-spacing: 2px !important;
    }
    .ra-intro-bottom .ra-intro-line {
        width: 22px !important;
    }
} 
/* =========================================================
   HOTEL ROYAL ARCH
   PREMIUM ROOMS SHOWCASE
========================================================= */

.royal-stay-section {
    position: relative;

    padding: 125px 7% 110px;

    /* background: #103b33; */
    background: #615f5c;

    color: #f4efe5;

    overflow: hidden;

    isolation: isolate;
}


/* =========================================
   DECORATIVE ORBIT
========================================= */

.royal-stay-orbit {
    position: absolute;

    width: 620px;
    height: 620px;

    right: -310px;
    top: -180px;

    border: 1px solid rgba(216, 187, 132, .14);

    border-radius: 50%;

    pointer-events: none;
}


.royal-stay-orbit::after {
    content: "";

    position: absolute;

    inset: 65px;

    border: 1px solid rgba(216, 187, 132, .08);

    border-radius: 50%;
}


/* =========================================
   SOFT LIGHT
========================================= */

.royal-stay-glow {
    position: absolute;

    width: 420px;
    height: 420px;

    left: -230px;
    bottom: -230px;

    border-radius: 50%;

    background: rgba(194, 158, 96, .08);

    filter: blur(10px);

    pointer-events: none;
}


/* =========================================
   CONTAINER
========================================= */

.royal-stay-container {
    position: relative;

    max-width: 1240px;

    margin: 0 auto;

    z-index: 2;
}


/* =========================================
   SECTION INTRO
========================================= */

.royal-stay-heading {
    max-width: 780px;

    margin-bottom: 85px;
}


.royal-stay-kicker {
    display: flex;

    align-items: center;

    gap: 15px;

    margin-bottom: 28px;

    color: #d4b77f;

    font-family: Arial, sans-serif;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 3.5px;
}


.royal-stay-kicker span {
    font-family: Georgia, serif;

    font-size: 16px;

    font-style: italic;

    letter-spacing: 0;
}


.royal-stay-kicker i {
    width: 48px;

    height: 1px;

    background: #b99861;
}


/* =========================================
   BIG HEADING
========================================= */

.royal-stay-heading h2 {
    margin: 0;

    color: #f6f0e5;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(58px, 6vw, 88px);

    font-weight: 400;

    line-height: 1.01;

    letter-spacing: -3px;
}


.royal-stay-heading h2 em {
    display: block;

    margin-top: 5px;

    color: #d0ad70;

    font-style: italic;

    font-weight: 400;
}


/* =========================================
   DESCRIPTION
========================================= */

.royal-stay-heading p {
    max-width: 680px;

    margin: 30px 0 0;

    color: rgba(244, 239, 229, .76);

    font-family: Arial, sans-serif;

    font-size: 18px;

    line-height: 1.85;
}


/* =========================================
   MAIN LINK
========================================= */

.royal-stay-main-link {
    display: inline-flex;

    align-items: center;

    gap: 18px;

    margin-top: 32px;

    padding-bottom: 9px;

    color: #e0c38d;

    border-bottom: 1px solid rgba(224, 195, 141, .55);

    font-family: Arial, sans-serif;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 1.3px;

    text-decoration: none;
}


.royal-stay-main-link span {
    font-size: 21px;

    transition: transform .3s ease;
}


.royal-stay-main-link:hover span {
    transform: translate(5px, -4px);
}


/* =========================================================
   ROOM GRID
========================================================= */

.royal-stay-grid {
    display: grid;

    grid-template-columns:
        1.15fr
        .95fr
        .85fr;

    align-items: start;

    gap: 24px;
}


/* =========================================
   CARD
========================================= */

.royal-room-card {
    position: relative;

    background: #f3eee4;

    color: #153c35;

    overflow: hidden;

    transition:
        transform .45s ease,
        box-shadow .45s ease;
}


.royal-room-card:hover {
    transform: translateY(-10px);

    box-shadow:
        0 25px 60px rgba(0, 0, 0, .25);
}


/* Different Heights */

.royal-room-card-large {
    margin-top: 0;
}


.royal-room-card-middle {
    margin-top: 65px;
}


.royal-room-card-small {
    margin-top: 130px;
}


/* =========================================
   IMAGE
========================================= */

.royal-room-image {
    position: relative;

    height: 380px;

    overflow: hidden;
}


.royal-room-card-middle .royal-room-image {
    height: 320px;
}


.royal-room-card-small .royal-room-image {
    height: 285px;
}


.royal-room-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform .8s cubic-bezier(.2,.7,.2,1);
}


.royal-room-card:hover .royal-room-image img {
    transform: scale(1.07);
}


/* =========================================
   IMAGE OVERLAY
========================================= */

.royal-room-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to bottom,
            rgba(0,0,0,.08),
            rgba(0,0,0,.55)
        );

    pointer-events: none;
}


/* =========================================
   NUMBER
========================================= */

.royal-room-number {
    position: absolute;

    top: 22px;
    left: 25px;

    color: #f4e7cc;

    font-family: Georgia, serif;

    font-size: 18px;

    font-style: italic;
}


/* =========================================
   IMAGE LABEL
========================================= */

.royal-room-label {
    position: absolute;

    left: 25px;
    bottom: 22px;

    color: #ead6ad;

    font-family: Arial, sans-serif;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 3px;
}


/* =========================================
   CONTENT
========================================= */

.royal-room-content {
    padding: 30px 32px 35px;
}


.royal-room-content h3 {
    margin: 0;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 34px;

    font-weight: 400;

    line-height: 1.05;

    letter-spacing: -1px;
}


.royal-room-content p {
    margin: 17px 0 0;

    color: #615f5c;

    font-family: Arial, sans-serif;

    font-size: 15px;

    line-height: 1.75;
}


.royal-room-content a {
    display: inline-flex;

    align-items: center;

    gap: 13px;

    margin-top: 25px;

    color: #615f5c;

    font-family: Arial, sans-serif;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 1px;

    text-decoration: none;
}


.royal-room-content a span {
    color: #a47f49;

    font-size: 20px;

    transition: transform .3s ease;
}


.royal-room-content a:hover span {
    transform: translateX(5px);
}


/* =========================================
   FOOTER TAG
========================================= */

.royal-stay-footer {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 18px;

    margin-top: 85px;

    color: #d0ad70;

    font-family: Arial, sans-serif;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 4px;
}


.royal-stay-footer-line {
    width: 55px;

    height: 1px;

    background: #a88652;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .royal-stay-section {
        padding: 95px 5% 85px;
    }


    .royal-stay-heading h2 {
        font-size: 62px;
    }


    .royal-stay-heading p {
        font-size: 17px;
    }


    .royal-stay-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }


    .royal-room-card-large {
        grid-column: span 2;
    }


    .royal-room-card-middle,
    .royal-room-card-small {
        margin-top: 0;
    }


    .royal-room-image,
    .royal-room-card-middle .royal-room-image,
    .royal-room-card-small .royal-room-image {
        height: 350px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .royal-stay-section {
        padding: 80px 20px 70px;
    }


    .royal-stay-heading {
        margin-bottom: 55px;
    }


    .royal-stay-kicker {
        font-size: 9px;

        letter-spacing: 2.5px;

        gap: 10px;
    }


    .royal-stay-kicker i {
        width: 30px;
    }


    .royal-stay-heading h2 {
        font-size: 46px;

        line-height: 1.04;

        letter-spacing: -1.5px;
    }


    .royal-stay-heading p {
        margin-top: 23px;

        font-size: 16px;

        line-height: 1.75;
    }


    .royal-stay-main-link {
        font-size: 12px;

        margin-top: 28px;
    }


    .royal-stay-grid {
        display: flex;

        flex-direction: column;

        gap: 30px;
    }


    .royal-room-card,
    .royal-room-card-middle,
    .royal-room-card-small,
    .royal-room-card-large {
        width: 100%;

        margin: 0;
    }


    .royal-room-image,
    .royal-room-card-middle .royal-room-image,
    .royal-room-card-small .royal-room-image {
        height: 310px;
    }


    .royal-room-content {
        padding: 28px 25px 32px;
    }


    .royal-room-content h3 {
        font-size: 32px;
    }


    .royal-room-content p {
        font-size: 15px;

        line-height: 1.75;
    }


    .royal-room-content a {
        font-size: 12px;
    }


    .royal-stay-footer {
        margin-top: 55px;

        font-size: 9px;

        letter-spacing: 2.5px;

        white-space: nowrap;
    }


    .royal-stay-footer-line {
        width: 25px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

    .royal-stay-heading h2 {
        font-size: 41px;
    }


    .royal-stay-heading p {
        font-size: 15px;
    }


    .royal-room-image,
    .royal-room-card-middle .royal-room-image,
    .royal-room-card-small .royal-room-image {
        height: 280px;
    }


    .royal-room-content h3 {
        font-size: 30px;
    }


    .royal-room-content p {
        font-size: 15px;
    }

}
/* =========================================================
   HOTEL ROYAL ARCH
   BANQUET & CELEBRATIONS
========================================================= */

.royal-celebration-section {
    position: relative;

    min-height: 850px;

    background: #f2ede3;

    overflow: hidden;

    color: #615f5c;
}


/* =========================================================
   BACKGROUND IMAGE
========================================================= */

.royal-celebration-image {
    position: absolute;

    top: 0;
    right: 0;

    width: 67%;
    height: 100%;

    overflow: hidden;
}


.royal-celebration-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 1s ease;
}


.royal-celebration-section:hover
.royal-celebration-image img {
    transform: scale(1.035);
}


/* Image Overlay */

.royal-celebration-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(18,59,52,.65),
            rgba(18,59,52,.05) 60%
        );
}


/* =========================================================
   CONTAINER
========================================================= */

.royal-celebration-container {
    position: relative;

    z-index: 3;

    max-width: 1240px;

    min-height: 850px;

    margin: 0 auto;

    padding: 105px 40px;
}


/* =========================================================
   LABEL
========================================================= */

.royal-celebration-label {
    display: flex;

    align-items: center;

    gap: 15px;

    color: #9a7745;

    font-family: Arial, sans-serif;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 3.5px;
}


.royal-celebration-label span {
    font-family: Georgia, serif;

    font-size: 17px;

    font-style: italic;

    letter-spacing: 0;
}


.royal-celebration-label i {
    width: 50px;

    height: 1px;

    background: #b49360;
}


/* =========================================================
   CONTENT
========================================================= */

.royal-celebration-content {
    width: 580px;

    margin-top: 75px;
}


.royal-celebration-content h2 {
    margin: 0;

    color: #f8f2e7;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(62px, 6vw, 90px);

    font-weight: 400;

    line-height: .99;

    letter-spacing: -3px;
}


.royal-celebration-content h2 em {
    display: block;

    color: #d5b47c;

    font-style: italic;

    font-weight: 400;
}


.royal-celebration-content p {
    max-width: 530px;

    margin: 32px 0 0;

    color: rgba(255,255,255,.82);

    font-family: Arial, sans-serif;

    font-size: 18px;

    line-height: 1.85;
}


/* =========================================================
   BUTTON
========================================================= */

.royal-celebration-btn {
    display: inline-flex;

    align-items: center;

    gap: 20px;

    margin-top: 34px;

    padding: 18px 25px;

    background: #3F3D3A;

    color: whitesmoke;

    font-family: Arial, sans-serif;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 1px;

    text-decoration: none;

    transition:
        background .3s ease,
        transform .3s ease;
}


.royal-celebration-btn span {
    font-size: 20px;
}


.royal-celebration-btn:hover {
    background: #f0d8a9;

    transform: translateY(-3px);
}


/* =========================================================
   FLOATING PANEL
========================================================= */

.royal-celebration-panel {
    position: absolute;

    right: 40px;

    bottom: 70px;

    width: 390px;

    padding: 28px 30px;

    background: #615f5c;

    color: #f5eee2;

    border:
        1px solid rgba(217,189,135,.45);

    box-shadow:
        0 25px 70px rgba(0,0,0,.28);

    backdrop-filter: blur(8px);
}


/* Panel top */

.royal-panel-top {
    display: flex;

    align-items: center;

    justify-content: space-between;

    padding-bottom: 20px;

    border-bottom:
        1px solid rgba(255,255,255,.13);
}


.royal-panel-top span {
    color: #d6b77c;

    font-family: Arial, sans-serif;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 3px;
}


.royal-panel-top strong {
    color: #d6b77c;

    font-family: Georgia, serif;

    font-size: 26px;

    font-weight: 400;
}


/* =========================================================
   PANEL ITEMS
========================================================= */

.royal-panel-item {
    display: flex;

    align-items: flex-start;

    gap: 18px;

    padding: 20px 0;

    border-bottom:
        1px solid rgba(255,255,255,.10);
}


.royal-panel-icon {
    width: 45px;
    height: 45px;

    min-width: 45px;

    display: flex;

    align-items: center;

    justify-content: center;

    border:
        1px solid rgba(216,187,132,.4);

    color: #d7b77a;
}


.royal-panel-icon i {
    font-size: 19px;
}


.royal-panel-item h3 {
    margin: 0;

    color: #f5eee2;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 22px;

    font-weight: 400;
}


.royal-panel-item p {
    margin: 6px 0 0;

    color: rgba(255,255,255,.62);

    font-family: Arial, sans-serif;

    font-size: 13px;

    line-height: 1.55;
}


/* =========================================================
   PANEL LINK
========================================================= */

.royal-panel-link {
    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-top: 23px;

    color: #dfc28d;

    font-family: Arial, sans-serif;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 1.2px;

    text-decoration: none;
}


.royal-panel-link span {
    font-size: 20px;

    transition: transform .3s ease;
}


.royal-panel-link:hover span {
    transform: translateX(6px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .royal-celebration-section {
        min-height: 900px;
    }


    .royal-celebration-image {
        width: 100%;
    }


    .royal-celebration-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(10,42,36,.88),
                rgba(10,42,36,.40)
            );
    }


    .royal-celebration-container {
        min-height: 900px;

        padding: 90px 5%;
    }


    .royal-celebration-content {
        width: 55%;
    }


    .royal-celebration-content h2 {
        font-size: 65px;
    }


    .royal-celebration-panel {
        right: 5%;

        width: 360px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .royal-celebration-section {
        min-height: auto;
    }


    .royal-celebration-image {
        position: relative;

        width: 100%;

        height: 470px;
    }


    .royal-celebration-overlay {
        background:
            linear-gradient(
                to bottom,
                rgba(10,42,36,.18),
                rgba(10,42,36,.78)
            );
    }


    .royal-celebration-container {
        min-height: auto;

        padding: 65px 22px 70px;

        background: #615f5c;
    }


    .royal-celebration-label {
        font-size: 9px;

        letter-spacing: 2.5px;
    }


    .royal-celebration-label i {
        width: 30px;
    }


    .royal-celebration-content {
        width: 100%;

        margin-top: 45px;
    }


    .royal-celebration-content h2 {
        font-size: 47px;

        line-height: 1.02;

        letter-spacing: -1.5px;
    }


    .royal-celebration-content p {
        margin-top: 24px;

        font-size: 16px;

        line-height: 1.75;
    }


    .royal-celebration-btn {
        margin-top: 28px;

        padding: 17px 22px;

        font-size: 12px;
    }


    .royal-celebration-panel {
        position: relative;

        right: auto;
        bottom: auto;

        width: 100%;

        margin-top: 55px;

        padding: 25px 22px;

        box-sizing: border-box;
    }


    .royal-panel-item h3 {
        font-size: 21px;
    }


    .royal-panel-item p {
        font-size: 14px;
    }


    .royal-panel-icon {
        width: 43px;
        height: 43px;

        min-width: 43px;
    }


    .royal-panel-top strong {
        font-size: 24px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

    .royal-celebration-image {
        height: 400px;
    }


    .royal-celebration-content h2 {
        font-size: 42px;
    }


    .royal-celebration-content p {
        font-size: 15px;
    }


    .royal-panel-item {
        gap: 14px;
    }

}
/* =========================================================
   ROYAL ARCH - CELEBRATION TEXT VISIBILITY FIX
========================================================= */

.royal-celebration-content h2 {
    color: #615f5c !important;
}

.royal-celebration-content h2 em {
    color: #a77d42 !important;
}

.royal-celebration-content p {
    color: #4f625d !important;
}


/* Button */
.royal-celebration-btn {
    background: #615f5c !important;
    color: whitesmoke !important;
}


/* =========================================================
   DESKTOP - KEEP LEFT SIDE CLEAN & VISIBLE
========================================================= */

@media (min-width: 992px) {

    .royal-celebration-content {
        position: relative;
        z-index: 10;
    }

    .royal-celebration-content h2 {
        font-size: clamp(64px, 5.8vw, 88px);
        line-height: 1;
    }

    .royal-celebration-content p {
        font-size: 18px;
        line-height: 1.8;
        max-width: 500px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .royal-celebration-content h2 {
        color: #f4eee3 !important;
    }

    .royal-celebration-content h2 em {
        color: #d7b477 !important;
    }

    .royal-celebration-content p {
        color: rgba(255,255,255,.82) !important;
    }

}
/* =========================================================
   ROYAL ARCH - CELEBRATION SECTION
   PERFECT LEFT CONTENT WIDTH
========================================================= */

@media (min-width: 992px) {

    .royal-celebration-section {
        position: relative;
        overflow: hidden;
    }

    /* LEFT CONTENT */
    .royal-celebration-content {
        position: relative;
        z-index: 10;

        width: 100%;
        max-width: 100%;
        box-sizing: border-box;

        padding-right: 45px;
        overflow: hidden;
    }

    /* LARGE PREMIUM HEADING */
    .royal-celebration-content h2 {
        display: block;

        width: 100%;
        max-width: 350px;

        margin: 55px 0 30px;

        font-size: 68px !important;
        line-height: 0.98 !important;
        letter-spacing: -2px;

        color: #615f5c !important;

        overflow-wrap: normal;
        word-break: normal;
    }

    .royal-celebration-content h2 em {
        display: inline-block;

        color: #a77d42 !important;
        font-style: italic;

        white-space: nowrap;
    }

    /* PARAGRAPH */
    .royal-celebration-content p {
        width: 100%;
        max-width: 350px;

        font-size: 17px !important;
        line-height: 1.75 !important;

        color: #405c56 !important;

        margin-bottom: 32px;
    }

    /* BUTTON */
    .royal-celebration-content .royal-celebration-btn {
        display: inline-flex;

        font-size: 15px !important;

        padding: 18px 30px;

        white-space: nowrap;
    }

}
/* =========================================================
   ROYAL ARCH - RESTAURANT / DINING EXPERIENCE
========================================================= */

.ra-dining-section {
    position: relative;
    background: #615f5c;
    padding: 125px 7% 85px;
    overflow: hidden;
}


/* Decorative Circle */

.ra-dining-section::before {
    content: "";
    position: absolute;

    width: 520px;
    height: 520px;

    border: 1px solid rgba(216, 184, 120, 0.14);
    border-radius: 50%;

    left: -280px;
    bottom: -300px;

    pointer-events: none;
}


/* =========================================================
   MAIN WRAPPER
========================================================= */

.ra-dining-wrap {
    max-width: 1280px;
    margin: 0 auto;

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 90px;

    align-items: center;
}


/* =========================================================
   VISUAL AREA
========================================================= */

.ra-dining-visual {
    position: relative;

    min-height: 650px;
}


/* Main Image */

.ra-dining-main-image {
    position: absolute;

    top: 0;
    left: 0;

    width: 78%;
    height: 610px;

    overflow: hidden;
}

.ra-dining-main-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;

    transition: transform 0.8s ease;
}

.ra-dining-visual:hover
.ra-dining-main-image img {
    transform: scale(1.04);
}


/* Small Image */

.ra-dining-small-image {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 43%;
    height: 280px;

    border: 10px solid #615f5c;

    overflow: hidden;

    z-index: 3;
}

.ra-dining-small-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;
}


/* Gold Frame */

.ra-dining-visual::after {
    content: "";

    position: absolute;

    left: 25px;
    top: 25px;

    width: 78%;
    height: 610px;

    border: 1px solid rgba(216, 184, 120, 0.55);

    pointer-events: none;
}


/* =========================================================
   DINING BADGE
========================================================= */

.ra-dining-badge {
    position: absolute;

    left: -35px;
    bottom: 70px;

    width: 145px;
    height: 145px;

    border-radius: 50%;

    background: #d8b878;

    color: #615f5c;

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    text-align: center;

    z-index: 5;

    box-shadow: 0 15px 35px rgba(0,0,0,.2);
}

.ra-dining-badge span {
    font-size: 10px;
    letter-spacing: 4px;
}

.ra-dining-badge strong {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 25px;

    font-weight: 400;

    margin: 3px 0;
}

.ra-dining-badge small {
    font-size: 9px;
    letter-spacing: 3px;
}


/* =========================================================
   CONTENT
========================================================= */

.ra-dining-content {
    position: relative;
    z-index: 5;
}


/* Kicker */

.ra-dining-kicker {
    display: flex;

    align-items: center;

    gap: 15px;

    margin-bottom: 28px;

    color: #d8b878;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 4px;
}

.ra-dining-kicker i {
    width: 55px;
    height: 1px;

    background: #b89458;
}


/* Heading */

.ra-dining-content h2 {
    margin: 0 0 30px;

    color: #f5eee2;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(54px, 5vw, 78px);

    font-weight: 400;

    line-height: 1.02;

    letter-spacing: -2px;
}

.ra-dining-content h2 em {
    display: block;

    color: #d8b878;

    font-style: italic;

    font-weight: 400;
}


/* Intro */

.ra-dining-intro {
    max-width: 590px;

    margin: 0 0 45px;

    color: rgba(245, 238, 226, 0.78);

    font-size: 18px;

    line-height: 1.8;
}


/* =========================================================
   RESTAURANT ITEMS
========================================================= */

.ra-dining-list {
    border-top: 1px solid rgba(216,184,120,.30);
}


.ra-dining-item {
    display: grid;

    grid-template-columns: 65px 1fr 45px;

    gap: 20px;

    align-items: center;

    padding: 25px 0;

    border-bottom: 1px solid rgba(216,184,120,.30);

    text-decoration: none;

    color: #fff;

    transition: all .35s ease;
}


.ra-dining-item:hover {
    padding-left: 12px;
}


/* Icon */

.ra-dining-item-icon {
    width: 52px;
    height: 52px;

    border: 1px solid rgba(216,184,120,.65);

    display: flex;

    align-items: center;
    justify-content: center;

    color: #d8b878;

    font-size: 20px;
}


/* Item Text */

.ra-dining-item-text span {
    display: block;

    margin-bottom: 6px;

    color: #d8b878;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;
}


.ra-dining-item-text h3 {
    margin: 0 0 6px;

    color: #f5eee2;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 31px;

    font-weight: 400;

    line-height: 1.15;
}


.ra-dining-item-text p {
    max-width: 470px;

    margin: 0;

    color: rgba(245,238,226,.68);

    font-size: 15px;

    line-height: 1.55;
}


/* Arrow */

.ra-dining-item-arrow {
    width: 40px;
    height: 40px;

    border: 1px solid rgba(216,184,120,.5);

    border-radius: 50%;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #d8b878;

    font-size: 13px;

    transition: all .3s ease;
}

.ra-dining-item:hover .ra-dining-item-arrow {
    background: #d8b878;

    border-color: #d8b878;

    color: #615f5c;
}


/* =========================================================
   CTA
========================================================= */

.ra-dining-button {
    display: inline-flex;

    align-items: center;

    gap: 22px;

    margin-top: 38px;

    padding: 17px 24px;

    background: #3F3D3A;

    color: whitesmoke;

    text-decoration: none;

    font-size: 15px;

    font-weight: 700;

    letter-spacing: 1px;

    transition: all .3s ease;
}

.ra-dining-button span {
    width: 32px;
    height: 32px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(18,59,52,.35);
}

.ra-dining-button:hover {
    background: #f5eee2;
}


/* =========================================================
   BOTTOM LINE
========================================================= */

.ra-dining-bottom {
    max-width: 1280px;

    margin: 85px auto 0;

    display: flex;

    align-items: center;

    gap: 25px;
}

.ra-dining-bottom span {
    height: 1px;

    flex: 1;

    background: rgba(216,184,120,.25);
}

.ra-dining-bottom p {
    margin: 0;

    color: #d8b878;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 4px;

    text-align: center;

    white-space: nowrap;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ra-dining-section {
        padding: 90px 5%;
    }

    .ra-dining-wrap {
        grid-template-columns: 1fr;

        gap: 75px;
    }

    .ra-dining-visual {
        min-height: 580px;
    }

    .ra-dining-main-image {
        height: 540px;
    }

    .ra-dining-visual::after {
        height: 540px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-dining-section {
        padding: 75px 20px 60px;
    }


    .ra-dining-wrap {
        gap: 60px;
    }


    /* Visual */

    .ra-dining-visual {
        min-height: 430px;
    }

    .ra-dining-main-image {
        width: 88%;
        height: 400px;
    }

    .ra-dining-visual::after {
        left: 15px;
        top: 15px;

        width: 88%;
        height: 400px;
    }

    .ra-dining-small-image {
        width: 45%;
        height: 170px;

        border-width: 7px;
    }

    .ra-dining-badge {
        left: -5px;
        bottom: 35px;

        width: 105px;
        height: 105px;
    }

    .ra-dining-badge strong {
        font-size: 19px;
    }


    /* Content */

    .ra-dining-kicker {
        font-size: 10px;

        letter-spacing: 2.5px;

        gap: 9px;
    }

    .ra-dining-kicker i {
        width: 35px;
    }


    .ra-dining-content h2 {
        font-size: 48px;

        letter-spacing: -1px;

        margin-bottom: 24px;
    }


    .ra-dining-intro {
        font-size: 16px;

        line-height: 1.7;

        margin-bottom: 35px;
    }


    /* Items */

    .ra-dining-item {
        grid-template-columns: 52px 1fr;

        gap: 14px;

        padding: 23px 0;
    }

    .ra-dining-item-icon {
        width: 48px;
        height: 48px;

        font-size: 19px;
    }

    .ra-dining-item-text span {
        font-size: 9px;

        letter-spacing: 2px;
    }

    .ra-dining-item-text h3 {
        font-size: 27px;
    }

    .ra-dining-item-text p {
        font-size: 15px;

        line-height: 1.55;
    }

    .ra-dining-item-arrow {
        display: none;
    }


    .ra-dining-button {
        width: 100%;

        justify-content: space-between;

        box-sizing: border-box;

        font-size: 14px;
    }


    .ra-dining-bottom {
        margin-top: 60px;
    }

    .ra-dining-bottom span {
        display: none;
    }

    .ra-dining-bottom p {
        width: 100%;

        white-space: normal;

        font-size: 9px;

        line-height: 1.8;

        letter-spacing: 2.5px;
    }

}
/* =========================================================
   HOTEL ROYAL ARCH
   WELLNESS EXPERIENCE
========================================================= */

.ra-wellness-section {
    position: relative;

    padding: 125px 6% 90px;

    background: #e9e1d2;

    color: #615f5c;

    overflow: hidden;

    isolation: isolate;
}


/* =========================================================
   DECORATIVE CIRCLES
========================================================= */

.ra-wellness-circle {
    position: absolute;

    border: 1px solid rgba(142, 105, 56, .15);

    border-radius: 50%;

    pointer-events: none;

    z-index: -1;
}


.ra-wellness-circle-one {
    width: 550px;
    height: 550px;

    left: -330px;
    top: -180px;
}


.ra-wellness-circle-two {
    width: 320px;
    height: 320px;

    right: -160px;
    bottom: -130px;
}


/* =========================================================
   MAIN CONTAINER
========================================================= */

.ra-wellness-container {
    max-width: 1320px;

    margin: 0 auto;

    display: grid;

    grid-template-columns:
        .72fr
        1.25fr
        .72fr;

    gap: 35px;

    align-items: stretch;
}


/* =========================================================
   IMAGE PANELS
========================================================= */

.ra-wellness-image {
    position: relative;

    height: 650px;

    overflow: hidden;

    background: #615f5c;
}


.ra-wellness-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform .8s cubic-bezier(.2,.7,.2,1);
}


.ra-wellness-image:hover img {
    transform: scale(1.05);
}


/* Image dark overlay */

.ra-wellness-image::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(8,31,27,.78),
            transparent 50%
        );

    pointer-events: none;
}


/* Image label */

.ra-wellness-image-label {
    position: absolute;

    left: 25px;
    bottom: 25px;

    z-index: 2;

    display: flex;

    align-items: center;

    gap: 13px;

    color: #f4ead7;

    font-family: Arial, sans-serif;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 3px;
}


.ra-wellness-image-label span {
    color: #d5b678;

    font-family: Georgia, serif;

    font-size: 16px;

    font-style: italic;

    letter-spacing: 0;
}


/* =========================================================
   CENTER CONTENT
========================================================= */

.ra-wellness-content {
    padding: 45px 30px 40px;

    display: flex;

    flex-direction: column;

    justify-content: center;

    text-align: center;
}


/* Kicker */

.ra-wellness-kicker {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 14px;

    margin-bottom: 28px;

    color: #967143;

    font-family: Arial, sans-serif;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 3.5px;
}


.ra-wellness-kicker span:first-child {
    font-family: Georgia, serif;

    font-size: 16px;

    font-style: italic;

    letter-spacing: 0;
}


.ra-wellness-kicker i {
    width: 45px;

    height: 1px;

    background: #ae8a55;
}


/* Heading */

.ra-wellness-content h2 {
    margin: 0;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(52px, 5vw, 76px);

    font-weight: 400;

    line-height: 1;

    letter-spacing: -2.5px;
}


.ra-wellness-content h2 em {
    display: block;

    margin-top: 8px;

    color: #9a7342;

    font-style: italic;

    font-weight: 400;
}


/* Paragraph */

.ra-wellness-content > p {
    max-width: 570px;

    margin: 28px auto 0;

    color: #566660;

    font-family: Arial, sans-serif;

    font-size: 17px;

    line-height: 1.8;
}


/* =========================================================
   WELLNESS OPTIONS
========================================================= */

.ra-wellness-options {
    margin-top: 40px;

    border-top:
        1px solid rgba(18,59,52,.20);
}


.ra-wellness-option {
    display: grid;

    grid-template-columns:
        38px
        1fr
        35px;

    align-items: center;

    gap: 14px;

    padding: 22px 0;

    border-bottom:
        1px solid rgba(18,59,52,.20);

    text-align: left;

    color: #615f5c;

    text-decoration: none;

    transition:
        padding .3s ease,
        background .3s ease;
}


.ra-wellness-option:hover {
    padding-left: 12px;

    background: rgba(255,255,255,.25);
}


/* Number */

.ra-wellness-option-number {
    color: #a27c48;

    font-family: Georgia, serif;

    font-size: 14px;

    font-style: italic;
}


/* Option heading */

.ra-wellness-option-content h3 {
    margin: 0;

    color: #615f5c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 26px;

    font-weight: 400;

    line-height: 1.1;
}


.ra-wellness-option-content p {
    max-width: 390px;

    margin: 6px 0 0;

    color: #61706b;

    font-family: Arial, sans-serif;

    font-size: 14px;

    line-height: 1.55;
}


/* Arrow */

.ra-wellness-arrow {
    width: 35px;
    height: 35px;

    display: flex;

    align-items: center;

    justify-content: center;

    border:
        1px solid rgba(18,59,52,.30);

    border-radius: 50%;

    color: #967143;

    font-size: 17px;

    transition: all .3s ease;
}


.ra-wellness-option:hover .ra-wellness-arrow {
    background: #615f5c;

    border-color: #615f5c;

    color: #fff;
}


/* =========================================================
   BUTTON
========================================================= */

.ra-wellness-button {
    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 25px;

    align-self: center;

    margin-top: 35px;

    padding: 17px 25px;

    background: #615f5c;

    color: #eee5d5;

    text-decoration: none;

    font-family: Arial, sans-serif;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 1.2px;

    transition: all .3s ease;
}


.ra-wellness-button span {
    color: #d6b678;

    font-size: 20px;
}


.ra-wellness-button:hover {
    background: #8e2f37;

    transform: translateY(-3px);
}


/* =========================================================
   BOTTOM STATEMENT
========================================================= */

.ra-wellness-bottom {
    max-width: 1320px;

    margin: 65px auto 0;

    display: flex;

    align-items: center;

    gap: 25px;
}


.ra-wellness-bottom span {
    flex: 1;

    height: 1px;

    background: rgba(18,59,52,.20);
}


.ra-wellness-bottom p {
    margin: 0;

    color: #967143;

    font-family: Arial, sans-serif;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 4px;

    white-space: nowrap;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ra-wellness-section {
        padding: 95px 5% 75px;
    }


    .ra-wellness-container {
        grid-template-columns: 1fr 1.4fr;

        gap: 30px;
    }


    .ra-wellness-image-right {
        display: none;
    }


    .ra-wellness-image-left {
        height: 600px;
    }


    .ra-wellness-content {
        padding: 30px;
    }


    .ra-wellness-content h2 {
        font-size: 62px;
    }


    .ra-wellness-content > p {
        font-size: 16px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-wellness-section {
        padding: 75px 20px 60px;
    }


    .ra-wellness-container {
        display: flex;

        flex-direction: column;

        gap: 0;
    }


    /* Image */

    .ra-wellness-image {
        height: 360px;
    }


    .ra-wellness-image-left {
        order: 1;
    }


    .ra-wellness-content {
        order: 2;

        padding: 65px 5px 60px;
    }


    .ra-wellness-image-right {
        order: 3;

        display: block;

        height: 300px;
    }


    /* Kicker */

    .ra-wellness-kicker {
        font-size: 9px;

        letter-spacing: 2.5px;

        gap: 9px;
    }


    .ra-wellness-kicker i {
        width: 30px;
    }


    /* Heading */

    .ra-wellness-content h2 {
        font-size: 47px;

        line-height: 1.04;

        letter-spacing: -1px;
    }


    /* Paragraph */

    .ra-wellness-content > p {
        margin-top: 23px;

        font-size: 16px;

        line-height: 1.75;
    }


    /* Options */

    .ra-wellness-options {
        margin-top: 35px;
    }


    .ra-wellness-option {
        grid-template-columns:
            30px
            1fr
            32px;

        padding: 20px 0;

        gap: 10px;
    }


    .ra-wellness-option-content h3 {
        font-size: 26px;
    }


    .ra-wellness-option-content p {
        font-size: 14px;

        line-height: 1.6;
    }


    .ra-wellness-arrow {
        width: 32px;
        height: 32px;

        font-size: 14px;
    }


    /* Button */

    .ra-wellness-button {
        width: 100%;

        box-sizing: border-box;

        justify-content: space-between;

        font-size: 13px;
    }


    /* Bottom */

    .ra-wellness-bottom {
        margin-top: 45px;
    }


    .ra-wellness-bottom span {
        display: none;
    }


    .ra-wellness-bottom p {
        width: 100%;

        text-align: center;

        white-space: normal;

        font-size: 9px;

        line-height: 1.8;

        letter-spacing: 2.5px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

    .ra-wellness-image {
        height: 320px;
    }


    .ra-wellness-content h2 {
        font-size: 42px;
    }


    .ra-wellness-content > p {
        font-size: 15px;
    }


    .ra-wellness-option-content h3 {
        font-size: 24px;
    }

}
/* =====================================================
   WHY CHOOSE ROYAL ARCH
===================================================== */

.ra-why-section {
    background: #f3eee5;
    padding: 110px 7%;
    color: #615f5c;
    overflow: hidden;
}


/* =====================================================
   TOP HEADING
===================================================== */

.ra-why-top {
    display: grid;
    grid-template-columns: 22% 78%;
    align-items: start;
    margin-bottom: 70px;
}

.ra-why-number {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.ra-why-number span {
    font-family: Georgia, serif;
    font-size: 48px;
    line-height: 1;
    color: #a77d42;
}

.ra-why-number small {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #567069;
}

.ra-why-intro h2 {
    margin: 0;
    max-width: 900px;
    font-family: Georgia, serif;
    font-size: clamp(52px, 6vw, 88px);
    line-height: .98;
    font-weight: 400;
    letter-spacing: -2px;
}

.ra-why-intro h2 em {
    display: block;
    color: #a77d42;
    font-weight: 400;
}


/* =====================================================
   MAIN AREA
===================================================== */

.ra-why-main {
    display: grid;
    grid-template-columns: 48% 52%;
    align-items: stretch;
    max-width: 1450px;
    margin: auto;
}


/* =====================================================
   IMAGE
===================================================== */

.ra-why-image {
    position: relative;
    min-height: 650px;
    overflow: hidden;
}

.ra-why-image img {
    width: 100%;
    height: 100%;
    min-height: 650px;
    object-fit: cover;
    display: block;
    filter: saturate(.88);
    transition: transform .7s ease;
}

.ra-why-image:hover img {
    transform: scale(1.04);
}


/* IMAGE CAPTION */

.ra-why-image-caption {
    position: absolute;
    left: 30px;
    bottom: 30px;

    background: #615f5c;

    padding: 18px 22px;

    display: flex;
    flex-direction: column;
    gap: 5px;
}

.ra-why-image-caption span {
    color: #d8c29e;
    font-size: 11px;
    letter-spacing: 2px;
    font-weight: 700;
}

.ra-why-image-caption strong {
    color: #fff;
    font-size: 14px;
    letter-spacing: 2px;
}


/* =====================================================
   RIGHT CONTENT
===================================================== */

.ra-why-content {
    background: #615f5c;

    padding: 75px 70px;

    display: flex;
    flex-direction: column;
    justify-content: center;
}


/* INTRO TEXT */

.ra-why-lead {
    color: #eee7da;

    font-size: 19px;
    line-height: 1.8;

    max-width: 560px;

    margin: 0 0 48px;
}


/* =====================================================
   FEATURE LIST
===================================================== */

.ra-why-list {
    display: flex;
    flex-direction: column;
}

.ra-why-item {
    display: grid;
    grid-template-columns: 58px 1fr;

    gap: 22px;

    padding: 27px 0;

    border-top: 1px solid rgba(232, 215, 184, .25);
}

.ra-why-item:last-child {
    border-bottom: 1px solid rgba(232, 215, 184, .25);
}


/* ICON */

.ra-why-icon {
    width: 48px;
    height: 48px;

    border: 1px solid #a77d42;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #3F3D3A;

    font-size: 19px;
}


/* TITLE */

.ra-why-item h3 {
    margin: 0 0 7px;

    color: #fff;

    font-family: Georgia, serif;

    font-size: 24px;
    font-weight: 400;
}


/* DESCRIPTION */

.ra-why-item p {
    margin: 0;

    color: #cbd6d1;

    font-size: 15px;
    line-height: 1.7;

    max-width: 470px;
}


/* =====================================================
   BUTTON
===================================================== */

.ra-why-button {
    width: fit-content;

    margin-top: 45px;

    padding: 17px 24px;

    background: #3F3D3A;
    color: whitesmoke;

    text-decoration: none;

    display: inline-flex;
    align-items: center;

    gap: 25px;

    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;

    transition: all .3s ease;
}

.ra-why-button i {
    font-size: 17px;

    transition: transform .3s ease;
}

.ra-why-button:hover {
    background: #fff;
}

.ra-why-button:hover i {
    transform: translateX(5px);
}


/* =====================================================
   BOTTOM HIGHLIGHTS
===================================================== */

.ra-why-bottom {
    max-width: 1450px;

    margin: 65px auto 0;

    padding-top: 30px;

    border-top: 1px solid rgba(18, 59, 52, .25);

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 30px;
}

.ra-why-bottom div {
    display: flex;
    align-items: center;

    gap: 18px;
}

.ra-why-bottom strong {
    font-family: Georgia, serif;

    font-size: 34px;

    color: #a77d42;

    font-weight: 400;
}

.ra-why-bottom span {
    color: #615f5c;

    font-size: 14px;

    font-weight: 600;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ra-why-section {
        padding: 80px 5%;
    }

    .ra-why-top {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .ra-why-intro h2 {
        font-size: 58px;
    }

    .ra-why-main {
        grid-template-columns: 1fr;
    }

    .ra-why-image,
    .ra-why-image img {
        min-height: 500px;
    }

    .ra-why-content {
        padding: 55px 45px;
    }

    .ra-why-bottom {
        grid-template-columns: repeat(2, 1fr);
        row-gap: 25px;
    }
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-why-section {
        padding: 70px 20px;
    }


    /* TOP */

    .ra-why-top {
        margin-bottom: 45px;
    }

    .ra-why-number span {
        font-size: 40px;
    }

    .ra-why-number small {
        font-size: 10px;
        letter-spacing: 1.5px;
    }

    .ra-why-intro h2 {
        font-size: 46px;
        line-height: 1;
        letter-spacing: -1px;
    }


    /* MAIN */

    .ra-why-main {
        display: flex;
        flex-direction: column;
    }


    /* IMAGE */

    .ra-why-image,
    .ra-why-image img {
        min-height: 390px;
        height: 390px;
    }

    .ra-why-image-caption {
        left: 15px;
        bottom: 15px;

        padding: 14px 16px;
    }

    .ra-why-image-caption strong {
        font-size: 11px;
        letter-spacing: 1.4px;
    }


    /* CONTENT */

    .ra-why-content {
        padding: 45px 24px;
    }

    .ra-why-lead {
        font-size: 17px;
        line-height: 1.7;

        margin-bottom: 30px;
    }


    /* FEATURES */

    .ra-why-item {
        grid-template-columns: 50px 1fr;

        gap: 15px;

        padding: 23px 0;
    }

    .ra-why-icon {
        width: 44px;
        height: 44px;

        font-size: 17px;
    }

    .ra-why-item h3 {
        font-size: 21px;
    }

    .ra-why-item p {
        font-size: 15px;
        line-height: 1.65;
    }


    /* BUTTON */

    .ra-why-button {
        width: 100%;

        justify-content: space-between;

        margin-top: 35px;

        font-size: 14px;
    }


    /* BOTTOM */

    .ra-why-bottom {
        grid-template-columns: 1fr;

        gap: 18px;

        margin-top: 45px;
    }

    .ra-why-bottom div {
        padding-bottom: 18px;

        border-bottom: 1px solid rgba(18, 59, 52, .18);
    }

    .ra-why-bottom strong {
        font-size: 30px;
    }

}
/* =====================================================
   HOTEL ROYAL ARCH
   ABOUT US HERO - FINAL
===================================================== */

.ra-about-hero-final {
    width: 100%;
    min-height: 700px;

    display: grid;
    grid-template-columns: 40% 60%;

    background: #f3eee5;

    overflow: hidden;
}


/* =====================================================
   LEFT CONTENT
===================================================== */

.ra-about-hero-final-content {
    position: relative;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 80px 8% 80px 12%;

    background: #f3eee5;

    z-index: 2;
}


/* =====================================================
   TOP LABEL
===================================================== */

.ra-about-hero-final-top {
    display: flex;
    align-items: center;

    gap: 17px;

    margin-bottom: 60px;
}

.ra-about-hero-final-number {
    color: #a77d42;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;

    line-height: 1;
}

.ra-about-hero-final-label {
    color: #615f5c;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.7px;
}


/* =====================================================
   TITLE
===================================================== */

.ra-about-hero-final-title {
    display: flex;
    align-items: flex-start;

    gap: 20px;
}


.ra-about-title-line {
    width: 3px;

    height: 150px;

    flex-shrink: 0;

    background: #b18446;
}


.ra-about-hero-final-title h1 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(70px, 7vw, 105px);

    line-height: .82;

    letter-spacing: -4px;

    font-weight: 400;

    color: #615f5c;
}


.ra-about-hero-final-title h1 em {
    display: block;

    margin-left: 35px;

    color: #a77d42;

    font-style: italic;

    font-weight: 400;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ra-about-hero-final-description {
    max-width: 470px;

    margin: 42px 0 0 23px;

    color: #615f5c;

    font-size: 16px;

    line-height: 1.8;
}


/* =====================================================
   BREADCRUMB
===================================================== */

.ra-about-hero-final-breadcrumb {
    display: flex;

    align-items: center;

    gap: 12px;

    margin: 35px 0 0 23px;
}


.ra-about-hero-final-breadcrumb a {
    color: #615f5c;

    text-decoration: none;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 1px;
}


.ra-about-hero-final-breadcrumb span {
    color: #615f5c;

    font-size: 12px;

    letter-spacing: 1px;
}


.ra-about-hero-final-breadcrumb i {
    color: #a77d42;

    font-size: 9px;
}


/* =====================================================
   RIGHT IMAGE
===================================================== */

.ra-about-hero-final-image {
    position: relative;

    min-height: 700px;

    overflow: hidden;

    background: #615f5c;
}


.ra-about-hero-final-image > img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform 1s ease;
}


.ra-about-hero-final-image:hover > img {
    transform: scale(1.025);
}


/* =====================================================
   IMAGE OVERLAY
===================================================== */

.ra-about-hero-final-image::after {
    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            rgba(18, 59, 52, .15),
            transparent 35%
        );
}


/* =====================================================
   PHILOSOPHY CARD
===================================================== */

.ra-about-philosophy {
    position: absolute;

    z-index: 3;

    left: 40px;
    bottom: 45px;

    width: 330px;

    padding: 30px 32px;

    background: #3F3D3A;

    box-shadow: 0 18px 45px rgba(0,0,0,.18);
}


.ra-about-philosophy-label {
    display: block;

    margin-bottom: 14px;

    color: #3F3D3A;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2.5px;
}


.ra-about-philosophy h2 {
    margin: 0;

    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 36px;

    line-height: 1;

    font-weight: 400;
}


.ra-about-philosophy h2 em {
    color: #3F3D3A;

    font-style: italic;
}


.ra-about-philosophy-line {
    width: 42px;

    height: 1px;

    margin: 19px 0;

    background: #a77d42;
}


.ra-about-philosophy p {
    margin: 0;

    color: #d2dcd8;

    font-size: 13px;

    line-height: 1.7;
}


/* =====================================================
   IMAGE LABEL
===================================================== */

.ra-about-image-label {
    position: absolute;

    z-index: 3;

    right: 32px;
    bottom: 32px;

    display: flex;

    flex-direction: column;

    align-items: flex-end;

    gap: 4px;
}


.ra-about-image-label span {
    color: rgba(255,255,255,.72);

    font-size: 8px;

    letter-spacing: 3px;
}


.ra-about-image-label strong {
    color: #fff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 16px;

    font-weight: 400;

    letter-spacing: 2px;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

    .ra-about-hero-final {
        grid-template-columns: 42% 58%;
    }

    .ra-about-hero-final-content {
        padding-left: 8%;
        padding-right: 5%;
    }

    .ra-about-hero-final-title h1 {
        font-size: 75px;
    }

    .ra-about-philosophy {
        left: 25px;

        width: 300px;

        padding: 27px 28px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-about-hero-final {
        display: flex;

        flex-direction: column;

        min-height: auto;
    }


    /* LEFT */

    .ra-about-hero-final-content {
        min-height: 520px;

        padding: 60px 22px 50px;
    }


    .ra-about-hero-final-top {
        margin-bottom: 48px;

        gap: 13px;
    }


    .ra-about-hero-final-number {
        font-size: 24px;
    }


    .ra-about-hero-final-label {
        font-size: 9px;

        letter-spacing: 2px;
    }


    /* TITLE */

    .ra-about-hero-final-title {
        gap: 16px;
    }


    .ra-about-title-line {
        width: 3px;

        height: 112px;
    }


    .ra-about-hero-final-title h1 {
        font-size: 62px;

        line-height: .86;

        letter-spacing: -2.5px;
    }


    .ra-about-hero-final-title h1 em {
        margin-left: 22px;
    }


    /* DESCRIPTION */

    .ra-about-hero-final-description {
        margin: 35px 0 0 19px;

        max-width: 390px;

        font-size: 15px;

        line-height: 1.75;
    }


    /* BREADCRUMB */

    .ra-about-hero-final-breadcrumb {
        margin: 27px 0 0 19px;

        gap: 10px;
    }


    .ra-about-hero-final-breadcrumb a,
    .ra-about-hero-final-breadcrumb span {
        font-size: 11px;
    }


    /* IMAGE */

    .ra-about-hero-final-image {
        min-height: 500px;

        height: 500px;
    }


    /* CARD */

    .ra-about-philosophy {
        left: 18px;
        right: 18px;

        bottom: 20px;

        width: auto;

        padding: 24px 25px;
    }


    .ra-about-philosophy h2 {
        font-size: 31px;
    }


    .ra-about-philosophy p {
        font-size: 13px;
    }


    /* IMAGE LABEL */

    .ra-about-image-label {
        top: 20px;

        right: 20px;

        bottom: auto;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .ra-about-hero-final-content {
        min-height: 500px;

        padding: 52px 18px 45px;
    }


    .ra-about-hero-final-title h1 {
        font-size: 54px;
    }


    .ra-about-title-line {
        height: 98px;
    }


    .ra-about-hero-final-description {
        font-size: 14px;
    }


    .ra-about-hero-final-image {
        height: 450px;

        min-height: 450px;
    }


    .ra-about-philosophy {
        left: 14px;
        right: 14px;

        bottom: 14px;

        padding: 21px;
    }

}
/* =====================================================
   HOTEL ROYAL ARCH
   ABOUT US - OUR STORY
===================================================== */

.ra-about-story {
    position: relative;

    padding: 120px 7%;

    background: #ffffff;

    overflow: hidden;
}


/* =====================================================
   MAIN WRAPPER
===================================================== */

.ra-about-story-inner {
    max-width: 1450px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: 46% 54%;

    align-items: center;

    gap: 70px;
}


/* =====================================================
   LEFT CONTENT
===================================================== */

.ra-about-story-content {
    padding: 20px 0;
}


/* =====================================================
   KICKER
===================================================== */

.ra-about-story-kicker {
    display: flex;

    align-items: center;

    gap: 14px;

    margin-bottom: 32px;

    color: #615f5c;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;
}

.ra-about-story-kicker span {
    color: #a77d42;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;

    font-weight: 400;

    letter-spacing: 0;
}

.ra-about-story-kicker div {
    width: 40px;

    height: 1px;

    background: #a77d42;
}


/* =====================================================
   HEADING
===================================================== */

.ra-about-story-content h2 {
    max-width: 650px;

    margin: 0;

    color: #615f5c;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 5.5vw, 82px);

    line-height: .98;

    font-weight: 400;

    letter-spacing: -2.5px;
}

.ra-about-story-content h2 em {
    display: block;

    color: #a77d42;

    font-style: italic;

    font-weight: 400;
}


/* =====================================================
   LEAD
===================================================== */

.ra-about-story-lead {
    max-width: 560px;

    margin: 38px 0 0;

    color: #615f5c;

    font-size: 19px;

    line-height: 1.8;

    font-weight: 500;
}


/* =====================================================
   BODY TEXT
===================================================== */

.ra-about-story-text {
    max-width: 550px;

    margin: 22px 0 0;

    color: #615f5c;

    font-size: 16px;

    line-height: 1.85;
}


/* =====================================================
   BUTTON / LINK
===================================================== */

.ra-about-story-link {
    display: inline-flex;

    align-items: center;

    gap: 25px;

    margin-top: 38px;

    padding: 16px 22px;

    background: #615f5c;

    color: #ffffff;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 1px;

    transition: all .3s ease;
}

.ra-about-story-link i {
    color: #3F3D3A;

    font-size: 15px;

    transition: transform .3s ease;
}

.ra-about-story-link:hover {
    background: #a77d42;

    color: #ffffff;
}

.ra-about-story-link:hover i {
    color: #ffffff;

    transform: translateX(5px);
}


/* =====================================================
   RIGHT VISUAL
===================================================== */

.ra-about-story-visual {
    position: relative;

    min-height: 650px;
}


/* =====================================================
   MAIN IMAGE
===================================================== */

.ra-about-story-image-main {
    position: absolute;

    top: 0;

    right: 0;

    width: 76%;

    height: 590px;

    overflow: hidden;
}

.ra-about-story-image-main img {
    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .8s ease;
}

.ra-about-story-image-main:hover img {
    transform: scale(1.035);
}


/* =====================================================
   SMALL IMAGE
===================================================== */

.ra-about-story-image-small {
    position: absolute;

    left: 0;

    bottom: 0;

    width: 43%;

    height: 275px;

    border: 12px solid #ffffff;

    overflow: hidden;

    z-index: 2;
}

.ra-about-story-image-small img {
    width: 100%;

    height: 100%;

    object-fit: cover;

    display: block;
}


/* =====================================================
   BOTTOM LABEL
===================================================== */

.ra-about-story-est {
    position: absolute;

    right: 30px;

    bottom: 28px;

    z-index: 3;

    display: flex;

    flex-direction: column;

    align-items: flex-end;

    gap: 5px;

    color: #ffffff;

    text-align: right;
}

.ra-about-story-est span {
    font-size: 9px;

    letter-spacing: 3px;

    opacity: .85;
}

.ra-about-story-est strong {
    color: #3F3D3A;

    font-size: 11px;

    letter-spacing: 2px;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

    .ra-about-story {
        padding: 90px 5%;
    }

    .ra-about-story-inner {
        grid-template-columns: 1fr 1fr;

        gap: 45px;
    }

    .ra-about-story-content h2 {
        font-size: 58px;
    }

    .ra-about-story-lead {
        font-size: 17px;
    }

    .ra-about-story-visual {
        min-height: 570px;
    }

    .ra-about-story-image-main {
        height: 510px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-about-story {
        padding: 75px 20px;

    }


    .ra-about-story-inner {
        display: flex;

        flex-direction: column;

        gap: 55px;
    }


    /* CONTENT */

    .ra-about-story-content {
        width: 100%;
    }


    .ra-about-story-kicker {
        margin-bottom: 28px;

        font-size: 9px;

        letter-spacing: 2px;
    }

    .ra-about-story-kicker span {
        font-size: 25px;
    }


    /* HEADING */

    .ra-about-story-content h2 {
        font-size: 47px;

        line-height: 1;

        letter-spacing: -1.5px;
    }


    /* TEXT */

    .ra-about-story-lead {
        margin-top: 30px;

        font-size: 17px;

        line-height: 1.75;
    }

    .ra-about-story-text {
        margin-top: 18px;

        font-size: 15px;

        line-height: 1.8;
    }


    /* LINK */

    .ra-about-story-link {
        margin-top: 30px;

        width: 100%;

        justify-content: space-between;

        padding: 16px 20px;

        font-size: 13px;
    }


    /* VISUAL */

    .ra-about-story-visual {
        width: 100%;

        min-height: 490px;

        height: 490px;
    }


    /* MAIN IMAGE */

    .ra-about-story-image-main {
        width: 82%;

        height: 400px;

        right: 0;

        top: 0;
    }


    /* SMALL IMAGE */

    .ra-about-story-image-small {
        width: 47%;

        height: 205px;

        left: 0;

        bottom: 0;

        border-width: 8px;
    }


    /* LABEL */

    .ra-about-story-est {
        right: 15px;

        bottom: 17px;
    }

    .ra-about-story-est span {
        font-size: 7px;

        letter-spacing: 2px;
    }

    .ra-about-story-est strong {
        font-size: 8px;

        letter-spacing: 1.3px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .ra-about-story {
        padding: 65px 18px;
    }

    .ra-about-story-content h2 {
        font-size: 42px;
    }

    .ra-about-story-lead {
        font-size: 16px;
    }

    .ra-about-story-text {
        font-size: 14px;
    }

    .ra-about-story-visual {
        min-height: 430px;

        height: 430px;
    }

    .ra-about-story-image-main {
        height: 350px;
    }

    .ra-about-story-image-small {
        height: 180px;
    }

}
/* =====================================================
   SECTION 03
   THE ROYAL ARCH EXPERIENCE
===================================================== */

.ra-experience-section {
    position: relative;

    padding: 120px 7% 90px;

    background: #615f5c;

    color: #ffffff;

    overflow: hidden;
}


/* =====================================================
   HEADER
===================================================== */

.ra-experience-header {
    max-width: 1450px;

    margin: 0 auto 75px;
}


.ra-experience-kicker {
    display: flex;

    align-items: center;

    gap: 14px;

    margin-bottom: 30px;

    color: #d1d8d4;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;
}


.ra-experience-kicker span {
    color: #3F3D3A;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 28px;

    font-weight: 400;

    letter-spacing: 0;
}


.ra-experience-kicker div {
    width: 42px;

    height: 1px;

    background: #a77d42;
}


/* =====================================================
   HEADING
===================================================== */

.ra-experience-header h2 {
    max-width: 850px;

    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 6vw, 88px);

    line-height: .98;

    font-weight: 400;

    letter-spacing: -2px;

    color: #ffffff;
}


.ra-experience-header h2 em {
    display: block;

    color: #3F3D3A;

    font-style: italic;

    font-weight: 400;
}


/* =====================================================
   INTRO
===================================================== */

.ra-experience-header > p {
    max-width: 650px;

    margin: 28px 0 0;

    color: #cbd7d2;

    font-size: 17px;

    line-height: 1.8;
}


/* =====================================================
   EXPERIENCE GRID
===================================================== */

.ra-experience-grid {
    max-width: 1450px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    border-top: 1px solid rgba(216,183,124,.35);

    border-bottom: 1px solid rgba(216,183,124,.35);
}


/* =====================================================
   EXPERIENCE ITEM
===================================================== */

.ra-experience-item {
    position: relative;

    min-height: 450px;

    padding: 32px 30px 35px;

    color: #ffffff;

    text-decoration: none;

    border-right: 1px solid rgba(216,183,124,.25);

    display: flex;

    flex-direction: column;

    transition:
        background .4s ease,
        transform .4s ease;
}


.ra-experience-item:last-child {
    border-right: none;
}


/* HOVER */

.ra-experience-item:hover {
    background: #3F3D3A;
}


/* =====================================================
   NUMBER
===================================================== */

.ra-experience-number {
    font-family: Georgia, "Times New Roman", serif;

    color: #a77d42;

    font-size: 34px;

    font-weight: 400;

    line-height: 1;
}


/* =====================================================
   ICON
===================================================== */

.ra-experience-icon {
    width: 62px;
    height: 62px;

    margin-top: 55px;

    border: 1px solid rgba(216,183,124,.65);

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #3F3D3A;

    font-size: 23px;

    transition:
        background .4s ease,
        color .4s ease,
        transform .4s ease;
}


.ra-experience-item:hover .ra-experience-icon {
    background: #3F3D3A;

    color: #615f5c;

    transform: rotate(-8deg);
}


/* =====================================================
   CONTENT
===================================================== */

.ra-experience-content {
    margin-top: auto;
}


.ra-experience-content > span {
    display: block;

    margin-bottom: 12px;

    color: #aebdb8;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2.5px;
}


.ra-experience-content h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 31px;

    line-height: 1;

    font-weight: 400;

    color: #ffffff;
}


.ra-experience-content h3 em {
    display: block;

    color: #3F3D3A;

    font-style: italic;

    font-weight: 400;
}


.ra-experience-content p {
    max-width: 270px;

    margin: 20px 0 0;

    color: #c2d0cb;

    font-size: 14px;

    line-height: 1.75;
}


/* =====================================================
   ARROW
===================================================== */

.ra-experience-arrow {
    margin-top: 28px;

    width: 38px;
    height: 38px;

    border: 1px solid rgba(216,183,124,.5);

    display: flex;

    align-items: center;

    justify-content: center;

    color: #3F3D3A;

    transition: .35s ease;
}


.ra-experience-arrow i {
    font-size: 13px;

    transition: transform .35s ease;
}


.ra-experience-item:hover .ra-experience-arrow {
    background: #3F3D3A;

    color: #615f5c;
}


.ra-experience-item:hover .ra-experience-arrow i {
    transform: translateX(4px);
}


/* =====================================================
   FOOTER LINE
===================================================== */

.ra-experience-footer {
    max-width: 1450px;

    margin: 55px auto 0;

    display: flex;

    justify-content: center;

    align-items: center;

    gap: 18px;

    color: #aebdb8;
}


.ra-experience-footer span {
    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;
}


.ra-experience-footer i {
    display: block;

    width: 35px;

    height: 1px;

    background: #a77d42;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

    .ra-experience-section {
        padding: 90px 5% 70px;
    }


    .ra-experience-grid {
        grid-template-columns: repeat(2, 1fr);
    }


    .ra-experience-item {
        min-height: 400px;

        border-bottom: 1px solid rgba(216,183,124,.25);
    }


    .ra-experience-item:nth-child(2) {
        border-right: none;
    }


    .ra-experience-item:nth-child(3),
    .ra-experience-item:nth-child(4) {
        border-bottom: none;
    }


    .ra-experience-header h2 {
        font-size: 60px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-experience-section {
        padding: 75px 20px 60px;
    }


    /* HEADER */

    .ra-experience-header {
        margin-bottom: 50px;
    }


    .ra-experience-kicker {
        margin-bottom: 25px;

        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-experience-kicker span {
        font-size: 25px;
    }


    .ra-experience-header h2 {
        font-size: 46px;

        line-height: 1;

        letter-spacing: -1px;
    }


    .ra-experience-header > p {
        margin-top: 25px;

        font-size: 16px;

        line-height: 1.75;
    }


    /* GRID */

    .ra-experience-grid {
        display: grid;

        grid-template-columns: 1fr;
    }


    .ra-experience-item {
        min-height: 365px;

        padding: 28px 24px 30px;

        border-right: none !important;

        border-bottom: 1px solid rgba(216,183,124,.25) !important;
    }


    .ra-experience-item:last-child {
        border-bottom: none !important;
    }


    /* NUMBER */

    .ra-experience-number {
        font-size: 30px;
    }


    /* ICON */

    .ra-experience-icon {
        width: 56px;
        height: 56px;

        margin-top: 35px;

        font-size: 21px;
    }


    /* CONTENT */

    .ra-experience-content h3 {
        font-size: 29px;
    }


    .ra-experience-content p {
        max-width: 100%;

        font-size: 15px;

        line-height: 1.7;
    }


    /* FOOTER */

    .ra-experience-footer {
        margin-top: 40px;

        gap: 10px;

        flex-wrap: wrap;
    }


    .ra-experience-footer span {
        font-size: 8px;

        letter-spacing: 1.5px;
    }


    .ra-experience-footer i {
        width: 20px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .ra-experience-section {
        padding: 65px 18px 50px;
    }


    .ra-experience-header h2 {
        font-size: 42px;
    }


    .ra-experience-header > p {
        font-size: 15px;
    }


    .ra-experience-item {
        min-height: 350px;

        padding: 25px 20px 28px;
    }


    .ra-experience-content h3 {
        font-size: 27px;
    }

}
/* =========================================
   ICON TO CONTENT SPACING FIX
========================================= */

.ra-experience-icon {
    margin-bottom: 30px;
}


/* Label */
.ra-experience-content > span {
    display: block;
    margin-bottom: 14px;

    color: #aebdb8;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.5px;

    line-height: 1.4;
}


/* Heading */
.ra-experience-content h3 {
    margin-top: 0;
}
/* =====================================================
   SECTION 04
   OUR PHILOSOPHY
===================================================== */

.ra-philosophy-section {
    position: relative;

    width: 100%;
    min-height: 720px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background: #615f5c;
}


/* =====================================================
   BACKGROUND
===================================================== */

.ra-philosophy-bg {
    position: absolute;

    inset: 0;

    z-index: 1;
}


.ra-philosophy-bg img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transform: scale(1.02);

    transition: transform 1.2s ease;
}


.ra-philosophy-section:hover .ra-philosophy-bg img {
    transform: scale(1.05);
}


/* =====================================================
   OVERLAY
===================================================== */

.ra-philosophy-overlay {
    position: absolute;

    inset: 0;

    z-index: 2;

    background:
        linear-gradient(
            90deg,
            rgba(8, 34, 29, .94) 0%,
            rgba(8, 34, 29, .82) 38%,
            rgba(8, 34, 29, .52) 72%,
            rgba(8, 34, 29, .38) 100%
        );
}


/* =====================================================
   CONTENT
===================================================== */

.ra-philosophy-content {
    position: relative;

    z-index: 3;

    width: 100%;

    max-width: 1450px;

    margin: 0 auto;

    padding: 110px 7%;
}


/* =====================================================
   KICKER
===================================================== */

.ra-philosophy-kicker {
    display: flex;

    align-items: center;

    gap: 15px;

    margin-bottom: 38px;

    color: #d0d9d5;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.8px;
}


.ra-philosophy-kicker span {
    color: #3F3D3A;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 29px;

    font-weight: 400;

    letter-spacing: 0;
}


.ra-philosophy-kicker div {
    width: 45px;

    height: 1px;

    background: #c09a5d;
}


/* =====================================================
   MAIN HEADING
===================================================== */

.ra-philosophy-content h2 {
    max-width: 800px;

    margin: 0;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 6.3vw, 94px);

    line-height: .96;

    font-weight: 400;

    letter-spacing: -3px;
}


.ra-philosophy-content h2 em {
    color: #3F3D3A;

    font-style: italic;

    font-weight: 400;
}


/* =====================================================
   SECOND HEADING
===================================================== */

.ra-philosophy-content h3 {
    max-width: 750px;

    margin: 12px 0 0;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(42px, 4.5vw, 68px);

    line-height: 1;

    font-weight: 400;

    letter-spacing: -2px;
}


.ra-philosophy-content h3 span {
    color: #3F3D3A;

    font-style: italic;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ra-philosophy-content > p {
    max-width: 590px;

    margin: 35px 0 0;

    color: #d6dfdb;

    font-size: 17px;

    line-height: 1.85;
}


/* =====================================================
   SIGNATURE
===================================================== */

.ra-philosophy-signature {
    display: flex;

    align-items: center;

    gap: 15px;

    margin-top: 43px;
}


.ra-philosophy-signature-line {
    width: 55px;

    height: 1px;

    background: #3F3D3A;
}


.ra-philosophy-signature span {
    color: #3F3D3A;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;
}


/* =====================================================
   CORNER LABEL
===================================================== */

.ra-philosophy-corner {
    position: absolute;

    right: 7%;
    bottom: 35px;

    z-index: 4;

    display: flex;

    align-items: center;

    gap: 13px;

    color: rgba(255,255,255,.75);
}


.ra-philosophy-corner span {
    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;
}


.ra-philosophy-corner i {
    width: 25px;

    height: 1px;

    background: #b18a4e;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ra-philosophy-section {
        min-height: 650px;
    }


    .ra-philosophy-content {
        padding: 90px 6%;
    }


    .ra-philosophy-content h2 {
        font-size: 64px;
    }


    .ra-philosophy-content h3 {
        font-size: 48px;
    }


    .ra-philosophy-content > p {
        font-size: 16px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-philosophy-section {
        min-height: 650px;

        align-items: flex-end;
    }


    /* OVERLAY */

    .ra-philosophy-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(8,34,29,.28) 0%,
                rgba(8,34,29,.62) 35%,
                rgba(8,34,29,.94) 78%,
                rgba(8,34,29,.98) 100%
            );
    }


    /* CONTENT */

    .ra-philosophy-content {
        padding: 75px 20px 85px;
    }


    /* KICKER */

    .ra-philosophy-kicker {
        gap: 11px;

        margin-bottom: 28px;

        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-philosophy-kicker span {
        font-size: 25px;
    }


    .ra-philosophy-kicker div {
        width: 30px;
    }


    /* HEADING */

    .ra-philosophy-content h2 {
        font-size: 45px;

        line-height: 1;

        letter-spacing: -1px;
    }


    .ra-philosophy-content h3 {
        font-size: 35px;

        line-height: 1.05;

        letter-spacing: -1px;
    }


    /* DESCRIPTION */

    .ra-philosophy-content > p {
        margin-top: 25px;

        font-size: 15px;

        line-height: 1.75;
    }


    /* SIGNATURE */

    .ra-philosophy-signature {
        margin-top: 30px;

        gap: 12px;
    }


    .ra-philosophy-signature-line {
        width: 35px;
    }


    .ra-philosophy-signature span {
        font-size: 8px;

        letter-spacing: 1.8px;
    }


    /* CORNER */

    .ra-philosophy-corner {
        right: 20px;

        bottom: 20px;

        gap: 8px;
    }


    .ra-philosophy-corner span {
        font-size: 7px;

        letter-spacing: 1.3px;
    }


    .ra-philosophy-corner i {
        width: 15px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .ra-philosophy-section {
        min-height: 620px;
    }


    .ra-philosophy-content {
        padding: 65px 18px 78px;
    }


    .ra-philosophy-content h2 {
        font-size: 40px;
    }


    .ra-philosophy-content h3 {
        font-size: 31px;
    }


    .ra-philosophy-content > p {
        font-size: 14px;
    }


    .ra-philosophy-corner {
        right: 18px;
    }

}
/* =====================================================
   SECTION 05
   EVERYTHING UNDER ONE ROOF
===================================================== */

.ra-about-services {
    background: #f3eee5;

    padding: 120px 7% 90px;

    color: #615f5c;

    overflow: hidden;
}


.ra-about-services-inner {
    max-width: 1450px;

    margin: 0 auto;
}


/* =====================================================
   HEADER
===================================================== */

.ra-about-services-header {
    max-width: 900px;

    margin-bottom: 70px;
}


.ra-about-services-kicker {
    display: flex;

    align-items: center;

    gap: 14px;

    margin-bottom: 30px;

    color: #615f5c;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;
}


.ra-about-services-kicker span {
    color: #a77d42;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 28px;

    font-weight: 400;

    letter-spacing: 0;
}


.ra-about-services-kicker div {
    width: 42px;

    height: 1px;

    background: #a77d42;
}


/* HEADING */

.ra-about-services-header h2 {
    margin: 0;

    max-width: 850px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 6vw, 88px);

    line-height: .98;

    font-weight: 400;

    letter-spacing: -2.5px;

    color: #615f5c;
}


.ra-about-services-header h2 em {
    display: block;

    color: #a77d42;

    font-style: italic;

    font-weight: 400;
}


/* DESCRIPTION */

.ra-about-services-header > p {
    max-width: 650px;

    margin: 30px 0 0;

    color: #615f5c;

    font-size: 17px;

    line-height: 1.8;
}


/* =====================================================
   SERVICE LIST
===================================================== */

.ra-about-services-list {
    border-top: 1px solid rgba(18,59,52,.28);

    border-bottom: 1px solid rgba(18,59,52,.28);
}


/* =====================================================
   SERVICE ITEM
===================================================== */

.ra-about-service {
    position: relative;

    min-height: 155px;

    padding: 28px 20px;

    display: grid;

    grid-template-columns: 70px 80px 1fr 55px;

    align-items: center;

    gap: 25px;

    text-decoration: none;

    color: #615f5c;

    border-bottom: 1px solid rgba(18,59,52,.18);

    transition:
        background .35s ease,
        padding .35s ease;
}


.ra-about-service:last-child {
    border-bottom: none;
}


/* HOVER */

.ra-about-service:hover {
    background: #615f5c;

    color: #ffffff;

    padding-left: 30px;
}


/* =====================================================
   NUMBER
===================================================== */

.ra-about-service-number {
    color: #a77d42;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 28px;

    font-weight: 400;
}


/* =====================================================
   ICON
===================================================== */

.ra-about-service-icon {
    width: 58px;

    height: 58px;

    border: 1px solid #a77d42;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #a77d42;

    font-size: 21px;

    transition:
        background .35s ease,
        color .35s ease;
}


.ra-about-service:hover .ra-about-service-icon {
    background: #3F3D3A;

    color: #615f5c;
}


/* =====================================================
   CONTENT
===================================================== */

.ra-about-service-content > span {
    display: block;

    margin-bottom: 7px;

    color: #615f5c;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;
}


.ra-about-service:hover .ra-about-service-content > span {
    color: #b8c7c2;
}


.ra-about-service-content h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 32px;

    line-height: 1;

    font-weight: 400;

    color: #615f5c;
}


.ra-about-service:hover .ra-about-service-content h3 {
    color: #ffffff;
}


.ra-about-service-content h3 em {
    color: #a77d42;

    font-style: italic;

    font-weight: 400;
}


.ra-about-service:hover .ra-about-service-content h3 em {
    color: #3F3D3A;
}


.ra-about-service-content p {
    max-width: 600px;

    margin: 10px 0 0;

    color: #615f5c;

    font-size: 14px;

    line-height: 1.65;
}


.ra-about-service:hover .ra-about-service-content p {
    color: #c8d4d0;
}


/* =====================================================
   ARROW
===================================================== */

.ra-about-service-arrow {
    width: 42px;

    height: 42px;

    border: 1px solid rgba(18,59,52,.35);

    display: flex;

    align-items: center;

    justify-content: center;

    color: #a77d42;

    transition:
        background .35s ease,
        color .35s ease,
        transform .35s ease;
}


.ra-about-service:hover .ra-about-service-arrow {
    background: #3F3D3A;

    color: #615f5c;

    border-color: #3F3D3A;

    transform: rotate(45deg);
}


.ra-about-service-arrow i {
    font-size: 13px;
}


/* =====================================================
   BOTTOM
===================================================== */

.ra-about-services-bottom {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 18px;

    margin-top: 50px;
}


.ra-about-services-bottom span {
    color: #615f5c;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;
}


.ra-about-services-bottom div {
    width: 40px;

    height: 1px;

    background: #a77d42;
}


.ra-about-services-bottom strong {
    color: #a77d42;

    font-size: 10px;

    letter-spacing: 2px;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ra-about-services {
        padding: 90px 5% 70px;
    }


    .ra-about-services-header h2 {
        font-size: 62px;
    }


    .ra-about-service {
        grid-template-columns: 55px 70px 1fr 50px;

        gap: 18px;
    }


    .ra-about-service-content h3 {
        font-size: 28px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-about-services {
        padding: 75px 20px 60px;
    }


    /* HEADER */

    .ra-about-services-header {
        margin-bottom: 45px;
    }


    .ra-about-services-kicker {
        margin-bottom: 25px;

        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-about-services-kicker span {
        font-size: 25px;
    }


    .ra-about-services-header h2 {
        font-size: 46px;

        line-height: 1;

        letter-spacing: -1px;
    }


    .ra-about-services-header > p {
        margin-top: 25px;

        font-size: 15px;

        line-height: 1.75;
    }


    /* SERVICE */

    .ra-about-service {
        min-height: auto;

        padding: 27px 5px;

        grid-template-columns: 42px 55px 1fr 38px;

        gap: 12px;
    }


    .ra-about-service:hover {
        padding-left: 10px;
    }


    /* NUMBER */

    .ra-about-service-number {
        font-size: 23px;
    }


    /* ICON */

    .ra-about-service-icon {
        width: 50px;

        height: 50px;

        font-size: 18px;
    }


    /* CONTENT */

    .ra-about-service-content > span {
        font-size: 8px;

        letter-spacing: 1.5px;

        margin-bottom: 7px;
    }


    .ra-about-service-content h3 {
        font-size: 22px;

        line-height: 1.05;
    }


    .ra-about-service-content p {
        margin-top: 9px;

        font-size: 13px;

        line-height: 1.6;
    }


    /* ARROW */

    .ra-about-service-arrow {
        width: 36px;

        height: 36px;
    }


    .ra-about-service-arrow i {
        font-size: 11px;
    }


    /* BOTTOM */

    .ra-about-services-bottom {
        margin-top: 40px;

        gap: 9px;

        flex-wrap: wrap;
    }


    .ra-about-services-bottom span {
        font-size: 8px;
    }


    .ra-about-services-bottom strong {
        font-size: 8px;
    }


    .ra-about-services-bottom div {
        width: 22px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .ra-about-services {
        padding: 65px 18px 50px;
    }


    .ra-about-services-header h2 {
        font-size: 42px;
    }


    .ra-about-service {
        grid-template-columns: 35px 50px 1fr 32px;

        gap: 9px;

        padding: 25px 2px;
    }


    .ra-about-service-icon {
        width: 46px;

        height: 46px;

        font-size: 17px;
    }


    .ra-about-service-content h3 {
        font-size: 20px;
    }


    .ra-about-service-content p {
        font-size: 12px;
    }


    .ra-about-service-arrow {
        width: 32px;

        height: 32px;
    }

}
/* =====================================================
   SECTION 06
   MISSION & VISION
===================================================== */

.ra-mission-vision {
    position: relative;

    padding: 120px 7% 85px;

    background: #615f5c;

    color: #ffffff;

    overflow: hidden;
}


/* =====================================================
   SUBTLE BACKGROUND DETAIL
===================================================== */

.ra-mission-vision::before {
    content: "";

    position: absolute;

    width: 520px;
    height: 520px;

    right: -260px;
    top: -260px;

    border: 1px solid rgba(216,183,124,.12);

    border-radius: 50%;
}

.ra-mission-vision::after {
    content: "";

    position: absolute;

    width: 380px;
    height: 380px;

    right: -190px;
    top: -190px;

    border: 1px solid rgba(216,183,124,.08);

    border-radius: 50%;
}


/* =====================================================
   INNER
===================================================== */

.ra-mv-inner {
    position: relative;

    z-index: 2;

    max-width: 1450px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: 40% 60%;

    gap: 80px;
}


/* =====================================================
   LEFT INTRO
===================================================== */

.ra-mv-intro {
    padding-top: 10px;
}


.ra-mv-kicker {
    display: flex;

    align-items: center;

    gap: 14px;

    margin-bottom: 32px;

    color: #b9c8c3;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;
}


.ra-mv-kicker span {
    color: #3F3D3A;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 28px;

    font-weight: 400;

    letter-spacing: 0;
}


.ra-mv-kicker div {
    width: 42px;

    height: 1px;

    background: #a77d42;
}


/* =====================================================
   HEADING
===================================================== */

.ra-mv-intro h2 {
    margin: 0;

    max-width: 560px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 5.5vw, 82px);

    line-height: .98;

    font-weight: 400;

    letter-spacing: -2.5px;

    color: #ffffff;
}


.ra-mv-intro h2 em {
    display: block;

    color: #3F3D3A;

    font-style: italic;

    font-weight: 400;
}


/* =====================================================
   INTRO TEXT
===================================================== */

.ra-mv-intro > p {
    max-width: 480px;

    margin: 35px 0 0;

    color: #c7d3cf;

    font-size: 16px;

    line-height: 1.85;
}


/* =====================================================
   RIGHT CONTENT
===================================================== */

.ra-mv-content {
    border-top: 1px solid rgba(216,183,124,.32);
}


/* =====================================================
   BLOCK
===================================================== */

.ra-mv-block {
    padding: 35px 0 40px;

    border-bottom: 1px solid rgba(216,183,124,.25);
}


/* =====================================================
   BLOCK TOP
===================================================== */

.ra-mv-block-top {
    display: flex;

    align-items: center;

    gap: 18px;

    margin-bottom: 28px;
}


.ra-mv-number {
    color: #3F3D3A;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;
}


.ra-mv-label {
    color: #aebdb8;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2.5px;
}


/* =====================================================
   BLOCK BODY
===================================================== */

.ra-mv-block-body {
    display: grid;

    grid-template-columns: 75px 1fr;

    gap: 25px;

    align-items: start;
}


/* =====================================================
   ICON
===================================================== */

.ra-mv-icon {
    width: 58px;
    height: 58px;

    border: 1px solid #a77d42;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #3F3D3A;

    font-size: 21px;
}


/* =====================================================
   TITLE
===================================================== */

.ra-mv-block-body h3 {
    margin: 0;

    max-width: 650px;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 34px;

    line-height: 1.05;

    font-weight: 400;

    letter-spacing: -.5px;
}


.ra-mv-block-body h3 em {
    color: #3F3D3A;

    font-style: italic;

    font-weight: 400;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ra-mv-block-body p {
    max-width: 650px;

    margin: 18px 0 0;

    color: #bdcbc6;

    font-size: 15px;

    line-height: 1.8;
}


/* =====================================================
   BOTTOM
===================================================== */

.ra-mv-bottom {
    position: relative;

    z-index: 2;

    max-width: 1450px;

    margin: 65px auto 0;

    padding-top: 27px;

    border-top: 1px solid rgba(216,183,124,.25);

    display: flex;

    justify-content: center;

    align-items: center;

    gap: 18px;
}


.ra-mv-bottom span {
    color: #aebdb8;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;
}


.ra-mv-bottom div {
    width: 40px;

    height: 1px;

    background: #a77d42;
}


.ra-mv-bottom strong {
    color: #3F3D3A;

    font-size: 10px;

    letter-spacing: 2px;

    font-weight: 700;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ra-mission-vision {
        padding: 90px 5% 70px;
    }

    .ra-mv-inner {
        grid-template-columns: 1fr;

        gap: 60px;
    }

    .ra-mv-intro h2 {
        font-size: 62px;
    }

    .ra-mv-intro > p {
        max-width: 650px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-mission-vision {
        padding: 75px 20px 60px;
    }


    /* INTRO */

    .ra-mv-inner {
        gap: 50px;
    }


    .ra-mv-kicker {
        margin-bottom: 25px;

        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-mv-kicker span {
        font-size: 25px;
    }


    .ra-mv-intro h2 {
        font-size: 46px;

        line-height: 1;

        letter-spacing: -1px;
    }


    .ra-mv-intro > p {
        margin-top: 25px;

        font-size: 15px;

        line-height: 1.75;
    }


    /* BLOCK */

    .ra-mv-block {
        padding: 28px 0 32px;
    }


    .ra-mv-block-top {
        gap: 13px;

        margin-bottom: 22px;
    }


    .ra-mv-number {
        font-size: 24px;
    }


    .ra-mv-label {
        font-size: 8px;

        letter-spacing: 2px;
    }


    /* BODY */

    .ra-mv-block-body {
        grid-template-columns: 55px 1fr;

        gap: 17px;
    }


    /* ICON */

    .ra-mv-icon {
        width: 48px;
        height: 48px;

        font-size: 18px;
    }


    /* TITLE */

    .ra-mv-block-body h3 {
        font-size: 27px;

        line-height: 1.08;
    }


    /* TEXT */

    .ra-mv-block-body p {
        margin-top: 15px;

        font-size: 14px;

        line-height: 1.75;
    }


    /* BOTTOM */

    .ra-mv-bottom {
        margin-top: 45px;

        gap: 9px;

        flex-wrap: wrap;

        text-align: center;
    }


    .ra-mv-bottom span {
        font-size: 8px;

        letter-spacing: 1.5px;
    }


    .ra-mv-bottom strong {
        font-size: 8px;

        letter-spacing: 1.5px;
    }


    .ra-mv-bottom div {
        width: 20px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

    .ra-mission-vision {
        padding: 65px 18px 50px;
    }


    .ra-mv-intro h2 {
        font-size: 42px;
    }


    .ra-mv-intro > p {
        font-size: 14px;
    }


    .ra-mv-block-body {
        grid-template-columns: 50px 1fr;

        gap: 14px;
    }


    .ra-mv-icon {
        width: 44px;
        height: 44px;

        font-size: 17px;
    }


    .ra-mv-block-body h3 {
        font-size: 24px;
    }


    .ra-mv-block-body p {
        font-size: 13px;
    }

}
/* =========================================================
   SECTION 07 — ROYAL ARCH CTA
========================================================= */

.ra-about-cta {
    position: relative;
    min-height: 680px;
    padding: 120px 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;

    background-image: url("../images/gallery/banquet.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* Dark cinematic overlay */
.ra-about-cta-overlay {
    position: absolute;
    inset: 0;

    background:
    linear-gradient(
        90deg,
        rgba(63, 61, 58, .96) 0%,
        rgba(63, 61, 58, .82) 42%,
        rgba(63, 61, 58, .48) 75%,
        rgba(63, 61, 58, .30) 100%
    );

    z-index: 1;
}

/* Content */
.ra-about-cta-content {
    position: relative;
    z-index: 3;

    width: 100%;
    max-width: 850px;

    text-align: center;
    color: #fff;
}

/* Number */
.ra-about-cta-number {
    display: block;

    margin-bottom: 22px;

    font-size: 14px;
    font-weight: 600;
    letter-spacing: 4px;

    color: #d7b77a;
}

/* Kicker */
.ra-about-cta-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;

    margin-bottom: 25px;

    font-size: 13px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;

    color: #e4d6bc;
}

.ra-about-cta-kicker::before,
.ra-about-cta-kicker::after {
    content: "";
    display: block;

    width: 38px;
    height: 1px;

    background: #c9a96a;
}

/* Heading */
.ra-about-cta h2 {
    margin: 0 0 28px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(48px, 6vw, 82px);
    line-height: 0.98;
    font-weight: 400;
    letter-spacing: -2px;

    color: #fff;
}

.ra-about-cta h2 em {
    color: #d8bd88;
    font-style: italic;
}

/* Description */
.ra-about-cta-content > p {
    max-width: 650px;

    margin: 0 auto 40px;

    font-size: 18px;
    line-height: 1.8;
    font-weight: 400;

    color: rgba(255, 255, 255, 0.88);
}

/* Buttons */
.ra-about-cta-buttons {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;

    margin-bottom: 45px;
}

.ra-about-cta-btn {
    min-width: 190px;

    padding: 16px 23px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;

    text-decoration: none;

    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;

    transition: all 0.35s ease;
}

/* Primary */
.ra-about-cta-btn.primary {
    background: #d3b274;
    color: #615f5c;

    border: 1px solid #d3b274;
}

.ra-about-cta-btn.primary:hover {
    background: #fff;
    border-color: #fff;

    color: #182a22;

    transform: translateY(-3px);
}

.ra-about-cta-btn.primary i {
    transition: transform 0.3s ease;
}

.ra-about-cta-btn.primary:hover i {
    transform: translateX(5px);
}

/* Secondary */
.ra-about-cta-btn.secondary {
    background: rgba(255, 255, 255, 0.08);

    border: 1px solid rgba(255, 255, 255, 0.45);

    color: #fff;

    backdrop-filter: blur(6px);
}

.ra-about-cta-btn.secondary:hover {
    background: #fff;
    border-color: #fff;

    color: #182a22;

    transform: translateY(-3px);
}

/* Details */
.ra-about-cta-details {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;

    padding-top: 27px;

    border-top: 1px solid rgba(255, 255, 255, 0.22);
}

.ra-about-cta-details div {
    display: flex;
    align-items: center;
    gap: 11px;

    font-size: 15px;
    color: rgba(255, 255, 255, 0.85);
}

.ra-about-cta-details i {
    font-size: 18px;
    color: #d3b274;
}

.ra-about-cta-details a {
    color: rgba(255, 255, 255, 0.9);
    text-decoration: none;

    transition: color 0.3s ease;
}

.ra-about-cta-details a:hover {
    color: #d3b274;
}

/* Watermark */
.ra-about-cta-watermark {
    position: absolute;
    z-index: 2;

    right: -30px;
    bottom: -55px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(90px, 16vw, 240px);
    line-height: 1;

    letter-spacing: -8px;

    color: rgba(255, 255, 255, 0.055);

    white-space: nowrap;

    pointer-events: none;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ra-about-cta {
        min-height: 620px;
        padding: 100px 25px;
    }

    .ra-about-cta h2 {
        font-size: 60px;
    }

    .ra-about-cta-content > p {
        font-size: 17px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-about-cta {
        min-height: auto;

        padding: 85px 20px 75px;

        background-position: center;
    }

    .ra-about-cta-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(10, 28, 22, 0.88),
                rgba(10, 28, 22, 0.72)
            );
    }

    .ra-about-cta-number {
        margin-bottom: 18px;

        font-size: 12px;
        letter-spacing: 3px;
    }

    .ra-about-cta-kicker {
        margin-bottom: 22px;

        font-size: 11px;
        letter-spacing: 2px;
    }

    .ra-about-cta-kicker::before,
    .ra-about-cta-kicker::after {
        width: 22px;
    }

    .ra-about-cta h2 {
        margin-bottom: 24px;

        font-size: 48px;
        line-height: 1.02;
        letter-spacing: -1px;
    }

    .ra-about-cta-content > p {
        margin-bottom: 32px;

        font-size: 16px;
        line-height: 1.75;
    }

    .ra-about-cta-buttons {
        flex-direction: column;
        gap: 12px;

        margin-bottom: 35px;
    }

    .ra-about-cta-btn {
        width: 100%;
        min-width: 0;

        padding: 17px 20px;

        font-size: 13px;
    }

    .ra-about-cta-details {
        flex-direction: column;
        gap: 16px;

        padding-top: 25px;
    }

    .ra-about-cta-details div {
        font-size: 15px;
    }

    .ra-about-cta-watermark {
        right: -20px;
        bottom: -10px;

        font-size: 80px;
        letter-spacing: -4px;
    }
}


/* =========================================================
   FONT AWESOME FIX
========================================================= */

.ra-about-cta i {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    font-style: normal !important;
}

.ra-about-cta .fa-brands {
    font-family: "Font Awesome 6 Brands" !important;
    font-weight: 400 !important;
}
/* =========================================================
   CLUB ROOM HERO — LUXURY EDITORIAL V2
========================================================= */

.ra-club-hero-v2 {
    position: relative;
    width: 100%;
    min-height: 780px;
    height: 88vh;
    max-height: 900px;

    overflow: hidden;

    background: #e9e1d2;
}


/* =========================================================
   MAIN IMAGE
========================================================= */

.ra-club-hero-v2-image {
    position: absolute;
    inset: 0;

    overflow: hidden;
}

.ra-club-hero-v2-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transform: scale(1.02);

    transition: transform 1.5s ease;
}

.ra-club-hero-v2:hover .ra-club-hero-v2-image img {
    transform: scale(1.045);
}


/* =========================================================
   IMAGE SHADE
========================================================= */

.ra-club-hero-v2-shade {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(12, 28, 21, 0.35) 0%,
            rgba(12, 28, 21, 0.08) 45%,
            rgba(12, 28, 21, 0.28) 100%
        );

    z-index: 1;
}


/* =========================================================
   FLOATING CARD
========================================================= */

.ra-club-hero-v2-card {
    position: absolute;

    left: 9%;
    top: 50%;

    width: min(510px, 42vw);

    padding: 48px 52px 52px;

    transform: translateY(-50%);

    background: rgba(247, 243, 235, 0.97);

    box-shadow:
        0 25px 70px rgba(0, 0, 0, 0.20);

    z-index: 4;
}


/* Card Top */

.ra-club-hero-v2-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    padding-bottom: 17px;

    margin-bottom: 32px;

    border-bottom: 1px solid rgba(30, 48, 39, 0.18);
}

.ra-club-hero-v2-card-top span:first-child {
    font-size: 12px;
    font-weight: 700;

    letter-spacing: 3px;

    color: #9b7943;
}

.ra-club-hero-v2-card-top span:last-child {
    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2.5px;

    color: #615f5c;
}


/* Kicker */

.ra-club-hero-v2-kicker {
    display: block;

    margin-bottom: 15px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 4px;

    color: #9a7845;
}


/* Heading */

.ra-club-hero-v2-card h1 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(70px, 7vw, 105px);
    line-height: 0.82;

    font-weight: 400;

    letter-spacing: -4px;

    color: #615f5c;
}

.ra-club-hero-v2-card h1 em {
    display: block;

    margin-left: 48px;

    font-size: 0.78em;

    font-style: italic;

    color: #9a7845;

    letter-spacing: -2px;
}


/* Divider */

.ra-club-hero-v2-divider {
    width: 55px;
    height: 2px;

    margin: 32px 0 25px;

    background: #b39159;
}


/* Description */

.ra-club-hero-v2-card p {
    max-width: 400px;

    margin: 0 0 30px;

    font-size: 16px;
    line-height: 1.8;

    color: #615f5c;
}


/* Link */

.ra-club-hero-v2-link {
    display: inline-flex;
    align-items: center;
    gap: 17px;

    text-decoration: none;

    padding-bottom: 9px;

    border-bottom: 1px solid #9d7b48;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.5px;
    text-transform: uppercase;

    color: #3F3D3A;
}

.ra-club-hero-v2-link i {
    color: #9d7b48;

    transition: transform 0.3s ease;
}

.ra-club-hero-v2-link:hover i {
    transform: translateX(6px);
}


/* =========================================================
   VERTICAL TITLE
========================================================= */

.ra-club-hero-v2-vertical {
    position: absolute;

    right: 38px;
    top: 50%;

    transform: translateY(-50%);

    z-index: 3;
}

.ra-club-hero-v2-vertical span {
    writing-mode: vertical-rl;

    transform: rotate(180deg);

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 5px;

    color: rgba(255, 255, 255, 0.90);
}


/* =========================================================
   BOTTOM INFO
========================================================= */

.ra-club-hero-v2-info {
    position: absolute;

    left: 9%;
    right: 9%;
    bottom: 0;

    min-height: 105px;

    display: flex;
    align-items: center;

    z-index: 5;

    border-top: 1px solid rgba(255, 255, 255, 0.35);
}


/* Info Item */

.ra-club-hero-v2-info-item {
    min-width: 230px;

    display: flex;
    align-items: center;
    gap: 15px;

    padding-right: 38px;
    margin-right: 38px;

    border-right: 1px solid rgba(255, 255, 255, 0.30);
}

.ra-club-hero-v2-info-item:last-child {
    border-right: none;
}

.ra-club-hero-v2-info-item > i {
    width: 40px;
    height: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255, 255, 255, 0.45);

    border-radius: 50%;

    font-size: 15px;

    color: #d5b77d;
}

.ra-club-hero-v2-info-item small {
    display: block;

    margin-bottom: 5px;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 2px;

    color: rgba(255, 255, 255, 0.65);
}

.ra-club-hero-v2-info-item strong {
    display: block;

    font-size: 13px;
    font-weight: 500;

    color: #fff;
}


/* =========================================================
   SCROLL
========================================================= */

.ra-club-hero-v2-scroll {
    position: absolute;

    right: 35px;
    bottom: 32px;

    z-index: 6;

    display: flex;
    align-items: center;
    gap: 12px;

    color: rgba(255, 255, 255, 0.75);

    font-size: 8px;
    letter-spacing: 2px;
}

.ra-club-hero-v2-scroll i {
    color: #d5b77d;

    animation: clubScrollArrow 1.7s infinite ease-in-out;
}

@keyframes clubScrollArrow {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(5px);
    }
}


/* =========================================================
   FONT AWESOME
========================================================= */

.ra-club-hero-v2 i {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    font-style: normal !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ra-club-hero-v2 {
        min-height: 700px;
    }

    .ra-club-hero-v2-card {
        left: 5%;

        width: 450px;

        padding: 40px;
    }

    .ra-club-hero-v2-card h1 {
        font-size: 76px;
    }

    .ra-club-hero-v2-info {
        left: 5%;
        right: 5%;
    }

    .ra-club-hero-v2-info-item {
        min-width: auto;

        padding-right: 20px;
        margin-right: 20px;
    }

    .ra-club-hero-v2-scroll {
        display: none;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-club-hero-v2 {
        height: auto;
        min-height: 760px;

        display: flex;
        flex-direction: column;

        background: #e9e1d2;
    }


    /* Image */

    .ra-club-hero-v2-image {
        position: relative;

        height: 430px;
        min-height: 430px;

        order: 1;
    }

    .ra-club-hero-v2-shade {
        background:
            linear-gradient(
                180deg,
                rgba(10, 25, 20, 0.05),
                rgba(10, 25, 20, 0.28)
            );
    }


    /* Card */

    .ra-club-hero-v2-card {
        position: relative;

        left: auto;
        top: auto;

        width: calc(100% - 32px);

        margin: -70px auto 0;

        padding: 32px 25px 38px;

        transform: none;

        z-index: 5;
    }


    /* Card Top */

    .ra-club-hero-v2-card-top {
        margin-bottom: 25px;
        padding-bottom: 13px;
    }

    .ra-club-hero-v2-card-top span:last-child {
        font-size: 8px;
    }


    /* Kicker */

    .ra-club-hero-v2-kicker {
        margin-bottom: 13px;

        font-size: 9px;
        letter-spacing: 3px;
    }


    /* Heading */

    .ra-club-hero-v2-card h1 {
        font-size: 62px;

        letter-spacing: -3px;
    }

    .ra-club-hero-v2-card h1 em {
        margin-left: 35px;
    }


    /* Description */

    .ra-club-hero-v2-card p {
        font-size: 15px;
        line-height: 1.7;
    }


    /* Vertical */

    .ra-club-hero-v2-vertical {
        right: 16px;
        top: 190px;
    }

    .ra-club-hero-v2-vertical span {
        font-size: 9px;
        letter-spacing: 3px;
    }


    /* Info */

    .ra-club-hero-v2-info {
        position: relative;

        left: auto;
        right: auto;

        width: calc(100% - 32px);

        margin: 0 auto;

        min-height: auto;

        padding: 25px 0;

        display: grid;
        grid-template-columns: 1fr;

        gap: 18px;

        border-top: 1px solid rgba(35, 50, 43, 0.18);
    }

    .ra-club-hero-v2-info-item {
        padding: 0;
        margin: 0;

        border: none;
    }

    .ra-club-hero-v2-info-item > i {
        width: 38px;
        height: 38px;

        border-color: rgba(35, 50, 43, 0.25);

        color: #9d7b48;
    }

    .ra-club-hero-v2-info-item small {
        color: #7a817c;
    }

    .ra-club-hero-v2-info-item strong {
        color: #26382f;
    }


    /* Hide scroll */

    .ra-club-hero-v2-scroll {
        display: none;
    }
}
/* =========================================================
   SECTION 02 — CLUB ROOM EXPERIENCE
========================================================= */

.ra-club-intro {
    position: relative;

    padding: 115px 7% 0;

    background: #f5f1e8;

    overflow: hidden;
}


/* Main */

.ra-club-intro-inner {
    max-width: 1250px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: 1fr 1fr;

    gap: 100px;

    padding-bottom: 100px;
}


/* =========================================================
   LEFT
========================================================= */

.ra-club-intro-heading {
    position: relative;

    padding-top: 10px;
}

.ra-club-intro-kicker {
    display: block;

    margin-bottom: 28px;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 3px;

    color: #9b7945;
}

.ra-club-intro-heading h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(52px, 5vw, 76px);
    line-height: 1.05;

    font-weight: 400;

    letter-spacing: -2.5px;

    color: #615f5c;
}

.ra-club-intro-heading h2 em {
    color: #a17e47;

    font-style: italic;
}


/* Decorative line */

.ra-club-intro-line {
    width: 80px;
    height: 2px;

    margin-top: 38px;

    background: #b7955c;
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.ra-club-intro-content {
    padding-top: 42px;

    max-width: 540px;
}

.ra-club-intro-lead {
    margin: 0 0 22px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 22px;
    line-height: 1.65;

    color: #615f5c;
}

.ra-club-intro-content > p:not(.ra-club-intro-lead) {
    margin: 0 0 35px;

    font-size: 16px;
    line-height: 1.85;

    color: #615f5c;
}


/* Link */

.ra-club-intro-link {
    display: inline-flex;
    align-items: center;
    gap: 17px;

    padding-bottom: 11px;

    border-bottom: 1px solid #9d7b48;

    text-decoration: none;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.5px;
    text-transform: uppercase;

    color: #3F3D3A;

    transition: all 0.3s ease;
}

.ra-club-intro-link i {
    color: #9d7b48;

    transition: transform 0.3s ease;
}

.ra-club-intro-link:hover {
    color: #9d7b48;
}

.ra-club-intro-link:hover i {
    transform: translateX(6px);
}


/* =========================================================
   FEATURE STRIP
========================================================= */

.ra-club-intro-features {
    max-width: 1400px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(4, 1fr);

    border-top: 1px solid rgba(31, 51, 41, 0.16);
}


/* Feature */

.ra-club-intro-feature {
    position: relative;

    min-height: 150px;

    display: flex;
    align-items: center;

    gap: 16px;

    padding: 30px 25px;

    border-right: 1px solid rgba(31, 51, 41, 0.16);
}

.ra-club-intro-feature:first-child {
    padding-left: 0;
}

.ra-club-intro-feature:last-child {
    border-right: none;
}


/* Number */

.ra-club-feature-number {
    position: absolute;

    top: 20px;
    right: 22px;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2px;

    color: #b9a98d;
}


/* Icon */

.ra-club-feature-icon {
    width: 48px;
    height: 48px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(157, 123, 72, 0.45);

    border-radius: 50%;

    color: #9d7b48;
}

.ra-club-feature-icon i {
    font-size: 17px;
}


/* Text */

.ra-club-intro-feature small {
    display: block;

    margin-bottom: 5px;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 2px;

    color: #9b7945;
}

.ra-club-intro-feature h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 17px;
    font-weight: 400;

    color: #263b31;
}


/* Font Awesome */

.ra-club-intro i {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    font-style: normal !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ra-club-intro {
        padding: 90px 5% 0;
    }

    .ra-club-intro-inner {
        gap: 55px;
    }

    .ra-club-intro-heading h2 {
        font-size: 50px;
    }

    .ra-club-intro-lead {
        font-size: 19px;
    }

    .ra-club-intro-features {
        grid-template-columns: repeat(2, 1fr);
    }

    .ra-club-intro-feature:nth-child(2) {
        border-right: none;
    }

    .ra-club-intro-feature:nth-child(-n+2) {
        border-bottom: 1px solid rgba(31, 51, 41, 0.16);
    }

    .ra-club-intro-feature:first-child {
        padding-left: 25px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-club-intro {
        padding: 75px 22px 0;
    }

    .ra-club-intro-inner {
        display: block;

        padding-bottom: 65px;
    }


    /* Heading */

    .ra-club-intro-kicker {
        margin-bottom: 20px;

        font-size: 10px;
        letter-spacing: 2.5px;
    }

    .ra-club-intro-heading h2 {
        font-size: 47px;
        line-height: 1.05;

        letter-spacing: -1.5px;
    }

    .ra-club-intro-line {
        width: 55px;

        margin-top: 28px;
    }


    /* Content */

    .ra-club-intro-content {
        padding-top: 38px;
    }

    .ra-club-intro-lead {
        font-size: 19px;
        line-height: 1.65;
    }

    .ra-club-intro-content > p:not(.ra-club-intro-lead) {
        font-size: 15px;
        line-height: 1.8;
    }


    /* Features */

    .ra-club-intro-features {
        display: block;
    }

    .ra-club-intro-feature,
    .ra-club-intro-feature:first-child {
        min-height: 105px;

        padding: 25px 10px;

        border-right: none;
        border-bottom: 1px solid rgba(31, 51, 41, 0.16);
    }

    .ra-club-intro-feature:last-child {
        border-bottom: none;
    }

    .ra-club-feature-number {
        top: 18px;
        right: 8px;
    }

    .ra-club-feature-icon {
        width: 44px;
        height: 44px;
    }

    .ra-club-feature-icon i {
        font-size: 16px;
    }

    .ra-club-intro-feature h3 {
        font-size: 17px;
    }
}
.ra-club-intro-inner {
    max-width: 1250px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: 48% 52%;
    gap: 75px;

    padding-bottom: 100px;
}


/* =========================================================
   CLUB ROOM IMAGE
========================================================= */

.ra-club-intro-image {
    position: relative;

    min-height: 570px;

    overflow: hidden;

    background: #d8d0c1;
}

.ra-club-intro-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform 1s ease;
}

.ra-club-intro-image:hover img {
    transform: scale(1.04);
}


/* Image Label */

.ra-club-intro-image-label {
    position: absolute;

    left: 25px;
    bottom: 25px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    width: calc(100% - 50px);

    padding: 16px 18px;

    background: rgba(255, 255, 255, 0.93);

    color: #615f5c;
}

.ra-club-intro-image-label span {
    font-size: 10px;
    font-weight: 700;

    letter-spacing: 2.5px;
}

.ra-club-intro-image-label strong {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 22px;
    font-weight: 400;

    color: #9b7945;
}
/* =========================================================
   SECTION 03 — CLUB ROOM GALLERY
========================================================= */

.ra-club-gallery {
    position: relative;

    padding: 120px 7% 130px;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================================
   HEADING
========================================================= */

.ra-club-gallery-heading {
    max-width: 1250px;

    margin: 0 auto 75px;

    display: grid;
    grid-template-columns: 1fr 0.8fr;

    align-items: end;

    gap: 80px;
}

.ra-club-gallery-kicker {
    display: block;

    margin-bottom: 24px;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 3px;

    color: #9a7845;
}

.ra-club-gallery-heading h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(52px, 5.5vw, 78px);
    line-height: 1;

    font-weight: 400;

    letter-spacing: -3px;

    color: #615f5c;
}

.ra-club-gallery-heading h2 em {
    color: #9a7845;
    font-style: italic;
}

.ra-club-gallery-heading > p {
    max-width: 430px;

    margin: 0;

    padding-bottom: 5px;

    font-size: 17px;
    line-height: 1.85;

    color: #615f5c;
}


/* =========================================================
   GALLERY GRID
========================================================= */

.ra-club-gallery-grid {
    max-width: 1250px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: 1.25fr 0.75fr;

    grid-template-rows: 360px 260px;

    gap: 22px;
}


/* Gallery Items */

.ra-club-gallery-item {
    position: relative;

    overflow: hidden;

    background: #ddd5c6;
}

.ra-club-gallery-item img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.9s ease;
}

.ra-club-gallery-item:hover img {
    transform: scale(1.05);
}


/* Large */

.ra-club-gallery-item.large {
    grid-row: span 2;
}


/* Small */

.ra-club-gallery-item.small {
    height: 100%;
}


/* Third */

.ra-club-gallery-item.third {
    height: 100%;
}


/* =========================================================
   IMAGE CAPTION
========================================================= */

.ra-club-gallery-caption {
    position: absolute;

    left: 20px;
    right: 20px;
    bottom: 20px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 13px 15px;

    background: #3F3D3A;

    backdrop-filter: blur(5px);

    color: #fff;
}

.ra-club-gallery-caption span {
    font-size: 10px;
    font-weight: 700;

    letter-spacing: 2px;

    color: #d2b579;
}

.ra-club-gallery-caption strong {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 16px;
    font-weight: 400;
}


/* =========================================================
   NOTE BLOCK
========================================================= */

.ra-club-gallery-note {
    position: relative;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 35px 40px;

    background: #eee7d9;
}

.ra-club-gallery-note-number {
    display: block;

    margin-bottom: 22px;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 3px;

    color: #9a7845;
}

.ra-club-gallery-note p {
    max-width: 360px;

    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 22px;
    line-height: 1.55;

    color: #615f5c;
}

.ra-club-gallery-note-line {
    width: 50px;
    height: 2px;

    margin-top: 28px;

    background: #b49157;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ra-club-gallery {
        padding: 90px 5% 100px;
    }

    .ra-club-gallery-heading {
        gap: 45px;
        margin-bottom: 55px;
    }

    .ra-club-gallery-heading h2 {
        font-size: 54px;
    }

    .ra-club-gallery-grid {
        grid-template-rows: 300px 230px;
        gap: 16px;
    }

    .ra-club-gallery-note {
        padding: 25px;
    }

    .ra-club-gallery-note p {
        font-size: 19px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-club-gallery {
        padding: 75px 20px 80px;
    }


    /* Heading */

    .ra-club-gallery-heading {
        display: block;

        margin-bottom: 42px;
    }

    .ra-club-gallery-kicker {
        margin-bottom: 18px;

        font-size: 10px;
        letter-spacing: 2.5px;
    }

    .ra-club-gallery-heading h2 {
        font-size: 47px;
        line-height: 1.02;

        letter-spacing: -1.5px;
    }

    .ra-club-gallery-heading > p {
        margin-top: 28px;

        font-size: 15px;
        line-height: 1.8;
    }


    /* Gallery */

    .ra-club-gallery-grid {
        display: flex;
        flex-direction: column;

        gap: 15px;
    }

    .ra-club-gallery-item.large {
        height: 430px;
    }

    .ra-club-gallery-item.small {
        height: 280px;
    }

    .ra-club-gallery-note {
        min-height: 250px;

        padding: 32px 25px;
    }

    .ra-club-gallery-note p {
        font-size: 20px;
        line-height: 1.55;
    }

    .ra-club-gallery-item.third {
        height: 300px;
    }

    .ra-club-gallery-caption {
        left: 14px;
        right: 14px;
        bottom: 14px;
    }
}
/* =========================================================
   CLUB ROOM SECTION 02 — MOBILE FIX
   Paste this CSS at the VERY END of your stylesheet
========================================================= */

@media (max-width: 767px) {

    /* Prevent horizontal overflow */
    .ra-club-intro {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;

        padding: 70px 20px 0 !important;

        overflow: hidden;
    }

    .ra-club-intro *,
    .ra-club-intro *::before,
    .ra-club-intro *::after {
        box-sizing: border-box;
    }


    /* =====================================================
       MAIN SECTION — FORCE VERTICAL STACK
    ===================================================== */

    .ra-club-intro-inner {
        width: 100% !important;
        max-width: 100% !important;

        display: flex !important;
        flex-direction: column !important;

        grid-template-columns: none !important;

        gap: 42px !important;

        margin: 0 !important;
        padding: 0 0 60px !important;
    }


    /* =====================================================
       IMAGE
    ===================================================== */

    .ra-club-intro-image {
        position: relative;

        width: 100% !important;
        max-width: 100% !important;

        height: 390px !important;
        min-height: 390px !important;

        flex: none !important;

        order: 1 !important;

        overflow: hidden;
    }

    .ra-club-intro-image img {
        width: 100% !important;
        height: 100% !important;

        max-width: 100% !important;

        display: block;

        object-fit: cover;
        object-position: center;
    }


    /* =====================================================
       IMAGE LABEL
    ===================================================== */

    .ra-club-intro-image-label {
        left: 15px !important;
        right: 15px !important;
        bottom: 15px !important;

        width: auto !important;
        max-width: none !important;

        padding: 14px 15px !important;
    }


    /* =====================================================
       CONTENT
    ===================================================== */

    .ra-club-intro-content {
        width: 100% !important;
        max-width: 100% !important;

        min-width: 0 !important;

        padding: 0 !important;
        margin: 0 !important;

        order: 2 !important;
    }


    /* Kicker */

    .ra-club-intro-kicker {
        display: block;

        width: 100%;

        margin-bottom: 18px !important;

        font-size: 10px !important;
        line-height: 1.5;

        letter-spacing: 2.5px;
    }


    /* Heading */

    .ra-club-intro-heading {
        width: 100%;

        padding: 0 !important;
        margin: 0 !important;
    }

    .ra-club-intro-heading h2,
    .ra-club-intro-content h2 {
        width: 100% !important;
        max-width: 100% !important;

        margin: 0 0 25px !important;

        font-size: 44px !important;
        line-height: 1.05 !important;

        letter-spacing: -1.5px !important;

        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }


    /* Decorative line */

    .ra-club-intro-line {
        width: 55px !important;
        height: 2px;

        margin: 0 0 28px !important;
    }


    /* Lead */

    .ra-club-intro-lead {
        width: 100% !important;
        max-width: 100% !important;

        margin: 0 0 20px !important;

        font-size: 18px !important;
        line-height: 1.65 !important;
    }


    /* Paragraph */

    .ra-club-intro-content > p:not(.ra-club-intro-lead) {
        width: 100% !important;
        max-width: 100% !important;

        margin: 0 0 28px !important;

        font-size: 15px !important;
        line-height: 1.8 !important;

        overflow-wrap: break-word;
    }


    /* Button */

    .ra-club-intro-link {
        display: inline-flex !important;

        max-width: 100%;

        font-size: 12px !important;
    }


    /* =====================================================
       FEATURES
    ===================================================== */

    .ra-club-intro-features {
        width: 100% !important;
        max-width: 100% !important;

        display: flex !important;
        flex-direction: column !important;

        grid-template-columns: none !important;

        margin: 0 !important;
    }

    .ra-club-intro-feature,
    .ra-club-intro-feature:first-child {
        width: 100% !important;
        max-width: 100% !important;

        min-height: 100px !important;

        padding: 24px 8px !important;
        margin: 0 !important;

        border-right: none !important;
    }


    /* Feature number */

    .ra-club-feature-number {
        top: 18px !important;
        right: 5px !important;
    }


    /* Feature icon */

    .ra-club-feature-icon {
        flex-shrink: 0;

        width: 44px !important;
        height: 44px !important;
    }


    /* Feature title */

    .ra-club-intro-feature h3 {
        margin: 0;

        font-size: 17px !important;
        line-height: 1.3;
    }
}
/* =========================================================
   SECTION 04 — CLUB ROOM AMENITIES
========================================================= */

.ra-club-amenities {
    position: relative;

    padding: 120px 7%;

    background: #3F3D3A;

    overflow: hidden;
}

.ra-club-amenities-inner {
    max-width: 1250px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: 43% 57%;

    align-items: stretch;
}


/* =========================================================
   LEFT IMAGE
========================================================= */

.ra-club-amenities-visual {
    position: relative;

    min-height: 690px;

    overflow: hidden;

    background: #24382f;
}

.ra-club-amenities-visual img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform 1s ease;
}

.ra-club-amenities-visual:hover img {
    transform: scale(1.04);
}


/* Image overlay */

.ra-club-amenities-visual::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(12, 29, 22, 0.05),
            rgba(12, 29, 22, 0.65)
        );
}


/* Image Text */

.ra-club-amenities-image-text {
    position: absolute;

    left: 32px;
    bottom: 32px;

    z-index: 2;
}

.ra-club-amenities-image-text span {
    display: block;

    margin-bottom: 10px;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 3px;

    color: #d4b477;
}

.ra-club-amenities-image-text strong {
    display: block;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 28px;
    line-height: 1.05;

    font-weight: 400;

    color: #fff;
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.ra-club-amenities-content {
    padding: 55px 55px 50px;

    background: #615f5c;
}


/* Kicker */

.ra-club-amenities-kicker {
    display: block;

    margin-bottom: 25px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 3px;

    color: #d0ad70;
}


/* Heading */

.ra-club-amenities-content h2 {
    margin: 0 0 25px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(43px, 4vw, 62px);
    line-height: 1.02;

    font-weight: 400;

    letter-spacing: -2px;

    color: #fff;
}

.ra-club-amenities-content h2 em {
    color: #d2b77f;
    font-style: italic;
}


/* Intro */

.ra-club-amenities-intro {
    max-width: 490px;

    margin: 0 0 35px;

    font-size: 16px;
    line-height: 1.8;

    color: rgba(255, 255, 255, 0.70);
}


/* =========================================================
   AMENITY LIST
========================================================= */

.ra-club-amenity-list {
    border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.ra-club-amenity {
    position: relative;

    min-height: 78px;

    display: grid;
    grid-template-columns: 30px 45px 1fr;

    align-items: center;

    gap: 15px;

    border-bottom: 1px solid rgba(255, 255, 255, 0.13);

    transition: all 0.35s ease;
}

.ra-club-amenity:hover {
    padding-left: 8px;
}


/* Number */

.ra-club-amenity-no {
    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1px;

    color: #9d8c70;
}


/* Icon */

.ra-club-amenity > i {
    width: 39px;
    height: 39px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(207, 174, 111, 0.45);

    border-radius: 50%;

    font-size: 14px;

    color: #d3b374;

    transition: all 0.3s ease;
}

.ra-club-amenity:hover > i {
    background: #d3b374;

    color: #1c3027;
}


/* Text */

.ra-club-amenity strong {
    display: block;

    margin-bottom: 4px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 17px;
    font-weight: 400;

    color: #fff;
}

.ra-club-amenity small {
    display: block;

    font-size: 12px;
    line-height: 1.5;

    color: rgba(255, 255, 255, 0.52);
}


/* Font Awesome */

.ra-club-amenities i {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    font-style: normal !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ra-club-amenities {
        padding: 90px 5%;
    }

    .ra-club-amenities-inner {
        grid-template-columns: 40% 60%;
    }

    .ra-club-amenities-visual {
        min-height: 650px;
    }

    .ra-club-amenities-content {
        padding: 45px 35px;
    }

    .ra-club-amenities-content h2 {
        font-size: 43px;
    }

    .ra-club-amenity {
        grid-template-columns: 25px 40px 1fr;

        gap: 10px;
    }

    .ra-club-amenity strong {
        font-size: 15px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-club-amenities {
        padding: 75px 20px 80px;
    }

    .ra-club-amenities-inner {
        display: flex;
        flex-direction: column;
    }


    /* Image */

    .ra-club-amenities-visual {
        width: 100%;

        height: 390px;
        min-height: 390px;

        order: 1;
    }

    .ra-club-amenities-image-text {
        left: 22px;
        bottom: 22px;
    }

    .ra-club-amenities-image-text strong {
        font-size: 24px;
    }


    /* Content */

    .ra-club-amenities-content {
        order: 2;

        padding: 45px 22px 35px;
    }

    .ra-club-amenities-kicker {
        margin-bottom: 20px;

        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .ra-club-amenities-content h2 {
        margin-bottom: 22px;

        font-size: 43px;
        line-height: 1.05;

        letter-spacing: -1.5px;
    }

    .ra-club-amenities-intro {
        margin-bottom: 30px;

        font-size: 15px;
        line-height: 1.75;
    }


    /* Amenity */

    .ra-club-amenity {
        min-height: 88px;

        grid-template-columns: 25px 42px 1fr;

        gap: 10px;
    }

    .ra-club-amenity:hover {
        padding-left: 0;
    }

    .ra-club-amenity > i {
        width: 38px;
        height: 38px;

        font-size: 13px;
    }

    .ra-club-amenity strong {
        font-size: 16px;
    }

    .ra-club-amenity small {
        font-size: 11px;
    }
}
/* =========================================================
   SECTION 05 — YOUR STAY, YOUR COMFORT
========================================================= */

.ra-club-comfort {
    position: relative;

    padding: 120px 7% 45px;

    background: #eee7d9;

    overflow: hidden;
}


/* =========================================================
   HEADER
========================================================= */

.ra-club-comfort-header {
    max-width: 1250px;

    margin: 0 auto 75px;

    display: grid;
    grid-template-columns: 1fr 0.65fr;

    gap: 80px;

    align-items: end;
}

.ra-club-comfort-kicker {
    display: block;

    margin-bottom: 25px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 3px;

    color: #9b7945;
}

.ra-club-comfort-title h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(55px, 5.5vw, 80px);
    line-height: 0.98;

    font-weight: 400;

    letter-spacing: -3px;

    color: #615f5c;
}

.ra-club-comfort-title h2 em {
    color: #9b7945;

    font-style: italic;
}

.ra-club-comfort-intro {
    padding-bottom: 5px;
}

.ra-club-comfort-intro p {
    max-width: 410px;

    margin: 0;

    font-size: 17px;
    line-height: 1.85;

    color: #615f5c;
}


/* =========================================================
   COMFORT LIST
========================================================= */

.ra-club-comfort-list {
    max-width: 1250px;

    margin: 0 auto;

    border-top: 1px solid rgba(30, 51, 41, 0.20);
}


/* Item */

.ra-club-comfort-item {
    position: relative;

    min-height: 165px;

    display: grid;

    grid-template-columns: 45px 55px 1fr 0.85fr 35px;

    align-items: center;

    gap: 25px;

    padding: 25px 10px;

    border-bottom: 1px solid rgba(30, 51, 41, 0.20);

    transition: all 0.4s ease;
}


/* Hover */

.ra-club-comfort-item:hover {
    padding-left: 25px;
    padding-right: 25px;

    background: rgba(255, 255, 255, 0.52);
}


/* Number */

.ra-club-comfort-number {
    align-self: start;

    padding-top: 5px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 2px;

    color: #a8906b;
}


/* Icon */

.ra-club-comfort-icon {
    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(155, 121, 69, 0.50);

    border-radius: 50%;

    color: #9b7945;

    transition: all 0.35s ease;
}

.ra-club-comfort-item:hover .ra-club-comfort-icon {
    background: #615f5c;

    border-color: #615f5c;

    color: #d7b97f;
}


/* Text */

.ra-club-comfort-text > span {
    display: block;

    margin-bottom: 9px;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2.5px;

    color: #9b7945;
}

.ra-club-comfort-text h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 25px;
    line-height: 1.15;

    font-weight: 400;

    color: #615f5c;
}


/* Description */

.ra-club-comfort-item > p {
    margin: 0;

    font-size: 14px;
    line-height: 1.7;

    color: #615f5c;
}


/* Arrow */

.ra-club-comfort-arrow {
    width: 35px;
    height: 35px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(30, 51, 41, 0.25);

    border-radius: 50%;

    color: #9b7945;

    transition: all 0.35s ease;
}

.ra-club-comfort-item:hover .ra-club-comfort-arrow {
    background: #9b7945;

    border-color: #9b7945;

    color: #fff;

    transform: translateX(5px);
}


/* Bottom */

.ra-club-comfort-bottom {
    max-width: 1250px;

    margin: 0 auto;

    padding-top: 28px;

    display: flex;
    justify-content: space-between;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2.5px;

    color: #8b877e;
}


/* Font Awesome */

.ra-club-comfort i {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    font-style: normal !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ra-club-comfort {
        padding: 90px 5% 40px;
    }

    .ra-club-comfort-header {
        gap: 45px;
    }

    .ra-club-comfort-title h2 {
        font-size: 55px;
    }

    .ra-club-comfort-item {
        grid-template-columns: 35px 50px 1fr 0.7fr 30px;

        gap: 15px;
    }

    .ra-club-comfort-text h3 {
        font-size: 20px;
    }

    .ra-club-comfort-item > p {
        font-size: 13px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-club-comfort {
        padding: 75px 20px 35px;
    }


    /* Header */

    .ra-club-comfort-header {
        display: block;

        margin-bottom: 45px;
    }

    .ra-club-comfort-kicker {
        margin-bottom: 19px;

        font-size: 10px;
        letter-spacing: 2.5px;
    }

    .ra-club-comfort-title h2 {
        font-size: 46px;
        line-height: 1.03;

        letter-spacing: -1.5px;
    }

    .ra-club-comfort-intro {
        margin-top: 28px;
    }

    .ra-club-comfort-intro p {
        font-size: 15px;
        line-height: 1.8;
    }


    /* Items */

    .ra-club-comfort-item {
        min-height: auto;

        display: grid;

        grid-template-columns: 35px 45px 1fr;

        gap: 12px;

        padding: 27px 3px;

        align-items: start;
    }

    .ra-club-comfort-item:hover {
        padding-left: 3px;
        padding-right: 3px;
    }

    .ra-club-comfort-number {
        padding-top: 4px;
    }

    .ra-club-comfort-icon {
        width: 42px;
        height: 42px;

        margin-top: -3px;
    }

    .ra-club-comfort-text > span {
        margin-bottom: 7px;

        font-size: 8px;
        letter-spacing: 2px;
    }

    .ra-club-comfort-text h3 {
        font-size: 20px;
        line-height: 1.2;
    }

    .ra-club-comfort-item > p {
        grid-column: 3;

        margin-top: 2px;

        font-size: 13px;
        line-height: 1.7;
    }

    .ra-club-comfort-arrow {
        display: none;
    }


    /* Bottom */

    .ra-club-comfort-bottom {
        padding-top: 24px;

        font-size: 8px;
        letter-spacing: 1.8px;
    }
}
/* =========================================================
   SECTION 06 — CLUB ROOM FINAL CTA
========================================================= */

.ra-club-booking {
    position: relative;

    padding: 115px 7% 35px;

    background: #f5f0e7;

    overflow: hidden;
}

.ra-club-booking-inner {
    max-width: 1250px;

    min-height: 560px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: 48% 52%;

    background: #615f5c;
}


/* =========================================================
   LEFT CONTENT
========================================================= */

.ra-club-booking-content {
    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 65px 60px;

    color: #fff;
}


/* Kicker */

.ra-club-booking-kicker {
    display: block;

    margin-bottom: 25px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 3px;

    color: #d2b477;
}


/* Heading */

.ra-club-booking-content h2 {
    margin: 0 0 28px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(48px, 5vw, 72px);
    line-height: 1;

    font-weight: 400;

    letter-spacing: -2.5px;

    color: #fff;
}

.ra-club-booking-content h2 em {
    display: block;

    color: #d4b97f;

    font-style: italic;
}


/* Paragraph */

.ra-club-booking-content > p {
    max-width: 460px;

    margin: 0 0 38px;

    font-size: 16px;
    line-height: 1.8;

    color: rgba(255, 255, 255, 0.70);
}


/* =========================================================
   ACTIONS
========================================================= */

.ra-club-booking-actions {
    display: flex;
    align-items: center;

    gap: 18px;
}


/* Primary */

.ra-club-booking-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 16px;

    padding: 16px 23px;

    background: #3F3D3A;

    border: 1px solid #d1b171;

    text-decoration: none;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.5px;
    text-transform: uppercase;

    color: whitesmoke;

    transition: all 0.35s ease;
}

.ra-club-booking-primary i {
    transition: transform 0.3s ease;
}

.ra-club-booking-primary:hover {
    background: #fff;

    border-color: #fff;
}

.ra-club-booking-primary:hover i {
    transform: translateX(6px);
}


/* WhatsApp */

.ra-club-booking-whatsapp {
    display: flex;
    align-items: center;

    gap: 12px;

    text-decoration: none;

    color: #fff;
}

.ra-club-booking-whatsapp > i {
    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255, 255, 255, 0.28);

    border-radius: 50%;

    font-size: 18px;

    color: #d4b97f;
}

.ra-club-booking-whatsapp span {
    display: flex;
    flex-direction: column;

    gap: 4px;

    font-size: 13px;
}

.ra-club-booking-whatsapp small {
    font-size: 8px;
    font-weight: 700;

    letter-spacing: 1.5px;

    color: rgba(255, 255, 255, 0.48);
}

.ra-club-booking-whatsapp:hover > i {
    background: #d1b171;

    border-color: #d1b171;

    color: #1d3027;
}


/* =========================================================
   RIGHT IMAGE
========================================================= */

.ra-club-booking-image {
    position: relative;

    min-height: 560px;

    overflow: hidden;
}

.ra-club-booking-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 1s ease;
}

.ra-club-booking-image:hover img {
    transform: scale(1.035);
}


/* Image Overlay */

.ra-club-booking-image::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(16, 30, 24, 0.02),
            rgba(16, 30, 24, 0.42)
        );
}


/* Image Label */

.ra-club-booking-image-label {
    position: absolute;

    left: 30px;
    right: 30px;
    bottom: 30px;

    z-index: 3;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 20px;

    padding-top: 18px;

    border-top: 1px solid rgba(255, 255, 255, 0.38);

    color: #fff;
}

.ra-club-booking-image-label span {
    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2.5px;

    color: #e0c48c;
}

.ra-club-booking-image-label strong {
    font-size: 9px;
    font-weight: 500;

    letter-spacing: 2px;

    color: rgba(255, 255, 255, 0.75);
}


/* =========================================================
   BOTTOM LINE
========================================================= */

.ra-club-booking-bottom {
    max-width: 1250px;

    margin: 0 auto;

    padding-top: 27px;

    display: flex;
    justify-content: space-between;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2.5px;

    color: #8c887e;
}


/* Font Awesome */

.ra-club-booking i {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    font-style: normal !important;
}

.ra-club-booking .fa-brands {
    font-family: "Font Awesome 6 Brands" !important;
    font-weight: 400 !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .ra-club-booking {
        padding: 90px 5% 30px;
    }

    .ra-club-booking-inner {
        grid-template-columns: 48% 52%;

        min-height: 520px;
    }

    .ra-club-booking-content {
        padding: 45px 35px;
    }

    .ra-club-booking-content h2 {
        font-size: 48px;
    }

    .ra-club-booking-image {
        min-height: 520px;
    }

    .ra-club-booking-actions {
        flex-direction: column;
        align-items: flex-start;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-club-booking {
        padding: 70px 20px 30px;
    }

    .ra-club-booking-inner {
        width: 100%;

        display: flex;
        flex-direction: column;

        min-height: auto;

        margin: 0;
    }


    /* Image First */

    .ra-club-booking-image {
        order: 1;

        width: 100%;

        height: 360px;
        min-height: 360px;
    }

    .ra-club-booking-image-label {
        left: 18px;
        right: 18px;
        bottom: 18px;

        display: block;
    }

    .ra-club-booking-image-label strong {
        display: block;

        margin-top: 7px;
    }


    /* Content */

    .ra-club-booking-content {
        order: 2;

        padding: 45px 24px 48px;
    }

    .ra-club-booking-kicker {
        margin-bottom: 19px;

        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .ra-club-booking-content h2 {
        margin-bottom: 23px;

        font-size: 45px;
        line-height: 1.04;

        letter-spacing: -1.5px;
    }

    .ra-club-booking-content > p {
        margin-bottom: 30px;

        font-size: 15px;
        line-height: 1.75;
    }


    /* Actions */

    .ra-club-booking-actions {
        display: flex;
        flex-direction: column;
        align-items: stretch;

        gap: 18px;
    }

    .ra-club-booking-primary {
        width: 100%;

        padding: 17px 20px;
    }

    .ra-club-booking-whatsapp {
        width: 100%;
    }


    /* Bottom */

    .ra-club-booking-bottom {
        display: block;

        padding-top: 22px;

        font-size: 8px;
        line-height: 2;

        letter-spacing: 1.7px;
    }

    .ra-club-booking-bottom span {
        display: block;
    }

    .ra-club-booking-bottom span:last-child {
        margin-top: 3px;
    }
}
/* =====================================================
   GRAND ARCH HERO
   Grand Invitation / Event Style
===================================================== */

.grand-arch-hero {
    position: relative;
    width: 100%;
    height: 860px;
    overflow: hidden;
    background: #142f27;
}


/* =====================================================
   BACKGROUND IMAGE
===================================================== */

.grand-arch-hero-bg {
    position: absolute;
    inset: 0;
}

.grand-arch-hero-bg img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}


/* =====================================================
   IMAGE SHADE
===================================================== */

.grand-arch-hero-shade {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            rgba(15, 37, 31, .28),
            rgba(15, 37, 31, .28)
        ),
        linear-gradient(
            180deg,
            rgba(10, 29, 24, .18) 0%,
            rgba(10, 29, 24, .15) 35%,
            rgba(10, 29, 24, .72) 100%
        );
}


/* =====================================================
   TOP LINE
===================================================== */

.grand-arch-hero-top {
    position: absolute;
    z-index: 5;

    top: 34px;
    left: 5%;
    right: 5%;

    display: flex;
    justify-content: space-between;
    align-items: center;

    padding-bottom: 18px;

    border-bottom: 1px solid rgba(255,255,255,.28);

    color: rgba(255,255,255,.82);
}

.grand-arch-hero-top span {
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 3px;
}


/* =====================================================
   MAIN CENTER CONTENT
===================================================== */

.grand-arch-hero-main {
    position: absolute;
    z-index: 4;

    left: 50%;
    top: 50%;

    width: 90%;
    max-width: 1100px;

    transform: translate(-50%, -46%);

    text-align: center;

    color: #f7f0e3;
}


/* SMALL TITLE */

.grand-arch-small-title {
    margin-bottom: 23px;

    font-size: 10px;
    font-weight: 600;
    letter-spacing: 5px;

    color: #d2b174;
}


/* =====================================================
   HUGE TITLE
===================================================== */

.grand-arch-hero-main h1 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(100px, 15vw, 220px);

    font-weight: 400;
    line-height: .72;

    letter-spacing: -10px;

    color: #f8f1e5;

    text-shadow:
        0 8px 35px rgba(0,0,0,.25);
}

.grand-arch-hero-main h1 span {
    display: block;

    margin-top: 22px;

    font-size: .62em;

    font-style: italic;

    color: #d5b477;

    letter-spacing: -4px;
}


/* =====================================================
   RULE
===================================================== */

.grand-arch-hero-rule {
    width: 90px;
    height: 1px;

    margin: 47px auto 25px;

    background: #d0ae70;
}


/* DESCRIPTION */

.grand-arch-hero-main p {
    max-width: 430px;

    margin: 0 auto 30px;

    font-size: 16px;
    line-height: 1.7;

    color: rgba(255,255,255,.82);
}


/* =====================================================
   DISCOVER BUTTON
===================================================== */

.grand-arch-discover {
    display: inline-flex;
    align-items: center;
    gap: 16px;

    text-decoration: none;

    color: #fff;

    font-size: 10px;
    font-weight: 600;
    letter-spacing: 2.5px;
    text-transform: uppercase;
}

.grand-arch-discover i {
    width: 38px;
    height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #d2b174;
    border-radius: 50%;

    color: #d2b174;

    transition: .35s ease;
}

.grand-arch-discover:hover i {
    background: #d2b174;
    color: #142f27;
    transform: translateY(5px);
}


/* =====================================================
   DECORATIVE STAMP
===================================================== */

.grand-arch-hero-stamp {
    position: absolute;
    z-index: 5;

    right: 7%;
    top: 50%;

    width: 118px;
    height: 118px;

    transform: translateY(-50%) rotate(-12deg);

    border: 1px solid rgba(210,177,116,.65);
    border-radius: 50%;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    text-align: center;

    color: #d2b174;
}

.grand-arch-hero-stamp::before {
    content: "";

    position: absolute;

    inset: 7px;

    border: 1px solid rgba(210,177,116,.3);
    border-radius: 50%;
}

.grand-arch-hero-stamp span {
    font-size: 7px;
    letter-spacing: 3px;
}

.grand-arch-hero-stamp strong {
    margin: 3px 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 23px;
    font-weight: 400;
}

.grand-arch-hero-stamp small {
    font-size: 6px;
    letter-spacing: 2px;
}


/* =====================================================
   BOTTOM RIBBON
===================================================== */

.grand-arch-hero-bottom {
    position: absolute;
    z-index: 6;

    left: 5%;
    right: 5%;
    bottom: 0;

    min-height: 88px;

    border-top: 1px solid rgba(255,255,255,.28);

    display: grid;
    grid-template-columns: 1fr 2fr 1fr;

    align-items: center;
}


/* LEFT */

.grand-arch-bottom-left {
    display: flex;
    align-items: center;
    gap: 14px;
}

.grand-arch-bottom-left span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 16px;
    color: #d2b174;
}

.grand-arch-bottom-left p {
    margin: 0;

    font-size: 8px;
    font-weight: 600;
    letter-spacing: 2px;

    color: rgba(255,255,255,.72);
}


/* CENTER */

.grand-arch-bottom-center {
    display: flex;
    justify-content: center;
    gap: 35px;
}

.grand-arch-bottom-center span {
    font-size: 8px;
    font-weight: 600;
    letter-spacing: 2px;

    color: rgba(255,255,255,.68);
}


/* RIGHT */

.grand-arch-bottom-right {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
}

.grand-arch-bottom-right span {
    font-size: 7px;
    letter-spacing: 2px;
    color: rgba(255,255,255,.6);
}

.grand-arch-bottom-right i {
    color: #d2b174;
    font-size: 11px;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1100px) {

    .grand-arch-hero-main h1 {
        font-size: 130px;
    }

    .grand-arch-hero-stamp {
        right: 4%;
        width: 95px;
        height: 95px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .grand-arch-hero {
        height: 760px;
    }


    /* TOP */

    .grand-arch-hero-top {
        top: 22px;
        left: 20px;
        right: 20px;

        padding-bottom: 13px;
    }

    .grand-arch-hero-top span {
        font-size: 6px;
        letter-spacing: 1.7px;
    }


    /* MAIN */

    .grand-arch-hero-main {
        width: calc(100% - 40px);

        top: 47%;

        transform: translate(-50%, -50%);
    }


    .grand-arch-small-title {
        margin-bottom: 20px;

        font-size: 7px;
        letter-spacing: 2.7px;
    }


    /* BIG TITLE */

    .grand-arch-hero-main h1 {
        font-size: 70px;

        line-height: .78;

        letter-spacing: -3px;
    }

    .grand-arch-hero-main h1 span {
        margin-top: 12px;

        font-size: .72em;

        letter-spacing: -2px;
    }


    /* RULE */

    .grand-arch-hero-rule {
        width: 55px;

        margin: 30px auto 20px;
    }


    /* TEXT */

    .grand-arch-hero-main p {
        max-width: 310px;

        font-size: 14px;
        line-height: 1.65;

        margin-bottom: 23px;
    }


    /* BUTTON */

    .grand-arch-discover {
        font-size: 8px;
        letter-spacing: 1.6px;
    }

    .grand-arch-discover i {
        width: 33px;
        height: 33px;
        font-size: 9px;
    }


    /* STAMP */

    .grand-arch-hero-stamp {
        width: 76px;
        height: 76px;

        right: 18px;
        top: 125px;
    }

    .grand-arch-hero-stamp strong {
        font-size: 15px;
    }

    .grand-arch-hero-stamp span {
        font-size: 5px;
    }

    .grand-arch-hero-stamp small {
        font-size: 4px;
    }


    /* BOTTOM */

    .grand-arch-hero-bottom {
        left: 20px;
        right: 20px;

        min-height: 75px;

        display: flex;
        justify-content: center;
    }


    .grand-arch-bottom-left,
    .grand-arch-bottom-right {
        display: none;
    }

    .grand-arch-bottom-center {
        width: 100%;

        justify-content: space-between;

        gap: 10px;
    }

    .grand-arch-bottom-center span {
        font-size: 6px;
        letter-spacing: 1px;
    }

}
/* =====================================================
   GRAND ARCH HERO — TEXT SIZE UPGRADE
===================================================== */

/* Top text */
.grand-arch-hero-top span {
    font-size: 11px;
    letter-spacing: 3px;
}

/* Small category */
.grand-arch-small-title {
    font-size: 12px;
    letter-spacing: 5px;
}

/* Main heading */
.grand-arch-hero-main h1 {
    font-size: clamp(115px, 16vw, 235px);
}

/* Description */
.grand-arch-hero-main p {
    max-width: 500px;
    font-size: 18px;
    line-height: 1.75;
}

/* Discover button */
.grand-arch-discover {
    font-size: 12px;
    letter-spacing: 2.5px;
}

.grand-arch-discover i {
    width: 44px;
    height: 44px;
    font-size: 13px;
}

/* Royal stamp */
.grand-arch-hero-stamp span {
    font-size: 8px;
}

.grand-arch-hero-stamp strong {
    font-size: 26px;
}

.grand-arch-hero-stamp small {
    font-size: 7px;
}

/* Bottom ribbon */
.grand-arch-bottom-left span {
    font-size: 18px;
}

.grand-arch-bottom-left p,
.grand-arch-bottom-center span,
.grand-arch-bottom-right span {
    font-size: 10px;
    letter-spacing: 2px;
}

.grand-arch-bottom-right i {
    font-size: 13px;
}


/* =====================================================
   MOBILE TEXT SIZE
===================================================== */

@media (max-width: 767px) {

    .grand-arch-hero-top span {
        font-size: 8px;
        letter-spacing: 2px;
    }

    .grand-arch-small-title {
        font-size: 9px;
        letter-spacing: 3px;
    }

    .grand-arch-hero-main h1 {
        font-size: 78px;
        line-height: .82;
        letter-spacing: -3px;
    }

    .grand-arch-hero-main h1 span {
        font-size: .72em;
    }

    .grand-arch-hero-main p {
        max-width: 340px;
        font-size: 16px;
        line-height: 1.7;
    }

    .grand-arch-discover {
        font-size: 10px;
        letter-spacing: 1.8px;
    }

    .grand-arch-discover i {
        width: 38px;
        height: 38px;
        font-size: 11px;
    }

    .grand-arch-hero-stamp span {
        font-size: 6px;
    }

    .grand-arch-hero-stamp strong {
        font-size: 18px;
    }

    .grand-arch-hero-stamp small {
        font-size: 5px;
    }

    .grand-arch-bottom-center span {
        font-size: 7px;
        letter-spacing: 1.2px;
    }
}
/* =====================================================
   GRAND ARCH — SECTION 02
===================================================== */

.ra-grand-intro {
    width: 100%;
    padding: 125px 9% 120px;
    box-sizing: border-box;

    background: #f0e9dc;
    color: #615f5c;
}


/* =====================================================
   TOP
===================================================== */

.ra-grand-intro-top {
    display: grid;
    grid-template-columns: auto 1fr 1.4fr;
    align-items: center;
    gap: 25px;

    margin-bottom: 75px;
}

.ra-grand-intro-number {
    display: flex;
    align-items: center;
    gap: 15px;
}

.ra-grand-intro-number span:first-child {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 20px;
    color: #b18a4d;
}

.ra-grand-intro-number span:last-child {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 3px;
    color: #615f5c;
}

.ra-grand-intro-line {
    height: 1px;
    background: #cfc4b2;
}

.ra-grand-intro-top > p {
    margin: 0;
    max-width: 390px;

    justify-self: end;

    font-size: 15px;
    line-height: 1.7;
    color: #615f5c;
}


/* =====================================================
   MAIN HEADING
===================================================== */

.ra-grand-intro-heading {
    max-width: 1100px;
}

.ra-grand-intro-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 4px;

    color: #a17b3e;
}

.ra-grand-intro-heading h2 {
    margin: 0;

    max-width: 1050px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(58px, 7vw, 105px);
    font-weight: 400;
    line-height: .95;
    letter-spacing: -4px;

    color: #615f5c;
}

.ra-grand-intro-heading h2 em {
    font-style: italic;
    font-weight: 400;
    color: #aa8448;
}


/* =====================================================
   BOTTOM CONTENT
===================================================== */

.ra-grand-intro-bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 100px;

    margin-top: 85px;
    padding-top: 55px;

    border-top: 1px solid #d2c8b8;
}


/* DESCRIPTION */

.ra-grand-intro-description {
    max-width: 560px;
}

.ra-grand-intro-description p {
    margin: 0 0 20px;

    font-size: 16px;
    line-height: 1.85;

    color: #3F3D3A;
}

.ra-grand-intro-description .ra-grand-intro-lead {
    margin-bottom: 22px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
    line-height: 1.5;

    color: #615f5c;
}


/* LINK */

.ra-grand-intro-link {
    display: inline-flex;
    align-items: center;
    gap: 16px;

    margin-top: 20px;
    padding-bottom: 10px;

    border-bottom: 1px solid #b18a4d;

    text-decoration: none;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;

    color: #615f5c;
}

.ra-grand-intro-link i {
    color: #b18a4d;
    transition: transform .3s ease;
}

.ra-grand-intro-link:hover i {
    transform: translateX(6px);
}


/* =====================================================
   DETAILS
===================================================== */

.ra-grand-intro-details {
    display: flex;
    flex-direction: column;
}

.ra-grand-detail-item {
    display: grid;
    grid-template-columns: 45px 1fr;

    padding: 22px 0;

    border-bottom: 1px solid #d2c8b8;
}

.ra-grand-detail-item:first-child {
    padding-top: 0;
}

.ra-grand-detail-item > span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 14px;

    color: #b18a4d;
}

.ra-grand-detail-item div {
    display: grid;
    grid-template-columns: 30px 1fr auto;
    align-items: center;
    gap: 12px;
}

.ra-grand-detail-item i {
    font-size: 18px;
    color: #b18a4d;
}

.ra-grand-detail-item h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    font-weight: 400;

    color: #615f5c;
}

.ra-grand-detail-item p {
    margin: 0;

    font-size: 11px;
    letter-spacing: 1px;

    color: #7b847f;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ra-grand-intro {
        padding: 100px 6% 90px;
    }

    .ra-grand-intro-top {
        grid-template-columns: auto 1fr;
    }

    .ra-grand-intro-top > p {
        grid-column: 1 / -1;
        justify-self: start;
        margin-top: 10px;
    }

    .ra-grand-intro-heading h2 {
        font-size: 68px;
    }

    .ra-grand-intro-bottom {
        gap: 50px;
    }

    .ra-grand-detail-item div {
        grid-template-columns: 30px 1fr;
    }

    .ra-grand-detail-item p {
        grid-column: 2;
    }
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-grand-intro {
        padding: 75px 20px 75px;
    }


    /* TOP */

    .ra-grand-intro-top {
        display: block;
        margin-bottom: 55px;
    }

    .ra-grand-intro-number {
        margin-bottom: 18px;
    }

    .ra-grand-intro-number span:first-child {
        font-size: 17px;
    }

    .ra-grand-intro-number span:last-child {
        font-size: 8px;
        letter-spacing: 2px;
    }

    .ra-grand-intro-line {
        width: 55px;
        margin-bottom: 20px;
    }

    .ra-grand-intro-top > p {
        max-width: 100%;
        font-size: 15px;
        line-height: 1.7;
    }


    /* HEADING */

    .ra-grand-intro-kicker {
        font-size: 9px;
        letter-spacing: 2.5px;
        margin-bottom: 17px;
    }

    .ra-grand-intro-heading h2 {
        font-size: 48px;
        line-height: .98;
        letter-spacing: -2px;
    }


    /* CONTENT */

    .ra-grand-intro-bottom {
        display: flex;
        flex-direction: column;

        gap: 55px;

        margin-top: 55px;
        padding-top: 35px;
    }

    .ra-grand-intro-description {
        max-width: 100%;
    }

    .ra-grand-intro-description .ra-grand-intro-lead {
        font-size: 21px;
        line-height: 1.5;
    }

    .ra-grand-intro-description p {
        font-size: 15px;
        line-height: 1.8;
    }


    /* DETAILS */

    .ra-grand-detail-item {
        grid-template-columns: 35px 1fr;
        padding: 20px 0;
    }

    .ra-grand-detail-item div {
        grid-template-columns: 30px 1fr;
    }

    .ra-grand-detail-item i {
        font-size: 17px;
    }

    .ra-grand-detail-item h3 {
        font-size: 20px;
    }

    .ra-grand-detail-item p {
        grid-column: 2;
        font-size: 11px;
    }

}
/* =====================================================
   GRAND ARCH SECTION 02 — BIG TYPOGRAPHY
===================================================== */

.ra-grand-intro-number span:first-child {
    font-size: 23px;
}

.ra-grand-intro-number span:last-child {
    font-size: 12px;
}

.ra-grand-intro-top > p {
    font-size: 18px;
    line-height: 1.8;
}

.ra-grand-intro-kicker {
    font-size: 13px;
    letter-spacing: 4px;
}

.ra-grand-intro-heading h2 {
    font-size: clamp(68px, 8vw, 118px);
    line-height: .94;
}


/* Main paragraph */

.ra-grand-intro-description .ra-grand-intro-lead {
    font-size: 28px;
    line-height: 1.5;
}

.ra-grand-intro-description p {
    font-size: 18px;
    line-height: 1.85;
}


/* Button */

.ra-grand-intro-link {
    font-size: 13px;
    letter-spacing: 2.2px;
}


/* Venue details */

.ra-grand-detail-item > span {
    font-size: 17px;
}

.ra-grand-detail-item i {
    font-size: 21px;
}

.ra-grand-detail-item h3 {
    font-size: 26px;
}

.ra-grand-detail-item p {
    font-size: 13px;
}


/* =====================================================
   MOBILE — BIG & EASY TO READ
===================================================== */

@media (max-width: 767px) {

    .ra-grand-intro-number span:first-child {
        font-size: 20px;
    }

    .ra-grand-intro-number span:last-child {
        font-size: 10px;
        letter-spacing: 2.2px;
    }

    .ra-grand-intro-top > p {
        font-size: 17px;
        line-height: 1.75;
    }

    .ra-grand-intro-kicker {
        font-size: 10px;
        letter-spacing: 3px;
    }

    .ra-grand-intro-heading h2 {
        font-size: 55px;
        line-height: .98;
        letter-spacing: -2px;
    }

    .ra-grand-intro-description .ra-grand-intro-lead {
        font-size: 23px;
        line-height: 1.5;
    }

    .ra-grand-intro-description p {
        font-size: 16px;
        line-height: 1.8;
    }

    .ra-grand-intro-link {
        font-size: 11px;
    }

    .ra-grand-detail-item > span {
        font-size: 15px;
    }

    .ra-grand-detail-item i {
        font-size: 19px;
    }

    .ra-grand-detail-item h3 {
        font-size: 22px;
    }

    .ra-grand-detail-item p {
        font-size: 13px;
    }
}
/* =====================================================
   GRAND ARCH — SECTION 03
   THE SPACE
===================================================== */

.ra-grand-space {
    width: 100%;
    padding: 130px 9% 80px;
    box-sizing: border-box;

    background: #ffffff;
    color: #615f5c;
}


/* =====================================================
   HEADER
===================================================== */

.ra-grand-space-header {
    max-width: 1200px;
    margin-bottom: 75px;
}

.ra-grand-space-index {
    display: flex;
    align-items: center;
    gap: 15px;

    margin-bottom: 32px;
}

.ra-grand-space-index span:first-child {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    color: #b18a4d;
}

.ra-grand-space-index div {
    width: 45px;
    height: 1px;
    background: #b18a4d;
}

.ra-grand-space-index span:last-child {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
    color: #615f5c;
}


.ra-grand-space-header h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(65px, 7.5vw, 112px);
    line-height: .94;
    font-weight: 400;
    letter-spacing: -4px;

    color: #615f5c;
}

.ra-grand-space-header h2 em {
    font-style: italic;
    color: #aa8448;
}


.ra-grand-space-header > p {
    max-width: 550px;

    margin: 30px 0 0 auto;

    font-size: 18px;
    line-height: 1.8;

    color: #615f5c;
}


/* =====================================================
   GALLERY
===================================================== */

.ra-grand-space-gallery {
    display: grid;
    grid-template-columns: 1.45fr .75fr;
    gap: 24px;

    align-items: stretch;
}


/* MAIN IMAGE */

.ra-grand-space-main {
    position: relative;

    height: 650px;
    overflow: hidden;
}

.ra-grand-space-main img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .8s ease;
}

.ra-grand-space-main:hover img {
    transform: scale(1.025);
}


.ra-grand-space-caption {
    position: absolute;

    left: 30px;
    right: 30px;
    bottom: 28px;

    display: flex;
    align-items: center;
    gap: 15px;

    padding-bottom: 14px;

    border-bottom: 1px solid rgba(255,255,255,.55);

    color: #ffffff;
}

.ra-grand-space-caption span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 17px;
    color: #d5b477;
}

.ra-grand-space-caption strong {
    font-size: 10px;
    letter-spacing: 2.5px;
}


/* =====================================================
   RIGHT SIDE
===================================================== */

.ra-grand-space-side {
    display: flex;
    flex-direction: column;
    gap: 24px;
}


/* SMALL IMAGE */

.ra-grand-space-small {
    position: relative;

    height: 300px;
    overflow: hidden;
}

.ra-grand-space-small img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .8s ease;
}

.ra-grand-space-small:hover img {
    transform: scale(1.025);
}

.ra-grand-space-small-label {
    position: absolute;

    left: 20px;
    bottom: 20px;

    display: flex;
    align-items: center;
    gap: 10px;

    color: #ffffff;
}

.ra-grand-space-small-label span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 15px;
    color: #d5b477;
}

.ra-grand-space-small-label p {
    margin: 0;

    font-size: 8px;
    font-weight: 700;
    letter-spacing: 2px;
}


/* =====================================================
   NOTE BLOCK
===================================================== */

.ra-grand-space-note {
    position: relative;

    flex: 1;

    padding: 42px 38px;

    background: #615f5c;

    color: #f5eee2;
}

.ra-grand-space-note-number {
    display: block;

    margin-bottom: 28px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 18px;

    color: #d5b477;
}

.ra-grand-space-note h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 39px;
    font-weight: 400;
    line-height: 1.05;
}

.ra-grand-space-note p {
    max-width: 360px;

    margin: 25px 0 30px;

    font-size: 15px;
    line-height: 1.8;

    color: rgba(245,238,226,.72);
}

.ra-grand-space-note a {
    display: inline-flex;
    align-items: center;
    gap: 14px;

    padding-bottom: 9px;

    border-bottom: 1px solid #c5a565;

    color: #f5eee2;

    text-decoration: none;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.ra-grand-space-note a i {
    color: #d5b477;

    transition: transform .3s ease;
}

.ra-grand-space-note a:hover i {
    transform: translateX(6px);
}


/* =====================================================
   FOOTER LINE
===================================================== */

.ra-grand-space-footer {
    display: flex;
    align-items: center;
    gap: 18px;

    margin-top: 55px;
}

.ra-grand-space-footer span {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2.5px;
    color: #615f5c;
}

.ra-grand-space-footer span:first-child {
    color: #a27c42;
}

.ra-grand-space-footer div {
    flex: 1;
    height: 1px;
    background: #d8d2c7;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ra-grand-space {
        padding: 100px 6% 70px;
    }

    .ra-grand-space-header h2 {
        font-size: 75px;
    }

    .ra-grand-space-gallery {
        grid-template-columns: 1.2fr .8fr;
    }

    .ra-grand-space-main {
        height: 560px;
    }

    .ra-grand-space-small {
        height: 260px;
    }

    .ra-grand-space-note {
        padding: 30px;
    }

    .ra-grand-space-note h3 {
        font-size: 32px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-grand-space {
        padding: 78px 20px 60px;
    }


    /* HEADER */

    .ra-grand-space-header {
        margin-bottom: 45px;
    }

    .ra-grand-space-index {
        gap: 10px;
        margin-bottom: 24px;
    }

    .ra-grand-space-index span:first-child {
        font-size: 18px;
    }

    .ra-grand-space-index div {
        width: 30px;
    }

    .ra-grand-space-index span:last-child {
        font-size: 9px;
        letter-spacing: 2px;
    }


    .ra-grand-space-header h2 {
        font-size: 53px;
        line-height: .98;
        letter-spacing: -2px;
    }

    .ra-grand-space-header > p {
        margin: 25px 0 0;

        max-width: 100%;

        font-size: 16px;
        line-height: 1.75;
    }


    /* GALLERY */

    .ra-grand-space-gallery {
        display: flex;
        flex-direction: column;
        gap: 18px;
    }

    .ra-grand-space-main {
        height: 430px;
    }

    .ra-grand-space-caption {
        left: 18px;
        right: 18px;
        bottom: 18px;
    }

    .ra-grand-space-caption strong {
        font-size: 9px;
    }


    .ra-grand-space-small {
        height: 300px;
    }


    /* NOTE */

    .ra-grand-space-note {
        min-height: 390px;
        padding: 35px 25px;
        box-sizing: border-box;
    }

    .ra-grand-space-note-number {
        font-size: 17px;
        margin-bottom: 23px;
    }

    .ra-grand-space-note h3 {
        font-size: 36px;
        line-height: 1.05;
    }

    .ra-grand-space-note p {
        font-size: 16px;
        line-height: 1.75;
    }

    .ra-grand-space-note a {
        font-size: 10px;
    }


    /* FOOTER */

    .ra-grand-space-footer {
        margin-top: 35px;
    }

    .ra-grand-space-footer span {
        font-size: 7px;
        letter-spacing: 1.5px;
    }

}
/* =====================================================
   GRAND ARCH — SECTION 04
   OCCASIONS
===================================================== */

.ra-grand-occasions {
    width: 100%;
    padding: 130px 9% 100px;
    box-sizing: border-box;

    background: #615f5c;
    color: #f4eee2;
}


/* =====================================================
   HEADER
===================================================== */

.ra-grand-occasions-header {
    position: relative;
    margin-bottom: 75px;
}

.ra-grand-occasions-kicker {
    display: flex;
    align-items: center;
    gap: 15px;

    margin-bottom: 32px;
}

.ra-grand-occasions-kicker span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    color: #d2b174;
}

.ra-grand-occasions-kicker div {
    width: 45px;
    height: 1px;
    background: #b99355;
}

.ra-grand-occasions-kicker p {
    margin: 0;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;

    color: rgba(244,238,226,.62);
}


.ra-grand-occasions-header h2 {
    margin: 0;

    max-width: 900px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(65px, 7.5vw, 110px);
    line-height: .94;
    font-weight: 400;
    letter-spacing: -4px;

    color: #f7f0e4;
}

.ra-grand-occasions-header h2 em {
    font-style: italic;
    color: #d2b174;
}


.ra-grand-occasions-intro {
    max-width: 450px;

    margin: 35px 0 0 auto;

    font-size: 18px;
    line-height: 1.8;

    color: rgba(244,238,226,.68);
}


/* =====================================================
   OCCASION LIST
===================================================== */

.ra-grand-occasion-list {
    border-top: 1px solid rgba(255,255,255,.18);
}


.ra-grand-occasion {
    position: relative;

    display: grid;
    grid-template-columns: 80px 1fr 100px 50px;
    align-items: center;
    gap: 25px;

    min-height: 180px;

    padding: 25px 10px;

    border-bottom: 1px solid rgba(255,255,255,.18);

    text-decoration: none;

    color: #f4eee2;

    transition:
        background .35s ease,
        padding .35s ease;
}


/* NUMBER */

.ra-grand-occasion-number {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 19px;

    color: #c9a967;
}


/* CONTENT */

.ra-grand-occasion-content span {
    display: block;

    margin-bottom: 10px;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2.5px;

    color: #c9a967;
}

.ra-grand-occasion-content h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 36px;
    line-height: 1.1;
    font-weight: 400;
}

.ra-grand-occasion-content p {
    max-width: 580px;

    margin: 12px 0 0;

    font-size: 15px;
    line-height: 1.7;

    color: rgba(244,238,226,.58);
}


/* ICON */

.ra-grand-occasion-icon {
    width: 66px;
    height: 66px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(201,169,103,.45);
    border-radius: 50%;

    color: #d2b174;

    transition: all .35s ease;
}

.ra-grand-occasion-icon i {
    font-size: 22px;
}


/* ARROW */

.ra-grand-occasion-arrow {
    width: 40px;
    height: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255,255,255,.2);
    border-radius: 50%;

    color: #d2b174;

    transition: all .35s ease;
}

.ra-grand-occasion-arrow i {
    font-size: 12px;
}


/* HOVER */

.ra-grand-occasion:hover {
    background: rgba(255,255,255,.045);
    padding-left: 25px;
    padding-right: 25px;
}

.ra-grand-occasion:hover
.ra-grand-occasion-icon {
    background: #d2b174;
    border-color: #d2b174;
    color: #615f5c;
    transform: rotate(-8deg);
}

.ra-grand-occasion:hover
.ra-grand-occasion-arrow {
    background: #f4eee2;
    border-color: #f4eee2;
    color: #615f5c;
    transform: translateX(5px);
}


/* =====================================================
   BOTTOM
===================================================== */

.ra-grand-occasions-bottom {
    display: flex;
    align-items: center;
    gap: 18px;

    margin-top: 55px;
}

.ra-grand-occasions-bottom span,
.ra-grand-occasions-bottom strong {
    font-size: 9px;
    letter-spacing: 2.5px;
}

.ra-grand-occasions-bottom span {
    color: #d2b174;
}

.ra-grand-occasions-bottom strong {
    color: rgba(244,238,226,.55);
}

.ra-grand-occasions-bottom div {
    flex: 1;
    height: 1px;
    background: rgba(255,255,255,.2);
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .ra-grand-occasions {
        padding: 100px 6% 80px;
    }

    .ra-grand-occasions-header h2 {
        font-size: 75px;
    }

    .ra-grand-occasion {
        grid-template-columns: 55px 1fr 70px 40px;
        gap: 15px;
    }

    .ra-grand-occasion-content h3 {
        font-size: 29px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .ra-grand-occasions {
        padding: 78px 20px 65px;
    }


    /* HEADER */

    .ra-grand-occasions-kicker {
        gap: 10px;
        margin-bottom: 25px;
    }

    .ra-grand-occasions-kicker span {
        font-size: 18px;
    }

    .ra-grand-occasions-kicker div {
        width: 30px;
    }

    .ra-grand-occasions-kicker p {
        font-size: 8px;
        letter-spacing: 2px;
    }


    .ra-grand-occasions-header h2 {
        font-size: 53px;
        line-height: .98;
        letter-spacing: -2px;
    }

    .ra-grand-occasions-intro {
        margin: 25px 0 0;

        max-width: 100%;

        font-size: 16px;
        line-height: 1.75;
    }


    /* OCCASION */

    .ra-grand-occasion {
        grid-template-columns: 35px 1fr 40px;

        gap: 10px;

        min-height: auto;

        padding: 28px 0;
    }

    .ra-grand-occasion:hover {
        padding-left: 5px;
        padding-right: 5px;
    }

    .ra-grand-occasion-number {
        font-size: 15px;
        align-self: start;
    }

    .ra-grand-occasion-content span {
        font-size: 8px;
        letter-spacing: 1.8px;
        margin-bottom: 8px;
    }

    .ra-grand-occasion-content h3 {
        font-size: 27px;
    }

    .ra-grand-occasion-content p {
        margin-top: 9px;

        font-size: 15px;
        line-height: 1.7;
    }


    /* ICON */

    .ra-grand-occasion-icon {
        display: none;
    }

    .ra-grand-occasion-arrow {
        width: 34px;
        height: 34px;
    }

    .ra-grand-occasion-arrow i {
        font-size: 10px;
    }


    /* BOTTOM */

    .ra-grand-occasions-bottom {
        margin-top: 35px;
        gap: 12px;
    }

    .ra-grand-occasions-bottom span,
    .ra-grand-occasions-bottom strong {
        font-size: 7px;
        letter-spacing: 1.5px;
    }

}
/* =========================================
   ARCH & SKY — RESTAURANT HERO
========================================= */

.ra-archsky-hero {
    position: relative;
    width: 100%;
    height: 100vh;
    min-height: 720px;
    overflow: hidden;
    background: #102d25;
    color: #f5f0e6;
}


/* Background */

.ra-archsky-hero-image {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.ra-archsky-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transform: scale(1.02);
}


/* Overlay */

.ra-archsky-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;

    background:
        linear-gradient(
            90deg,
            rgba(8, 27, 22, .88) 0%,
            rgba(8, 27, 22, .58) 38%,
            rgba(8, 27, 22, .20) 72%,
            rgba(8, 27, 22, .40) 100%
        ),
        linear-gradient(
            0deg,
            rgba(8, 27, 22, .78) 0%,
            transparent 42%
        );
}


/* Top */

.ra-archsky-hero-top {
    position: absolute;
    top: 38px;
    left: 55px;
    right: 55px;
    z-index: 5;

    display: flex;
    justify-content: space-between;
    align-items: center;

    padding-bottom: 22px;
    border-bottom: 1px solid rgba(245, 240, 230, .28);
}

.ra-archsky-brand {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 4px;
}

.ra-archsky-location {
    display: flex;
    align-items: center;
    gap: 10px;

    font-size: 10px;
    letter-spacing: 3px;
}

.ra-archsky-location i {
    font-size: 13px;
}


/* Vertical Marker */

.ra-archsky-vertical {
    position: absolute;
    left: 55px;
    top: 50%;
    transform: translateY(-48%);

    z-index: 5;

    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
}

.ra-archsky-vertical span {
    font-size: 13px;
    letter-spacing: 2px;
}

.ra-archsky-vertical div {
    width: 1px;
    height: 95px;
    background: rgba(245, 240, 230, .55);
}

.ra-archsky-vertical p {
    margin: 0;

    writing-mode: vertical-rl;
    transform: rotate(180deg);

    font-size: 9px;
    line-height: 1.6;
    letter-spacing: 3px;
}


/* Main Content */

.ra-archsky-hero-content {
    position: absolute;
    left: 15%;
    top: 50%;
    transform: translateY(-45%);

    z-index: 5;

    width: min(760px, 65%);
}

.ra-archsky-kicker {
    display: block;

    margin-bottom: 25px;

    font-size: 12px;
    font-weight: 600;
    letter-spacing: 5px;
    text-transform: uppercase;
}

.ra-archsky-hero-content h1 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(90px, 12vw, 185px);
    font-weight: 400;
    line-height: .78;
    letter-spacing: -7px;

    text-transform: uppercase;
}

.ra-archsky-hero-content h1 em {
    display: block;

    margin-left: 115px;

    font-size: .55em;
    font-weight: 400;
    font-style: italic;

    line-height: 1.1;
    letter-spacing: -2px;

    text-transform: none;
}


.ra-archsky-rule {
    width: 100px;
    height: 1px;

    margin: 38px 0 25px;

    background: #d8c39a;
}


.ra-archsky-hero-content > p {
    max-width: 470px;

    margin: 0 0 32px;

    font-size: 18px;
    line-height: 1.75;

    color: rgba(245, 240, 230, .90);
}


/* Explore */

.ra-archsky-explore {
    display: inline-flex;
    align-items: center;
    gap: 16px;

    color: #f5f0e6;
    text-decoration: none;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2.5px;
    text-transform: uppercase;
}

.ra-archsky-explore i {
    width: 42px;
    height: 42px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(245, 240, 230, .6);
    border-radius: 50%;

    font-size: 12px;

    transition: all .3s ease;
}

.ra-archsky-explore:hover i {
    background: #f5f0e6;
    color: #102d25;
    transform: translateY(4px);
}


/* Bottom Bar */

.ra-archsky-bottom {
    position: absolute;
    left: 55px;
    right: 55px;
    bottom: 35px;

    z-index: 6;

    display: flex;
    align-items: center;

    padding: 20px 0;

    border-top: 1px solid rgba(245, 240, 230, .28);
}


.ra-archsky-bottom-item {
    display: flex;
    align-items: flex-start;
    gap: 16px;

    flex: 1;
}

.ra-archsky-bottom-item > span {
    font-size: 10px;
    letter-spacing: 2px;
    opacity: .65;
}

.ra-archsky-bottom-item strong {
    display: block;

    font-size: 10px;
    font-weight: 600;
    letter-spacing: 2px;
}

.ra-archsky-bottom-item p {
    margin: 6px 0 0;

    font-size: 12px;
    opacity: .72;
}

.ra-archsky-bottom-line {
    width: 1px;
    height: 35px;

    margin: 0 35px;

    background: rgba(245, 240, 230, .30);
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-archsky-hero {
        height: 100svh;
        min-height: 680px;
    }


    .ra-archsky-hero-image img {
        object-position: 58% center;
    }


    .ra-archsky-hero-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(8, 27, 22, .82),
                rgba(8, 27, 22, .38)
            ),
            linear-gradient(
                0deg,
                rgba(8, 27, 22, .88),
                transparent 60%
            );
    }


    .ra-archsky-hero-top {
        top: 22px;
        left: 20px;
        right: 20px;

        padding-bottom: 15px;
    }

    .ra-archsky-brand {
        font-size: 8px;
        letter-spacing: 2.5px;
    }

    .ra-archsky-location {
        font-size: 7px;
        letter-spacing: 1.5px;
        gap: 6px;
    }

    .ra-archsky-location i {
        font-size: 10px;
    }


    .ra-archsky-vertical {
        display: none;
    }


    .ra-archsky-hero-content {
        left: 25px;
        right: 25px;
        top: 47%;
        transform: translateY(-45%);

        width: auto;
    }


    .ra-archsky-kicker {
        margin-bottom: 20px;

        font-size: 9px;
        letter-spacing: 3px;
    }


    .ra-archsky-hero-content h1 {
        font-size: 78px;
        line-height: .82;
        letter-spacing: -4px;
    }

    .ra-archsky-hero-content h1 em {
        margin-left: 45px;

        font-size: .60em;
        letter-spacing: -1px;
    }


    .ra-archsky-rule {
        width: 65px;
        margin: 27px 0 20px;
    }


    .ra-archsky-hero-content > p {
        max-width: 330px;

        font-size: 16px;
        line-height: 1.65;

        margin-bottom: 25px;
    }


    .ra-archsky-explore {
        font-size: 10px;
        letter-spacing: 1.8px;
        gap: 12px;
    }

    .ra-archsky-explore i {
        width: 38px;
        height: 38px;
        font-size: 10px;
    }


    .ra-archsky-bottom {
        left: 20px;
        right: 20px;
        bottom: 18px;

        padding: 15px 0;
    }


    .ra-archsky-bottom-item {
        gap: 0;
    }

    .ra-archsky-bottom-item > span {
        display: none;
    }

    .ra-archsky-bottom-item strong {
        font-size: 7px;
        letter-spacing: 1.2px;
    }

    .ra-archsky-bottom-item p {
        margin-top: 4px;
        font-size: 9px;
    }

    .ra-archsky-bottom-line {
        height: 28px;
        margin: 0 12px;
    }

}
/* =========================================
   ARCH & SKY — SECTION 02
========================================= */

.ra-archsky-intro {
    position: relative;
    width: 100%;
    padding: 120px 7vw 55px;
    background: #f3eee4;
    color: #615f5c;
    overflow: hidden;
}


/* Top */

.ra-archsky-intro-top {
    display: grid;
    grid-template-columns: 190px 1fr 1.6fr;
    align-items: center;
    gap: 35px;
    margin-bottom: 100px;
}

.ra-archsky-intro-number {
    display: flex;
    align-items: center;
    gap: 14px;
}

.ra-archsky-intro-number span:first-child {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
}

.ra-archsky-intro-number span:last-child {
    font-size: 10px;
    letter-spacing: 3px;
    font-weight: 600;
}

.ra-archsky-intro-line {
    height: 1px;
    background: rgba(23, 55, 45, .25);
}

.ra-archsky-intro-top > p {
    margin: 0;
    max-width: 570px;

    font-size: 18px;
    line-height: 1.8;
}


/* Main */

.ra-archsky-intro-main {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 8vw;
    align-items: end;
}


.ra-archsky-intro-kicker {
    display: block;

    margin-bottom: 25px;

    font-size: 12px;
    letter-spacing: 4px;
    font-weight: 600;
}


.ra-archsky-intro-heading h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(62px, 7vw, 110px);
    font-weight: 400;
    line-height: .92;
    letter-spacing: -4px;
}

.ra-archsky-intro-heading h2 em {
    font-style: italic;
    color: #806b43;
}


.ra-archsky-intro-content {
    padding-bottom: 5px;
}

.ra-archsky-intro-lead {
    margin: 0 0 22px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 27px;
    line-height: 1.45;
}

.ra-archsky-intro-content > p:not(.ra-archsky-intro-lead) {
    margin: 0 0 32px;

    max-width: 520px;

    font-size: 17px;
    line-height: 1.85;
    color: #3F3D3A;
}


/* Link */

.ra-archsky-intro-link {
    display: inline-flex;
    align-items: center;
    gap: 15px;

    color: #615f5c;
    text-decoration: none;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2.5px;
    text-transform: uppercase;
}

.ra-archsky-intro-link i {
    width: 42px;
    height: 42px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(23, 55, 45, .45);
    border-radius: 50%;

    font-size: 11px;

    transition: .3s ease;
}

.ra-archsky-intro-link:hover i {
    background: #615f5c;
    color: #f3eee4;
    transform: translateX(5px);
}


/* Features */

.ra-archsky-intro-bottom {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    margin-top: 110px;

    border-top: 1px solid rgba(23, 55, 45, .22);
    border-bottom: 1px solid rgba(23, 55, 45, .22);
}


.ra-archsky-intro-feature {
    position: relative;

    display: flex;
    gap: 25px;

    padding: 42px 35px;
}

.ra-archsky-intro-feature:not(:last-child) {
    border-right: 1px solid rgba(23, 55, 45, .18);
}

.ra-archsky-intro-feature > span {
    font-size: 11px;
    letter-spacing: 2px;
    opacity: .55;
}


.ra-archsky-intro-feature i {
    display: block;

    margin-bottom: 18px;

    font-size: 25px;
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
}


.ra-archsky-intro-feature h3 {
    margin: 0 0 10px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
    font-weight: 400;
}


.ra-archsky-intro-feature p {
    margin: 0;

    max-width: 250px;

    font-size: 14px;
    line-height: 1.7;
    color: #3F3D3A;
}


/* Footer */

.ra-archsky-intro-footer {
    display: flex;
    align-items: center;
    gap: 25px;

    margin-top: 38px;
}

.ra-archsky-intro-footer span,
.ra-archsky-intro-footer strong {
    font-size: 9px;
    letter-spacing: 3px;
}

.ra-archsky-intro-footer div {
    width: 80px;
    height: 1px;
    background: #806b43;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-archsky-intro {
        padding: 75px 20px 40px;
    }


    .ra-archsky-intro-top {
        display: block;
        margin-bottom: 65px;
    }

    .ra-archsky-intro-number {
        margin-bottom: 22px;
    }

    .ra-archsky-intro-number span:first-child {
        font-size: 21px;
    }

    .ra-archsky-intro-number span:last-child {
        font-size: 9px;
        letter-spacing: 2.5px;
    }

    .ra-archsky-intro-line {
        width: 100%;
        margin-bottom: 25px;
    }

    .ra-archsky-intro-top > p {
        font-size: 17px;
        line-height: 1.75;
    }


    .ra-archsky-intro-main {
        display: block;
    }


    .ra-archsky-intro-kicker {
        margin-bottom: 18px;
        font-size: 9px;
        letter-spacing: 2.5px;
    }


    .ra-archsky-intro-heading h2 {
        font-size: 51px;
        line-height: .98;
        letter-spacing: -2.5px;
    }


    .ra-archsky-intro-content {
        margin-top: 42px;
    }

    .ra-archsky-intro-lead {
        font-size: 22px;
        line-height: 1.5;
    }

    .ra-archsky-intro-content > p:not(.ra-archsky-intro-lead) {
        font-size: 16px;
        line-height: 1.8;
    }


    .ra-archsky-intro-link {
        font-size: 10px;
        letter-spacing: 1.8px;
    }


    .ra-archsky-intro-bottom {
        display: block;
        margin-top: 70px;
    }


    .ra-archsky-intro-feature {
        padding: 30px 5px;
        gap: 20px;
    }

    .ra-archsky-intro-feature:not(:last-child) {
        border-right: 0;
        border-bottom: 1px solid rgba(23, 55, 45, .18);
    }

    .ra-archsky-intro-feature i {
        font-size: 22px;
        margin-bottom: 14px;
    }

    .ra-archsky-intro-feature h3 {
        font-size: 21px;
    }

    .ra-archsky-intro-feature p {
        font-size: 14px;
    }


    .ra-archsky-intro-footer {
        gap: 12px;
        margin-top: 28px;
    }

    .ra-archsky-intro-footer span,
    .ra-archsky-intro-footer strong {
        font-size: 7px;
        letter-spacing: 1.5px;
    }

    .ra-archsky-intro-footer div {
        width: 35px;
    }

}
/* =========================================
   ARCH & SKY — SECTION 03
   FLAVOURS & CRAFT
========================================= */

.ra-archsky-flavours {
    position: relative;

    display: grid;
    grid-template-columns: 48% 52%;

    width: 100%;
    min-height: 850px;

    background: #615f5c;
    color: #f4efe5;

    overflow: hidden;
}


/* Image */

.ra-archsky-flavours-image {
    position: relative;
    min-height: 850px;
    overflow: hidden;
}

.ra-archsky-flavours-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform .8s ease;
}

.ra-archsky-flavours:hover
.ra-archsky-flavours-image img {
    transform: scale(1.035);
}


/* Image Tag */

.ra-archsky-flavours-image-tag {
    position: absolute;

    left: 35px;
    bottom: 35px;

    display: flex;
    align-items: center;
    gap: 18px;

    padding: 15px 20px;

    background: #3F3D3A;
    backdrop-filter: blur(8px);

    border: 1px solid rgba(244, 239, 229, .25);
}

.ra-archsky-flavours-image-tag span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
}

.ra-archsky-flavours-image-tag p {
    margin: 0;

    font-size: 9px;
    letter-spacing: 2.5px;
}


/* Content */

.ra-archsky-flavours-content {
    padding: 105px 8vw 90px;

    display: flex;
    flex-direction: column;
    justify-content: center;
}


/* Top */

.ra-archsky-flavours-top {
    display: flex;
    align-items: center;
    gap: 20px;

    margin-bottom: 65px;
}

.ra-archsky-flavours-top > span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
}

.ra-archsky-flavours-top > div {
    width: 65px;
    height: 1px;

    background: rgba(244, 239, 229, .38);
}

.ra-archsky-flavours-top > p {
    margin: 0;

    font-size: 9px;
    letter-spacing: 2.5px;
    opacity: .72;
}


/* Heading */

.ra-archsky-flavours-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 4px;
}

.ra-archsky-flavours-content h2 {
    margin: 0 0 38px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(58px, 6vw, 94px);
    font-weight: 400;

    line-height: .94;
    letter-spacing: -3px;
}

.ra-archsky-flavours-content h2 em {
    font-style: italic;
    color: #d4bd8d;
}


/* Text */

.ra-archsky-flavours-lead {
    max-width: 590px;

    margin: 0 0 20px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 25px;
    line-height: 1.5;
}

.ra-archsky-flavours-text {
    max-width: 560px;

    margin: 0;

    font-size: 16px;
    line-height: 1.85;

    color: rgba(244, 239, 229, .72);
}


/* Details */

.ra-archsky-flavours-details {
    display: grid;
    grid-template-columns: 1fr 1fr;

    max-width: 600px;

    margin-top: 48px;

    border-top: 1px solid rgba(244, 239, 229, .20);
    border-bottom: 1px solid rgba(244, 239, 229, .20);
}

.ra-archsky-flavours-details > div {
    padding: 27px 25px 27px 0;
}

.ra-archsky-flavours-details > div + div {
    padding-left: 25px;
    border-left: 1px solid rgba(244, 239, 229, .20);
}

.ra-archsky-flavours-details span {
    display: block;

    margin-bottom: 12px;

    font-size: 9px;
    letter-spacing: 2px;
    opacity: .55;
}

.ra-archsky-flavours-details strong {
    display: block;

    margin-bottom: 7px;

    font-size: 10px;
    letter-spacing: 2px;
}

.ra-archsky-flavours-details p {
    margin: 0;

    font-size: 12px;
    line-height: 1.6;

    opacity: .65;
}


/* Link */

.ra-archsky-flavours-link {
    display: inline-flex;
    align-items: center;
    gap: 16px;

    width: fit-content;

    margin-top: 38px;

    color: #f4efe5;
    text-decoration: none;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2.2px;
    text-transform: uppercase;
}

.ra-archsky-flavours-link i {
    width: 43px;
    height: 43px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(244, 239, 229, .45);
    border-radius: 50%;

    font-size: 11px;

    transition: .3s ease;
}

.ra-archsky-flavours-link:hover i {
    background: #f4efe5;
    color: #615f5c;
    transform: translateX(5px);
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-archsky-flavours {
        display: flex;
        flex-direction: column;
        min-height: auto;
    }


    .ra-archsky-flavours-image {
        width: 100%;
        height: 390px;
        min-height: 390px;
    }

    .ra-archsky-flavours-image img {
        object-position: center;
    }


    .ra-archsky-flavours-image-tag {
        left: 18px;
        bottom: 18px;

        gap: 12px;

        padding: 12px 15px;
    }

    .ra-archsky-flavours-image-tag span {
        font-size: 18px;
    }

    .ra-archsky-flavours-image-tag p {
        font-size: 7px;
        letter-spacing: 1.8px;
    }


    .ra-archsky-flavours-content {
        padding: 70px 20px 70px;
    }


    .ra-archsky-flavours-top {
        margin-bottom: 45px;
        gap: 14px;
    }

    .ra-archsky-flavours-top > span {
        font-size: 20px;
    }

    .ra-archsky-flavours-top > div {
        width: 45px;
    }

    .ra-archsky-flavours-top > p {
        font-size: 7px;
        letter-spacing: 1.6px;
    }


    .ra-archsky-flavours-kicker {
        margin-bottom: 17px;

        font-size: 9px;
        letter-spacing: 2.7px;
    }


    .ra-archsky-flavours-content h2 {
        margin-bottom: 30px;

        font-size: 49px;
        line-height: .98;
        letter-spacing: -2px;
    }


    .ra-archsky-flavours-lead {
        font-size: 21px;
        line-height: 1.5;
    }

    .ra-archsky-flavours-text {
        font-size: 15px;
        line-height: 1.8;
    }


    .ra-archsky-flavours-details {
        display: block;
        margin-top: 38px;
    }

    .ra-archsky-flavours-details > div {
        padding: 23px 0;
    }

    .ra-archsky-flavours-details > div + div {
        padding-left: 0;
        border-left: 0;
        border-top: 1px solid rgba(244, 239, 229, .20);
    }

    .ra-archsky-flavours-details strong {
        font-size: 9px;
    }

    .ra-archsky-flavours-details p {
        font-size: 12px;
    }


    .ra-archsky-flavours-link {
        font-size: 9px;
        letter-spacing: 1.6px;
    }

    .ra-archsky-flavours-link i {
        width: 38px;
        height: 38px;
    }

}
/* =========================================
   ARCH & SKY — SECTION 04
   THE ATMOSPHERE
========================================= */

.ra-archsky-atmosphere {
    position: relative;
    width: 100%;
    min-height: 850px;

    overflow: hidden;

    color: #f6f1e7;
    background: #102d25;
}


/* Background */

.ra-archsky-atmosphere-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.ra-archsky-atmosphere-bg img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transform: scale(1.02);
}


/* Overlay */

.ra-archsky-atmosphere-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;

    background:

    linear-gradient(
        90deg,
        rgba(63, 61, 58, .95) 0%,
        rgba(63, 61, 58, .82) 38%,
        rgba(63, 61, 58, .50) 68%,
        rgba(63, 61, 58, .32) 100%
    ),

    linear-gradient(
        180deg,
        rgba(63, 61, 58, .35),
        rgba(63, 61, 58, .75)
    );
}


/* Content */

.ra-archsky-atmosphere-content {
    position: relative;
    z-index: 4;

    width: min(760px, 62%);

    padding: 110px 0 160px 10vw;
}


/* Index */

.ra-archsky-atmosphere-index {
    display: flex;
    align-items: center;
    gap: 18px;

    margin-bottom: 75px;
}

.ra-archsky-atmosphere-index span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
}

.ra-archsky-atmosphere-index div {
    width: 70px;
    height: 1px;

    background: rgba(246, 241, 231, .45);
}

.ra-archsky-atmosphere-index p {
    margin: 0;

    font-size: 9px;
    letter-spacing: 3px;
}


/* Heading */

.ra-archsky-atmosphere-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 4px;
}


.ra-archsky-atmosphere-content h2 {
    margin: 0 0 38px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(62px, 7vw, 108px);
    font-weight: 400;

    line-height: .93;
    letter-spacing: -4px;
}

.ra-archsky-atmosphere-content h2 em {
    color: #d5bd8d;
    font-style: italic;
}


/* Lead */

.ra-archsky-atmosphere-lead {
    max-width: 610px;

    margin: 0;

    font-size: 19px;
    line-height: 1.8;

    color: rgba(246, 241, 231, .84);
}


/* Details */

.ra-archsky-atmosphere-details {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    margin-top: 60px;

    max-width: 720px;

    border-top: 1px solid rgba(246, 241, 231, .25);
}


.ra-archsky-atmosphere-detail {
    position: relative;

    padding: 28px 25px 15px 0;
}

.ra-archsky-atmosphere-detail:not(:last-child) {
    border-right: 1px solid rgba(246, 241, 231, .22);
    margin-right: 25px;
}


.ra-archsky-atmosphere-detail > span {
    display: block;

    margin-bottom: 18px;

    font-size: 9px;
    letter-spacing: 2px;

    opacity: .55;
}


.ra-archsky-atmosphere-detail > i {
    display: block;

    margin-bottom: 18px;

    font-size: 24px;

    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;

    color: #d5bd8d;
}


.ra-archsky-atmosphere-detail strong {
    display: block;

    margin-bottom: 9px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 22px;
    font-weight: 400;
}


.ra-archsky-atmosphere-detail p {
    margin: 0;

    font-size: 13px;
    line-height: 1.7;

    color: rgba(246, 241, 231, .66);
}


/* Bottom */

.ra-archsky-atmosphere-bottom {
    position: absolute;

    left: 55px;
    right: 55px;
    bottom: 32px;

    z-index: 5;

    display: flex;
    align-items: center;
    gap: 22px;

    padding-top: 20px;

    border-top: 1px solid rgba(246, 241, 231, .28);
}


.ra-archsky-atmosphere-bottom span,
.ra-archsky-atmosphere-bottom strong {
    font-size: 9px;
    letter-spacing: 3px;
}

.ra-archsky-atmosphere-bottom div {
    width: 70px;
    height: 1px;

    background: #d5bd8d;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-archsky-atmosphere {
        min-height: 900px;
    }


    .ra-archsky-atmosphere-bg img {
        object-position: 58% center;
    }


    .ra-archsky-atmosphere-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(9, 31, 25, .91),
                rgba(9, 31, 25, .58)
            ),
            linear-gradient(
                0deg,
                rgba(9, 31, 25, .94),
                transparent 55%
            );
    }


    .ra-archsky-atmosphere-content {
        width: auto;

        padding: 75px 20px 145px;
    }


    .ra-archsky-atmosphere-index {
        margin-bottom: 55px;
        gap: 12px;
    }

    .ra-archsky-atmosphere-index span {
        font-size: 20px;
    }

    .ra-archsky-atmosphere-index div {
        width: 45px;
    }

    .ra-archsky-atmosphere-index p {
        font-size: 7px;
        letter-spacing: 2px;
    }


    .ra-archsky-atmosphere-kicker {
        margin-bottom: 18px;

        font-size: 9px;
        letter-spacing: 2.5px;
    }


    .ra-archsky-atmosphere-content h2 {
        margin-bottom: 30px;

        font-size: 51px;
        line-height: .98;
        letter-spacing: -2.5px;
    }


    .ra-archsky-atmosphere-lead {
        font-size: 17px;
        line-height: 1.75;
    }


    .ra-archsky-atmosphere-details {
        display: block;

        margin-top: 42px;
    }


    .ra-archsky-atmosphere-detail {
        display: grid;
        grid-template-columns: 30px 35px 1fr;
        gap: 12px;

        padding: 24px 0;
    }


    .ra-archsky-atmosphere-detail:not(:last-child) {
        border-right: 0;
        border-bottom: 1px solid rgba(246, 241, 231, .20);
        margin-right: 0;
    }


    .ra-archsky-atmosphere-detail > span {
        margin: 3px 0 0;
        font-size: 8px;
    }


    .ra-archsky-atmosphere-detail > i {
        margin: 0;
        font-size: 20px;
    }


    .ra-archsky-atmosphere-detail strong {
        font-size: 19px;
    }


    .ra-archsky-atmosphere-detail p {
        font-size: 13px;
        line-height: 1.65;
    }


    .ra-archsky-atmosphere-bottom {
        left: 20px;
        right: 20px;
        bottom: 18px;

        gap: 10px;

        padding-top: 14px;
    }


    .ra-archsky-atmosphere-bottom span,
    .ra-archsky-atmosphere-bottom strong {
        font-size: 7px;
        letter-spacing: 1.5px;
    }


    .ra-archsky-atmosphere-bottom div {
        width: 30px;
    }

}
/* =========================================
   ARCH & SKY — SECTION 05
   DINING MOMENTS
========================================= */

.ra-archsky-moments {
    width: 100%;
    padding: 120px 7vw 55px;

    background: #f3eee4;
    color: #615f5c;

    overflow: hidden;
}


/* Header */

.ra-archsky-moments-header {
    max-width: 1100px;
    margin-bottom: 90px;
}


.ra-archsky-moments-index {
    display: flex;
    align-items: center;
    gap: 18px;

    margin-bottom: 65px;
}

.ra-archsky-moments-index span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
}

.ra-archsky-moments-index div {
    width: 70px;
    height: 1px;

    background: rgba(23, 55, 45, .35);
}

.ra-archsky-moments-index p {
    margin: 0;

    font-size: 9px;
    letter-spacing: 3px;
}


.ra-archsky-moments-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 4px;
}


.ra-archsky-moments-header h2 {
    margin: 0 0 32px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(65px, 7.5vw, 115px);
    font-weight: 400;

    line-height: .91;
    letter-spacing: -4px;
}

.ra-archsky-moments-header h2 em {
    color: #806b43;
    font-style: italic;
}


.ra-archsky-moments-header > p {
    max-width: 610px;

    margin: 0;

    font-size: 18px;
    line-height: 1.8;

    color: rgba(23, 55, 45, .72);
}


/* List */

.ra-archsky-moments-list {
    border-top: 1px solid rgba(23, 55, 45, .25);
}


/* Individual Row */

.ra-archsky-moment {
    position: relative;

    display: grid;
    grid-template-columns: 90px 1.15fr 1.2fr 80px 55px;
    align-items: center;

    gap: 30px;

    min-height: 145px;

    padding: 25px 10px;

    border-bottom: 1px solid rgba(23, 55, 45, .22);

    color: #615f5c;
    text-decoration: none;

    transition: .35s ease;
}


.ra-archsky-moment:hover {
    padding-left: 25px;
    background: rgba(128, 107, 67, .07);
}


/* Number */

.ra-archsky-moment-number {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 22px;

    opacity: .45;
}


/* Title */

.ra-archsky-moment-title span {
    display: block;

    margin-bottom: 10px;

    font-size: 9px;
    letter-spacing: 2.5px;

    color: #806b43;
}


.ra-archsky-moment-title h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 36px;
    font-weight: 400;

    line-height: 1;
}


/* Description */

.ra-archsky-moment > p {
    max-width: 420px;

    margin: 0;

    font-size: 15px;
    line-height: 1.7;

    color: rgba(23, 55, 45, .67);
}


/* Icon */

.ra-archsky-moment-icon {
    width: 54px;
    height: 54px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(23, 55, 45, .25);
    border-radius: 50%;
}


.ra-archsky-moment-icon i {
    font-size: 19px;

    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
}


/* Arrow */

.ra-archsky-moment-arrow {
    width: 44px;
    height: 44px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(23, 55, 45, .30);
    border-radius: 50%;

    transition: .3s ease;
}

.ra-archsky-moment-arrow i {
    font-size: 11px;
}

.ra-archsky-moment:hover .ra-archsky-moment-arrow {
    background: #615f5c;
    color: #f3eee4;

    transform: translateX(5px);
}


/* Footer */

.ra-archsky-moments-footer {
    display: flex;
    align-items: center;
    gap: 22px;

    margin-top: 38px;
}


.ra-archsky-moments-footer span,
.ra-archsky-moments-footer strong {
    font-size: 9px;
    letter-spacing: 3px;
}


.ra-archsky-moments-footer div {
    width: 70px;
    height: 1px;

    background: #806b43;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-archsky-moments {
        padding: 75px 20px 40px;
    }


    .ra-archsky-moments-header {
        margin-bottom: 60px;
    }


    .ra-archsky-moments-index {
        margin-bottom: 48px;
        gap: 12px;
    }

    .ra-archsky-moments-index span {
        font-size: 20px;
    }

    .ra-archsky-moments-index div {
        width: 45px;
    }

    .ra-archsky-moments-index p {
        font-size: 7px;
        letter-spacing: 2px;
    }


    .ra-archsky-moments-kicker {
        margin-bottom: 17px;

        font-size: 9px;
        letter-spacing: 2.5px;
    }


    .ra-archsky-moments-header h2 {
        margin-bottom: 27px;

        font-size: 50px;
        line-height: .98;
        letter-spacing: -2px;
    }


    .ra-archsky-moments-header > p {
        font-size: 16px;
        line-height: 1.8;
    }


    .ra-archsky-moment {
        display: grid;
        grid-template-columns: 38px 1fr 45px;

        gap: 12px;

        min-height: auto;

        padding: 28px 0;
    }


    .ra-archsky-moment:hover {
        padding-left: 5px;
    }


    .ra-archsky-moment-number {
        font-size: 17px;
    }


    .ra-archsky-moment-title {
        grid-column: 2;
    }


    .ra-archsky-moment-title span {
        margin-bottom: 8px;

        font-size: 7px;
        letter-spacing: 1.8px;
    }


    .ra-archsky-moment-title h3 {
        font-size: 27px;
    }


    .ra-archsky-moment > p {
        grid-column: 2 / 4;

        font-size: 14px;
        line-height: 1.7;

        margin-top: 8px;
    }


    .ra-archsky-moment-icon {
        grid-column: 3;
        grid-row: 1;

        width: 43px;
        height: 43px;
    }

    .ra-archsky-moment-icon i {
        font-size: 16px;
    }


    .ra-archsky-moment-arrow {
        display: none;
    }


    .ra-archsky-moments-footer {
        gap: 12px;
        margin-top: 28px;
    }


    .ra-archsky-moments-footer span,
    .ra-archsky-moments-footer strong {
        font-size: 7px;
        letter-spacing: 1.5px;
    }


    .ra-archsky-moments-footer div {
        width: 35px;
    }

}
/* =========================================
   ARCH & SKY — SECTION 06
   FINAL CTA
========================================= */

.ra-archsky-cta {
    position: relative;

    width: 100%;
    min-height: 760px;

    overflow: hidden;

    background: #102d25;
    color: #f5f0e6;
}


/* Background */

.ra-archsky-cta-image {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.ra-archsky-cta-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;
}


/* Overlay */

.ra-archsky-cta-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;

    background:

    linear-gradient(
        90deg,
        rgba(63, 61, 58, .95) 0%,
        rgba(63, 61, 58, .82) 38%,
        rgba(63, 61, 58, .50) 68%,
        rgba(63, 61, 58, .32) 100%
    ),

    linear-gradient(
        180deg,
        rgba(63, 61, 58, .35),
        rgba(63, 61, 58, .75)
    );
}


/* Content */

.ra-archsky-cta-content {
    position: relative;
    z-index: 4;

    width: min(760px, 65%);

    padding: 105px 0 145px 10vw;
}


/* Top */

.ra-archsky-cta-top {
    display: flex;
    align-items: center;
    gap: 18px;

    margin-bottom: 80px;
}

.ra-archsky-cta-top > span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
}

.ra-archsky-cta-top > div {
    width: 70px;
    height: 1px;

    background: rgba(245, 240, 230, .42);
}

.ra-archsky-cta-top > p {
    margin: 0;

    font-size: 9px;
    letter-spacing: 3px;
}


/* Heading */

.ra-archsky-cta-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 4px;
}


.ra-archsky-cta-content h2 {
    margin: 0 0 38px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(64px, 7vw, 110px);
    font-weight: 400;

    line-height: .92;
    letter-spacing: -4px;
}

.ra-archsky-cta-content h2 em {
    color: #d5bd8d;
    font-style: italic;
}


/* Paragraph */

.ra-archsky-cta-text {
    max-width: 570px;

    margin: 0;

    font-size: 18px;
    line-height: 1.8;

    color: rgba(245, 240, 230, .82);
}


/* Actions */

.ra-archsky-cta-actions {
    display: flex;
    align-items: center;
    gap: 25px;

    margin-top: 40px;
}


/* Primary */

.ra-archsky-cta-primary {
    display: inline-flex;
    align-items: center;
    gap: 15px;

    padding: 7px 7px 7px 22px;

    color: whitesmoke;
    background: #615f5c;

    text-decoration: none;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.ra-archsky-cta-primary i {
    width: 38px;
    height: 38px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    background: #3F3D3A;

    font-size: 11px;

    transition: .3s ease;
}

.ra-archsky-cta-primary:hover i {
    transform: translateX(4px);
}


/* WhatsApp */

.ra-archsky-cta-whatsapp {
    display: flex;
    align-items: center;
    gap: 12px;

    color: #f5f0e6;
    text-decoration: none;
}

.ra-archsky-cta-whatsapp > i {
    font-size: 25px;
}

.ra-archsky-cta-whatsapp span {
    display: flex;
    flex-direction: column;

    font-size: 13px;
    letter-spacing: 1px;
}

.ra-archsky-cta-whatsapp small {
    margin-bottom: 4px;

    font-size: 7px;
    letter-spacing: 2px;

    opacity: .6;
}


/* Bottom */

.ra-archsky-cta-bottom {
    position: absolute;

    left: 55px;
    right: 55px;
    bottom: 30px;

    z-index: 5;

    display: flex;
    align-items: center;
    gap: 22px;

    padding-top: 18px;

    border-top: 1px solid rgba(245, 240, 230, .28);
}

.ra-archsky-cta-bottom span,
.ra-archsky-cta-bottom strong {
    font-size: 9px;
    letter-spacing: 3px;
}

.ra-archsky-cta-bottom div {
    width: 70px;
    height: 1px;

    background: #d5bd8d;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-archsky-cta {
        min-height: 850px;
    }


    .ra-archsky-cta-image img {
        object-position: 60% center;
    }


    .ra-archsky-cta-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(8, 28, 23, .92),
                rgba(8, 28, 23, .55)
            ),
            linear-gradient(
                0deg,
                rgba(8, 28, 23, .95),
                transparent 55%
            );
    }


    .ra-archsky-cta-content {
        width: auto;

        padding: 75px 20px 150px;
    }


    .ra-archsky-cta-top {
        margin-bottom: 55px;
        gap: 12px;
    }

    .ra-archsky-cta-top > span {
        font-size: 20px;
    }

    .ra-archsky-cta-top > div {
        width: 45px;
    }

    .ra-archsky-cta-top > p {
        font-size: 7px;
        letter-spacing: 2px;
    }


    .ra-archsky-cta-kicker {
        margin-bottom: 18px;

        font-size: 9px;
        letter-spacing: 2.5px;
    }


    .ra-archsky-cta-content h2 {
        margin-bottom: 28px;

        font-size: 50px;
        line-height: .98;
        letter-spacing: -2px;
    }


    .ra-archsky-cta-text {
        font-size: 16px;
        line-height: 1.8;
    }


    .ra-archsky-cta-actions {
        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 22px;

        margin-top: 32px;
    }


    .ra-archsky-cta-primary {
        font-size: 9px;
        letter-spacing: 1.7px;
    }


    .ra-archsky-cta-whatsapp > i {
        font-size: 23px;
    }

    .ra-archsky-cta-whatsapp span {
        font-size: 12px;
    }


    .ra-archsky-cta-bottom {
        left: 20px;
        right: 20px;
        bottom: 18px;

        gap: 10px;
        padding-top: 14px;
    }


    .ra-archsky-cta-bottom span,
    .ra-archsky-cta-bottom strong {
        font-size: 7px;
        letter-spacing: 1.5px;
    }


    .ra-archsky-cta-bottom div {
        width: 30px;
    }

}
/* =========================================
   RESTRO THE 24 — HERO
========================================= */

.ra-restro24-hero {
    position: relative;
    width: 100%;
    height: 100vh;
    min-height: 720px;

    overflow: hidden;

    background: #171a18;
    color: #f5f0e6;
}


/* Background */

.ra-restro24-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.ra-restro24-bg img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transform: scale(1.03);
}


/* Overlay */

.ra-restro24-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;

    background:
        linear-gradient(
            90deg,
            rgba(15, 20, 18, .90) 0%,
            rgba(15, 20, 18, .62) 40%,
            rgba(15, 20, 18, .20) 75%,
            rgba(15, 20, 18, .50) 100%
        ),
        linear-gradient(
            0deg,
            rgba(15, 20, 18, .85) 0%,
            transparent 50%
        );
}


/* Top */

.ra-restro24-top {
    position: absolute;

    top: 38px;
    left: 55px;
    right: 55px;

    z-index: 5;

    display: flex;
    justify-content: space-between;
    align-items: center;

    padding-bottom: 20px;

    border-bottom: 1px solid rgba(245, 240, 230, .25);
}

.ra-restro24-hotel {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 4px;
}

.ra-restro24-location {
    font-size: 9px;
    letter-spacing: 3px;
}


/* Left Time */

.ra-restro24-time {
    position: absolute;

    left: 55px;
    top: 50%;

    transform: translateY(-50%);

    z-index: 5;

    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 16px;
}

.ra-restro24-time > span {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 25px;
}

.ra-restro24-time > div {
    width: 1px;
    height: 105px;

    background: rgba(245, 240, 230, .48);
}

.ra-restro24-time p {
    margin: 0;

    writing-mode: vertical-rl;
    transform: rotate(180deg);

    font-size: 8px;
    line-height: 1.7;

    letter-spacing: 3px;
}


/* Main */

.ra-restro24-main {
    position: absolute;

    left: 14%;
    top: 50%;

    transform: translateY(-45%);

    z-index: 5;

    width: min(780px, 65%);
}


.ra-restro24-kicker {
    display: block;

    margin-bottom: 25px;

    font-size: 11px;
    font-weight: 600;

    letter-spacing: 4px;
}


/* Main Heading */

.ra-restro24-main h1 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(85px, 11vw, 175px);

    font-weight: 400;

    line-height: .78;

    letter-spacing: -7px;

    text-transform: uppercase;
}


.ra-restro24-main h1 strong {
    display: block;

    margin-left: 135px;

    color: #d5bd8d;

    font-size: .54em;

    font-weight: 400;

    line-height: 1.15;

    letter-spacing: -2px;

    text-transform: none;
}


/* Rule */

.ra-restro24-rule {
    width: 105px;
    height: 1px;

    margin: 40px 0 25px;

    background: #d5bd8d;
}


/* Description */

.ra-restro24-main > p {
    max-width: 500px;

    margin: 0 0 32px;

    font-size: 18px;
    line-height: 1.75;

    color: rgba(245, 240, 230, .86);
}


/* Discover */

.ra-restro24-discover {
    display: inline-flex;
    align-items: center;
    gap: 15px;

    color: #f5f0e6;
    text-decoration: none;

    font-size: 10px;
    font-weight: 600;

    letter-spacing: 2.5px;
    text-transform: uppercase;
}


.ra-restro24-discover i {
    width: 43px;
    height: 43px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(245, 240, 230, .55);
    border-radius: 50%;

    font-size: 11px;

    transition: .3s ease;
}

.ra-restro24-discover:hover i {
    background: #f5f0e6;
    color: #171a18;

    transform: translateY(4px);
}


/* Right Badge */

.ra-restro24-badge {
    position: absolute;

    right: 8%;
    top: 50%;

    transform: translateY(-50%);

    z-index: 5;

    width: 150px;
    height: 150px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(213, 189, 141, .65);
    border-radius: 50%;

    background: rgba(20, 25, 22, .28);

    backdrop-filter: blur(6px);

    text-align: center;
}


.ra-restro24-badge::before {
    content: "";

    position: absolute;

    inset: 9px;

    border: 1px solid rgba(245, 240, 230, .20);

    border-radius: 50%;
}


.ra-restro24-badge > span {
    font-size: 7px;
    letter-spacing: 3px;

    margin-bottom: 2px;
}


.ra-restro24-badge strong {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 46px;
    font-weight: 400;

    line-height: 1;

    color: #d5bd8d;
}


.ra-restro24-badge small {
    margin-top: 5px;

    font-size: 6px;
    line-height: 1.5;

    letter-spacing: 2px;
}


/* Bottom */

.ra-restro24-bottom {
    position: absolute;

    left: 55px;
    right: 55px;
    bottom: 32px;

    z-index: 6;

    display: flex;
    align-items: center;

    padding-top: 20px;

    border-top: 1px solid rgba(245, 240, 230, .25);
}


.ra-restro24-bottom > div:not(.ra-restro24-bottom-line) {
    flex: 1;

    display: flex;
    align-items: center;
    gap: 15px;
}


.ra-restro24-bottom span {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 16px;

    opacity: .55;
}


.ra-restro24-bottom strong {
    font-size: 9px;
    font-weight: 600;

    letter-spacing: 2px;
}


.ra-restro24-bottom-line {
    width: 1px;
    height: 28px;

    margin: 0 28px;

    background: rgba(245, 240, 230, .25);
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-restro24-hero {
        height: 100svh;
        min-height: 700px;
    }


    .ra-restro24-bg img {
        object-position: 58% center;
    }


    .ra-restro24-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(15, 20, 18, .88),
                rgba(15, 20, 18, .48)
            ),
            linear-gradient(
                0deg,
                rgba(15, 20, 18, .94),
                transparent 55%
            );
    }


    .ra-restro24-top {
        top: 22px;
        left: 20px;
        right: 20px;

        padding-bottom: 14px;
    }


    .ra-restro24-hotel {
        font-size: 7px;
        letter-spacing: 2.3px;
    }


    .ra-restro24-location {
        font-size: 7px;
        letter-spacing: 1.5px;
    }


    .ra-restro24-time {
        display: none;
    }


    .ra-restro24-main {
        left: 25px;
        right: 25px;

        top: 46%;

        transform: translateY(-43%);

        width: auto;
    }


    .ra-restro24-kicker {
        margin-bottom: 19px;

        font-size: 8px;
        letter-spacing: 2.3px;
    }


    .ra-restro24-main h1 {
        font-size: 72px;

        line-height: .82;

        letter-spacing: -4px;
    }


    .ra-restro24-main h1 strong {
        margin-left: 45px;

        font-size: .60em;

        letter-spacing: -1px;
    }


    .ra-restro24-rule {
        width: 65px;

        margin: 28px 0 20px;
    }


    .ra-restro24-main > p {
        max-width: 335px;

        font-size: 16px;
        line-height: 1.7;

        margin-bottom: 25px;
    }


    .ra-restro24-discover {
        font-size: 9px;
        letter-spacing: 1.8px;
    }


    .ra-restro24-discover i {
        width: 38px;
        height: 38px;

        font-size: 10px;
    }


    .ra-restro24-badge {
        right: 20px;
        top: auto;
        bottom: 135px;

        transform: none;

        width: 82px;
        height: 82px;
    }


    .ra-restro24-badge::before {
        inset: 6px;
    }


    .ra-restro24-badge > span {
        font-size: 5px;
        letter-spacing: 1.5px;
    }


    .ra-restro24-badge strong {
        font-size: 28px;
    }


    .ra-restro24-badge small {
        font-size: 4px;
        letter-spacing: 1px;
    }


    .ra-restro24-bottom {
        left: 20px;
        right: 20px;
        bottom: 18px;

        padding-top: 14px;
    }


    .ra-restro24-bottom > div:not(.ra-restro24-bottom-line) {
        display: block;
    }


    .ra-restro24-bottom span {
        display: none;
    }


    .ra-restro24-bottom strong {
        font-size: 6.5px;
        letter-spacing: 1.1px;
    }


    .ra-restro24-bottom-line {
        height: 25px;

        margin: 0 10px;
    }

}
/* =========================================
   RESTRO THE 24 — SECTION 02
========================================= */

.ra-restro24-intro {
    position: relative;

    width: 100%;
    padding: 125px 7vw 55px;

    background: #f1eadf;
    color: #3F3D3A;

    overflow: hidden;
}


/* Number */

.ra-restro24-intro-number {
    position: absolute;

    top: 125px;
    right: 7vw;

    display: flex;
    align-items: center;
    gap: 15px;
}

.ra-restro24-intro-number > span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
}

.ra-restro24-intro-number p {
    margin: 0;

    font-size: 9px;
    letter-spacing: 3px;
}


/* Main Heading */

.ra-restro24-intro-heading {
    max-width: 950px;

    margin-bottom: 55px;
}

.ra-restro24-intro-heading > span {
    display: block;

    margin-bottom: 25px;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 4px;
}

.ra-restro24-intro-heading h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(65px, 8vw, 120px);
    font-weight: 400;

    line-height: .88;
    letter-spacing: -5px;
}

.ra-restro24-intro-heading h2 em {
    color: #8a7145;
    font-style: italic;
}


/* Copy */

.ra-restro24-intro-copy {
    max-width: 680px;

    margin-left: 15vw;
}

.ra-restro24-intro-lead {
    margin: 0 0 22px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;
    line-height: 1.5;
}

.ra-restro24-intro-copy > p:not(.ra-restro24-intro-lead) {
    margin: 0;

    font-size: 17px;
    line-height: 1.85;

    color: #3F3D3A;
}


/* Link */

.ra-restro24-intro-link {
    display: inline-flex;
    align-items: center;
    gap: 15px;

    margin-top: 32px;

    color: #3F3D3A;
    text-decoration: none;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.2px;
    text-transform: uppercase;
}

.ra-restro24-intro-link i {
    width: 42px;
    height: 42px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(29, 48, 41, .4);
    border-radius: 50%;

    font-size: 11px;

    transition: .3s ease;
}

.ra-restro24-intro-link:hover i {
    background: #3F3D3A;
    color: #f1eadf;
    transform: translateX(5px);
}


/* Large 24 */

.ra-restro24-intro-24 {
    position: absolute;

    right: 5vw;
    top: 38%;

    display: flex;
    flex-direction: column;
    align-items: center;

    transform: rotate(8deg);

    opacity: .10;
}

.ra-restro24-intro-24 strong {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 260px;
    font-weight: 400;

    line-height: .75;
}

.ra-restro24-intro-24 span {
    font-size: 8px;
    line-height: 1.6;
    letter-spacing: 3px;

    text-align: center;
}


/* Bottom Features */

.ra-restro24-intro-bottom {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    margin-top: 110px;

    border-top: 1px solid rgba(29, 48, 41, .22);
    border-bottom: 1px solid rgba(29, 48, 41, .22);
}

.ra-restro24-intro-bottom > div {
    position: relative;

    padding: 35px 28px 35px 0;
}

.ra-restro24-intro-bottom > div:not(:last-child) {
    margin-right: 28px;

    border-right: 1px solid rgba(29, 48, 41, .18);
}

.ra-restro24-intro-bottom span {
    display: block;

    margin-bottom: 20px;

    font-size: 9px;
    letter-spacing: 2px;

    opacity: .5;
}

.ra-restro24-intro-bottom i {
    display: block;

    margin-bottom: 17px;

    font-size: 23px;

    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;

    color: #8a7145;
}

.ra-restro24-intro-bottom strong {
    display: block;

    margin-bottom: 8px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 22px;
    font-weight: 400;
}

.ra-restro24-intro-bottom p {
    margin: 0;

    font-size: 12px;
    line-height: 1.6;

    color: #3F3D3A;
}


/* Footer */

.ra-restro24-intro-footer {
    display: flex;
    align-items: center;
    gap: 22px;

    margin-top: 38px;
}

.ra-restro24-intro-footer span,
.ra-restro24-intro-footer strong {
    font-size: 9px;
    letter-spacing: 3px;
}

.ra-restro24-intro-footer div {
    width: 70px;
    height: 1px;

    background: #8a7145;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-restro24-intro {
        padding: 75px 20px 40px;
    }


    .ra-restro24-intro-number {
        position: static;

        margin-bottom: 55px;
    }

    .ra-restro24-intro-number > span {
        font-size: 21px;
    }

    .ra-restro24-intro-number p {
        font-size: 8px;
        letter-spacing: 2.2px;
    }


    .ra-restro24-intro-heading {
        margin-bottom: 40px;
    }

    .ra-restro24-intro-heading > span {
        margin-bottom: 18px;

        font-size: 8px;
        letter-spacing: 2.5px;
    }

    .ra-restro24-intro-heading h2 {
        font-size: 51px;
        line-height: .96;
        letter-spacing: -2.5px;
    }


    .ra-restro24-intro-copy {
        margin-left: 0;
        max-width: 100%;
    }


    .ra-restro24-intro-lead {
        font-size: 22px;
        line-height: 1.5;
    }

    .ra-restro24-intro-copy > p:not(.ra-restro24-intro-lead) {
        font-size: 16px;
        line-height: 1.8;
    }


    .ra-restro24-intro-link {
        font-size: 9px;
        letter-spacing: 1.6px;
    }


    .ra-restro24-intro-24 {
        right: -15px;
        top: 42%;

        transform: rotate(8deg);
    }

    .ra-restro24-intro-24 strong {
        font-size: 170px;
    }

    .ra-restro24-intro-24 span {
        font-size: 6px;
        letter-spacing: 2px;
    }


    .ra-restro24-intro-bottom {
        display: block;

        margin-top: 75px;
    }


    .ra-restro24-intro-bottom > div {
        padding: 27px 0;
    }

    .ra-restro24-intro-bottom > div:not(:last-child) {
        margin-right: 0;

        border-right: 0;
        border-bottom: 1px solid rgba(29, 48, 41, .18);
    }


    .ra-restro24-intro-bottom span {
        margin-bottom: 13px;
    }

    .ra-restro24-intro-bottom i {
        font-size: 21px;
    }

    .ra-restro24-intro-bottom strong {
        font-size: 21px;
    }

    .ra-restro24-intro-bottom p {
        font-size: 13px;
    }


    .ra-restro24-intro-footer {
        gap: 12px;
        margin-top: 28px;
    }

    .ra-restro24-intro-footer span,
    .ra-restro24-intro-footer strong {
        font-size: 7px;
        letter-spacing: 1.4px;
    }

    .ra-restro24-intro-footer div {
        width: 35px;
    }

}
/* =========================================
   RESTRO THE 24 — BIGGER TYPOGRAPHY
========================================= */

/* Top Number */
.ra-restro24-intro-number > span {
    font-size: 30px !important;
}

.ra-restro24-intro-number p {
    font-size: 12px !important;
}


/* Main Kicker */
.ra-restro24-intro-heading > span {
    font-size: 14px !important;
    letter-spacing: 4px;
}


/* Main Heading */
.ra-restro24-intro-heading h2 {
    font-size: clamp(78px, 9vw, 140px) !important;
    line-height: .92 !important;
    letter-spacing: -5px !important;
}


/* Lead Paragraph */
.ra-restro24-intro-lead {
    font-size: 31px !important;
    line-height: 1.55 !important;
}


/* Description */
.ra-restro24-intro-copy > p:not(.ra-restro24-intro-lead) {
    font-size: 19px !important;
    line-height: 1.9 !important;
}


/* Button */
.ra-restro24-intro-link {
    font-size: 13px !important;
    letter-spacing: 2.5px !important;
}

.ra-restro24-intro-link i {
    width: 48px !important;
    height: 48px !important;
    font-size: 13px !important;
}


/* Big 24 */
.ra-restro24-intro-24 strong {
    font-size: 300px !important;
}

.ra-restro24-intro-24 span {
    font-size: 10px !important;
}


/* Bottom Features */
.ra-restro24-intro-bottom span {
    font-size: 11px !important;
}

.ra-restro24-intro-bottom i {
    font-size: 28px !important;
}

.ra-restro24-intro-bottom strong {
    font-size: 26px !important;
}

.ra-restro24-intro-bottom p {
    font-size: 15px !important;
    line-height: 1.7 !important;
}


/* Footer */
.ra-restro24-intro-footer span,
.ra-restro24-intro-footer strong {
    font-size: 11px !important;
    letter-spacing: 3px;
}


/* =========================================
   MOBILE — EXTRA LARGE TEXT
========================================= */

@media (max-width: 767px) {

    .ra-restro24-intro-number > span {
        font-size: 25px !important;
    }

    .ra-restro24-intro-number p {
        font-size: 10px !important;
        letter-spacing: 2.5px;
    }


    .ra-restro24-intro-heading > span {
        font-size: 10px !important;
        letter-spacing: 2.8px;
    }


    .ra-restro24-intro-heading h2 {
        font-size: 60px !important;
        line-height: .98 !important;
        letter-spacing: -3px !important;
    }


    .ra-restro24-intro-lead {
        font-size: 24px !important;
        line-height: 1.55 !important;
    }


    .ra-restro24-intro-copy > p:not(.ra-restro24-intro-lead) {
        font-size: 17px !important;
        line-height: 1.85 !important;
    }


    .ra-restro24-intro-link {
        font-size: 11px !important;
        letter-spacing: 1.8px !important;
    }

    .ra-restro24-intro-link i {
        width: 43px !important;
        height: 43px !important;
    }


    .ra-restro24-intro-24 strong {
        font-size: 190px !important;
    }

    .ra-restro24-intro-24 span {
        font-size: 7px !important;
    }


    .ra-restro24-intro-bottom span {
        font-size: 10px !important;
    }

    .ra-restro24-intro-bottom i {
        font-size: 25px !important;
    }

    .ra-restro24-intro-bottom strong {
        font-size: 24px !important;
    }

    .ra-restro24-intro-bottom p {
        font-size: 15px !important;
        line-height: 1.75 !important;
    }


    .ra-restro24-intro-footer span,
    .ra-restro24-intro-footer strong {
        font-size: 8px !important;
    }

}
/* =========================================
   RESTRO THE 24 — SECTION 03
   THE DINING JOURNEY
========================================= */

.ra-restro24-dining {
    position: relative;
    display: grid;
    grid-template-columns: 48% 52%;
    min-height: 900px;
    background: #615f5c;
    color: #f5efe3;
    overflow: hidden;
}


/* IMAGE */

.ra-restro24-dining-image {
    position: relative;
    min-height: 900px;
    overflow: hidden;
}

.ra-restro24-dining-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .8s ease;
}

.ra-restro24-dining:hover
.ra-restro24-dining-image img {
    transform: scale(1.035);
}


/* Image dark gradient */

.ra-restro24-dining-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(0,0,0,.05),
            rgba(0,0,0,.48)
        );
}


/* IMAGE LABEL */

.ra-restro24-dining-image-label {
    position: absolute;
    z-index: 2;
    left: 45px;
    bottom: 45px;

    display: flex;
    align-items: center;
    gap: 18px;

    padding: 14px 20px;

    background: rgba(23,55,47,.88);
    border-left: 2px solid #c6a76b;
}

.ra-restro24-dining-image-label span {
    font-size: 13px;
    color: #c6a76b;
    letter-spacing: 2px;
}

.ra-restro24-dining-image-label strong {
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 3px;
}


/* CONTENT */

.ra-restro24-dining-content {
    position: relative;
    padding: 105px 9vw 125px 8vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
}


/* TOP INDEX */

.ra-restro24-dining-top {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 55px;
}

.ra-restro24-dining-top > span {
    font-size: 24px;
    color: #c6a76b;
    font-weight: 500;
}

.ra-restro24-dining-top > div {
    width: 55px;
    height: 1px;
    background: #c6a76b;
}

.ra-restro24-dining-top p {
    margin: 0;
    font-size: 11px;
    letter-spacing: 3px;
    color: rgba(245,239,227,.68);
}


/* KICKER */

.ra-restro24-dining-kicker {
    display: block;
    margin-bottom: 22px;

    font-size: 13px;
    letter-spacing: 4px;
    color: #c6a76b;
}


/* HEADING */

.ra-restro24-dining-content h2 {
    margin: 0 0 35px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(72px, 7vw, 120px);
    font-weight: 400;
    line-height: .92;
    letter-spacing: -4px;
}

.ra-restro24-dining-content h2 em {
    color: #c6a76b;
    font-style: italic;
}


/* LEAD */

.ra-restro24-dining-lead {
    max-width: 650px;

    margin: 0 0 22px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 28px;
    line-height: 1.55;
    color: #f5efe3;
}


/* BODY */

.ra-restro24-dining-text {
    max-width: 610px;

    margin: 0 0 42px;

    font-size: 17px;
    line-height: 1.9;

    color: rgba(245,239,227,.72);
}


/* POINTS */

.ra-restro24-dining-points {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    border-top: 1px solid rgba(245,239,227,.18);
    border-bottom: 1px solid rgba(245,239,227,.18);

    margin-bottom: 42px;
}


.ra-restro24-dining-point {
    position: relative;

    min-height: 190px;
    padding: 27px 20px 25px 0;

    border-right: 1px solid rgba(245,239,227,.18);
}


.ra-restro24-dining-point:last-child {
    border-right: none;
    padding-left: 20px;
}


.ra-restro24-dining-point:nth-child(2) {
    padding-left: 20px;
}


.ra-restro24-dining-point > span {
    display: block;
    margin-bottom: 22px;

    font-size: 11px;
    letter-spacing: 2px;
    color: #c6a76b;
}


.ra-restro24-dining-point i {
    display: block;
    margin-bottom: 14px;

    font-size: 25px;
    color: #c6a76b;
}


.ra-restro24-dining-point h3 {
    margin: 0 0 8px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 24px;
    font-weight: 400;
}


.ra-restro24-dining-point p {
    margin: 0;

    font-size: 13px;
    line-height: 1.65;

    color: rgba(245,239,227,.62);
}


/* LINK */

.ra-restro24-dining-link {
    display: inline-flex;
    align-items: center;
    gap: 20px;

    width: fit-content;

    color: #f5efe3;
    text-decoration: none;

    font-size: 12px;
    letter-spacing: 2.5px;
    text-transform: uppercase;
}


.ra-restro24-dining-link i {
    width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #c6a76b;
    border-radius: 50%;

    color: #c6a76b;

    transition: all .3s ease;
}


.ra-restro24-dining-link:hover i {
    background: #c6a76b;
    color: #615f5c;
    transform: translateX(5px);
}


/* BOTTOM */

.ra-restro24-dining-bottom {
    position: absolute;
    z-index: 5;

    left: 0;
    right: 0;
    bottom: 0;

    height: 70px;

    padding: 0 45px;

    display: flex;
    align-items: center;
    gap: 25px;

    background: #3F3D3A;

    border-top: 1px solid rgba(245,239,227,.12);
}


.ra-restro24-dining-bottom span {
    font-size: 12px;
    letter-spacing: 3px;
    color: #c6a76b;
}


.ra-restro24-dining-bottom div {
    width: 70px;
    height: 1px;
    background: rgba(245,239,227,.3);
}


.ra-restro24-dining-bottom strong {
    font-size: 10px;
    letter-spacing: 2.5px;
    font-weight: 400;
    color: rgba(245,239,227,.65);
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-restro24-dining {
        display: flex;
        flex-direction: column;
        min-height: auto;
    }


    .ra-restro24-dining-image {
        width: 100%;
        height: 440px;
        min-height: 440px;
        order: 1;
    }


    .ra-restro24-dining-image img {
        height: 100%;
    }


    .ra-restro24-dining-image-label {
        left: 20px;
        bottom: 25px;

        gap: 12px;
        padding: 12px 15px;
    }


    .ra-restro24-dining-image-label span {
        font-size: 10px;
    }


    .ra-restro24-dining-image-label strong {
        font-size: 9px;
        letter-spacing: 2px;
    }


    .ra-restro24-dining-content {
        order: 2;

        padding: 70px 20px 100px;
    }


    .ra-restro24-dining-top {
        margin-bottom: 42px;
        gap: 12px;
    }


    .ra-restro24-dining-top > span {
        font-size: 21px;
    }


    .ra-restro24-dining-top > div {
        width: 40px;
    }


    .ra-restro24-dining-top p {
        font-size: 8px;
        letter-spacing: 2px;
    }


    .ra-restro24-dining-kicker {
        font-size: 10px;
        letter-spacing: 2.8px;
        margin-bottom: 18px;
    }


    .ra-restro24-dining-content h2 {
        font-size: 58px;
        line-height: .96;
        letter-spacing: -3px;

        margin-bottom: 28px;
    }


    .ra-restro24-dining-lead {
        font-size: 23px;
        line-height: 1.55;
        margin-bottom: 20px;
    }


    .ra-restro24-dining-text {
        font-size: 16px;
        line-height: 1.85;
        margin-bottom: 35px;
    }


    .ra-restro24-dining-points {
        display: flex;
        flex-direction: column;

        margin-bottom: 35px;
    }


    .ra-restro24-dining-point,
    .ra-restro24-dining-point:nth-child(2),
    .ra-restro24-dining-point:last-child {
        min-height: auto;

        padding: 25px 0 !important;

        border-right: none;
        border-bottom: 1px solid rgba(245,239,227,.18);
    }


    .ra-restro24-dining-point:last-child {
        border-bottom: none;
    }


    .ra-restro24-dining-point > span {
        font-size: 10px;
        margin-bottom: 15px;
    }


    .ra-restro24-dining-point i {
        font-size: 25px;
        margin-bottom: 12px;
    }


    .ra-restro24-dining-point h3 {
        font-size: 23px;
        margin-bottom: 7px;
    }


    .ra-restro24-dining-point p {
        font-size: 14px;
        line-height: 1.7;
    }


    .ra-restro24-dining-link {
        font-size: 10px;
        letter-spacing: 1.8px;
    }


    .ra-restro24-dining-link i {
        width: 43px;
        height: 43px;
        font-size: 11px;
    }


    .ra-restro24-dining-bottom {
        position: relative;
        order: 3;

        height: auto;
        min-height: 65px;

        padding: 18px 20px;

        flex-wrap: wrap;
        gap: 10px 15px;
    }


    .ra-restro24-dining-bottom span {
        font-size: 9px;
        letter-spacing: 2px;
    }


    .ra-restro24-dining-bottom div {
        width: 35px;
    }


    .ra-restro24-dining-bottom strong {
        width: 100%;

        font-size: 8px;
        letter-spacing: 1.5px;
    }

}
/* =========================================
   RESTRO THE 24
   IMAGE LABEL VISIBILITY FIX
========================================= */

.ra-restro24-dining-image-label {
    z-index: 20 !important;

    left: 35px !important;
    bottom: 35px !important;

    display: flex !important;
    align-items: center !important;
    gap: 16px !important;

    padding: 15px 22px !important;

    background: #3F3D3A;
    border: 1px solid rgba(198, 167, 107, 0.65) !important;
    border-left: 3px solid #c6a76b !important;

    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.35) !important;
}

.ra-restro24-dining-image-label span {
    position: relative !important;
    z-index: 2 !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    color: #c6a76b !important;

    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
}

.ra-restro24-dining-image-label strong {
    position: relative !important;
    z-index: 2 !important;

    display: block !important;

    color: #f5efe3 !important;

    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 3px !important;
    line-height: 1.3 !important;

    white-space: nowrap !important;
}


/* Make sure image overlay stays behind label */
.ra-restro24-dining-image::after {
    z-index: 1 !important;
}

.ra-restro24-dining-image img {
    position: relative !important;
    z-index: 0 !important;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-restro24-dining-image-label {
        left: 18px !important;
        bottom: 22px !important;

        padding: 13px 16px !important;

        gap: 12px !important;

        max-width: calc(100% - 36px) !important;
        box-sizing: border-box !important;
    }

    .ra-restro24-dining-image-label span {
        font-size: 10px !important;
        letter-spacing: 1.5px !important;
    }

    .ra-restro24-dining-image-label strong {
        font-size: 10px !important;
        letter-spacing: 2px !important;
        white-space: normal !important;
    }
}
/* =========================================
   RESTRO THE 24
   DINING JOURNEY LABEL — FINAL FIX
========================================= */

.ra-restro24-dining-image-label {
    position: absolute !important;

    top: 40px !important;
    left: 35px !important;
    bottom: auto !important;

    z-index: 50 !important;

    display: flex !important;
    align-items: center !important;
    gap: 16px !important;

    padding: 16px 24px !important;

    background: #3F3D3A;

    border: 1px solid rgba(198, 167, 107, 0.75) !important;
    border-left: 3px solid #c6a76b !important;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35) !important;

    color: #f5efe3 !important;
}


.ra-restro24-dining-image-label span {
    display: inline-flex !important;
    align-items: center !important;

    color: #c6a76b !important;

    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
}


.ra-restro24-dining-image-label strong {
    display: block !important;

    color: #f5efe3 !important;

    font-size: 13px !important;
    font-weight: 600 !important;

    letter-spacing: 3px !important;
    line-height: 1.3 !important;

    white-space: nowrap !important;
}


/* Bottom bar stays completely above image area */
.ra-restro24-dining-bottom {
    z-index: 60 !important;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-restro24-dining-image-label {
        top: 22px !important;
        left: 18px !important;
        bottom: auto !important;

        max-width: calc(100% - 36px) !important;

        padding: 13px 16px !important;

        gap: 12px !important;
    }


    .ra-restro24-dining-image-label span {
        font-size: 10px !important;
        letter-spacing: 1.5px !important;
    }


    .ra-restro24-dining-image-label strong {
        font-size: 10px !important;
        letter-spacing: 2px !important;
        white-space: normal !important;
    }

}
/* =========================================
   RESTRO THE 24 HERO
   MOBILE BIG TEXT FIX
========================================= */

@media (max-width: 767px) {

    /* Top hotel/location text */
    .ra-restro24-hotel {
        font-size: 9px !important;
        letter-spacing: 2px !important;
    }

    .ra-restro24-location {
        font-size: 8px !important;
        letter-spacing: 1.8px !important;
    }


    /* 24 HOURS marker */
    .ra-restro24-time > span {
        font-size: 42px !important;
    }

    .ra-restro24-time p {
        font-size: 8px !important;
        line-height: 1.35 !important;
        letter-spacing: 1.5px !important;
    }


    /* Main kicker */
    .ra-restro24-kicker {
        font-size: 10px !important;
        letter-spacing: 2.5px !important;
        line-height: 1.5 !important;
    }


    /* MAIN TITLE */
    .ra-restro24-main h1 {
        font-size: 68px !important;
        line-height: .82 !important;
        letter-spacing: -3px !important;
    }


    /* The 24 */
    .ra-restro24-main h1 strong {
        display: block !important;
        font-size: 48px !important;
        line-height: .95 !important;
        letter-spacing: -2px !important;
    }


    /* Gold line */
    .ra-restro24-rule {
        width: 65px !important;
        height: 2px !important;
        margin: 20px 0 20px !important;
    }


    /* Description */
    .ra-restro24-main > p {
        max-width: 330px !important;

        font-size: 17px !important;
        line-height: 1.65 !important;

        margin-bottom: 25px !important;
    }


    /* Discover button */
    .ra-restro24-discover {
        font-size: 11px !important;
        letter-spacing: 2px !important;
    }

    .ra-restro24-discover i {
        width: 42px !important;
        height: 42px !important;
        font-size: 12px !important;
    }


    /* 24 Badge */
    .ra-restro24-badge strong {
        font-size: 28px !important;
    }

    .ra-restro24-badge span {
        font-size: 7px !important;
        letter-spacing: 2px !important;
    }

    .ra-restro24-badge small {
        font-size: 6px !important;
        line-height: 1.4 !important;
    }


    /* Bottom bar */
    .ra-restro24-bottom strong {
        font-size: 8px !important;
        letter-spacing: 1.5px !important;
    }

    .ra-restro24-bottom span {
        font-size: 8px !important;
    }

}
/* =========================================
   RESTRO THE 24 HERO
   COMPLETE MOBILE TYPOGRAPHY FIX
========================================= */

@media (max-width: 767px) {

    /* ==============================
       TOP HEADER
    ============================== */

    .ra-restro24-hotel {
        font-size: 10px !important;
        letter-spacing: 2.2px !important;
    }

    .ra-restro24-location {
        font-size: 9px !important;
        letter-spacing: 2px !important;
    }


    /* ==============================
       LEFT 24 HOURS MARKER
    ============================== */

    .ra-restro24-time > span {
        font-size: 48px !important;
        line-height: 1 !important;
    }

    .ra-restro24-time p {
        font-size: 9px !important;
        line-height: 1.45 !important;
        letter-spacing: 1.8px !important;
    }


    /* ==============================
       MAIN KICKER
    ============================== */

    .ra-restro24-kicker {
        font-size: 11px !important;
        line-height: 1.6 !important;
        letter-spacing: 2.8px !important;
    }


    /* ==============================
       MAIN TITLE
    ============================== */

    .ra-restro24-main h1 {
        font-size: 76px !important;
        line-height: .82 !important;
        letter-spacing: -3.5px !important;
    }

    .ra-restro24-main h1 strong {
        display: block !important;

        font-size: 54px !important;
        line-height: .95 !important;
        letter-spacing: -2px !important;
    }


    /* ==============================
       GOLD DIVIDER
    ============================== */

    .ra-restro24-rule {
        width: 70px !important;
        height: 2px !important;
        margin: 22px 0 22px !important;
    }


    /* ==============================
       HERO DESCRIPTION
    ============================== */

    .ra-restro24-main > p {
        max-width: 345px !important;

        font-size: 18px !important;
        line-height: 1.7 !important;

        margin-bottom: 28px !important;
    }


    /* ==============================
       DISCOVER BUTTON
    ============================== */

    .ra-restro24-discover {
        font-size: 12px !important;
        letter-spacing: 2.2px !important;
    }

    .ra-restro24-discover i {
        width: 44px !important;
        height: 44px !important;

        font-size: 12px !important;
    }


    /* ==============================
       RIGHT 24 BADGE
    ============================== */

    .ra-restro24-badge strong {
        font-size: 30px !important;
    }

    .ra-restro24-badge span {
        font-size: 8px !important;
        letter-spacing: 2px !important;
    }

    .ra-restro24-badge small {
        font-size: 7px !important;
        line-height: 1.5 !important;
        letter-spacing: 1px !important;
    }


    /* ==============================
       BOTTOM DINING BAR
    ============================== */

    .ra-restro24-bottom {
        min-height: 78px !important;
        padding: 18px 15px !important;
    }


    .ra-restro24-bottom > div:not(.ra-restro24-bottom-line) {
        min-width: 0 !important;
    }


    .ra-restro24-bottom span {
        font-size: 10px !important;
        letter-spacing: 1.2px !important;
    }


    .ra-restro24-bottom strong {
        display: block !important;

        font-size: 10px !important;
        line-height: 1.3 !important;

        letter-spacing: 1.8px !important;
        font-weight: 600 !important;
    }


    .ra-restro24-bottom-line {
        width: 30px !important;
        height: 1px !important;
    }

}
/* =========================================
   DESKTOP HERO TEXT
========================================= */

@media (min-width: 768px) {

    .ra-restro24-hotel {
        font-size: 12px !important;
    }

    .ra-restro24-location {
        font-size: 11px !important;
    }

    .ra-restro24-time > span {
        font-size: 58px !important;
    }

    .ra-restro24-time p {
        font-size: 10px !important;
    }

    .ra-restro24-kicker {
        font-size: 13px !important;
    }

    .ra-restro24-main h1 {
        font-size: clamp(100px, 11vw, 170px) !important;
    }

    .ra-restro24-main h1 strong {
        font-size: .55em !important;
    }

    .ra-restro24-main > p {
        font-size: 20px !important;
        line-height: 1.7 !important;
    }

    .ra-restro24-discover {
        font-size: 13px !important;
    }

    .ra-restro24-bottom span {
        font-size: 11px !important;
    }

    .ra-restro24-bottom strong {
        font-size: 11px !important;
        letter-spacing: 2.5px !important;
    }
}
/* =========================================================
   ARCH & SKY HERO — MOBILE FINAL FIX
   FORCE BIG TYPOGRAPHY
========================================================= */

@media screen and (max-width: 767px) {

    /* -----------------------------------------
       HERO MAIN CONTENT
    ----------------------------------------- */

    .ra-archsky-hero-content {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }


    /* -----------------------------------------
       TOP KICKER
    ----------------------------------------- */

    .ra-archsky-hero-content .ra-archsky-hero-kicker,
    .ra-archsky-hero-kicker {
        display: block !important;

        font-size: 13px !important;
        line-height: 1.5 !important;

        letter-spacing: 3px !important;

        margin-bottom: 20px !important;
    }


    /* -----------------------------------------
       ARCH
    ----------------------------------------- */

    .ra-archsky-hero-content h1 {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        font-size: 78px !important;
        line-height: .78 !important;

        letter-spacing: -4px !important;

        white-space: normal !important;
    }


    /* -----------------------------------------
       & SKY
    ----------------------------------------- */

    .ra-archsky-hero-content h1 span {
        display: block !important;

        margin-top: 7px !important;

        font-size: 55px !important;
        line-height: .95 !important;

        letter-spacing: -2px !important;
    }


    /* -----------------------------------------
       GOLD LINE
    ----------------------------------------- */

    .ra-archsky-hero-rule {
        display: block !important;

        width: 70px !important;
        height: 2px !important;

        margin: 24px 0 22px !important;
    }


    /* -----------------------------------------
       DESCRIPTION
    ----------------------------------------- */

    .ra-archsky-hero-content > p,
    .ra-archsky-hero-content p {
        display: block !important;

        width: 100% !important;
        max-width: 340px !important;

        margin: 0 0 28px !important;

        font-size: 18px !important;
        line-height: 1.7 !important;

        letter-spacing: 0 !important;
    }


    /* -----------------------------------------
       DISCOVER
    ----------------------------------------- */

    .ra-archsky-hero-discover {
        display: inline-flex !important;

        align-items: center !important;
        gap: 14px !important;

        font-size: 12px !important;
        line-height: 1.3 !important;

        letter-spacing: 2px !important;
    }


    .ra-archsky-hero-discover i {
        display: inline-flex !important;

        width: 44px !important;
        height: 44px !important;

        align-items: center !important;
        justify-content: center !important;

        font-size: 12px !important;
    }


    /* =====================================================
       TOP HOTEL / LOCATION
    ===================================================== */

    .ra-archsky-hero-top {
        left: 18px !important;
        right: 18px !important;

        padding: 14px 0 !important;
    }


    .ra-archsky-brand {
        font-size: 10px !important;
        letter-spacing: 2px !important;
    }


    .ra-archsky-location {
        font-size: 9px !important;
        letter-spacing: 1.5px !important;
    }


    /* =====================================================
       VERTICAL MARKER
    ===================================================== */

    .ra-archsky-vertical {
        display: flex !important;
    }

    .ra-archsky-vertical span {
        font-size: 10px !important;
        letter-spacing: 2px !important;
    }


    /* =====================================================
       BOTTOM EXPERIENCE BAR
    ===================================================== */

    .ra-archsky-hero-bottom {
        position: absolute !important;

        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;

        width: 100% !important;

        min-height: 88px !important;

        padding: 15px 10px !important;

        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;

        box-sizing: border-box !important;

        z-index: 30 !important;
    }


    .ra-archsky-hero-bottom > div {
        min-width: 0 !important;
        width: 100% !important;

        padding: 0 8px !important;

        box-sizing: border-box !important;
    }


    .ra-archsky-hero-bottom span {
        display: block !important;

        font-size: 11px !important;
        line-height: 1.3 !important;

        letter-spacing: 1.5px !important;

        white-space: normal !important;
    }


    .ra-archsky-hero-bottom p {
        display: block !important;

        margin: 5px 0 0 !important;

        font-size: 10px !important;
        line-height: 1.45 !important;

        letter-spacing: .2px !important;

        white-space: normal !important;
    }


    /* =====================================================
       FORCE FONT-AWESOME ICONS
    ===================================================== */

    .ra-archsky-hero-discover i {
        font-family: "Font Awesome 6 Free" !important;
        font-weight: 900 !important;
        font-style: normal !important;
    }

}
/* =========================================
   ARCH & SKY HERO
   MOBILE VERTICAL MARKER FIX
========================================= */

@media screen and (max-width: 767px) {

    .ra-archsky-vertical {
        position: absolute !important;

        left: 8px !important;
        right: auto !important;

        top: 48% !important;
        transform: translateY(-50%) !important;

        z-index: 8 !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;

        width: 16px !important;
        gap: 8px !important;

        pointer-events: none !important;
    }


    .ra-archsky-vertical span {
        font-size: 8px !important;
        letter-spacing: 1.5px !important;

        writing-mode: vertical-rl !important;
        transform: rotate(180deg) !important;

        white-space: nowrap !important;
    }


    .ra-archsky-vertical div {
        width: 1px !important;
        height: 35px !important;

        background: #c6a76b !important;
    }


    /* Main content gets its own clean area */
    .ra-archsky-hero-content {
        position: relative !important;
        z-index: 10 !important;

        padding-left: 34px !important;
        padding-right: 20px !important;
    }


    /* Keep description away from marker */
    .ra-archsky-hero-content > p {
        position: relative !important;
        z-index: 11 !important;

        max-width: 325px !important;
    }

}
/* =====================================================
   ARCH & SKY — DESKTOP DISCOVER ARROW FINAL FIX
===================================================== */

@media (min-width: 768px) {

    .ra-archsky-hero-discover {
        position: relative !important;

        display: inline-flex !important;
        flex-direction: row !important;

        align-items: center !important;
        justify-content: flex-start !important;

        gap: 18px !important;

        width: auto !important;
        height: auto !important;

        margin: 20px 0 0 0 !important;
        padding: 0 !important;

        transform: none !important;
    }


    .ra-archsky-hero-discover span {
        display: inline-block !important;

        position: relative !important;

        margin: 0 !important;
        padding: 0 !important;

        line-height: 48px !important;

        transform: none !important;
    }


    .ra-archsky-hero-discover i {
        position: relative !important;

        display: flex !important;

        align-items: center !important;
        justify-content: center !important;

        flex: 0 0 50px !important;

        width: 50px !important;
        min-width: 50px !important;
        max-width: 50px !important;

        height: 50px !important;
        min-height: 50px !important;
        max-height: 50px !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;

        border: 1px solid #f5efe3 !important;
        border-radius: 50% !important;

        background: transparent !important;

        color: #f5efe3 !important;

        font-family: "Font Awesome 6 Free" !important;
        font-weight: 900 !important;
        font-size: 14px !important;

        line-height: 1 !important;

        transform: none !important;
    }


    .ra-archsky-hero-discover i::before {
        position: static !important;

        display: block !important;

        margin: 0 !important;
        padding: 0 !important;

        transform: none !important;

        line-height: 1 !important;
    }


    .ra-archsky-hero-discover:hover i {
        transform: translateY(4px) !important;

        background: #c6a76b !important;
        border-color: #c6a76b !important;

        color: #615f5c !important;
    }

}
/* =====================================================
   ARCH & SKY HERO
   DESKTOP ARROW + HORIZONTAL LINE FINAL FIX
===================================================== */

@media (min-width: 768px) {

    /* Discover button ko line ke upar rakho */
    .ra-archsky-hero-content .ra-archsky-hero-discover {
        position: relative !important;
        z-index: 100 !important;

        display: inline-flex !important;
        align-items: center !important;
        gap: 18px !important;

        width: max-content !important;

        margin: 18px 0 0 !important;
        padding: 0 !important;

        background: transparent !important;
    }


    /* Text */
    .ra-archsky-hero-content .ra-archsky-hero-discover span {
        position: relative !important;
        z-index: 101 !important;

        display: inline-block !important;

        font-size: 12px !important;
        line-height: 50px !important;
        letter-spacing: 3px !important;

        color: #f5efe3 !important;
        white-space: nowrap !important;
    }


    /* CIRCLE */
    .ra-archsky-hero-content .ra-archsky-hero-discover i {
        position: relative !important;
        z-index: 102 !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 50px !important;
        height: 50px !important;

        min-width: 50px !important;
        min-height: 50px !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;

        border: 1px solid #f5efe3 !important;
        border-radius: 50% !important;

        /* IMPORTANT — line ko circle ke andar hide karega */
        background: #615f5c !important;

        color: #f5efe3 !important;

        font-family: "Font Awesome 6 Free" !important;
        font-weight: 900 !important;
        font-size: 14px !important;

        line-height: 1 !important;

        isolation: isolate !important;
    }


    .ra-archsky-hero-content .ra-archsky-hero-discover i::before {
        position: relative !important;
        z-index: 103 !important;

        display: block !important;

        margin: 0 !important;
        padding: 0 !important;

        line-height: 1 !important;
    }


    /* =========================================
       BOTTOM BAR
       LINE KO CIRCLE KE PEECHE RAKHO
    ========================================= */

    .ra-archsky-hero-bottom {
        position: absolute !important;

        z-index: 20 !important;

        border-top: 0 !important;
    }


    /* Bottom bar ki line separately */
    .ra-archsky-hero-bottom::before {
        content: "";

        position: absolute;

        left: 55px;
        right: 55px;
        top: 0;

        height: 1px;

        background: rgba(245,239,227,.28);

        z-index: 1;
    }


    .ra-archsky-hero-bottom > * {
        position: relative;
        z-index: 2;
    }


    /* Hover */
    .ra-archsky-hero-content .ra-archsky-hero-discover:hover i {
        background: #c6a76b !important;
        border-color: #c6a76b !important;
        color: #615f5c !important;

        transform: translateY(4px) !important;
    }

}
/* =========================================================
   RESTRO THE 24 — SECTION 04
   THE ATMOSPHERE
========================================================= */

.ra-restro24-atmosphere {
    position: relative;

    min-height: 900px;

    overflow: hidden;

    color: #f5efe3;

    background: #615f5c;
}


/* =========================================================
   BACKGROUND IMAGE
========================================================= */

.ra-restro24-atmosphere-bg {
    position: absolute;

    inset: 0;

    z-index: 0;
}

.ra-restro24-atmosphere-bg img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transform: scale(1.02);

    transition: transform 1s ease;
}

.ra-restro24-atmosphere:hover
.ra-restro24-atmosphere-bg img {
    transform: scale(1.05);
}


/* =========================================================
   OVERLAY
========================================================= */

.ra-restro24-atmosphere-overlay {
    position: absolute;

    inset: 0;

    z-index: 1;

   background:
    linear-gradient(
        90deg,
        rgba(63, 61, 58, .96) 0%,
        rgba(63, 61, 58, .82) 42%,
        rgba(63, 61, 58, .48) 75%,
        rgba(63, 61, 58, .30) 100%
    );
}


/* =========================================================
   CONTENT
========================================================= */

.ra-restro24-atmosphere-content {
    position: relative;

    z-index: 5;

    width: 100%;
    max-width: 900px;

    padding: 105px 8vw 150px;

    box-sizing: border-box;
}


/* =========================================================
   INDEX
========================================================= */

.ra-restro24-atmosphere-index {
    display: flex;

    align-items: center;

    gap: 18px;

    margin-bottom: 58px;
}

.ra-restro24-atmosphere-index > span {
    font-size: 25px;

    color: #c6a76b;
}

.ra-restro24-atmosphere-index > div {
    width: 55px;
    height: 1px;

    background: #c6a76b;
}

.ra-restro24-atmosphere-index p {
    margin: 0;

    font-size: 11px;

    letter-spacing: 3px;

    color: rgba(245,239,227,.72);
}


/* =========================================================
   KICKER
========================================================= */

.ra-restro24-atmosphere-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 13px;

    letter-spacing: 4px;

    color: #c6a76b;
}


/* =========================================================
   HEADING
========================================================= */

.ra-restro24-atmosphere-content h2 {
    margin: 0 0 35px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(78px, 8vw, 135px);

    font-weight: 400;

    line-height: .88;

    letter-spacing: -5px;
}

.ra-restro24-atmosphere-content h2 em {
    color: #c6a76b;

    font-style: italic;
}


/* =========================================================
   LEAD
========================================================= */

.ra-restro24-atmosphere-lead {
    max-width: 690px;

    margin: 0 0 22px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 28px;

    line-height: 1.55;

    color: #f5efe3;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.ra-restro24-atmosphere-text {
    max-width: 640px;

    margin: 0 0 48px;

    font-size: 17px;

    line-height: 1.9;

    color: rgba(245,239,227,.72);
}


/* =========================================================
   DETAILS
========================================================= */

.ra-restro24-atmosphere-details {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    max-width: 850px;

    border-top: 1px solid rgba(245,239,227,.25);

    border-bottom: 1px solid rgba(245,239,227,.25);
}


.ra-restro24-atmosphere-detail {
    min-height: 185px;

    padding: 25px 25px 25px 0;

    border-right: 1px solid rgba(245,239,227,.20);

    box-sizing: border-box;
}


.ra-restro24-atmosphere-detail:nth-child(2) {
    padding-left: 25px;
}


.ra-restro24-atmosphere-detail:last-child {
    padding-left: 25px;

    border-right: none;
}


.ra-restro24-atmosphere-detail > span {
    display: block;

    margin-bottom: 18px;

    font-size: 11px;

    letter-spacing: 2px;

    color: #c6a76b;
}


.ra-restro24-atmosphere-detail i {
    display: block;

    margin-bottom: 15px;

    font-size: 25px;

    color: #c6a76b;
}


.ra-restro24-atmosphere-detail strong {
    display: block;

    margin-bottom: 8px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 23px;

    font-weight: 400;

    line-height: 1.2;
}


.ra-restro24-atmosphere-detail p {
    margin: 0;

    font-size: 13px;

    line-height: 1.6;

    color: rgba(245,239,227,.62);
}


/* =========================================================
   BOTTOM SIGNATURE
========================================================= */

.ra-restro24-atmosphere-bottom {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 10;

    min-height: 72px;

    padding: 0 45px;

    display: flex;

    align-items: center;

    gap: 25px;

    box-sizing: border-box;

    background: #3F3D3A;

    border-top: 1px solid rgba(245,239,227,.15);
}


.ra-restro24-atmosphere-bottom > span {
    font-size: 12px;

    letter-spacing: 3px;

    color: #c6a76b;
}


.ra-restro24-atmosphere-bottom > div {
    width: 70px;

    height: 1px;

    background: rgba(245,239,227,.35);
}


.ra-restro24-atmosphere-bottom strong {
    font-size: 10px;

    font-weight: 400;

    letter-spacing: 2.5px;

    color: rgba(245,239,227,.68);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-restro24-atmosphere {
        min-height: auto;

        display: flex;

        flex-direction: column;
    }


    .ra-restro24-atmosphere-bg {
        position: absolute;
    }


    .ra-restro24-atmosphere-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(10,35,29,.52) 0%,
                rgba(10,35,29,.78) 48%,
                rgba(10,35,29,.97) 100%
            );
    }


    .ra-restro24-atmosphere-content {
        padding: 70px 20px 100px;

        max-width: 100%;
    }


    /* Index */

    .ra-restro24-atmosphere-index {
        gap: 12px;

        margin-bottom: 42px;
    }


    .ra-restro24-atmosphere-index > span {
        font-size: 23px;
    }


    .ra-restro24-atmosphere-index > div {
        width: 40px;
    }


    .ra-restro24-atmosphere-index p {
        font-size: 9px;

        letter-spacing: 2px;
    }


    /* Kicker */

    .ra-restro24-atmosphere-kicker {
        font-size: 10px;

        letter-spacing: 2.8px;

        line-height: 1.5;

        margin-bottom: 18px;
    }


    /* Heading */

    .ra-restro24-atmosphere-content h2 {
        font-size: 60px;

        line-height: .94;

        letter-spacing: -3px;

        margin-bottom: 28px;
    }


    /* Lead */

    .ra-restro24-atmosphere-lead {
        font-size: 23px;

        line-height: 1.55;

        margin-bottom: 20px;
    }


    /* Body */

    .ra-restro24-atmosphere-text {
        font-size: 16px;

        line-height: 1.85;

        margin-bottom: 38px;
    }


    /* Details */

    .ra-restro24-atmosphere-details {
        display: flex;

        flex-direction: column;

        max-width: 100%;
    }


    .ra-restro24-atmosphere-detail,
    .ra-restro24-atmosphere-detail:nth-child(2),
    .ra-restro24-atmosphere-detail:last-child {
        min-height: auto;

        padding: 25px 0 !important;

        border-right: none;

        border-bottom: 1px solid rgba(245,239,227,.20);
    }


    .ra-restro24-atmosphere-detail:last-child {
        border-bottom: none;
    }


    .ra-restro24-atmosphere-detail > span {
        font-size: 10px;

        margin-bottom: 15px;
    }


    .ra-restro24-atmosphere-detail i {
        font-size: 25px;

        margin-bottom: 12px;
    }


    .ra-restro24-atmosphere-detail strong {
        font-size: 24px;

        margin-bottom: 8px;
    }


    .ra-restro24-atmosphere-detail p {
        font-size: 14px;

        line-height: 1.7;
    }


    /* Bottom */

    .ra-restro24-atmosphere-bottom {
        position: relative;

        min-height: 70px;

        padding: 17px 20px;

        flex-wrap: wrap;

        gap: 10px 15px;
    }


    .ra-restro24-atmosphere-bottom > span {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-restro24-atmosphere-bottom > div {
        width: 35px;
    }


    .ra-restro24-atmosphere-bottom strong {
        width: 100%;

        font-size: 8px;

        line-height: 1.4;

        letter-spacing: 1.5px;
    }

}
/* =========================================================
   RESTRO THE 24 — SECTION 06
   FINAL CTA
========================================================= */

.ra-restro24-cta {
    position: relative;

    min-height: 820px;

    overflow: hidden;

    color: #f5efe3;

    background: #615f5c;
}


/* =========================================================
   IMAGE
========================================================= */

.ra-restro24-cta-image {
    position: absolute;

    inset: 0;

    z-index: 0;
}

.ra-restro24-cta-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform 1s ease;
}

.ra-restro24-cta:hover
.ra-restro24-cta-image img {
    transform: scale(1.035);
}


/* =========================================================
   OVERLAY
========================================================= */

.ra-restro24-cta-overlay {
    position: absolute;

    inset: 0;

    z-index: 1;

    background:
    linear-gradient(
        90deg,
        rgba(63, 61, 58, .96) 0%,
        rgba(63, 61, 58, .82) 42%,
        rgba(63, 61, 58, .48) 75%,
        rgba(63, 61, 58, .30) 100%
    );
}


/* =========================================================
   CONTENT
========================================================= */

.ra-restro24-cta-content {
    position: relative;

    z-index: 5;

    max-width: 900px;

    padding: 105px 8vw 145px;
}


/* =========================================================
   INDEX
========================================================= */

.ra-restro24-cta-index {
    display: flex;

    align-items: center;

    gap: 18px;

    margin-bottom: 58px;
}

.ra-restro24-cta-index > span {
    font-size: 25px;

    color: #c6a76b;
}

.ra-restro24-cta-index > div {
    width: 55px;
    height: 1px;

    background: #c6a76b;
}

.ra-restro24-cta-index p {
    margin: 0;

    font-size: 11px;

    letter-spacing: 3px;

    color: rgba(245,239,227,.70);
}


/* =========================================================
   KICKER
========================================================= */

.ra-restro24-cta-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 13px;

    letter-spacing: 4px;

    color: #c6a76b;
}


/* =========================================================
   HEADING
========================================================= */

.ra-restro24-cta-content h2 {
    margin: 0 0 34px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(75px, 8vw, 135px);

    font-weight: 400;

    line-height: .90;

    letter-spacing: -5px;
}

.ra-restro24-cta-content h2 em {
    color: #c6a76b;

    font-style: italic;
}


/* =========================================================
   LEAD
========================================================= */

.ra-restro24-cta-lead {
    max-width: 650px;

    margin: 0 0 42px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;

    line-height: 1.55;

    color: #f5efe3;
}


/* =========================================================
   ACTIONS
========================================================= */

.ra-restro24-cta-actions {
    display: flex;

    align-items: center;

    gap: 28px;
}


/* PRIMARY */

.ra-restro24-cta-primary {
    display: inline-flex;

    align-items: center;

    gap: 18px;

    color: #f5efe3;

    text-decoration: none;

    font-size: 12px;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}


.ra-restro24-cta-primary i {
    width: 50px;
    height: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #c6a76b;

    border-radius: 50%;

    color: #c6a76b;

    transition: all .3s ease;
}


.ra-restro24-cta-primary:hover i {
    background: #c6a76b;

    color: #615f5c;

    transform: translateX(5px);
}


/* WHATSAPP */

.ra-restro24-cta-whatsapp {
    display: flex;

    align-items: center;

    gap: 13px;

    color: #f5efe3;

    text-decoration: none;
}


.ra-restro24-cta-whatsapp > i {
    font-size: 25px;

    color: #c6a76b;
}


.ra-restro24-cta-whatsapp span {
    display: flex;

    flex-direction: column;

    gap: 4px;

    font-size: 15px;

    letter-spacing: 1px;
}


.ra-restro24-cta-whatsapp small {
    font-size: 8px;

    letter-spacing: 2px;

    color: rgba(245,239,227,.55);
}


/* =========================================================
   24 BADGE
========================================================= */

.ra-restro24-cta-badge {
    position: absolute;

    z-index: 6;

    right: 9vw;

    top: 50%;

    transform: translateY(-50%);

    width: 165px;
    height: 165px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(198,167,107,.75);

    border-radius: 50%;

    background: rgba(8,31,25,.38);

    backdrop-filter: blur(4px);
}


.ra-restro24-cta-badge span {
    font-size: 9px;

    letter-spacing: 3px;

    color: #c6a76b;
}


.ra-restro24-cta-badge strong {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 55px;

    line-height: .95;

    font-weight: 400;
}


.ra-restro24-cta-badge small {
    margin-top: 7px;

    text-align: center;

    font-size: 7px;

    line-height: 1.4;

    letter-spacing: 1.5px;

    color: rgba(245,239,227,.65);
}


/* =========================================================
   BOTTOM
========================================================= */

.ra-restro24-cta-bottom {
    position: absolute;

    z-index: 10;

    left: 0;
    right: 0;
    bottom: 0;

    min-height: 72px;

    padding: 0 45px;

    display: flex;

    align-items: center;

    gap: 25px;

    box-sizing: border-box;

    background: #3F3D3A;

    border-top: 1px solid rgba(245,239,227,.15);
}


.ra-restro24-cta-bottom > span {
    font-size: 12px;

    letter-spacing: 3px;

    color: #c6a76b;
}


.ra-restro24-cta-bottom > div {
    width: 70px;

    height: 1px;

    background: rgba(245,239,227,.35);
}


.ra-restro24-cta-bottom strong {
    font-size: 10px;

    font-weight: 400;

    letter-spacing: 2.5px;

    color: rgba(245,239,227,.68);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-restro24-cta {
        min-height: auto;

        display: flex;

        flex-direction: column;
    }


    .ra-restro24-cta-image {
        position: absolute;
    }


    .ra-restro24-cta-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(8,31,25,.42) 0%,
                rgba(8,31,25,.72) 45%,
                rgba(8,31,25,.97) 100%
            );
    }


    .ra-restro24-cta-content {
        padding: 70px 20px 125px;

        max-width: 100%;
    }


    /* INDEX */

    .ra-restro24-cta-index {
        gap: 12px;

        margin-bottom: 42px;
    }


    .ra-restro24-cta-index > span {
        font-size: 23px;
    }


    .ra-restro24-cta-index > div {
        width: 40px;
    }


    .ra-restro24-cta-index p {
        font-size: 9px;

        letter-spacing: 2px;
    }


    /* KICKER */

    .ra-restro24-cta-kicker {
        font-size: 10px;

        letter-spacing: 2.8px;

        margin-bottom: 18px;
    }


    /* HEADING */

    .ra-restro24-cta-content h2 {
        font-size: 59px;

        line-height: .95;

        letter-spacing: -3px;

        margin-bottom: 28px;
    }


    /* LEAD */

    .ra-restro24-cta-lead {
        font-size: 22px;

        line-height: 1.55;

        margin-bottom: 35px;
    }


    /* ACTIONS */

    .ra-restro24-cta-actions {
        display: flex;

        flex-direction: column;

        align-items: flex-start;

        gap: 25px;
    }


    .ra-restro24-cta-primary {
        font-size: 11px;

        letter-spacing: 2px;
    }


    .ra-restro24-cta-primary i {
        width: 44px;
        height: 44px;

        font-size: 11px;
    }


    .ra-restro24-cta-whatsapp > i {
        font-size: 23px;
    }


    .ra-restro24-cta-whatsapp span {
        font-size: 14px;
    }


    .ra-restro24-cta-whatsapp small {
        font-size: 7px;
    }


    /* BADGE */

    .ra-restro24-cta-badge {
        width: 105px;
        height: 105px;

        right: 20px;

        top: auto;
        bottom: 125px;

        transform: none;
    }


    .ra-restro24-cta-badge span {
        font-size: 6px;

        letter-spacing: 2px;
    }


    .ra-restro24-cta-badge strong {
        font-size: 35px;
    }


    .ra-restro24-cta-badge small {
        font-size: 5px;

        margin-top: 4px;
    }


    /* BOTTOM */

    .ra-restro24-cta-bottom {
        position: relative;

        min-height: 70px;

        padding: 17px 20px;

        flex-wrap: wrap;

        gap: 10px 15px;
    }


    .ra-restro24-cta-bottom > span {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-restro24-cta-bottom > div {
        width: 35px;
    }


    .ra-restro24-cta-bottom strong {
        width: 100%;

        font-size: 8px;

        letter-spacing: 1.5px;

        line-height: 1.4;
    }

}
/* =========================================================
   ARCH FITNESS — HERO
========================================================= */

.ra-fitness-hero {
    position: relative;

    min-height: 900px;
    height: 100vh;

    overflow: hidden;

    background: #101b18;

    color: #f5efe3;
}


/* =========================================================
   BACKGROUND
========================================================= */

.ra-fitness-hero-bg {
    position: absolute;

    inset: 0;

    z-index: 0;
}

.ra-fitness-hero-bg img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transform: scale(1.02);

    transition: transform 1s ease;
}

.ra-fitness-hero:hover
.ra-fitness-hero-bg img {
    transform: scale(1.045);
}


/* =========================================================
   OVERLAY
========================================================= */

.ra-fitness-hero-overlay {
    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            90deg,
            rgba(7,22,18,.94) 0%,
            rgba(7,22,18,.78) 34%,
            rgba(7,22,18,.38) 70%,
            rgba(7,22,18,.50) 100%
        ),
        linear-gradient(
            180deg,
            rgba(7,22,18,.45) 0%,
            transparent 35%,
            rgba(7,22,18,.72) 100%
        );
}


/* =========================================================
   TOP BAR
========================================================= */

.ra-fitness-hero-top {
    position: absolute;

    top: 0;
    left: 0;
    right: 0;

    z-index: 20;

    height: 82px;

    padding: 0 55px;

    display: flex;

    align-items: center;
    justify-content: space-between;

    border-bottom: 1px solid rgba(245,239,227,.15);
}


.ra-fitness-brand {
    font-size: 12px;

    font-weight: 600;

    letter-spacing: 3px;

    color: #f5efe3;
}


.ra-fitness-location {
    font-size: 10px;

    letter-spacing: 2.5px;

    color: white;
}


/* =========================================================
   LEFT MARKER
========================================================= */

.ra-fitness-hero-marker {
    position: absolute;

    z-index: 10;

    left: 45px;

    top: 50%;

    transform: translateY(-50%);

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 14px;
}


.ra-fitness-hero-marker > span {
    font-size: 13px;

    color: #c6a76b;

    letter-spacing: 2px;
}


.ra-fitness-hero-marker > div {
    width: 1px;
    height: 65px;

    background: #c6a76b;
}


.ra-fitness-hero-marker p {
    margin: 0;

    writing-mode: vertical-rl;

    transform: rotate(180deg);

    font-size: 9px;

    line-height: 1.4;

    letter-spacing: 2.5px;

    color: rgba(245,239,227,.65);

    text-align: center;
}


/* =========================================================
   MAIN CONTENT
========================================================= */

.ra-fitness-hero-content {
    position: relative;

    z-index: 10;

    min-height: 100vh;

    max-width: 950px;

    padding: 205px 0 180px 9vw;

    display: flex;

    flex-direction: column;

    justify-content: center;

    box-sizing: border-box;
}


/* KICKER */

.ra-fitness-kicker {
    display: block;

    margin-bottom: 25px;

    font-size: 13px;

    letter-spacing: 5px;

    color: #c6a76b;
}


/* HEADING */

.ra-fitness-hero-content h1 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(90px, 10vw, 165px);

    font-weight: 400;

    line-height: .82;

    letter-spacing: -6px;
}


.ra-fitness-hero-content h1 em {
    display: block;

    color: #c6a76b;

    font-style: italic;

    font-size: .72em;

    letter-spacing: -4px;
}


/* RULE */

.ra-fitness-rule {
    width: 75px;

    height: 2px;

    margin: 30px 0 25px;

    background: #c6a76b;
}


/* DESCRIPTION */

.ra-fitness-hero-content > p {
    max-width: 530px;

    margin: 0 0 35px;

    font-size: 19px;

    line-height: 1.8;

    color: rgba(245,239,227,.78);
}


/* DISCOVER */

.ra-fitness-discover {
    display: inline-flex;

    align-items: center;

    gap: 18px;

    width: max-content;

    color: #f5efe3;

    text-decoration: none;

    font-size: 12px;

    letter-spacing: 2.5px;
}


.ra-fitness-discover i {
    width: 50px;
    height: 50px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #f5efe3;

    border-radius: 50%;

    background: #10241e;

    color: #f5efe3;

    font-size: 13px;

    transition: all .3s ease;
}


.ra-fitness-discover:hover i {
    background: #c6a76b;

    border-color: #c6a76b;

    color: #10241e;

    transform: translateY(5px);
}


/* =========================================================
   RIGHT VERTICAL WORD
========================================================= */

.ra-fitness-vertical {
    position: absolute;

    right: 45px;

    top: 50%;

    transform: translateY(-50%);

    z-index: 10;

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 22px;
}


.ra-fitness-vertical span {
    writing-mode: vertical-rl;

    font-size: 10px;

    letter-spacing: 4px;

    color: rgba(245,239,227,.65);
}


/* =========================================================
   BOTTOM BAR
========================================================= */

.ra-fitness-hero-bottom {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 20;

    min-height: 92px;

    padding: 0 55px;

    display: grid;

    grid-template-columns:
        1fr 70px
        1fr 70px
        1fr 70px
        1fr;

    align-items: center;

    background: #3F3D3A;

    border-top: 1px solid rgba(245,239,227,.15);

    box-sizing: border-box;
}


.ra-fitness-bottom-item {
    padding: 0 20px;
}


.ra-fitness-bottom-item:first-child {
    padding-left: 0;
}


.ra-fitness-bottom-item > span {
    display: block;

    margin-bottom: 5px;

    font-size: 9px;

    letter-spacing: 2px;

    color: #c6a76b;
}


.ra-fitness-bottom-item strong {
    display: block;

    margin-bottom: 4px;

    font-size: 12px;

    letter-spacing: 2.5px;

    font-weight: 500;
}


.ra-fitness-bottom-item p {
    margin: 0;

    font-size: 11px;

    color: rgba(245,239,227,.55);
}


.ra-fitness-bottom-line {
    width: 35px;

    height: 1px;

    background: rgba(198,167,107,.5);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-fitness-hero {
        min-height: 820px;

        height: auto;
    }


    /* TOP */

    .ra-fitness-hero-top {
        height: 65px;

        padding: 0 18px;
    }


    .ra-fitness-brand {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-fitness-location {
        font-size: 7px;

        letter-spacing: 1.5px;
    }


    /* Hide vertical elements on mobile */

    .ra-fitness-hero-marker,
    .ra-fitness-vertical {
        display: none;
    }


    /* CONTENT */

    .ra-fitness-hero-content {
        min-height: 730px;

        max-width: 100%;

        padding: 150px 20px 190px;

        justify-content: center;
    }


    .ra-fitness-kicker {
        font-size: 10px;

        letter-spacing: 2.8px;

        line-height: 1.5;

        margin-bottom: 20px;
    }


    .ra-fitness-hero-content h1 {
        font-size: 67px;

        line-height: .84;

        letter-spacing: -3.5px;
    }


    .ra-fitness-hero-content h1 em {
        font-size: .72em;

        letter-spacing: -2px;
    }


    .ra-fitness-rule {
        width: 65px;

        height: 2px;

        margin: 22px 0;
    }


    .ra-fitness-hero-content > p {
        max-width: 335px;

        font-size: 17px;

        line-height: 1.7;

        margin-bottom: 28px;
    }


    .ra-fitness-discover {
        font-size: 10px;

        letter-spacing: 1.8px;

        gap: 13px;
    }


    .ra-fitness-discover i {
        width: 43px;
        height: 43px;

        font-size: 11px;
    }


    /* BOTTOM */

    .ra-fitness-hero-bottom {
        min-height: 92px;

        padding: 15px 12px;

        grid-template-columns:
            1fr 22px
            1fr 22px
            1fr 22px
            1fr;
    }


    .ra-fitness-bottom-item {
        padding: 0 5px;
    }


    .ra-fitness-bottom-item > span {
        font-size: 8px;

        letter-spacing: 1px;
    }


    .ra-fitness-bottom-item strong {
        font-size: 9px;

        letter-spacing: 1.2px;
    }


    .ra-fitness-bottom-item p {
        font-size: 8px;

        line-height: 1.35;
    }


    .ra-fitness-bottom-line {
        width: 18px;
    }

}
/* =========================================
   ARCH FITNESS HERO
   TITLE OVERLAP FIX
========================================= */

.ra-fitness-hero-content h1 {
    line-height: 0.95 !important;
    letter-spacing: -5px !important;
}

.ra-fitness-hero-content h1 em {
    display: block !important;

    margin-top: 12px !important;

    line-height: 0.95 !important;

    font-size: 0.72em !important;

    letter-spacing: -3px !important;

    position: relative !important;
    top: auto !important;
    bottom: auto !important;

    transform: none !important;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .ra-fitness-hero-content h1 {
        font-size: 67px !important;

        line-height: 0.95 !important;

        letter-spacing: -3px !important;
    }

    .ra-fitness-hero-content h1 em {
        display: block !important;

        margin-top: 10px !important;

        font-size: 0.72em !important;

        line-height: 0.95 !important;

        letter-spacing: -2px !important;

        position: relative !important;
        top: auto !important;
        bottom: auto !important;

        transform: none !important;
    }

}
/* =========================================================
   ARCH FITNESS — SECTION 02
========================================================= */

.ra-fitness-intro {
    position: relative;

    background: #e9e1d2;

    color: #615f5c;

    padding: 110px 6vw 0;

    overflow: hidden;
}


/* =========================================================
   TOP
========================================================= */

.ra-fitness-intro-top {
    max-width: 1250px;

    margin: 0 auto 80px;

    display: grid;

    grid-template-columns: 180px 60px 1fr;

    align-items: center;

    gap: 25px;
}


.ra-fitness-intro-number {
    display: flex;

    flex-direction: column;

    gap: 7px;
}


.ra-fitness-intro-number > span:first-child {
    font-size: 27px;

    color: #a7864e;
}


.ra-fitness-intro-number > span:last-child {
    font-size: 9px;

    letter-spacing: 2.5px;

    color: #615f5c;
}


.ra-fitness-intro-line {
    width: 60px;

    height: 1px;

    background: #a7864e;
}


.ra-fitness-intro-top > p {
    max-width: 650px;

    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 23px;

    line-height: 1.65;

    color: #615f5c;
}


/* =========================================================
   MAIN
========================================================= */

.ra-fitness-intro-main {
    max-width: 1250px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: 52% 48%;

    min-height: 700px;
}


/* IMAGE */

.ra-fitness-intro-image {
    position: relative;

    min-height: 700px;

    overflow: hidden;
}


.ra-fitness-intro-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform .8s ease;
}


.ra-fitness-intro-image:hover img {
    transform: scale(1.04);
}


.ra-fitness-intro-image-label {
    position: absolute;

    left: 30px;
    bottom: 30px;

    z-index: 3;

    display: flex;

    flex-direction: column;

    gap: 7px;

    padding: 15px 20px;

    background: #615f5c;

    border-left: 3px solid #c6a76b;
}


.ra-fitness-intro-image-label span {
    font-size: 11px;

    letter-spacing: 3px;

    color: #c6a76b;
}


.ra-fitness-intro-image-label strong {
    font-size: 10px;

    letter-spacing: 2px;

    font-weight: 500;

    color: #f5efe3;
}


/* =========================================================
   CONTENT
========================================================= */

.ra-fitness-intro-content {
    padding: 75px 7vw;

    display: flex;

    flex-direction: column;

    justify-content: center;
}


.ra-fitness-intro-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 13px;

    letter-spacing: 4px;

    color: #a7864e;
}


.ra-fitness-intro-content h2 {
    margin: 0 0 32px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(70px, 7vw, 115px);

    font-weight: 400;

    line-height: .90;

    letter-spacing: -5px;
}


.ra-fitness-intro-content h2 em {
    color: #a7864e;

    font-style: italic;
}


.ra-fitness-intro-lead {
    max-width: 540px;

    margin: 0 0 20px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 26px;

    line-height: 1.55;
}


.ra-fitness-intro-content > p:not(.ra-fitness-intro-lead) {
    max-width: 550px;

    margin: 0 0 35px;

    font-size: 16px;

    line-height: 1.85;

    color: #615f5c;
}


/* LINK */

.ra-fitness-intro-link {
    display: inline-flex;

    align-items: center;

    gap: 18px;

    width: max-content;

    color: #615f5c;

    text-decoration: none;

    font-size: 12px;

    letter-spacing: 2.5px;
}


.ra-fitness-intro-link i {
    width: 48px;
    height: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #a7864e;

    border-radius: 50%;

    color: #a7864e;

    font-size: 12px;

    transition: all .3s ease;
}


.ra-fitness-intro-link:hover i {
    background: #615f5c;

    border-color: #615f5c;

    color: #c6a76b;

    transform: translateY(5px);
}


/* =========================================================
   POINTS
========================================================= */

.ra-fitness-intro-points {
    max-width: 1250px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    border-top: 1px solid rgba(23,55,47,.22);

    border-bottom: 1px solid rgba(23,55,47,.22);
}


.ra-fitness-intro-point {
    min-height: 185px;

    padding: 30px 35px 30px 0;

    display: grid;

    grid-template-columns: 30px 45px 1fr;

    gap: 18px;

    align-items: start;

    border-right: 1px solid rgba(23,55,47,.18);
}


.ra-fitness-intro-point:nth-child(2),
.ra-fitness-intro-point:nth-child(3) {
    padding-left: 30px;
}


.ra-fitness-intro-point:last-child {
    border-right: none;
}


.ra-fitness-intro-point > span {
    font-size: 10px;

    color: #a7864e;

    letter-spacing: 1.5px;
}


.ra-fitness-intro-point > i {
    width: 45px;
    height: 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #615f5c;

    color: #c6a76b;

    font-size: 17px;
}


.ra-fitness-intro-point h3 {
    margin: 0 0 7px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 24px;

    font-weight: 400;
}


.ra-fitness-intro-point p {
    margin: 0;

    font-size: 13px;

    line-height: 1.65;

    color: #615f5c;
}


/* =========================================================
   FOOTER
========================================================= */

.ra-fitness-intro-footer {
    max-width: 1250px;

    margin: 0 auto;

    min-height: 75px;

    display: flex;

    align-items: center;

    gap: 25px;
}


.ra-fitness-intro-footer > span {
    font-size: 12px;

    letter-spacing: 3px;

    color: #a7864e;
}


.ra-fitness-intro-footer > div {
    width: 70px;

    height: 1px;

    background: rgba(23,55,47,.30);
}


.ra-fitness-intro-footer strong {
    font-size: 10px;

    font-weight: 400;

    letter-spacing: 2.5px;

    color: #615f5c;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-fitness-intro {
        padding: 70px 20px 0;
    }


    /* TOP */

    .ra-fitness-intro-top {
        display: block;

        margin-bottom: 55px;
    }


    .ra-fitness-intro-number {
        flex-direction: row;

        align-items: center;

        gap: 12px;

        margin-bottom: 30px;
    }


    .ra-fitness-intro-number > span:first-child {
        font-size: 23px;
    }


    .ra-fitness-intro-number > span:last-child {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-fitness-intro-line {
        display: none;
    }


    .ra-fitness-intro-top > p {
        font-size: 18px;

        line-height: 1.75;
    }


    /* MAIN */

    .ra-fitness-intro-main {
        display: flex;

        flex-direction: column;

        min-height: auto;
    }


    .ra-fitness-intro-image {
        width: 100%;

        min-height: 400px;

        height: 400px;

        order: 1;
    }


    .ra-fitness-intro-image-label {
        left: 18px;
        bottom: 18px;

        padding: 13px 15px;
    }


    .ra-fitness-intro-image-label span {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-fitness-intro-image-label strong {
        font-size: 8px;

        letter-spacing: 1.5px;
    }


    /* CONTENT */

    .ra-fitness-intro-content {
        order: 2;

        padding: 60px 0 70px;
    }


    .ra-fitness-intro-kicker {
        font-size: 10px;

        letter-spacing: 2.8px;

        margin-bottom: 18px;
    }


    .ra-fitness-intro-content h2 {
        font-size: 58px;

        line-height: .95;

        letter-spacing: -3px;

        margin-bottom: 28px;
    }


    .ra-fitness-intro-lead {
        font-size: 22px;

        line-height: 1.55;

        margin-bottom: 20px;
    }


    .ra-fitness-intro-content > p:not(.ra-fitness-intro-lead) {
        font-size: 16px;

        line-height: 1.85;

        margin-bottom: 30px;
    }


    .ra-fitness-intro-link {
        font-size: 10px;

        letter-spacing: 1.8px;
    }


    .ra-fitness-intro-link i {
        width: 43px;
        height: 43px;
    }


    /* POINTS */

    .ra-fitness-intro-points {
        display: flex;

        flex-direction: column;
    }


    .ra-fitness-intro-point,
    .ra-fitness-intro-point:nth-child(2),
    .ra-fitness-intro-point:nth-child(3) {
        min-height: auto;

        padding: 25px 0 !important;

        grid-template-columns: 28px 45px 1fr;

        border-right: none;

        border-bottom: 1px solid rgba(23,55,47,.18);
    }


    .ra-fitness-intro-point:last-child {
        border-bottom: none;
    }


    .ra-fitness-intro-point > span {
        font-size: 10px;
    }


    .ra-fitness-intro-point > i {
        width: 43px;
        height: 43px;

        font-size: 16px;
    }


    .ra-fitness-intro-point h3 {
        font-size: 23px;

        margin-bottom: 7px;
    }


    .ra-fitness-intro-point p {
        font-size: 14px;

        line-height: 1.7;
    }


    /* FOOTER */

    .ra-fitness-intro-footer {
        min-height: 70px;

        display: flex;

        flex-wrap: wrap;

        gap: 10px 15px;
    }


    .ra-fitness-intro-footer > span {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-fitness-intro-footer > div {
        width: 35px;
    }


    .ra-fitness-intro-footer strong {
        width: 100%;

        font-size: 8px;

        letter-spacing: 1.5px;
    }

}
/* =========================================================
   ARCH FITNESS — SECTION 03
   TRAIN WITH PURPOSE
========================================================= */

.ra-fitness-training {
    position: relative;

    display: grid;

    grid-template-columns: 46% 54%;

    min-height: 900px;

    overflow: hidden;

    background: #615f5c;

    color: #f5efe3;
}


/* =========================================================
   IMAGE
========================================================= */

.ra-fitness-training-image {
    position: relative;

    min-height: 900px;

    overflow: hidden;
}


.ra-fitness-training-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform .8s ease;
}


.ra-fitness-training:hover
.ra-fitness-training-image img {
    transform: scale(1.045);
}


/* Image overlay */

.ra-fitness-training-image::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(7,25,20,.05),
            rgba(7,25,20,.55)
        );

    z-index: 1;
}


/* Image label */

.ra-fitness-training-image-label {
    position: absolute;

    left: 35px;
    bottom: 95px;

    z-index: 5;

    display: flex;

    align-items: center;

    gap: 16px;

    padding: 15px 22px;

    background: #615f5c;

    border: 1px solid rgba(198,167,107,.65);

    border-left: 3px solid #c6a76b;
}


.ra-fitness-training-image-label span {
    font-size: 13px;

    color: #c6a76b;

    letter-spacing: 2px;
}


.ra-fitness-training-image-label strong {
    font-size: 12px;

    font-weight: 600;

    letter-spacing: 2.5px;

    color: #f5efe3;
}


/* =========================================================
   CONTENT
========================================================= */

.ra-fitness-training-content {
    padding: 100px 8vw 145px 7vw;

    display: flex;

    flex-direction: column;

    justify-content: center;

    box-sizing: border-box;
}


/* Top */

.ra-fitness-training-top {
    display: flex;

    align-items: center;

    gap: 18px;

    margin-bottom: 50px;
}


.ra-fitness-training-top > span {
    font-size: 24px;

    color: #c6a76b;
}


.ra-fitness-training-top > div {
    width: 55px;
    height: 1px;

    background: #c6a76b;
}


.ra-fitness-training-top p {
    margin: 0;

    font-size: 10px;

    letter-spacing: 3px;

    color: rgba(245,239,227,.62);
}


/* Kicker */

.ra-fitness-training-kicker {
    display: block;

    margin-bottom: 20px;

    font-size: 13px;

    letter-spacing: 4px;

    color: #c6a76b;
}


/* Heading */

.ra-fitness-training-content h2 {
    margin: 0 0 30px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(78px, 8vw, 130px);

    font-weight: 400;

    line-height: .88;

    letter-spacing: -5px;
}


.ra-fitness-training-content h2 em {
    color: #c6a76b;

    font-style: italic;
}


/* Lead */

.ra-fitness-training-lead {
    max-width: 640px;

    margin: 0 0 20px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;

    line-height: 1.55;

    color: #f5efe3;
}


/* Text */

.ra-fitness-training-text {
    max-width: 610px;

    margin: 0 0 40px;

    font-size: 16px;

    line-height: 1.85;

    color: rgba(245,239,227,.68);
}


/* =========================================================
   TRAINING LIST
========================================================= */

.ra-fitness-training-list {
    max-width: 700px;

    display: grid;

    grid-template-columns: 1fr 1fr;

    border-top: 1px solid rgba(245,239,227,.18);

    border-bottom: 1px solid rgba(245,239,227,.18);

    margin-bottom: 38px;
}


.ra-fitness-training-item {
    min-height: 105px;

    padding: 20px 25px 20px 0;

    display: grid;

    grid-template-columns: 25px 43px 1fr;

    align-items: center;

    gap: 14px;

    border-bottom: 1px solid rgba(245,239,227,.12);

    box-sizing: border-box;
}


.ra-fitness-training-item:nth-child(2),
.ra-fitness-training-item:nth-child(4) {
    padding-left: 25px;

    border-left: 1px solid rgba(245,239,227,.12);
}


.ra-fitness-training-item:nth-child(3),
.ra-fitness-training-item:nth-child(4) {
    border-bottom: none;
}


.ra-fitness-training-item > span {
    align-self: start;

    padding-top: 5px;

    font-size: 10px;

    color: #c6a76b;

    letter-spacing: 1.5px;
}


.ra-fitness-training-item > i {
    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: rgba(198,167,107,.12);

    color: #c6a76b;

    font-size: 17px;
}


.ra-fitness-training-item strong {
    display: block;

    margin-bottom: 5px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 22px;

    font-weight: 400;
}


.ra-fitness-training-item p {
    margin: 0;

    font-size: 12px;

    line-height: 1.5;

    color: rgba(245,239,227,.55);
}


/* =========================================================
   LINK
========================================================= */

.ra-fitness-training-link {
    display: inline-flex;

    align-items: center;

    gap: 18px;

    width: max-content;

    color: #f5efe3;

    text-decoration: none;

    font-size: 12px;

    letter-spacing: 2.5px;
}


.ra-fitness-training-link i {
    width: 48px;
    height: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #c6a76b;

    border-radius: 50%;

    color: #c6a76b;

    transition: all .3s ease;
}


.ra-fitness-training-link:hover i {
    background: #c6a76b;

    color: #615f5c;

    transform: translateX(5px);
}


/* =========================================================
   BOTTOM
========================================================= */

.ra-fitness-training-bottom {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 10;

    min-height: 70px;

    padding: 0 45px;

    display: flex;

    align-items: center;

    gap: 25px;

    background: #3F3D3A;

    border-top: 1px solid rgba(245,239,227,.15);

    box-sizing: border-box;
}


.ra-fitness-training-bottom span {
    font-size: 12px;

    letter-spacing: 3px;

    color: #c6a76b;
}


.ra-fitness-training-bottom div {
    width: 70px;

    height: 1px;

    background: rgba(245,239,227,.3);
}


.ra-fitness-training-bottom strong {
    font-size: 10px;

    font-weight: 400;

    letter-spacing: 2.5px;

    color: rgba(245,239,227,.65);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-fitness-training {
        display: flex;

        flex-direction: column;

        min-height: auto;
    }


    /* IMAGE */

    .ra-fitness-training-image {
        width: 100%;

        height: 430px;

        min-height: 430px;

        order: 1;
    }


    .ra-fitness-training-image-label {
        left: 18px;
        bottom: 22px;

        padding: 13px 16px;

        gap: 12px;
    }


    .ra-fitness-training-image-label span {
        font-size: 10px;

        letter-spacing: 1.5px;
    }


    .ra-fitness-training-image-label strong {
        font-size: 9px;

        letter-spacing: 1.8px;
    }


    /* CONTENT */

    .ra-fitness-training-content {
        order: 2;

        padding: 70px 20px 105px;
    }


    .ra-fitness-training-top {
        gap: 12px;

        margin-bottom: 42px;
    }


    .ra-fitness-training-top > span {
        font-size: 22px;
    }


    .ra-fitness-training-top > div {
        width: 40px;
    }


    .ra-fitness-training-top p {
        font-size: 8px;

        letter-spacing: 2px;
    }


    .ra-fitness-training-kicker {
        font-size: 10px;

        letter-spacing: 2.8px;

        margin-bottom: 18px;
    }


    .ra-fitness-training-content h2 {
        font-size: 60px;

        line-height: .95;

        letter-spacing: -3px;

        margin-bottom: 28px;
    }


    .ra-fitness-training-lead {
        font-size: 23px;

        line-height: 1.55;

        margin-bottom: 20px;
    }


    .ra-fitness-training-text {
        font-size: 16px;

        line-height: 1.85;

        margin-bottom: 35px;
    }


    /* LIST */

    .ra-fitness-training-list {
        display: flex;

        flex-direction: column;

        max-width: 100%;

        margin-bottom: 35px;
    }


    .ra-fitness-training-item,
    .ra-fitness-training-item:nth-child(2),
    .ra-fitness-training-item:nth-child(3),
    .ra-fitness-training-item:nth-child(4) {
        min-height: auto;

        padding: 22px 0 !important;

        grid-template-columns: 25px 43px 1fr;

        border-left: none !important;

        border-bottom: 1px solid rgba(245,239,227,.14);
    }


    .ra-fitness-training-item:last-child {
        border-bottom: none;
    }


    .ra-fitness-training-item > span {
        font-size: 10px;
    }


    .ra-fitness-training-item > i {
        width: 42px;
        height: 42px;

        font-size: 16px;
    }


    .ra-fitness-training-item strong {
        font-size: 23px;

        margin-bottom: 5px;
    }


    .ra-fitness-training-item p {
        font-size: 13px;

        line-height: 1.6;
    }


    /* LINK */

    .ra-fitness-training-link {
        font-size: 10px;

        letter-spacing: 1.8px;
    }


    .ra-fitness-training-link i {
        width: 43px;
        height: 43px;

        font-size: 11px;
    }


    /* BOTTOM */

    .ra-fitness-training-bottom {
        position: relative;

        min-height: 70px;

        padding: 17px 20px;

        flex-wrap: wrap;

        gap: 10px 15px;
    }


    .ra-fitness-training-bottom span {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-fitness-training-bottom div {
        width: 35px;
    }


    .ra-fitness-training-bottom strong {
        width: 100%;

        font-size: 8px;

        letter-spacing: 1.5px;

        line-height: 1.4;
    }

}
/* =========================================================
   ARCH FITNESS — SECTION 04
   FITNESS PHILOSOPHY
========================================================= */

.ra-fitness-philosophy {
    position: relative;

    min-height: 900px;

    overflow: hidden;

    background: #102d26;

    color: #f5efe3;
}


/* =========================================================
   BACKGROUND
========================================================= */

.ra-fitness-philosophy-bg {
    position: absolute;

    inset: 0;

    z-index: 0;
}


.ra-fitness-philosophy-bg img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform 1s ease;
}


.ra-fitness-philosophy:hover
.ra-fitness-philosophy-bg img {
    transform: scale(1.04);
}


/* =========================================================
   OVERLAY
========================================================= */

.ra-fitness-philosophy-overlay {
    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            90deg,
            #615f5c 0%,
            #615f5c 38%,
            #615f5c 70%,
            #615f5c 100%
        ),
        linear-gradient(
            180deg,
            rgba(7,29,23,.30),
            rgba(7,29,23,.72)
        );
}


/* =========================================================
   CONTENT
========================================================= */

.ra-fitness-philosophy-content {
    position: relative;

    z-index: 5;

    max-width: 950px;

    padding: 105px 8vw 155px;

    box-sizing: border-box;
}


/* =========================================================
   INDEX
========================================================= */

.ra-fitness-philosophy-index {
    display: flex;

    align-items: center;

    gap: 18px;

    margin-bottom: 58px;
}


.ra-fitness-philosophy-index > span {
    font-size: 25px;

    color: #c6a76b;
}


.ra-fitness-philosophy-index > div {
    width: 55px;
    height: 1px;

    background: #c6a76b;
}


.ra-fitness-philosophy-index p {
    margin: 0;

    font-size: 11px;

    letter-spacing: 3px;

    color: rgba(245,239,227,.65);
}


/* =========================================================
   KICKER
========================================================= */

.ra-fitness-philosophy-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 13px;

    letter-spacing: 4px;

    color: #c6a76b;
}


/* =========================================================
   HEADING
========================================================= */

.ra-fitness-philosophy-content h2 {
    margin: 0 0 35px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(70px, 8vw, 130px);

    font-weight: 400;

    line-height: .90;

    letter-spacing: -5px;
}


.ra-fitness-philosophy-content h2 em {
    color: #c6a76b;

    font-style: italic;
}


/* =========================================================
   LEAD
========================================================= */

.ra-fitness-philosophy-lead {
    max-width: 650px;

    margin: 0 0 22px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;

    line-height: 1.55;

    color: #f5efe3;
}


/* =========================================================
   TEXT
========================================================= */

.ra-fitness-philosophy-text {
    max-width: 650px;

    margin: 0 0 48px;

    font-size: 16px;

    line-height: 1.9;

    color: rgba(245,239,227,.68);
}


/* =========================================================
   PHILOSOPHY POINTS
========================================================= */

.ra-fitness-philosophy-points {
    max-width: 760px;

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    border-top: 1px solid rgba(245,239,227,.20);

    border-bottom: 1px solid rgba(245,239,227,.20);
}


.ra-fitness-philosophy-point {
    min-height: 165px;

    padding: 25px 28px 25px 0;

    border-right: 1px solid rgba(245,239,227,.16);

    box-sizing: border-box;
}


.ra-fitness-philosophy-point:nth-child(2),
.ra-fitness-philosophy-point:nth-child(3) {
    padding-left: 28px;
}


.ra-fitness-philosophy-point:last-child {
    border-right: none;
}


.ra-fitness-philosophy-point > span {
    display: block;

    margin-bottom: 18px;

    font-size: 10px;

    letter-spacing: 2px;

    color: #c6a76b;
}


.ra-fitness-philosophy-point strong {
    display: block;

    margin-bottom: 8px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 25px;

    font-weight: 400;

    letter-spacing: 1px;
}


.ra-fitness-philosophy-point p {
    max-width: 170px;

    margin: 0;

    font-size: 12px;

    line-height: 1.65;

    color: rgba(245,239,227,.58);
}


/* =========================================================
   BACKGROUND WORD
========================================================= */

.ra-fitness-philosophy-word {
    position: absolute;

    right: -55px;

    bottom: 105px;

    z-index: 2;

    font-family: Arial, sans-serif;

    font-size: clamp(80px, 13vw, 210px);

    font-weight: 800;

    line-height: .8;

    letter-spacing: -8px;

    color: rgba(245,239,227,.055);

    white-space: nowrap;

    pointer-events: none;
}


/* =========================================================
   BOTTOM
========================================================= */

.ra-fitness-philosophy-bottom {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 10;

    min-height: 72px;

    padding: 0 45px;

    display: flex;

    align-items: center;

    gap: 25px;

    background: #3F3D3A;

    border-top: 1px solid rgba(245,239,227,.15);

    box-sizing: border-box;
}


.ra-fitness-philosophy-bottom span {
    font-size: 12px;

    letter-spacing: 3px;

    color: #c6a76b;
}


.ra-fitness-philosophy-bottom div {
    width: 70px;

    height: 1px;

    background: rgba(245,239,227,.30);
}


.ra-fitness-philosophy-bottom strong {
    font-size: 10px;

    font-weight: 400;

    letter-spacing: 2.5px;

    color: rgba(245,239,227,.65);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-fitness-philosophy {
        min-height: auto;
    }


    .ra-fitness-philosophy-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(7,29,23,.48) 0%,
                rgba(7,29,23,.78) 42%,
                rgba(7,29,23,.97) 100%
            );
    }


    .ra-fitness-philosophy-content {
        padding: 70px 20px 115px;

        max-width: 100%;
    }


    /* INDEX */

    .ra-fitness-philosophy-index {
        gap: 12px;

        margin-bottom: 42px;
    }


    .ra-fitness-philosophy-index > span {
        font-size: 23px;
    }


    .ra-fitness-philosophy-index > div {
        width: 40px;
    }


    .ra-fitness-philosophy-index p {
        font-size: 9px;

        letter-spacing: 2px;
    }


    /* KICKER */

    .ra-fitness-philosophy-kicker {
        font-size: 10px;

        letter-spacing: 2.7px;

        line-height: 1.5;

        margin-bottom: 18px;
    }


    /* HEADING */

    .ra-fitness-philosophy-content h2 {
        font-size: 57px;

        line-height: .95;

        letter-spacing: -3px;

        margin-bottom: 28px;
    }


    /* LEAD */

    .ra-fitness-philosophy-lead {
        font-size: 22px;

        line-height: 1.55;

        margin-bottom: 20px;
    }


    /* TEXT */

    .ra-fitness-philosophy-text {
        font-size: 16px;

        line-height: 1.85;

        margin-bottom: 35px;
    }


    /* POINTS */

    .ra-fitness-philosophy-points {
        display: flex;

        flex-direction: column;

        max-width: 100%;
    }


    .ra-fitness-philosophy-point,
    .ra-fitness-philosophy-point:nth-child(2),
    .ra-fitness-philosophy-point:nth-child(3) {
        min-height: auto;

        padding: 24px 0 !important;

        border-right: none;

        border-bottom: 1px solid rgba(245,239,227,.15);
    }


    .ra-fitness-philosophy-point:last-child {
        border-bottom: none;
    }


    .ra-fitness-philosophy-point > span {
        font-size: 10px;

        margin-bottom: 12px;
    }


    .ra-fitness-philosophy-point strong {
        font-size: 24px;

        margin-bottom: 7px;
    }


    .ra-fitness-philosophy-point p {
        max-width: 290px;

        font-size: 14px;

        line-height: 1.7;
    }


    /* BACKGROUND WORD */

    .ra-fitness-philosophy-word {
        right: -25px;

        bottom: 85px;

        font-size: 75px;

        letter-spacing: -4px;
    }


    /* BOTTOM */

    .ra-fitness-philosophy-bottom {
        position: relative;

        min-height: 70px;

        padding: 17px 20px;

        flex-wrap: wrap;

        gap: 10px 15px;
    }


    .ra-fitness-philosophy-bottom span {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-fitness-philosophy-bottom div {
        width: 35px;
    }


    .ra-fitness-philosophy-bottom strong {
        width: 100%;

        font-size: 8px;

        letter-spacing: 1.5px;

        line-height: 1.4;
    }

}
/* =========================================================
   ARCH FITNESS — SECTION 05
   THE FACILITIES
========================================================= */

.ra-fitness-facilities {
    position: relative;

    background: #e9e1d2;

    color: #615f5c;

    padding: 110px 6vw 0;

    overflow: hidden;
}


/* =========================================================
   HEADER
========================================================= */

.ra-fitness-facilities-header {
    max-width: 1250px;

    margin: 0 auto 80px;
}


.ra-fitness-facilities-index {
    display: flex;

    align-items: center;

    gap: 18px;

    margin-bottom: 52px;
}


.ra-fitness-facilities-index > span {
    font-size: 25px;

    color: #a7864e;
}


.ra-fitness-facilities-index > div {
    width: 55px;
    height: 1px;

    background: #a7864e;
}


.ra-fitness-facilities-index p {
    margin: 0;

    font-size: 11px;

    letter-spacing: 3px;

    color: rgba(23,55,47,.65);
}


.ra-fitness-facilities-kicker {
    display: block;

    margin-bottom: 20px;

    font-size: 13px;

    letter-spacing: 4px;

    color: #a7864e;
}


.ra-fitness-facilities-header h2 {
    margin: 0 0 28px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(70px, 8vw, 125px);

    font-weight: 400;

    line-height: .90;

    letter-spacing: -5px;
}


.ra-fitness-facilities-header h2 em {
    color: #a7864e;

    font-style: italic;
}


.ra-fitness-facilities-header > p {
    max-width: 680px;

    margin: 0;

    font-size: 18px;

    line-height: 1.85;

    color: #615f5c;
}


/* =========================================================
   MAIN
========================================================= */

.ra-fitness-facilities-main {
    max-width: 1250px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: 45% 55%;

    min-height: 650px;
}


/* =========================================================
   IMAGE
========================================================= */

.ra-fitness-facilities-image {
    position: relative;

    min-height: 650px;

    overflow: hidden;
}


.ra-fitness-facilities-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .8s ease;
}


.ra-fitness-facilities-image:hover img {
    transform: scale(1.045);
}


.ra-fitness-facilities-image::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 40%,
            rgba(7,29,23,.65) 100%
        );
}


/* IMAGE MARK */

.ra-fitness-facilities-image-mark {
    position: absolute;

    left: 30px;
    bottom: 30px;

    z-index: 3;

    display: flex;

    flex-direction: column;

    gap: 4px;

    padding: 20px 24px;

    background: #615f5c;

    border-left: 3px solid #c6a76b;
}


.ra-fitness-facilities-image-mark span {
    font-size: 10px;

    letter-spacing: 4px;

    color: #c6a76b;
}


.ra-fitness-facilities-image-mark strong {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 30px;

    font-weight: 400;

    color: #f5efe3;
}


.ra-fitness-facilities-image-mark small {
    margin-top: 4px;

    font-size: 8px;

    letter-spacing: 2px;

    color: rgba(245,239,227,.60);
}


/* =========================================================
   LIST
========================================================= */

.ra-fitness-facilities-list {
    background: #615f5c;

    color: #f5efe3;

    padding: 20px 0;
}


.ra-fitness-facility {
    position: relative;

    min-height: 155px;

    padding: 25px 35px;

    display: grid;

    grid-template-columns: 35px 55px 1fr 35px;

    align-items: center;

    gap: 20px;

    border-bottom: 1px solid rgba(245,239,227,.15);

    box-sizing: border-box;

    transition: background .3s ease;
}


.ra-fitness-facility:first-child {
    border-top: 1px solid rgba(245,239,227,.15);
}


.ra-fitness-facility:last-child {
    border-bottom: none;
}


.ra-fitness-facility:hover {
    background: rgba(198,167,107,.07);
}


/* NUMBER */

.ra-fitness-facility > span {
    align-self: start;

    padding-top: 5px;

    font-size: 11px;

    letter-spacing: 2px;

    color: #c6a76b;
}


/* ICON */

.ra-fitness-facility-icon {
    width: 52px;
    height: 52px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(198,167,107,.55);

    border-radius: 50%;

    color: #c6a76b;

    font-size: 19px;
}


/* CONTENT */

.ra-fitness-facility-content h3 {
    margin: 0 0 8px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;

    font-weight: 400;

    line-height: 1.2;
}


.ra-fitness-facility-content p {
    max-width: 420px;

    margin: 0;

    font-size: 14px;

    line-height: 1.65;

    color: rgba(245,239,227,.58);
}


/* ARROW */

.ra-fitness-facility-arrow {
    width: 35px;
    height: 35px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(198,167,107,.45);

    border-radius: 50%;

    color: #c6a76b;

    font-size: 11px;

    transition: all .3s ease;
}


.ra-fitness-facility:hover
.ra-fitness-facility-arrow {
    background: #c6a76b;

    color: #615f5c;

    transform: translateX(5px);
}


/* =========================================================
   BOTTOM
========================================================= */

.ra-fitness-facilities-bottom {
    max-width: 1250px;

    margin: 0 auto;

    min-height: 75px;

    display: flex;

    align-items: center;

    gap: 25px;
}


.ra-fitness-facilities-bottom > span {
    font-size: 12px;

    letter-spacing: 3px;

    color: #a7864e;
}


.ra-fitness-facilities-bottom > div {
    width: 70px;

    height: 1px;

    background: rgba(23,55,47,.30);
}


.ra-fitness-facilities-bottom strong {
    font-size: 10px;

    font-weight: 400;

    letter-spacing: 2.5px;

    color: #615f5c;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-fitness-facilities {
        padding: 70px 20px 0;
    }


    /* HEADER */

    .ra-fitness-facilities-header {
        margin-bottom: 50px;
    }


    .ra-fitness-facilities-index {
        gap: 12px;

        margin-bottom: 40px;
    }


    .ra-fitness-facilities-index > span {
        font-size: 23px;
    }


    .ra-fitness-facilities-index > div {
        width: 40px;
    }


    .ra-fitness-facilities-index p {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-fitness-facilities-kicker {
        font-size: 10px;

        letter-spacing: 2.7px;

        line-height: 1.5;

        margin-bottom: 18px;
    }


    .ra-fitness-facilities-header h2 {
        font-size: 58px;

        line-height: .95;

        letter-spacing: -3px;

        margin-bottom: 25px;
    }


    .ra-fitness-facilities-header > p {
        font-size: 16px;

        line-height: 1.85;
    }


    /* MAIN */

    .ra-fitness-facilities-main {
        display: flex;

        flex-direction: column;

        min-height: auto;
    }


    /* IMAGE */

    .ra-fitness-facilities-image {
        width: 100%;

        height: 410px;

        min-height: 410px;
    }


    .ra-fitness-facilities-image-mark {
        left: 18px;
        bottom: 18px;

        padding: 15px 17px;
    }


    .ra-fitness-facilities-image-mark span {
        font-size: 8px;

        letter-spacing: 3px;
    }


    .ra-fitness-facilities-image-mark strong {
        font-size: 25px;
    }


    .ra-fitness-facilities-image-mark small {
        font-size: 7px;

        letter-spacing: 1.5px;
    }


    /* LIST */

    .ra-fitness-facilities-list {
        padding: 0;
    }


    .ra-fitness-facility,
    .ra-fitness-facility:first-child {
        min-height: 140px;

        padding: 22px 18px;

        grid-template-columns: 25px 45px 1fr 25px;

        gap: 12px;
    }


    .ra-fitness-facility > span {
        font-size: 9px;
    }


    .ra-fitness-facility-icon {
        width: 43px;
        height: 43px;

        font-size: 16px;
    }


    .ra-fitness-facility-content h3 {
        font-size: 22px;

        margin-bottom: 6px;
    }


    .ra-fitness-facility-content p {
        font-size: 13px;

        line-height: 1.6;
    }


    .ra-fitness-facility-arrow {
        width: 30px;
        height: 30px;

        font-size: 9px;
    }


    /* BOTTOM */

    .ra-fitness-facilities-bottom {
        min-height: 70px;

        display: flex;

        flex-wrap: wrap;

        gap: 10px 15px;
    }


    .ra-fitness-facilities-bottom > span {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-fitness-facilities-bottom > div {
        width: 35px;
    }


    .ra-fitness-facilities-bottom strong {
        width: 100%;

        font-size: 8px;

        letter-spacing: 1.5px;

        line-height: 1.4;
    }

}
/* =========================================================
   ARCH FITNESS — FINAL CTA
========================================================= */

.ra-fitness-cta {
    position: relative;

    min-height: 820px;

    overflow: hidden;

    background: #102d26;

    color: #f5efe3;
}


/* =========================================================
   BACKGROUND
========================================================= */

.ra-fitness-cta-bg {
    position: absolute;

    inset: 0;

    z-index: 0;
}


.ra-fitness-cta-bg img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform 1s ease;
}


.ra-fitness-cta:hover
.ra-fitness-cta-bg img {
    transform: scale(1.04);
}


/* =========================================================
   OVERLAY
========================================================= */

.ra-fitness-cta-overlay {
    position: absolute;

    inset: 0;

    z-index: 1;

    background: 

    linear-gradient(
        90deg,
        rgba(63, 61, 58, .95) 0%,
        rgba(63, 61, 58, .82) 38%,
        rgba(63, 61, 58, .50) 68%,
        rgba(63, 61, 58, .32) 100%
    ),

    linear-gradient(
        180deg,
        rgba(63, 61, 58, .35),
        rgba(63, 61, 58, .75)
    );
}


/* =========================================================
   CONTENT
========================================================= */

.ra-fitness-cta-content {
    position: relative;

    z-index: 5;

    max-width: 950px;

    padding: 105px 8vw 145px;

    box-sizing: border-box;
}


/* =========================================================
   INDEX
========================================================= */

.ra-fitness-cta-index {
    display: flex;

    align-items: center;

    gap: 18px;

    margin-bottom: 58px;
}


.ra-fitness-cta-index > span {
    font-size: 25px;

    color: #c6a76b;
}


.ra-fitness-cta-index > div {
    width: 55px;
    height: 1px;

    background: #c6a76b;
}


.ra-fitness-cta-index p {
    margin: 0;

    font-size: 11px;

    letter-spacing: 3px;

    color: rgba(245,239,227,.65);
}


/* =========================================================
   KICKER
========================================================= */

.ra-fitness-cta-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 13px;

    letter-spacing: 4px;

    color: #c6a76b;
}


/* =========================================================
   HEADING
========================================================= */

.ra-fitness-cta-content h2 {
    margin: 0 0 35px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(78px, 8vw, 135px);

    font-weight: 400;

    line-height: .90;

    letter-spacing: -5px;
}


.ra-fitness-cta-content h2 em {
    color: #c6a76b;

    font-style: italic;
}


/* =========================================================
   LEAD
========================================================= */

.ra-fitness-cta-lead {
    max-width: 650px;

    margin: 0 0 42px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;

    line-height: 1.55;

    color: #f5efe3;
}


/* =========================================================
   ACTIONS
========================================================= */

.ra-fitness-cta-actions {
    display: flex;

    align-items: center;

    gap: 30px;
}


/* PRIMARY */

.ra-fitness-cta-primary {
    display: inline-flex;

    align-items: center;

    gap: 18px;

    color: #f5efe3;

    text-decoration: none;

    font-size: 12px;

    letter-spacing: 2.5px;
}


.ra-fitness-cta-primary i {
    width: 50px;
    height: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #c6a76b;

    border-radius: 50%;

    color: #c6a76b;

    transition: all .3s ease;
}


.ra-fitness-cta-primary:hover i {
    background: #c6a76b;

    color: #615f5c;

    transform: translateX(5px);
}


/* WHATSAPP */

.ra-fitness-cta-whatsapp {
    display: flex;

    align-items: center;

    gap: 13px;

    color: #f5efe3;

    text-decoration: none;
}


.ra-fitness-cta-whatsapp > i {
    font-size: 25px;

    color: #c6a76b;
}


.ra-fitness-cta-whatsapp span {
    display: flex;

    flex-direction: column;

    gap: 4px;

    font-size: 15px;

    letter-spacing: 1px;
}


.ra-fitness-cta-whatsapp small {
    font-size: 8px;

    letter-spacing: 2px;

    color: rgba(245,239,227,.55);
}


/* =========================================================
   FITNESS BADGE
========================================================= */

.ra-fitness-cta-badge {
    position: absolute;

    z-index: 6;

    right: 10vw;

    top: 50%;

    transform: translateY(-50%);

    width: 180px;
    height: 180px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(198,167,107,.75);

    border-radius: 50%;

    background: rgba(7,29,23,.42);

    backdrop-filter: blur(5px);
}


.ra-fitness-cta-badge span {
    font-size: 9px;

    letter-spacing: 4px;

    color: #c6a76b;
}


.ra-fitness-cta-badge strong {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 52px;

    font-weight: 400;

    line-height: .95;
}


.ra-fitness-cta-badge small {
    margin-top: 8px;

    text-align: center;

    font-size: 7px;

    line-height: 1.35;

    letter-spacing: 2px;

    color: rgba(245,239,227,.58);
}


/* =========================================================
   BOTTOM
========================================================= */

.ra-fitness-cta-bottom {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 10;

    min-height: 72px;

    padding: 0 45px;

    display: flex;

    align-items: center;

    gap: 25px;

    box-sizing: border-box;

    background: #3F3D3A;

    border-top: 1px solid rgba(245,239,227,.15);
}


.ra-fitness-cta-bottom > span {
    font-size: 12px;

    letter-spacing: 3px;

    color: #c6a76b;
}


.ra-fitness-cta-bottom > div {
    width: 70px;

    height: 1px;

    background: rgba(245,239,227,.32);
}


.ra-fitness-cta-bottom strong {
    font-size: 10px;

    font-weight: 400;

    letter-spacing: 2.5px;

    color: rgba(245,239,227,.65);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ra-fitness-cta {
        min-height: auto;

        display: flex;

        flex-direction: column;
    }


    .ra-fitness-cta-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(7,29,23,.48) 0%,
                rgba(7,29,23,.75) 42%,
                rgba(7,29,23,.97) 100%
            );
    }


    .ra-fitness-cta-content {
        padding: 70px 20px 145px;

        max-width: 100%;
    }


    /* INDEX */

    .ra-fitness-cta-index {
        gap: 12px;

        margin-bottom: 42px;
    }


    .ra-fitness-cta-index > span {
        font-size: 23px;
    }


    .ra-fitness-cta-index > div {
        width: 40px;
    }


    .ra-fitness-cta-index p {
        font-size: 9px;

        letter-spacing: 2px;
    }


    /* KICKER */

    .ra-fitness-cta-kicker {
        font-size: 10px;

        letter-spacing: 2.8px;

        margin-bottom: 18px;
    }


    /* HEADING */

    .ra-fitness-cta-content h2 {
        font-size: 59px;

        line-height: .95;

        letter-spacing: -3px;

        margin-bottom: 28px;
    }


    /* LEAD */

    .ra-fitness-cta-lead {
        font-size: 22px;

        line-height: 1.55;

        margin-bottom: 35px;
    }


    /* ACTIONS */

    .ra-fitness-cta-actions {
        flex-direction: column;

        align-items: flex-start;

        gap: 25px;
    }


    .ra-fitness-cta-primary {
        font-size: 10px;

        letter-spacing: 1.8px;
    }


    .ra-fitness-cta-primary i {
        width: 44px;
        height: 44px;

        font-size: 11px;
    }


    .ra-fitness-cta-whatsapp > i {
        font-size: 23px;
    }


    .ra-fitness-cta-whatsapp span {
        font-size: 14px;
    }


    .ra-fitness-cta-whatsapp small {
        font-size: 7px;
    }


    /* BADGE */

    .ra-fitness-cta-badge {
        width: 105px;
        height: 105px;

        right: 20px;

        top: auto;
        bottom: 125px;

        transform: none;
    }


    .ra-fitness-cta-badge span {
        font-size: 6px;

        letter-spacing: 2px;
    }


    .ra-fitness-cta-badge strong {
        font-size: 34px;
    }


    .ra-fitness-cta-badge small {
        font-size: 5px;

        margin-top: 4px;
    }


    /* BOTTOM */

    .ra-fitness-cta-bottom {
        position: relative;

        min-height: 70px;

        padding: 17px 20px;

        flex-wrap: wrap;

        gap: 10px 15px;
    }


    .ra-fitness-cta-bottom > span {
        font-size: 9px;

        letter-spacing: 2px;
    }


    .ra-fitness-cta-bottom > div {
        width: 35px;
    }


    .ra-fitness-cta-bottom strong {
        width: 100%;

        font-size: 8px;

        line-height: 1.4;

        letter-spacing: 1.5px;
    }

}
/* =========================================================
   ROYAL AURA SPA — HERO
========================================================= */

.raura-hero {
    position: relative;
    width: 100%;
    min-height: 100vh;
    height: 100vh;
    overflow: hidden;
    background: #182f29;
    color: #f5efe4;
}

/* Background */
.raura-hero-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.raura-hero-bg img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transform: scale(1.02);
}

/* Soft Luxury Overlay */
.raura-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    background:

    linear-gradient(
        90deg,
        rgba(63, 61, 58, 0.82) 0%,
        rgba(63, 61, 58, 0.58) 38%,
        rgba(63, 61, 58, 0.25) 72%,
        rgba(63, 61, 58, 0.42) 100%
    ),

    linear-gradient(
        180deg,
        rgba(63, 61, 58, 0.42) 0%,
        transparent 35%,
        rgba(63, 61, 58, 0.78) 100%
    );
}

/* Top */
.raura-hero-top {
    position: absolute;
    top: 38px;
    left: 55px;
    right: 55px;
    z-index: 5;

    display: flex;
    justify-content: space-between;
    align-items: center;

    padding-bottom: 18px;
    border-bottom: 1px solid rgba(245, 239, 228, 0.28);
}

.raura-hero-brand,
.raura-hero-location {
    font-size: 11px;
    line-height: 1;
    letter-spacing: 3px;
    font-weight: 600;
}

.raura-hero-location {
    font-size: 10px;
    letter-spacing: 2.5px;
    opacity: 0.8;
}

/* Side Marker */
.raura-hero-marker {
    position: absolute;
    left: 55px;
    top: 50%;
    z-index: 5;

    transform: translateY(-50%);

    display: flex;
    align-items: center;
    gap: 18px;

    writing-mode: vertical-rl;
}

.raura-hero-marker span {
    font-size: 12px;
    letter-spacing: 3px;
}

.raura-hero-marker div {
    width: 1px;
    height: 58px;
    background: #c7a66a;
}

.raura-hero-marker p {
    margin: 0;
    font-size: 9px;
    letter-spacing: 3px;
    opacity: 0.75;
}

/* Main Content */
.raura-hero-content {
    position: absolute;
    left: 13%;
    top: 50%;
    z-index: 5;

    width: min(720px, 70%);

    transform: translateY(-45%);
}

.raura-hero-kicker {
    display: block;
    margin-bottom: 22px;

    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 5px;
    font-weight: 500;

    color: #d6bd88;
}

/* Main Heading */
.raura-hero-content h1 {
    margin: 0;

    font-size: clamp(100px, 13vw, 190px);
    line-height: 0.82;
    letter-spacing: -7px;
    font-weight: 400;

    color: #f7f0e5;
}

.raura-hero-content h1 em {
    display: block;

    margin-top: 18px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 0.58em;
    line-height: 0.9;
    font-weight: 400;
    letter-spacing: -3px;

    color: #d5b779;
}

/* Rule */
.raura-hero-rule {
    width: 70px;
    height: 1px;

    margin: 34px 0 24px;

    background: #c7a66a;
}

/* Description */
.raura-hero-content > p {
    width: 470px;
    max-width: 100%;

    margin: 0 0 30px;

    font-size: 18px;
    line-height: 1.75;
    font-weight: 400;

    color: rgba(247, 240, 229, 0.88);
}

/* Discover */
.raura-hero-discover {
    display: inline-flex;
    align-items: center;
    gap: 18px;

    color: #f7f0e5;
    text-decoration: none;

    font-size: 11px;
    letter-spacing: 2.8px;
    font-weight: 600;

    transition: all 0.3s ease;
}

.raura-hero-discover i {
    width: 44px;
    height: 44px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(245, 239, 228, 0.6);
    border-radius: 50%;

    font-size: 12px;

    transition: all 0.3s ease;
}

.raura-hero-discover:hover {
    color: #d5b779;
}

.raura-hero-discover:hover i {
    background: #d5b779;
    border-color: #d5b779;
    color: #615f5c;
    transform: translateY(4px);
}

/* Right Vertical */
.raura-hero-vertical {
    position: absolute;
    right: 55px;
    top: 50%;
    z-index: 5;

    transform: translateY(-50%);

    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 28px;
}

.raura-hero-vertical span {
    font-size: 9px;
    letter-spacing: 3px;
    writing-mode: vertical-rl;

    color: rgba(247, 240, 229, 0.7);
}

/* Bottom Bar */
.raura-hero-bottom {
    position: absolute;
    left: 55px;
    right: 55px;
    bottom: 30px;
    z-index: 6;

    display: flex;
    align-items: center;

    padding-top: 18px;

    border-top: 1px solid rgba(245, 239, 228, 0.28);
}

.raura-hero-bottom-item {
    display: flex;
    align-items: center;
    gap: 12px;

    white-space: nowrap;
}

.raura-hero-bottom-item span {
    font-size: 9px;
    letter-spacing: 2px;
    color: #d5b779;
}

.raura-hero-bottom-item strong {
    font-size: 10px;
    letter-spacing: 2.5px;
    font-weight: 500;
}

.raura-hero-bottom-line {
    flex: 1;
    height: 1px;
    margin: 0 25px;

    background: rgba(245, 239, 228, 0.25);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .raura-hero {
        min-height: 760px;
        height: 100svh;
        max-height: 900px;
    }

    .raura-hero-bg img {
        object-position: 58% center;
    }

    .raura-hero-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(17, 43, 36, 0.82),
                rgba(17, 43, 36, 0.38)
            ),
            linear-gradient(
                180deg,
                rgba(13, 34, 29, 0.48) 0%,
                rgba(13, 34, 29, 0.15) 38%,
                rgba(13, 34, 29, 0.88) 100%
            );
    }

    .raura-hero-top {
        top: 22px;
        left: 20px;
        right: 20px;

        padding-bottom: 14px;
    }

    .raura-hero-brand {
        font-size: 8px;
        letter-spacing: 2px;
    }

    .raura-hero-location {
        font-size: 7px;
        letter-spacing: 1.5px;
    }

    .raura-hero-marker {
        display: none;
    }

    .raura-hero-content {
        left: 20px;
        right: 20px;
        top: 48%;

        width: auto;

        transform: translateY(-42%);
    }

    .raura-hero-kicker {
        margin-bottom: 18px;

        font-size: 8px;
        letter-spacing: 2.5px;
        line-height: 1.6;
    }

    .raura-hero-content h1 {
        font-size: 82px;
        line-height: 0.86;
        letter-spacing: -4px;
    }

    .raura-hero-content h1 em {
        margin-top: 12px;

        font-size: 0.62em;
        line-height: 0.9;
        letter-spacing: -2px;
    }

    .raura-hero-rule {
        width: 52px;
        margin: 25px 0 20px;
    }

    .raura-hero-content > p {
        width: 100%;
        max-width: 350px;

        margin-bottom: 25px;

        font-size: 15px;
        line-height: 1.7;
    }

    .raura-hero-discover {
        gap: 13px;

        font-size: 9px;
        letter-spacing: 2px;
    }

    .raura-hero-discover i {
        width: 38px;
        height: 38px;
        font-size: 10px;
    }

    .raura-hero-vertical {
        display: none;
    }

    .raura-hero-bottom {
        left: 20px;
        right: 20px;
        bottom: 20px;

        padding-top: 14px;

        justify-content: space-between;
    }

    .raura-hero-bottom-item {
        gap: 5px;
        flex-direction: column;
        align-items: flex-start;
    }

    .raura-hero-bottom-item span {
        font-size: 7px;
    }

    .raura-hero-bottom-item strong {
        font-size: 7px;
        letter-spacing: 1.2px;
    }

    .raura-hero-bottom-line {
        flex: 1;
        margin: 0 7px;
        align-self: center;
    }
}


/* Small Mobile */
@media (max-width: 380px) {

    .raura-hero-content h1 {
        font-size: 70px;
    }

    .raura-hero-content > p {
        font-size: 14px;
    }

    .raura-hero-bottom-item strong {
        font-size: 6px;
        letter-spacing: 1px;
    }

    .raura-hero-bottom-line {
        margin: 0 5px;
    }
}
/* =========================================================
   ROYAL AURA — SECTION 02
========================================================= */

.raura-intro {
    position: relative;
    width: 100%;
    padding: 115px 7% 75px;
    background: #eee7da;
    color: #615f5c;
    overflow: hidden;
}


/* =========================
   TOP
========================= */

.raura-intro-top {
    display: grid;
    grid-template-columns: 150px 1fr minmax(280px, 470px);
    align-items: center;
    gap: 35px;

    margin-bottom: 105px;
}

.raura-intro-number {
    display: flex;
    align-items: center;
    gap: 15px;
}

.raura-intro-number span {
    font-size: 25px;
    font-weight: 500;
    letter-spacing: 1px;
}

.raura-intro-number p {
    margin: 0;

    font-size: 10px;
    letter-spacing: 2.5px;
    line-height: 1.4;
    font-weight: 600;
}

.raura-intro-line {
    height: 1px;
    background: rgba(23, 55, 47, 0.25);
}

.raura-intro-top-text {
    margin: 0;

    font-size: 18px;
    line-height: 1.8;
    color: #3d514a;
}


/* =========================
   MAIN
========================= */

.raura-intro-main {
    display: grid;
    grid-template-columns: 47% 53%;
    align-items: center;
    gap: 7%;
}


/* Image */

.raura-intro-image {
    position: relative;
    height: 650px;
    overflow: hidden;
}

.raura-intro-image::after {
    content: "";
    position: absolute;
    inset: 0;

    background: linear-gradient(
        180deg,
        transparent 55%,
        rgba(16, 45, 37, 0.72)
    );
}

.raura-intro-image img {
    width: 100%;
    height: 100%;
    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform 0.8s ease;
}

.raura-intro-image:hover img {
    transform: scale(1.04);
}


/* Image Label */

.raura-intro-image-label {
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 25px;
    z-index: 2;

    display: flex;
    justify-content: space-between;
    align-items: center;

    padding-top: 17px;

    border-top: 1px solid rgba(255,255,255,0.4);

    color: #fff;
}

.raura-intro-image-label span {
    font-size: 11px;
    letter-spacing: 3px;
    font-weight: 600;
}

.raura-intro-image-label strong {
    font-size: 8px;
    letter-spacing: 2px;
    font-weight: 500;
}


/* Content */

.raura-intro-content {
    padding-right: 7%;
}

.raura-intro-kicker {
    display: block;
    margin-bottom: 24px;

    font-size: 12px;
    letter-spacing: 4px;
    font-weight: 600;

    color: #9b7942;
}

.raura-intro-content h2 {
    margin: 0;

    font-size: clamp(65px, 7vw, 108px);
    line-height: 0.94;
    letter-spacing: -4px;
    font-weight: 400;

    color: #615f5c;
}

.raura-intro-content h2 em {
    display: block;

    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;

    color: #a1804a;
}

.raura-intro-rule {
    width: 62px;
    height: 2px;

    margin: 35px 0 28px;

    background: #b29159;
}

.raura-intro-lead {
    max-width: 580px;

    margin: 0 0 22px;

    font-size: 23px;
    line-height: 1.6;
    color: #29453d;
}

.raura-intro-content > p:not(.raura-intro-lead) {
    max-width: 570px;

    margin: 0 0 35px;

    font-size: 17px;
    line-height: 1.9;

    color: #596961;
}


/* Link */

.raura-intro-link {
    display: inline-flex;
    align-items: center;
    gap: 18px;

    text-decoration: none;

    font-size: 11px;
    letter-spacing: 2.5px;
    font-weight: 700;

    color: #615f5c;

    transition: all 0.3s ease;
}

.raura-intro-link i {
    width: 43px;
    height: 43px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #615f5c;
    border-radius: 50%;

    font-size: 12px;

    transition: all 0.3s ease;
}

.raura-intro-link:hover {
    color: #a1804a;
}

.raura-intro-link:hover i {
    background: #615f5c;
    color: #fff;
    transform: translateX(5px);
}


/* =========================
   FEATURES
========================= */

.raura-intro-features {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    margin-top: 110px;

    border-top: 1px solid rgba(23,55,47,0.22);
    border-bottom: 1px solid rgba(23,55,47,0.22);
}

.raura-intro-feature {
    position: relative;

    display: grid;
    grid-template-columns: 35px 55px 1fr;
    align-items: start;
    gap: 18px;

    min-height: 175px;
    padding: 38px 35px;

    border-right: 1px solid rgba(23,55,47,0.18);
}

.raura-intro-feature:last-child {
    border-right: none;
}

.raura-intro-feature > span {
    font-size: 11px;
    letter-spacing: 2px;
    color: #a1804a;
}

.raura-intro-feature > i {
    font-size: 27px;
    color: #a1804a;
}

.raura-intro-feature h3 {
    margin: 0 0 9px;

    font-size: 23px;
    line-height: 1.2;
    font-weight: 500;
}

.raura-intro-feature p {
    margin: 0;

    font-size: 14px;
    line-height: 1.7;

    color: #66736d;
}


/* =========================
   FOOTER LINE
========================= */

.raura-intro-footer {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 25px;

    margin-top: 40px;
}

.raura-intro-footer span,
.raura-intro-footer strong {
    font-size: 9px;
    letter-spacing: 2.5px;
}

.raura-intro-footer strong {
    font-weight: 500;
    color: #7b806f;
}

.raura-intro-footer div {
    height: 1px;
    background: rgba(23,55,47,0.2);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .raura-intro {
        padding: 75px 20px 55px;
    }


    /* Top */

    .raura-intro-top {
        display: block;
        margin-bottom: 55px;
    }

    .raura-intro-number {
        gap: 12px;
        margin-bottom: 22px;
    }

    .raura-intro-number span {
        font-size: 21px;
    }

    .raura-intro-number p {
        font-size: 9px;
        letter-spacing: 2px;
    }

    .raura-intro-line {
        width: 55px;
        margin-bottom: 25px;
    }

    .raura-intro-top-text {
        font-size: 17px;
        line-height: 1.75;
    }


    /* Main */

    .raura-intro-main {
        display: flex;
        flex-direction: column;
        gap: 45px;
    }


    /* Image */

    .raura-intro-image {
        width: 100%;
        height: 430px;
        order: 1;
    }

    .raura-intro-image-label {
        left: 17px;
        right: 17px;
        bottom: 17px;

        padding-top: 13px;
    }

    .raura-intro-image-label span {
        font-size: 9px;
        letter-spacing: 2px;
    }

    .raura-intro-image-label strong {
        font-size: 6px;
        letter-spacing: 1.2px;
    }


    /* Content */

    .raura-intro-content {
        width: 100%;
        padding: 0;
        order: 2;
    }

    .raura-intro-kicker {
        font-size: 9px;
        letter-spacing: 2.5px;
        margin-bottom: 18px;
    }

    .raura-intro-content h2 {
        font-size: 55px;
        line-height: 0.98;
        letter-spacing: -2.5px;
    }

    .raura-intro-rule {
        width: 50px;
        margin: 26px 0 23px;
    }

    .raura-intro-lead {
        font-size: 20px;
        line-height: 1.6;
        margin-bottom: 20px;
    }

    .raura-intro-content > p:not(.raura-intro-lead) {
        font-size: 15px;
        line-height: 1.8;
        margin-bottom: 28px;
    }

    .raura-intro-link {
        font-size: 9px;
        letter-spacing: 1.8px;
        gap: 12px;
    }

    .raura-intro-link i {
        width: 38px;
        height: 38px;
        font-size: 10px;
    }


    /* Features */

    .raura-intro-features {
        display: flex;
        flex-direction: column;

        margin-top: 65px;
    }

    .raura-intro-feature {
        grid-template-columns: 32px 48px 1fr;

        min-height: auto;

        padding: 28px 8px;

        border-right: none;
        border-bottom: 1px solid rgba(23,55,47,0.18);
    }

    .raura-intro-feature:last-child {
        border-bottom: none;
    }

    .raura-intro-feature > span {
        font-size: 10px;
    }

    .raura-intro-feature > i {
        font-size: 24px;
    }

    .raura-intro-feature h3 {
        font-size: 20px;
        margin-bottom: 7px;
    }

    .raura-intro-feature p {
        font-size: 14px;
        line-height: 1.65;
    }


    /* Footer */

    .raura-intro-footer {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 28px;
    }

    .raura-intro-footer div {
        width: 55px;
    }

    .raura-intro-footer strong {
        font-size: 8px;
    }
}
/* =========================================================
   ROYAL AURA — SECTION 03
   THE RITUALS
========================================================= */

.raura-rituals {
    position: relative;
    width: 100%;
    min-height: 100vh;
    padding: 120px 7% 70px;

    overflow: hidden;

    background: #615f5c;
    color: #f5efe4;
}


/* =========================
   BACKGROUND
========================= */

.raura-rituals-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.raura-rituals-bg img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;
}


/* Overlay */

.raura-rituals-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;

    background:

    linear-gradient(
        90deg,
        rgba(63, 61, 58, .95) 0%,
        rgba(63, 61, 58, .82) 38%,
        rgba(63, 61, 58, .50) 68%,
        rgba(63, 61, 58, .32) 100%
    ),

    linear-gradient(
        180deg,
        rgba(63, 61, 58, .35),
        rgba(63, 61, 58, .75)
    );
}


/* =========================
   HEADER
========================= */

.raura-rituals-header {
    position: relative;
    z-index: 4;

    width: 620px;
    max-width: 58%;

    margin-bottom: 75px;
}


/* Index */

.raura-rituals-index {
    display: flex;
    align-items: center;
    gap: 18px;

    margin-bottom: 38px;
}

.raura-rituals-index span {
    font-size: 24px;
    letter-spacing: 1px;
    color: #d2b477;
}

.raura-rituals-index div {
    width: 55px;
    height: 1px;

    background: rgba(245, 239, 228, 0.35);
}

.raura-rituals-index p {
    margin: 0;

    font-size: 9px;
    letter-spacing: 3px;

    color: rgba(245, 239, 228, 0.7);
}


/* Kicker */

.raura-rituals-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 11px;
    letter-spacing: 4px;
    font-weight: 600;

    color: #d2b477;
}


/* Heading */

.raura-rituals-header h2 {
    margin: 0;

    font-size: clamp(65px, 7vw, 110px);
    line-height: 0.92;
    letter-spacing: -4px;
    font-weight: 400;

    color: #f6efe4;
}

.raura-rituals-header h2 em {
    display: block;

    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;

    color: #d2b477;
}


/* Intro */

.raura-rituals-intro {
    max-width: 570px;

    margin: 32px 0 0;

    font-size: 18px;
    line-height: 1.85;

    color: rgba(245, 239, 228, 0.76);
}


/* =========================
   RITUAL LIST
========================= */

.raura-rituals-list {
    position: relative;
    z-index: 4;

    width: 100%;
    max-width: 1100px;

    margin-left: auto;

    border-top: 1px solid rgba(245, 239, 228, 0.25);
}


/* Individual */

.raura-ritual {
    position: relative;

    display: grid;
    grid-template-columns: 55px 70px 1fr 50px;
    align-items: center;
    gap: 25px;

    min-height: 155px;

    padding: 25px 0;

    border-bottom: 1px solid rgba(245, 239, 228, 0.20);

    transition: all 0.35s ease;
}


/* Number */

.raura-ritual-number {
    align-self: start;

    padding-top: 5px;

    font-size: 11px;
    letter-spacing: 2px;

    color: #d2b477;
}


/* Icon */

.raura-ritual-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(210,180,119,0.55);
    border-radius: 50%;

    color: #d2b477;

    transition: all 0.35s ease;
}

.raura-ritual-icon i {
    font-size: 22px;
}


/* Content */

.raura-ritual-content > span {
    display: block;

    margin-bottom: 7px;

    font-size: 9px;
    letter-spacing: 3px;

    color: rgba(245,239,228,0.55);
}

.raura-ritual-content h3 {
    margin: 0 0 9px;

    font-size: 29px;
    line-height: 1.2;
    font-weight: 400;

    color: #f6efe4;
}

.raura-ritual-content p {
    max-width: 570px;

    margin: 0;

    font-size: 14px;
    line-height: 1.7;

    color: rgba(245,239,228,0.67);
}


/* Arrow */

.raura-ritual-arrow {
    width: 43px;
    height: 43px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(245,239,228,0.35);
    border-radius: 50%;

    color: #d2b477;

    transition: all 0.35s ease;
}


/* Hover */

.raura-ritual:hover {
    padding-left: 12px;
}

.raura-ritual:hover .raura-ritual-icon {
    background: #d2b477;
    border-color: #d2b477;

    color: #615f5c;
}

.raura-ritual:hover .raura-ritual-arrow {
    background: #d2b477;
    border-color: #d2b477;

    color: #615f5c;

    transform: translateX(5px);
}


/* =========================
   BOTTOM
========================= */

.raura-rituals-bottom {
    position: relative;
    z-index: 4;

    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 25px;

    margin-top: 55px;
}

.raura-rituals-bottom span,
.raura-rituals-bottom strong {
    font-size: 9px;
    letter-spacing: 2.5px;
}

.raura-rituals-bottom span {
    color: #d2b477;
}

.raura-rituals-bottom strong {
    font-weight: 500;
    color: rgba(245,239,228,0.55);
}

.raura-rituals-bottom div {
    height: 1px;
    background: rgba(245,239,228,0.20);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .raura-rituals {
        padding: 75px 20px 55px;
        min-height: auto;
    }


    .raura-rituals-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(12,39,32,0.92) 0%,
                rgba(12,39,32,0.88) 55%,
                rgba(12,39,32,0.96) 100%
            );
    }


    /* Header */

    .raura-rituals-header {
        width: 100%;
        max-width: 100%;

        margin-bottom: 55px;
    }

    .raura-rituals-index {
        gap: 12px;
        margin-bottom: 28px;
    }

    .raura-rituals-index span {
        font-size: 20px;
    }

    .raura-rituals-index div {
        width: 40px;
    }

    .raura-rituals-index p {
        font-size: 8px;
        letter-spacing: 2px;
    }

    .raura-rituals-kicker {
        font-size: 9px;
        letter-spacing: 2.5px;
        margin-bottom: 18px;
    }

    .raura-rituals-header h2 {
        font-size: 55px;
        line-height: 0.97;
        letter-spacing: -2.5px;
    }

    .raura-rituals-intro {
        margin-top: 25px;

        font-size: 15px;
        line-height: 1.8;
    }


    /* List */

    .raura-rituals-list {
        width: 100%;
    }

    .raura-ritual {
        grid-template-columns: 32px 50px 1fr;

        gap: 14px;

        min-height: auto;

        padding: 27px 0;
    }


    .raura-ritual-number {
        font-size: 9px;
        padding-top: 3px;
    }


    .raura-ritual-icon {
        width: 45px;
        height: 45px;
    }

    .raura-ritual-icon i {
        font-size: 18px;
    }


    .raura-ritual-content > span {
        font-size: 7px;
        letter-spacing: 2px;
        margin-bottom: 6px;
    }

    .raura-ritual-content h3 {
        font-size: 21px;
        margin-bottom: 7px;
    }

    .raura-ritual-content p {
        font-size: 13px;
        line-height: 1.65;
    }


    /* Arrow hidden on mobile */

    .raura-ritual-arrow {
        display: none;
    }


    .raura-ritual:hover {
        padding-left: 0;
    }


    /* Bottom */

    .raura-rituals-bottom {
        grid-template-columns: 1fr;

        gap: 12px;

        margin-top: 30px;
    }

    .raura-rituals-bottom div {
        width: 50px;
    }

    .raura-rituals-bottom span,
    .raura-rituals-bottom strong {
        font-size: 8px;
        letter-spacing: 2px;
    }
}
/* =========================================================
   ROYAL AURA — SECTION 04
   THE ATMOSPHERE
========================================================= */

.raura-atmosphere {
    position: relative;

    width: 100%;
    min-height: 100vh;

    overflow: hidden;

    background: #615f5c;
    color: #f5efe4;
}


/* =========================
   BACKGROUND
========================= */

.raura-atmosphere-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.raura-atmosphere-bg img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transform: scale(1.02);
}


/* =========================
   OVERLAY
========================= */

.raura-atmosphere-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;

    background:

    linear-gradient(
        90deg,
        rgba(63, 61, 58, .95) 0%,
        rgba(63, 61, 58, .82) 38%,
        rgba(63, 61, 58, .50) 68%,
        rgba(63, 61, 58, .32) 100%
    ),

    linear-gradient(
        180deg,
        rgba(63, 61, 58, .35),
        rgba(63, 61, 58, .75)
    );
}


/* =========================
   CONTENT
========================= */

.raura-atmosphere-content {
    position: relative;
    z-index: 5;

    width: min(700px, 60%);

    padding:
        125px
        0
        125px
        10%;
}


/* =========================
   INDEX
========================= */

.raura-atmosphere-index {
    display: flex;
    align-items: center;
    gap: 18px;

    margin-bottom: 38px;
}

.raura-atmosphere-index span {
    font-size: 24px;
    color: #d2b477;
}

.raura-atmosphere-index div {
    width: 55px;
    height: 1px;

    background: rgba(245,239,228,0.38);
}

.raura-atmosphere-index p {
    margin: 0;

    font-size: 9px;
    letter-spacing: 3px;

    color: rgba(245,239,228,0.7);
}


/* =========================
   KICKER
========================= */

.raura-atmosphere-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 11px;
    letter-spacing: 4px;
    font-weight: 600;

    color: #d2b477;
}


/* =========================
   HEADING
========================= */

.raura-atmosphere-content h2 {
    margin: 0;

    font-size: clamp(65px, 7vw, 112px);
    line-height: 0.92;
    letter-spacing: -4px;
    font-weight: 400;
}

.raura-atmosphere-content h2 em {
    display: block;

    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;

    color: #d2b477;
}


/* =========================
   TEXT
========================= */

.raura-atmosphere-lead {
    max-width: 600px;

    margin: 35px 0 20px;

    font-size: 21px;
    line-height: 1.7;

    color: rgba(245,239,228,0.9);
}

.raura-atmosphere-text {
    max-width: 560px;

    margin: 0;

    font-size: 16px;
    line-height: 1.85;

    color: rgba(245,239,228,0.66);
}


/* =========================
   DETAILS
========================= */

.raura-atmosphere-details {
    margin-top: 48px;

    width: 100%;
    max-width: 620px;

    border-top: 1px solid rgba(245,239,228,0.25);
}

.raura-atmosphere-detail {
    display: grid;
    grid-template-columns: 35px 45px 1fr;

    align-items: center;
    gap: 18px;

    padding: 20px 0;

    border-bottom: 1px solid rgba(245,239,228,0.18);
}

.raura-atmosphere-detail > span {
    font-size: 9px;
    letter-spacing: 2px;
    color: #d2b477;
}

.raura-atmosphere-detail > i {
    font-size: 21px;
    color: #d2b477;
}

.raura-atmosphere-detail strong {
    display: block;

    margin-bottom: 4px;

    font-size: 16px;
    font-weight: 500;
}

.raura-atmosphere-detail p {
    margin: 0;

    font-size: 12px;
    line-height: 1.6;

    color: rgba(245,239,228,0.56);
}


/* =========================
   FLOATING QUOTE
========================= */

.raura-atmosphere-quote {
    position: absolute;

    right: 9%;
    top: 50%;

    z-index: 5;

    transform: translateY(-50%);

    width: 190px;
    height: 190px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 28px;

    border: 1px solid rgba(210,180,119,0.65);
    border-radius: 50%;

    background: #3F3D3A;

    backdrop-filter: blur(5px);
}

.raura-atmosphere-quote > span {
    font-size: 8px;
    letter-spacing: 3px;
    color: #d2b477;
}

.raura-atmosphere-quote-line {
    width: 35px;
    height: 1px;

    margin: 13px 0;
    background: #d2b477;
}

.raura-atmosphere-quote p {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 16px;
    line-height: 1.4;

    color: #f5efe4;
}


/* =========================
   BOTTOM
========================= */

.raura-atmosphere-bottom {
    position: absolute;

    left: 7%;
    right: 7%;
    bottom: 28px;

    z-index: 6;

    display: grid;
    grid-template-columns: auto 1fr auto;

    align-items: center;

    gap: 25px;

    padding-top: 17px;

    border-top: 1px solid rgba(245,239,228,0.25);
}

.raura-atmosphere-bottom span,
.raura-atmosphere-bottom strong {
    font-size: 9px;
    letter-spacing: 2.5px;
}

.raura-atmosphere-bottom span {
    color: #d2b477;
}

.raura-atmosphere-bottom strong {
    font-weight: 500;
    color: rgba(245,239,228,0.55);
}

.raura-atmosphere-bottom div {
    height: 1px;
    background: rgba(245,239,228,0.18);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .raura-atmosphere {
        min-height: auto;
    }


    .raura-atmosphere-bg {
        position: absolute;
        height: 100%;
    }

    .raura-atmosphere-bg img {
        object-position: 60% center;
    }


    .raura-atmosphere-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(12,39,32,0.80) 0%,
                rgba(12,39,32,0.82) 45%,
                rgba(12,39,32,0.96) 100%
            );
    }


    /* Content */

    .raura-atmosphere-content {
        width: 100%;
        box-sizing: border-box;

        padding: 75px 20px 150px;
    }


    /* Index */

    .raura-atmosphere-index {
        gap: 12px;
        margin-bottom: 28px;
    }

    .raura-atmosphere-index span {
        font-size: 20px;
    }

    .raura-atmosphere-index div {
        width: 40px;
    }

    .raura-atmosphere-index p {
        font-size: 8px;
        letter-spacing: 2px;
    }


    /* Kicker */

    .raura-atmosphere-kicker {
        font-size: 8px;
        letter-spacing: 2.5px;
        margin-bottom: 18px;
    }


    /* Heading */

    .raura-atmosphere-content h2 {
        font-size: 53px;
        line-height: 0.97;
        letter-spacing: -2.5px;
    }


    /* Text */

    .raura-atmosphere-lead {
        margin-top: 26px;

        font-size: 18px;
        line-height: 1.65;
    }

    .raura-atmosphere-text {
        font-size: 14px;
        line-height: 1.8;
    }


    /* Details */

    .raura-atmosphere-details {
        margin-top: 38px;
    }

    .raura-atmosphere-detail {
        grid-template-columns: 28px 42px 1fr;

        gap: 10px;

        padding: 20px 0;
    }

    .raura-atmosphere-detail > span {
        font-size: 8px;
    }

    .raura-atmosphere-detail > i {
        font-size: 19px;
    }

    .raura-atmosphere-detail strong {
        font-size: 15px;
    }

    .raura-atmosphere-detail p {
        font-size: 12px;
        line-height: 1.55;
    }


    /* Quote */

    .raura-atmosphere-quote {
        position: absolute;

        right: 20px;
        top: auto;
        bottom: 75px;

        transform: none;

        width: 125px;
        height: 125px;

        padding: 18px;
        box-sizing: border-box;
    }

    .raura-atmosphere-quote > span {
        font-size: 6px;
        letter-spacing: 2px;
    }

    .raura-atmosphere-quote-line {
        width: 25px;
        margin: 8px 0;
    }

    .raura-atmosphere-quote p {
        font-size: 11px;
    }


    /* Bottom */

    .raura-atmosphere-bottom {
        left: 20px;
        right: 20px;
        bottom: 20px;

        grid-template-columns: 1fr;

        gap: 10px;

        padding-top: 13px;
    }

    .raura-atmosphere-bottom div {
        width: 50px;
    }

    .raura-atmosphere-bottom span,
    .raura-atmosphere-bottom strong {
        font-size: 7px;
        letter-spacing: 1.8px;
    }
}
/* =========================================================
   ROYAL AURA — SECTION 05
   WELLNESS JOURNEY
========================================================= */

.raura-journey {
    position: relative;

    width: 100%;
    padding: 120px 7% 75px;

    background: #eee7da;
    color: #615f5c;

    overflow: hidden;
}


/* =========================
   HEADER
========================= */

.raura-journey-header {
    display: grid;
    grid-template-columns: 170px 1fr minmax(280px, 430px);

    align-items: end;
    gap: 45px;

    margin-bottom: 90px;
}


/* Index */

.raura-journey-index {
    align-self: start;

    display: flex;
    align-items: center;
    gap: 15px;
}

.raura-journey-index span {
    font-size: 24px;
    color: #9d7b43;
}

.raura-journey-index div {
    width: 45px;
    height: 1px;

    background: rgba(23,55,47,0.3);
}

.raura-journey-index p {
    margin: 0;

    font-size: 9px;
    line-height: 1.4;
    letter-spacing: 2.5px;
    font-weight: 600;
}


/* Heading */

.raura-journey-kicker {
    display: block;

    margin-bottom: 20px;

    font-size: 11px;
    letter-spacing: 4px;
    font-weight: 600;

    color: #9d7b43;
}

.raura-journey-heading h2 {
    margin: 0;

    font-size: clamp(65px, 7vw, 110px);
    line-height: 0.91;
    letter-spacing: -4px;
    font-weight: 400;
}

.raura-journey-heading h2 em {
    display: block;

    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;

    color: #9d7b43;
}


/* Intro */

.raura-journey-intro {
    margin: 0 0 5px;

    font-size: 18px;
    line-height: 1.85;

    color: #3F3D3A;
}


/* =========================
   MAIN
========================= */

.raura-journey-main {
    display: grid;
    grid-template-columns: 42% 58%;

    gap: 7%;

    align-items: stretch;
}


/* =========================
   IMAGE
========================= */

.raura-journey-image {
    position: relative;

    height: 650px;

    overflow: hidden;
}

.raura-journey-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.8s ease;
}

.raura-journey-image:hover img {
    transform: scale(1.04);
}


/* Image label */

.raura-journey-image-label {
    position: absolute;

    left: 25px;
    right: 25px;
    bottom: 22px;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding-top: 15px;

    border-top: 1px solid rgba(255,255,255,0.5);

    color: #fff;
}

.raura-journey-image-label span {
    font-size: 10px;
    letter-spacing: 3px;
    font-weight: 600;
}

.raura-journey-image-label strong {
    font-size: 8px;
    letter-spacing: 2px;
    font-weight: 500;
}


/* =========================
   JOURNEY LIST
========================= */

.raura-journey-list {
    border-top: 1px solid rgba(23,55,47,0.25);
}


.raura-journey-item {
    display: grid;

    grid-template-columns: 45px 58px 1fr;

    align-items: start;

    gap: 22px;

    padding: 31px 0;

    border-bottom: 1px solid rgba(23,55,47,0.20);

    transition: all 0.3s ease;
}


/* Number */

.raura-journey-number {
    padding-top: 5px;

    font-size: 10px;
    letter-spacing: 2px;

    color: #9d7b43;
}


/* Icon */

.raura-journey-icon {
    width: 55px;
    height: 55px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(157,123,67,0.6);
    border-radius: 50%;

    color: #9d7b43;

    transition: all 0.3s ease;
}

.raura-journey-icon i {
    font-size: 21px;
}


/* Content */

.raura-journey-content > span {
    display: block;

    margin-bottom: 6px;

    font-size: 8px;
    letter-spacing: 3px;
    font-weight: 600;

    color: #9d7b43;
}

.raura-journey-content h3 {
    margin: 0 0 8px;

    font-size: 27px;
    line-height: 1.2;
    font-weight: 400;

    color: #615f5c;
}

.raura-journey-content p {
    max-width: 520px;

    margin: 0;

    font-size: 14px;
    line-height: 1.7;

    color: #615f5c;
}


/* Hover */

.raura-journey-item:hover {
    padding-left: 10px;
}

.raura-journey-item:hover .raura-journey-icon {
    background: #615f5c;
    border-color: #615f5c;
    color: #d2b477;
}


/* =========================
   FOOTER
========================= */

.raura-journey-footer {
    display: grid;

    grid-template-columns: auto 1fr auto;

    align-items: center;

    gap: 25px;

    margin-top: 50px;
}

.raura-journey-footer span,
.raura-journey-footer strong {
    font-size: 9px;
    letter-spacing: 2.5px;
}

.raura-journey-footer span {
    color: #9d7b43;
}

.raura-journey-footer strong {
    font-weight: 500;
    color: #615f5c;
}

.raura-journey-footer div {
    height: 1px;

    background: rgba(23,55,47,0.2);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .raura-journey {
        padding: 75px 20px 55px;
    }


    /* Header */

    .raura-journey-header {
        display: block;

        margin-bottom: 55px;
    }

    .raura-journey-index {
        gap: 12px;
        margin-bottom: 30px;
    }

    .raura-journey-index span {
        font-size: 20px;
    }

    .raura-journey-index div {
        width: 38px;
    }

    .raura-journey-index p {
        font-size: 8px;
        letter-spacing: 2px;
    }


    .raura-journey-kicker {
        font-size: 9px;
        letter-spacing: 2.5px;
        margin-bottom: 18px;
    }

    .raura-journey-heading h2 {
        font-size: 55px;
        line-height: 0.97;
        letter-spacing: -2.5px;
    }


    .raura-journey-intro {
        margin-top: 25px;

        font-size: 15px;
        line-height: 1.8;
    }


    /* Main */

    .raura-journey-main {
        display: flex;
        flex-direction: column;

        gap: 45px;
    }


    /* Image */

    .raura-journey-image {
        width: 100%;
        height: 420px;
    }

    .raura-journey-image-label {
        left: 17px;
        right: 17px;
        bottom: 17px;

        padding-top: 13px;
    }

    .raura-journey-image-label span {
        font-size: 8px;
        letter-spacing: 2px;
    }

    .raura-journey-image-label strong {
        font-size: 6px;
        letter-spacing: 1.2px;
    }


    /* List */

    .raura-journey-item {
        grid-template-columns: 30px 47px 1fr;

        gap: 11px;

        padding: 25px 0;
    }


    .raura-journey-number {
        font-size: 8px;
        padding-top: 4px;
    }


    .raura-journey-icon {
        width: 44px;
        height: 44px;
    }

    .raura-journey-icon i {
        font-size: 17px;
    }


    .raura-journey-content > span {
        font-size: 7px;
        letter-spacing: 2px;
    }

    .raura-journey-content h3 {
        font-size: 20px;
        margin-bottom: 7px;
    }

    .raura-journey-content p {
        font-size: 13px;
        line-height: 1.65;
    }


    .raura-journey-item:hover {
        padding-left: 0;
    }


    /* Footer */

    .raura-journey-footer {
        grid-template-columns: 1fr;

        gap: 10px;

        margin-top: 30px;
    }

    .raura-journey-footer div {
        width: 50px;
    }

    .raura-journey-footer span,
    .raura-journey-footer strong {
        font-size: 7px;
        letter-spacing: 1.8px;
    }

}
@media (min-width: 768px) {

    .raura-journey-heading h2 {
        white-space: nowrap !important;
        font-size: clamp(58px, 6.3vw, 100px) !important;
        letter-spacing: -4px !important;
    }

    .raura-journey-heading h2 em {
        display: inline !important;
        white-space: nowrap !important;
    }

}
/* =========================================================
   ROYAL AURA — SECTION 06
   FINAL CTA
========================================================= */

.raura-cta {
    position: relative;

    width: 100%;
    min-height: 92vh;

    overflow: hidden;

    background: #615f5c;
    color: #f5efe4;
}


/* =========================
   BACKGROUND
========================= */

.raura-cta-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.raura-cta-bg img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transform: scale(1.02);
}


/* =========================
   OVERLAY
========================= */

.raura-cta-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;

    background:

    linear-gradient(
        90deg,
        rgba(63, 61, 58, .95) 0%,
        rgba(63, 61, 58, .82) 38%,
        rgba(63, 61, 58, .50) 68%,
        rgba(63, 61, 58, .32) 100%
    ),

    linear-gradient(
        180deg,
        rgba(63, 61, 58, .35),
        rgba(63, 61, 58, .75)
    );
}


/* =========================
   CONTENT
========================= */

.raura-cta-content {
    position: relative;
    z-index: 5;

    width: min(720px, 62%);

    padding:
        125px
        0
        150px
        10%;
}


/* =========================
   INDEX
========================= */

.raura-cta-index {
    display: flex;
    align-items: center;
    gap: 18px;

    margin-bottom: 40px;
}

.raura-cta-index span {
    font-size: 24px;
    color: #d2b477;
}

.raura-cta-index div {
    width: 55px;
    height: 1px;

    background: rgba(245,239,228,0.35);
}

.raura-cta-index p {
    margin: 0;

    font-size: 9px;
    letter-spacing: 3px;

    color: rgba(245,239,228,0.68);
}


/* =========================
   KICKER
========================= */

.raura-cta-kicker {
    display: block;

    margin-bottom: 22px;

    font-size: 11px;
    letter-spacing: 4px;
    font-weight: 600;

    color: #d2b477;
}


/* =========================
   HEADING
========================= */

.raura-cta-content h2 {
    margin: 0;

    font-size: clamp(72px, 8vw, 125px);
    line-height: 0.9;
    letter-spacing: -5px;
    font-weight: 400;
}

.raura-cta-content h2 em {
    display: block;

    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;

    color: #d2b477;
}


/* =========================
   TEXT
========================= */

.raura-cta-text {
    max-width: 590px;

    margin: 35px 0 32px;

    font-size: 18px;
    line-height: 1.8;

    color: rgba(245,239,228,0.78);
}


/* =========================
   ACTIONS
========================= */

.raura-cta-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 28px;
}


/* Primary */

.raura-cta-primary {
    display: inline-flex;
    align-items: center;
    gap: 17px;

    padding: 0;

    text-decoration: none;

    font-size: 11px;
    letter-spacing: 2.3px;
    font-weight: 700;

    color: #f5efe4;

    transition: all 0.3s ease;
}

.raura-cta-primary i {
    width: 46px;
    height: 46px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #d2b477;
    border-radius: 50%;

    color: #d2b477;

    transition: all 0.3s ease;
}

.raura-cta-primary:hover {
    color: #d2b477;
}

.raura-cta-primary:hover i {
    background: #d2b477;
    color: #615f5c;

    transform: translateX(5px);
}


/* WhatsApp */

.raura-cta-whatsapp {
    display: inline-flex;
    align-items: center;
    gap: 13px;

    text-decoration: none;

    color: #f5efe4;

    transition: all 0.3s ease;
}

.raura-cta-whatsapp > i {
    width: 44px;
    height: 44px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(245,239,228,0.4);
    border-radius: 50%;

    font-size: 20px;
}

.raura-cta-whatsapp span {
    display: flex;
    flex-direction: column;

    font-size: 14px;
    letter-spacing: 1px;
}

.raura-cta-whatsapp small {
    margin-bottom: 4px;

    font-size: 7px;
    letter-spacing: 2px;

    color: #d2b477;
}

.raura-cta-whatsapp:hover {
    color: #d2b477;
}


/* =========================
   CIRCULAR BADGE
========================= */

.raura-cta-badge {
    position: absolute;

    right: 10%;
    top: 50%;

    z-index: 5;

    transform: translateY(-50%);

    width: 210px;
    height: 210px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(210,180,119,0.75);
    border-radius: 50%;

    background: #3F3D3A;

    backdrop-filter: blur(5px);

    text-align: center;
}

.raura-cta-badge::before {
    content: "";

    position: absolute;

    inset: 10px;

    border: 1px solid rgba(210,180,119,0.28);
    border-radius: 50%;
}

.raura-cta-badge span {
    font-size: 8px;
    letter-spacing: 4px;

    color: #d2b477;
}

.raura-cta-badge strong {
    margin: 8px 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 31px;
    line-height: 1;

    font-weight: 400;
}

.raura-cta-badge small {
    font-size: 7px;
    line-height: 1.6;
    letter-spacing: 2px;

    color: rgba(245,239,228,0.65);
}


/* =========================
   BOTTOM
========================= */

.raura-cta-bottom {
    position: absolute;

    left: 7%;
    right: 7%;
    bottom: 28px;

    z-index: 6;

    display: grid;

    grid-template-columns: auto 1fr auto;

    align-items: center;

    gap: 25px;

    padding-top: 17px;

    border-top: 1px solid rgba(245,239,228,0.25);
}

.raura-cta-bottom span,
.raura-cta-bottom strong {
    font-size: 9px;
    letter-spacing: 2.5px;
}

.raura-cta-bottom span {
    color: #d2b477;
}

.raura-cta-bottom strong {
    font-weight: 500;
    color: rgba(245,239,228,0.55);
}

.raura-cta-bottom div {
    height: 1px;

    background: rgba(245,239,228,0.18);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .raura-cta {
        min-height: 820px;
    }


    .raura-cta-bg img {
        object-position: 60% center;
    }


    .raura-cta-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(12,39,32,0.80) 0%,
                rgba(12,39,32,0.82) 45%,
                rgba(12,39,32,0.96) 100%
            );
    }


    /* Content */

    .raura-cta-content {
        width: 100%;
        box-sizing: border-box;

        padding: 75px 20px 170px;
    }


    /* Index */

    .raura-cta-index {
        gap: 12px;
        margin-bottom: 30px;
    }

    .raura-cta-index span {
        font-size: 20px;
    }

    .raura-cta-index div {
        width: 40px;
    }

    .raura-cta-index p {
        font-size: 8px;
        letter-spacing: 2px;
    }


    /* Kicker */

    .raura-cta-kicker {
        font-size: 8px;
        letter-spacing: 2.5px;
        margin-bottom: 18px;
    }


    /* Heading */

    .raura-cta-content h2 {
        font-size: 57px;
        line-height: 0.96;
        letter-spacing: -2.5px;
    }


    /* Text */

    .raura-cta-text {
        margin: 28px 0 28px;

        font-size: 15px;
        line-height: 1.8;
    }


    /* Actions */

    .raura-cta-actions {
        flex-direction: column;
        align-items: flex-start;

        gap: 20px;
    }

    .raura-cta-primary {
        font-size: 9px;
        letter-spacing: 1.8px;
    }

    .raura-cta-primary i {
        width: 39px;
        height: 39px;

        font-size: 10px;
    }

    .raura-cta-whatsapp > i {
        width: 40px;
        height: 40px;

        font-size: 18px;
    }

    .raura-cta-whatsapp span {
        font-size: 13px;
    }


    /* Badge */

    .raura-cta-badge {
        right: 20px;
        top: auto;
        bottom: 85px;

        transform: none;

        width: 125px;
        height: 125px;
    }

    .raura-cta-badge::before {
        inset: 7px;
    }

    .raura-cta-badge span {
        font-size: 6px;
        letter-spacing: 2px;
    }

    .raura-cta-badge strong {
        font-size: 20px;
        margin: 5px 0;
    }

    .raura-cta-badge small {
        font-size: 5px;
        letter-spacing: 1.3px;
    }


    /* Bottom */

    .raura-cta-bottom {
        left: 20px;
        right: 20px;
        bottom: 20px;

        grid-template-columns: 1fr;

        gap: 10px;

        padding-top: 13px;
    }

    .raura-cta-bottom div {
        width: 50px;
    }

    .raura-cta-bottom span,
    .raura-cta-bottom strong {
        font-size: 7px;
        letter-spacing: 1.8px;
    }

}
/* =========================================================
   ROYAL AURA HERO — FINAL DESKTOP SPACING FIX
========================================================= */

@media (min-width: 768px) {

    /* Main content ko ORIGINAL position par rakho */
    .raura-hero-content {
        transform: translateY(-45%) !important;
    }

    /* Top kicker ko proper breathing space */
    .raura-hero-kicker {
        margin-top: 10px !important;
    }

    /* Discover button ko sirf thoda upar karo */
    .raura-hero-discover {
        position: relative !important;
        z-index: 50 !important;
        transform: translateY(-18px) !important;
    }

    /* Circle ko line ke upar solid background do */
    .raura-hero-discover i {
        position: relative !important;
        z-index: 51 !important;

        background: #615f5c !important;
        border: 1px solid rgba(245, 239, 228, 0.75) !important;

        box-shadow: 0 0 0 7px #615f5c !important;
    }

}
@media (min-width: 768px) {

    .raura-hero-content {
        transform: translateY(-45%) !important;
    }

    .raura-hero-discover {
        position: relative !important;
        z-index: 100 !important;
        top: -32px !important;
        transform: none !important;
        margin-bottom: -32px !important;
    }

    .raura-hero-discover i {
        position: relative !important;
        z-index: 101 !important;

        background: #615f5c !important;
        border: 1px solid rgba(245, 239, 228, 0.8) !important;

        box-shadow: 0 0 0 8px #615f5c !important;
    }

}
/* =========================================================
   ROYAL AURA HERO — HARD DISCOVER / BOTTOM BAR FIX
========================================================= */

@media (min-width: 768px) {

    /* Hero content stays exactly where it is */
    .raura-hero-content {
        transform: translateY(-45%) !important;
    }


    /* Force Discover to sit clearly ABOVE bottom bar */
    .raura-hero-content a.raura-hero-discover {
        position: relative !important;
        display: inline-flex !important;

        z-index: 999 !important;

        margin-top: 0 !important;
        margin-bottom: 45px !important;

        top: -35px !important;
        bottom: auto !important;

        transform: translate3d(0, 0, 0) !important;
    }


    /* Make the circle completely independent from the line */
    .raura-hero-content a.raura-hero-discover i {
        position: relative !important;

        z-index: 1000 !important;

        background-color: #615f5c !important;

        border: 1px solid rgba(245, 239, 228, 0.85) !important;

        box-shadow:
            0 0 0 9px #615f5c !important;

        transform: none !important;
    }


    /* Bottom bar stays at bottom */
    .raura-hero-bottom {
        position: absolute !important;

        left: 55px !important;
        right: 55px !important;
        bottom: 28px !important;

        z-index: 20 !important;
    }

}
@media (min-width: 768px) {

    .raura-hero-discover {
        gap: 10px !important;
        font-size: 9px !important;
        letter-spacing: 2px !important;
    }

    .raura-hero-discover i {
        width: 28px !important;
        height: 28px !important;
        font-size: 8px !important;
    }

}
@media (min-width: 768px) {

    .raura-hero-discover {
        gap: 8px !important;
        font-size: 8px !important;
        letter-spacing: 1.8px !important;
    }

    .raura-hero-discover i {
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        min-height: 26px !important;

        font-size: 8px !important;
        line-height: 1 !important;
    }

}
@media (min-width: 768px) {

    .raura-hero-discover {
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        font-size: 8px !important;
        letter-spacing: 1.8px !important;
    }

    .raura-hero-discover i {
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        min-height: 26px !important;

        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        font-size: 8px !important;
        line-height: 1 !important;
        margin: 0 !important;
    }

}
@media (min-width: 768px) {

    .raura-hero-discover {
        gap: 16px !important;
    }

}
@media (max-width: 767px) {

    .ramsan-floating-social {
        top: 110px !important;
    }

}