/* 
Theme Name:		 NUS The Ridge Theme
Theme URI:		 https://www.websparks.sg/
Description:	 Child Theme for The Ridge
Author:			 Websparks
Author URI:		 https://www.websparks.sg/
Template:		 astra
Version:		 1.0.0
Text Domain:	 nus-theme
*/
/*
    Add your custom styles here
*/

:root {
  --orange: #EF7C00;
  --blue: #003D7C;
}

body {
  font-family: Roboto, Arial, sans-serif;
}

.ast-desktop .ast-menu-hover-style-underline>.menu-item>.menu-link::before,
.ast-desktop .ast-menu-hover-style-overline>.menu-item>.menu-link::before {
  height: 3px;
}

.ast-desktop .ast-menu-hover-style-underline>.menu-item.current_page_item>.menu-link::before,
.ast-desktop .ast-menu-hover-style-overline>.menu-item.current_page_item>.menu-link::before {
  width: 100%;
  background-color: var(--orange);
  transform: scale(1, 1) translate(50%, 0);
}

.ast-desktop .ast-mega-menu-enabled .ast-builder-menu-1 div:not(.astra-full-megamenu-wrapper) .sub-menu,
.ast-builder-menu-1 .inline-on-mobile .sub-menu,
.ast-desktop .ast-builder-menu-1 .astra-full-megamenu-wrapper,
.ast-desktop .ast-builder-menu-1 .menu-item .sub-menu {}

.ast-desktop .ast-builder-menu-1 .menu-item .sub-menu .menu-item a.menu-link:hover {
  background-color: #FFFFFF;
}

.site-logo-img img {
  height: 60px;
  width: auto;
}

.site-branding {
  display: flex;
}

.site-branding .nus-faculty-border {
  border-right: 1.5pt solid #003d7c;
  margin: 0px 15px;
}

.site-content>.ast-container {
  max-width: 100%;
  padding: 0;
}

body.search .ast-container {
  max-width: 1240px;
  padding: 0;
}

/********** FOOTER **********/
footer .nus-footer .dept-footer {
  margin-left: auto;
  margin-right: auto;
}

footer .nus-footer {
  padding: 70px 0px;
}

footer .nus-footer .dept-name {
  color: white;
  font-size: 18px;
  text-align: center;
  margin-bottom: 10px;
}

footer .nus-footer .dept-info .icon {
  color: white;
  margin-right: 10px;
  float: left;
}

footer .nus-footer .dept-footer .dept-info {
  font-size: 14px;
  width: 61%;
  margin: auto;
}

footer .nus-footer .dept-footer .dept-info .info {
  font-size: 14px;
  width: 70%;
  margin: auto;
}

footer .nus-footer .dept-footer .dept-info .info, footer .nus-footer .dept-footer .dept-info .info {
  text-align: left;
}

footer .nus-footer .dept-footer .dept-info .info, footer .nus-footer .dept-footer .dept-info .info a {
  color: #999;
}

footer .nus-footer .dept-footer .social-icons img {
  width: 23.64px;
  margin: 0px 6px;
}

footer .nus-footer .dept-footer .social-icons {
  margin: 0px auto;
  text-align: center;
  padding-top: 24px;
}

footer .nus-footer .dept-footer .social-icons img {
  display: inline-block;
}

@media only screen and (max-width:768px) {
  .nus-footer .dept-footer {
    width: auto;
  }
}

/********** HEADER **********/
#ast-hf-mobile-menu a.menu-link {
  color: #003D7C;
  font-size: 14px;
}

@media only screen and (max-width:920px) {
  .ast-icon.icon-arrow svg {
    transform: none;
    font-size: 10px;
  }

  .ast-submenu-expanded>.ast-menu-toggle .ast-icon.icon-arrow svg {
    transform: rotate(180deg);
  }
}

.ast-search-box.header-cover .icon-close svg {
  color: #0d0d0d;
}

#ast-desktop-header .ast-search-box.header-cover {
  position: static;
  padding: 20px;
  background: none;
  background-color: #f8f8f8;
}

#ast-desktop-header .ast-search-box.header-cover .ast-search-wrapper {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  transform: none;
}

#ast-desktop-header .ast-search-box.header-cover .search-form .search-field {
  padding: 10px 16px 10px 40px;
  font-size: 18px;
  line-height: 1.33em;
  background-color: #fff;
  color: #0d0d0d;
  border: 1px solid #ccc;
  box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
  height: 45px;
  border-radius: 0px;
}

#ast-desktop-header .ast-search-box.header-cover .search-form .search-field::placeholder {
  color: #ccc;
}

#ast-desktop-header .ast-search-box.header-cover .search-form .search-text-wrap {
  width: calc(100% - 0em);
}

#ast-desktop-header .ast-search-box.header-cover .search-form .search-text-wrap:before {
  display: block;
  position: absolute;
  top: 2px;
  left: 22px;
  opacity: 0.1;
  z-index: 3;
  content: "";
  width: 40px;
  height: 40px;
  background-image: url(assets/images/search-solid.png );
  background-repeat: no-repeat;
  background-position: center;
  background-size: 17px auto;
}

#ast-desktop-header .ast-search-box.header-cover .search-form .close {
  opacity: 0;
  display: none;
}

.nus-row-page-banner {
  max-width: 1260px;
}

.nus-row-page-banner>.fl-row-content-wrap {
  background-size: cover;
  padding-top: 192px;
  padding-bottom: 220px;
  padding-left: 235px;
  overflow: hidden;
}

.nus-row-page-banner>.fl-row-content-wrap:after {
  right: auto;
  left: 50%;
  width: 2170px;
  margin-left: -1085px;
}

.nus-row-page-banner>.fl-row-content-wrap h1.fl-heading {
  max-width: 700px;
  font-size: 60px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: -3px;
  text-shadow: -1px 0px 15px rgba(0, 0, 0, 0.35);
}

.nus-row-page-banner>.fl-row-content-wrap h4.fl-heading {
  max-width: 700px;
  font-size: 34px;
  font-weight: 500;
  text-shadow: -1px 0px 15px rgba(0, 0, 0, 0.35);
}

@media only screen and (max-width: 1024px) {
  .nus-row-page-banner>.fl-row-content-wrap {
    background-size: cover;
    padding-top: 272px;
    padding-bottom: 90px;
    padding-left: 50px;
  }

  .nus-row-page-banner>.fl-row-content-wrap:after {
    right: 0px;
    left: 0px;
    width: auto;
  }

  .nus-row-page-banner>.fl-row-content-wrap h1.fl-heading {
    font-size: 40px;
    letter-spacing: -2px;
  }

  .nus-row-page-banner>.fl-row-content-wrap h4.fl-heading {
    font-size: 26px;
  }
}

@media only screen and (max-width: 767px) {
  .nus-row-page-banner>.fl-row-content-wrap {
    background-size: auto 100%;
    padding-top: 200px;
    padding-bottom: 50px;
    padding-left: 20px;
  }

  .nus-row-page-banner>.fl-row-content-wrap h1.fl-heading {
    font-size: 30px;
    letter-spacing: -1px;
  }

  .nus-row-page-banner>.fl-row-content-wrap h4.fl-heading {
    font-size: 18px;
  }
}

.main-header-menu .menu-link, .main-header-menu>a {
  padding: 0 15px 0 15px;
}

/********** BREADCRUMBS **********/
.custom-breadcrumbs {
  background: #002449;
}

.custom-breadcrumbs ul {
  list-style: none;
  max-width: 1140px;
  display: flex;
  margin: 0px auto;
}

.custom-breadcrumbs>ul>li {
  float: left;
  margin-right: 5px;
  color: #999;
  font-size: 14px;
}

.custom-breadcrumbs>ul>li>a {
  /**color: #959595;*/
  color: #555;
}

.custom-breadcrumbs ul>li a:hover {
  color: #fff;
  text-decoration: none;
}

.custom-breadcrumbs>ul>li:nth-child(n+2)::before {
  /**font-family: "Font Awesome 5 Free";*/
  font-weight: 600;
  content: "/";
  font-size: 15px;
  margin: 0px 10px;
}

.breadcrumbs-home {
  padding-right: 10px;
  color: #f27c36;
}



/********** SEARCH PAGE **********/
.main_header_search_icon {
  line-height: 0;
}

.main_header_search_bar {
  .search-text-wrap {
    position: relative;
  }

  .search-text-wrap:before {
    display: block;
    position: absolute;
    top: -10px;
    opacity: 0.1;
    z-index: 3;
    content: "";
    width: 40px;
    height: 40px;
    background-image: url(assets/images/search-solid.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 17px auto;
  }

  .search-field {
    width: 100%;
    padding: 10px 16px 10px 40px;
    font-size: 18px;
    line-height: 1.33em;
    background-color: #fff;
    color: #0d0d0d;
    border: 1px solid #ccc;
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
    height: 45px;
    border-radius: 0px;
  }
}

.ast-below-header-bar .header-widget-area {
  padding: 0 !important;
  width: 100% !important;
}

@media only screen and (max-width:767px) {
  .search-results .container {
    padding: 20px;
  }
}

.search-results .headline {
  margin: 24px 0px;
}

.search-results .headline h2 {
  font-size: 25px;
  font-style: normal;
  font-weight: 700;
  line-height: 35px;
  letter-spacing: 0px;
  text-align: left;
  color: #003d7c;
}

.search-results .form-search {
  display: block;
  width: 100%;
  margin-bottom: 25px;
  position: relative;
}

.search-results .form-search .searchBox {
  height: 50px;
  width: 100%;
  padding-left: 25px;
  padding-right: 90px;
  font-size: 14px;
  line-height: 24px;
}

.search-results .form-search .icon-cancel {
  position: absolute;
  height: 16px;
  width: 16px;
  top: 17px;
  right: 60px;
  cursor: pointer;
  z-index: 5;
}

.search-results .form-search .icon-search {
  position: absolute;
  top: 17px;
  right: 30px;
  cursor: pointer;
  z-index: 5;
  height: 17px;
  width: 17px;
  opacity: 0.8;
}

.search-results .results .resultCount {
  font-size: 14px;
  font-style: normal;
  font-weight: bold;
  line-height: 20px;
  letter-spacing: 0px;
  text-align: left;
  margin-top: 50px;
  margin-bottom: 50px;
}

.search-results .results .resultList {
  margin-top: 25px;
  margin-bottom: 25px;
}

.search-results .results .resultList .result-item {
  margin-bottom: 15px;
}

.search-results .results .resultList .result-title {
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0px;
  text-align: left;
  color: #262626;
  margin-bottom: 8px;
}

.search-results .results .resultList .description {
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: 0px;
  text-align: left;
  color: #343434;
  margin-bottom: 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /* number of lines to show */
  -webkit-box-orient: vertical;
}

.search-results .results .resultList .read-more button {
  border: none;
  background: none;
  padding: 0px;
}

.search-results .results .resultList .read-more button:focus {
  outline: none;
}

.search-results .results .resultList .read-more span {
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 22px;
  letter-spacing: 0px;
  text-align: left;
  cursor: pointer;
  color: #0D315F;
}

.search-results .results .resultList .read-more span:hover {
  color: #45565F;
}

@media only screen and (min-width: 1200px) {
  .search-results .form-search {
    width: 100%;
  }
}

.result-item-divider {
  margin-top: 10px;
  border-bottom: 1px solid #e0e0e0;
}

.wrapper-paging {
  text-align: center;
}

.wrapper-paging .page-numbers {
  list-style: none;
}

.wrapper-paging .page-numbers li {
  display: inline-block;
}

.wrapper-paging .page-numbers li .page-numbers {
  border: none;
  padding: 4px 8px;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: 0px;
  text-align: center;
  color: #707070;
}

.wrapper-paging .page-numbers li .page-numbers.current {
  color: white;
  background: #003d7c;
}

.wrapper-paging .page-numbers li .page-numbers.next {
  color: white;
  position: relative;
}

.wrapper-paging .page-numbers li .page-numbers.next:before {
  background: url("assets/images/next-arrow.svg");
  width: 7px;
  height: 12px;
  display: block;
  content: " ";
  position: absolute;
  top: 7px;
  left: 10px;
}

.wrapper-paging .page-numbers li .page-numbers.prev {
  color: white;
  position: relative;
}

.wrapper-paging .page-numbers li .page-numbers.prev:before {
  background: url("assets/images/prev-arrow.svg");
  width: 7px;
  height: 12px;
  display: block;
  content: " ";
  position: absolute;
  top: 8px;
  right: 10px;
}



/********** MEGA MENU **********/

.ast-mm-custom-text-content {
  height: 144px;
  display: block;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: 0px;
  text-align: left;
  color: #343434;
  font-family: Roboto, Arial, sans-serif;
}

@media only screen and (max-width: 767px) {
  .ast-mm-custom-text-content {
    padding: 0 20px 0 20px;
  }
}


/* Mobile */
@media screen and (max-width: 767px) {
  .ast-mobile-header-wrap .ast-primary-header-bar {
    height: 63px;
    min-height: 63px !important;
  }

  .ast-site-identity {
    padding: 0 !important;
  }

  .site-logo-img img {
    height: 38.24px;
    object-fit: contain;
  }

}





.ast-mobile-popup-header {
  position: relative;
  background-color: #EEEEEE;
  min-height: 35px !important;
  height: 35px;
}

.ast-mobile-popup-header::after {
  content: 'SIDEBAR';
  top: 5px;
  left: 12px;
  position: absolute;
  color: #333333;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: bold;
}

.ast-mobile-popup-drawer .ast-mobile-popup-header .menu-toggle-close {
  padding: 5px 10px 5px 10px;
  background: #BBBBBB33;
  border-radius: 0;
}

#ast-hf-mobile-menu {
  position: relative;
  padding-top: 54px;
  padding-left: 12px;
  padding-right: 12px;
  padding-bottom: 20px;
}

#ast-hf-mobile-menu::before {
  content: "Main Menu";
  font-size: 18px;
  left: 12px;
  top: 10px;
  position: absolute;
}

.ast-mobile-popup-content *:focus {
  outline: none !important;
}

.ast-mobile-popup-content button {
  box-shadow: none !important;
}

.ast-mobile-popup-content .menu-text {
  font-weight: 700;
  font-size: 14px;
  line-height: 100%;
  vertical-align: middle;
  text-transform: capitalize;

}

.ast-mobile-popup-content .main-navigation ul .menu-item .menu-link {
  padding: 5px 35px !important;
}


.ast-mobile-popup-content .main-navigation ul {
  gap: 0 !important;
}

.ast-mobile-popup-content .ast-menu-toggle .ast-icon.icon-arrow svg {
  height: 15px !important;
  width: 15px !important;
  color: #013D7C !important;
}

#ast-mobile-header .ast-search-box svg {
  color: white !important;
}

#ast-hf-mobile-menu a.menu-link:hover {
  background: #eee;
  color: #000;
}

#ast-hf-mobile-menu .sub-menu {
  background: #f6f6f6 !important;
  padding-left: 10px;
}

#ast-hf-mobile-menu .sub-menu .menu-text {
  font-weight: 400 !important;
}

#ast-hf-mobile-menu .sub-menu .menu-link>.ast-icon {
  display: none !important;
}

.ast-mobile-popup-drawer .main-header-bar-navigation .menu-item-has-children>.ast-menu-toggle {
  top: 3px !important;
  right: calc(20px - 0.907em) !important;
}

#ast-hf-mobile-menu .ast-menu-toggle .ast-icon.icon-arrow svg {
  transform: rotate(270deg) !important;
}

#ast-hf-mobile-menu .sub-menu .menu-link {
  border: none !important;
}

/* Quicklinks Mobile */
.ast-mobile-popup-content .widget_nav_menu {
  margin-left: 12px;
  margin-right: 12px;
  margin-bottom: 80px;
}

.ast-mobile-popup-content .widget-title {
  font-size: 18px;
  font-weight: 400 !important;
  margin-bottom: 10px !important;
}

.ast-mobile-popup-content .widget_nav_menu .menu-link {
  display: inline-block;
  width: 100%;
  border-bottom-width: 1px;
  border-top-width: 0;
  border-right-width: 0;
  border-left-width: 0;
  border-color: #eaeaea;
  border-style: solid;
  padding: 12px 35px !important;
  font-weight: 700;
  font-size: 14px;
}

.ast-mobile-popup-content .widget_nav_menu .menu-link:hover {
  background: #eee;
  color: #000;
}





/* General Changes*/
h1, h2, h3, h4, h5, h6 {
  font-family: Roboto, Arial, sans-serif !important;
}

#ast-hf-menu-1 {
  gap: 30px;
}

#ast-hf-menu-1>.menu-item>.menu-link {
  padding: 0;
}

.ast-desktop .ast-primary-header-bar .main-header-menu>.menu-item {
  line-height: 40px !important;
}









/* Header Countdown */
.ast-main-header-wrap {
  .ast-container {
    max-width: none;
    padding: 0;
  }

  .ast-header-html-1,
  .ast-header-html,
  ast-header-html-element {
    width: 100%;
  }
}

.ridge_countdown_banner {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 24px;
  padding-bottom: 24px;
  background: #d9e6ee;
}

.ridge_countdown_banner_text {
  font-weight: 700;
  color: #323838;
  font-size: 28px;
}

.ridge_countdown_banner_time_container {
  display: flex;
  align-items: center;
  font-weight: 400;
  color: #003D7C;
  gap: 23px;
}


.ridge_countdown_banner_time_days,
.ridge_countdown_banner_time_hours,
.ridge_countdown_banner_time_minutes,
.ridge_countdown_banner_time_seconds {
  display: block;
  font-size: 38px;
  line-height: 30px;
}

.ridge_countdown_banner_time_text {
  font-size: 14px;
}

.ridge_countdown_banner_time_container,
.ridge_countdown_banner_text {
  transition: opacity 0.8s ease;
}

.ridge_countdown_banner_time_hidden {
  opacity: 0;
}

.ridge_countdown_banner_time_visible {
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .ridge_countdown_banner {
    padding-right: 16px;
    padding-left: 16px;
    gap: 20px;
    padding-bottom: 0;
    margin-top: -22px;
  }

  .ridge_countdown_banner_text {
    font-size: 12px;
    line-height: 15px;
    max-width: 33%;
  }

  .ridge_countdown_banner_time_container {
    gap: 11.5px;
  }

  .ridge_countdown_banner_time_days,
  .ridge_countdown_banner_time_hours,
  .ridge_countdown_banner_time_minutes,
  .ridge_countdown_banner_time_seconds {
    font-size: 19.2px;
    line-height: 19.2px;
  }

  .ridge_countdown_banner_time_text {
    font-size: 7.2px;
  }
}


/* Below Header Mobile */
@media screen and (max-width: 767px) {
  .ast-below-header-wrap #media_image-5 img {
    max-height: 70px !important;
  }

  .ast-below-header-bar #media_image-7 {
    display: flex;
    justify-content: end;
  }
}



/* Mobile Menu Nav Bar */

#custom_mobile_menu_nav_bar {
  width: 100%;
  background: #FFFFFF;
  padding: 16px 20px 40px 20px;
  position: relative;
}

#custom_mobile_menu_nav_bar .ast-icon {
  display: none;
}

#custom_mobile_menu_nav_bar ul.mobile-menu,
#custom_mobile_menu_nav_bar ul.mobile-submenu {
  display: flex;
  flex-direction: column;
  gap: 20px;
  list-style: none;
  margin: 0;
  padding: 0;
}

#custom_mobile_menu_nav_bar ul.mobile-menu>li,
#custom_mobile_menu_nav_bar ul.mobile-submenu>li {
  border-bottom: 1px solid #000000;
}

#custom_mobile_menu_nav_bar ul.mobile-menu>li>a,
#custom_mobile_menu_nav_bar ul.mobile-submenu>li>a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  text-decoration: none;
  color: #1e293b;
  font-weight: 700;
  font-size: 16px;
}

#custom_mobile_menu_nav_bar ul.mobile-menu>li.menu-item-has-children>a::after {
  content: "";
  background-image: url("assets/images/Chevron_right_MD.png");
  width: 21px;
  height: 22px;
  color: #2A2F3F;
  top: 0;
  right: 0;
  transform: translateY(-1px);
}

#custom_mobile_menu_nav_bar ul.mobile-menu>li>a:active {
  background: #f5f5f5;
}


.custom_mobile_menu_reservation {
  margin-top: 40px;
  display: flex;
  justify-content: center;
  background-color: #1e293b;
  color: #E9E9E9;
  padding: 10px 16px 10px 16px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 700;
}

.custom_mobile_menu_reservation:hover {
  color: #E9E9E9 !important;
}




#custom_mobile_menu_nav_bar {
  display: none;
}


@media (max-width: 990px) {

  /* Submenu – hidden by default, slides in from right when .active */
  #custom_mobile_menu_nav_bar .mobile-submenu {
    position: absolute;
    inset: 0;
    background: #FFFFFF;
    transform: translateX(100%);
    transition: transform 0.4s ease;
    z-index: 2;
  }

  #custom_mobile_menu_nav_bar .has-children.active>.mobile-submenu {
    transform: translateX(0);
  }



  .submenu-header {
    display: flex;
    align-items: center;
    padding: 8px 20px;
    background: #CBCBCB;
    color: #1e293b;
    font-size: 16px;
    font-weight: 700;
    position: sticky;
    top: 0;
    z-index: 3;
  }

  .back-arrow {
    background-image: url("assets/images/Chevron_Left_MD.png");
    width: 21px;
    height: 22px;
    cursor: pointer;
    color: #1e293b;
    user-select: none;
  }

  .parent-title {
    flex: 1;
    color: #1e293b;
    text-align: end;
    pointer-events: none;
  }

  .submenu-header {
    pointer-events: none;
  }

  .submenu-header .back-arrow {
    pointer-events: auto;
  }

  #custom_mobile_menu_nav_bar ul.mobile-submenu>li {
    margin: 0 20px;
  }

}

#media_image-7 img.mobile_menu_open {
  content: url("assets/images/Close_MD.png");
}

#custom_mobile_menu_nav_bar .social-icons {
  padding-top: 40px;
  padding-bottom: 20px;
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
}

#custom_mobile_menu_nav_bar .submenu-footer {
  padding: 0 20px;
}

































/* header logo padding */
header .custom-logo{
	padding-top: 10px;
}

/* Header navbar */
.ast-below-header-wrap  #media_image-5 img{
	width: auto !important;
	height: 111px !important;
	margin-left: -15px;
}


/* Changes to footer */
.site-footer-above-section-1{ 
	.widget-title,
	.widget,
	.widget p{
		margin-bottom: 0 !important;
	}

	#media_image-3{
		margin-top: 10px;
  	margin-left: -20px;
	}
}

/* Above Header left bar*/
.above_header,
.above_header_2,
.above_header_3,
.above_header_4,
.above_header_5,
.above_header_6{
	position: relative;
	margin-left: 20px;
}

.above_header::before,
.above_header_2::before,
.above_header_3::before,
.above_header_4::before,
.above_header_5::before,
.above_header_6::before{
	position: absolute;
	content: "";
	width: 8px;
	height: 100%;
	top: 0;
	left: -20px;
}


.above_header::before{
	background-color: #A7C0D2;
}

.above_header_2::before{
	background-color: #B7B99A;
}

.above_header_3::before{
	background-color: #A7C0D1;
}

.above_header_4::before{
	background-color: #DFE0D2;
}

.above_header_5::before{
	background-color: #D2C9BD;
}

.above_header_6::before{
	background-color: #292e2e;
}

/* row_top_rectangle */
.row_top_rectangle .fl-row-content-wrap > .fl-row-content,
.row_top_rectangle_white .fl-row-content-wrap > .fl-row-content,
.the_hotel_carousel_top_row .fl-row-content-wrap > .fl-row-content,
.the_hotel_carousel_botton_row .fl-row-content-wrap > .fl-row-content{
	position: relative;
}

.row_top_rectangle .fl-row-content-wrap > .fl-row-content::after{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	height: 27px;
	width: 53%;
	top: -76px;
	left: 0;
}

.row_top_rectangle_white .fl-row-content-wrap > .fl-row-content::after{
	position: absolute;
	content: "";
	background-color: white;
	height: 27px;
	width: 53%;
	top: 0;
	left: 0;
}

@media screen and (max-width: 767px) {
	.row_top_rectangle_white .fl-row-content-wrap > .fl-row-content::after{
		width: 0;
	}
	
	
.row_top_rectangle .fl-row-content-wrap > .fl-row-content::after{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	height: 27px;
	width: 84%;
	top: -76px;
	left: 8%;
}
}


.the_hotel_carousel_top_row .fl-row-content-wrap > .fl-row-content::before{
	position: absolute;
	content: "";
	background-color: #292e2e;
	height: 27px;
	width: 53%;
	top: 0;
	left: 0;
}

.the_hotel_carousel_botton_row .fl-row-content-wrap > .fl-row-content::after{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	height: 48px;
	width: 100%;
	bottom: 0;
	left: 0;
}

@media screen and (max-width: 767px) {
	.the_hotel_carousel_top_row .fl-row-content-wrap > .fl-row-content::before{
	position: absolute;
	content: "";
	background-color: #292e2e;
	height: 20px;
	width: 84%;
	top: 0;
	left: 8%;
}
}

.text_left_bar,
.text_left_bar_2{
	position: relative;
	padding-left: 28px;
}

.text_left_bar_3{
	position: relative;
}

.text_left_bar::after{
	position: absolute;
	content: "";
	background-color: #292e2e;
	width: 5px;
	height: 100%;
	top: 0;
	left: 0;
}

.text_left_bar_2::after{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	width: 5px;
	height: 100%;
	top: 0;
	left: 0;
}

.text_left_bar_3::after{
	position: absolute;
	content: "";
	width: 5px;
	height: 100%;
	top: 0;
	left: 0;
}

.nus_resources_image img{
	max-height: 331.69px;
}

.nus_resources_image .fl-photo-content,
.nus_resources_image_right .fl-photo-content{
	position: relative;
}

@media screen and (min-width: 768px) {
.nus_resources_image .fl-photo-content::before{
	position: absolute;
	content: "";
	background-color: white;
	top: 0;
	right: 0;
	width: 27.63px;
	height: 23px;
}
	
.nus_resources_image_right .fl-photo-content::before{
	position: absolute;
	content: "";
	background-color: white;
	top: 0;
	left: 0;
	width: 27.63px;
	height: 23px;
}


.nus_resources_image .fl-photo-content::after{
	position: absolute;
	content: "";
	background-color: white;
	bottom: 0;
	right: 0;
	width: 27.63px;
	height: 23px;
}




.nus_resources_image_right .fl-photo-content::after{
	position: absolute;
	content: "";
	background-color: white;
	bottom: 0;
	left: 0;
	width: 27.63px;
	height: 23px;
}
}

@media screen and (max-width: 767px) {
	.nus_resources_image .fl-photo-content::before,
	.nus_resources_image_right .fl-photo-content::before{
		position: absolute;
	content: "";
	background-color: white;
	bottom: 0;
	left: 0;
	width: 25.5px;
	height: 28.55px;
	}
	.nus_resources_image .fl-photo-content::after,
	.nus_resources_image_right .fl-photo-content::after{
		position: absolute;
	content: "";
	background-color: white;
	bottom: 0;
	right: 0;
	width: 25.5px;
	height: 28.55px;
}
}


.button_external_link .fl-button,
.blue_button_external_link .fl-button{
	position: relative;
	padding-right: 50px !important;
}



.nus_resources_destinations_image img{
	min-height: 224px;
	max-height: 224px;
}








.rooms_banner{
	position: relative;
}

.rooms_banner::after{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	width: 50%;
	height: 35.6px;
	bottom: 0;
	left: 16.6px;
}


.rooms_button_group{
	background-color: #D2C9BD;
	border-radius: 12px;
	padding: 12px 20px 12px 20px;
	width: fit-content;
  margin-left: auto;
  margin-right: auto;
}


.rooms_button_group > :first-child{
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
}

.rooms_button_group > :nth-child(2){
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
}

.rooms_button_group > :nth-child(3){
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
}

.rooms_button_group > :last-child{
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
}


.room_deluxe,
.room_deluxe_2,
.room_premium,
.room_suites{
	position: relative;
	padding-left: 35px;
}



.rooms_image_slider_fix,
.rooms_premium_image_slider_fix,
.rooms_suites_image_slider_fix{
	position: relative;
	
	.bx-wrapper{
		margin: 0 !important;
	}
	.bx-wrapper .bx-pager{
		bottom: 30px !important;
	}
	
	.bx-wrapper .bx-pager.bx-default-pager a.active{
		background-color: #EFEFEF !important;
	}
	
	.bx-wrapper .bx-pager.bx-default-pager a{
		background-color: #ABAAA9 !important;
	}
}

.rooms_image_slider_fix::after{
	position: absolute;
	content: "";
	background-color: white;
	height: 52%;
	width: 25px;
	bottom: 30px;
	left: 0;
}

.rooms_premium_image_slider_fix::after{
	position: absolute;
	content: "";
	background-color: #DFE0D2;
	height: 52%;
	width: 25px;
	bottom: 30px;
	left: 0;
}

.rooms_suites_image_slider_fix::after{
	position: absolute;
	content: "";
	background-color: #D2C9BD;
	height: 52%;
	width: 25px;
	bottom: 30px;
	left: 0;
}

@media screen and (max-width: 767px) {
	.rooms_image_slider_fix,
	.rooms_premium_image_slider_fix,
	.rooms_suites_image_slider_fix
	{
		.bx-wrapper .bx-pager{
		bottom: 65px !important;
			right: 8%;
			width: fit-content;
	}
		.bx-wrapper .bx-pager.bx-default-pager a{
			width: 5.06px !important;
			height: 5.06px !important;
		}
	}
	
.rooms_image_slider_fix::after{
	position: absolute;
	content: "";
	background-color: white;
	height: 14.38px;
	width: 59%;
	bottom: 59px;
	left: 0;
}
	
	.rooms_premium_image_slider_fix::after{
	position: absolute;
	content: "";
	background-color: #DFE0D2;
	height: 14.38px;
	width: 59%;
	bottom: 59px;
	left: 0;
}
	
	.rooms_suites_image_slider_fix::after{
	position: absolute;
	content: "";
	background-color: #D2C9BD;
	height: 14.38px;
	width: 59%;
	bottom: 59px;
	left: 0;
}
}



.text_two_lines_truncate p{
	overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}


.text_background_light{
	width: fit-content;
  background-color: #D2C9BD;
	padding-top: 12px;
	padding-right: 24px;
	padding-bottom: 12px;
	padding-left: 20px;
}

.text_background_dark{
	width: fit-content;
  background-color: #B7B99A;
	padding-top: 12px;
	padding-right: 24px;
	padding-bottom: 12px;
	padding-left: 20px;
}

.text_background_blue{
	width: fit-content;
  background-color: #A7C0D1;
	padding-top: 12px;
	padding-right: 24px;
	padding-bottom: 12px;
	padding-left: 20px;
}


.looking_for_accomodations_image{
	position: relative;
}

.looking_for_accomodations_image::after{
	position: absolute;
	content: "";
	background-color: #706F6E;
	height: 26px;
	width: 30px;
	bottom: 0;
	right: 0;
}

@media screen and (min-width: 768px) {
.looking_for_accomodations_image::before{
	position: absolute;
	content: "";
	background-color: #706F6E;
	height: 26px;
	width: 30px;
	top: 0;
	right: 0;
	z-index: 1;
}
}

@media screen and (max-width: 767px) {
.looking_for_accomodations_image::before{
	position: absolute;
	content: "";
	background-color: #706F6E;
	height: 20px;
	width: 16px;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.looking_for_accomodations_image::after{
	position: absolute;
	content: "";
	background-color: #706F6E;
	height: 20px;
	width: 16px;
	bottom: 0;
	right: 0;
}
}



.hotel_directory_top_row{
	position: relative;
}

.hotel_directory_top_row::after{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	width: 28%;
	height: 40px;
	bottom: 0;
	left: 0;
}

@media screen and (max-width: 767px) {
	.hotel_directory_top_row::after{
		height: 16.25px;
		width: 49%;
	}
}

.text_left_bar_3 ul{
	position: relative;
}

.text_left_bar_3 ul::after{
	position: absolute;
	content: "";
	background-color: #292e2e;
	width:4px;
	height: 100%;
	top: 0;
	left: 0;
}



.faq_accordion .uabb-adv-accordion-button-icon{
	border: 1px solid black;
  padding: 7px;
  border-radius: 100px;
  width: 100% !important;
  height: 100% !important;
}



.hotel_directory_sidemenu{
	background-color: #D2C9BD;
	border-radius: 12px;
	padding: 12px 20px 16px 20px;
	width: fit-content;
}

.hotel_directory_sidemenu a:has(i)
{
	padding-left: 40px !important;
	position: relative;
}

.hotel_directory_sidemenu i{
	position: absolute;
	left: 10px;
}

.hotel_directory_sidemenu > :first-child{
	.fl-button{
		position: relative;
		padding-left: 20px !important;
	}
}

.hotel_directory_sidemenu > :nth-child(2){
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
}


.hotel_directory_sidemenu > :nth-child(3){
	.fl-button{
		position: relative;
		padding-left: 10px !important;
	}
}

@media screen and (max-width: 767px) {
	.hotel_directory_sidemenu{
		align-self: center;
	}
}




.image_gallery_carousel .uabb-image-carousel .slick-prev{
	top: -23px;
  right: 41px;
  left: unset !important;
}

.image_gallery_carousel .uabb-image-carousel .slick-prev i::before{
	display: none !important;
}

.image_gallery_carousel .uabb-image-carousel .slick-prev i,
.image_gallery_carousel .uabb-image-carousel .slick-next i{
	width: 32px !important;
	height: 32px !important
}


.image_gallery_carousel .uabb-image-carousel .slick-next{
	top: -23px;
  right: 24px !important;
}

.image_gallery_carousel .uabb-image-carousel .slick-next i::before{
	display: none !important;
}






.campus_amenities_top_row{
	position: relative;
}

.campus_amenities_top_row::after{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	width: 80%;
	height: 40px;
	bottom: 0;
	left: 10%;
}




.campus_amenities_full_width_image,
.campus_amenities_full_width_image_2,
.getting_here_full_width_image{
	position: relative;
}

.campus_amenities_full_width_image::before{
	position: absolute;
	content: "";
	background-color: #ABAAA9;
	width: 188px;
	height: 45%;
	top: 0;
	right: 0;
	z-index: 1;
}


.campus_amenities_full_width_image::after{
	position: absolute;
	content: "";
	background-color: #ABAAA9;
	width: 80px;
	height: 100%;
	top: 0;
	right: 0;
}

.campus_amenities_full_width_image_2::before{
	position: absolute;
	content: "";
	background-color: #706F6E;
	width: 188px;
	height: 45%;
	top: 0;
	left: 0;
	z-index: 1;
}


.campus_amenities_full_width_image_2::after{
	position: absolute;
	content: "";
	background-color: #706F6E;
	width: 80px;
	height: 100%;
	top: 0;
	left: 0;
}



.getting_here_full_width_image::before{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	width: 188px;
	height: 45%;
	top: 0;
	right: 0;
	z-index: 1;
}


.getting_here_full_width_image::after{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	width: 80px;
	height: 100%;
	top: 0;
	right: 0;
}


@media screen and (max-width: 767px) {
	
.getting_here_full_width_image::before{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	width: 48.96px;
	height: 45%;
	top: 0;
	right: 0;
	z-index: 1;
}


.getting_here_full_width_image::after{
	position: absolute;
	content: "";
	background-color: #E9E9E9;
	width: 20.83px;
	height: 100%;
	top: 0;
	right: 0;
}
}



.gallery_button_group{
	background-color: #D2C9BD;
	border-radius: 12px;
	padding: 12px 20px 12px 20px;
	width: fit-content;
  margin-left: auto;
  margin-right: auto;
}


.gallery_button_group > :first-child{
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
}

.gallery_button_group > :nth-child(2),
.gallery_button_group > :last-child{
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
}

@media screen and (max-width: 767px) {
	.gallery_button_group{
		flex-direction: column;
		align-items: center;
	}
}










.the_hotel_carousel_row .fl-row-content{
	margin-left: max(0px, (100% - 1280px)/2);
}






.homepage_carousel sr7-carousel sr7-slide:not([style*="scale(0.8"]) {
  background-color: #DBDCE5 !important;
}

.homepage_carousel sr7-carousel sr7-slide:is([style*="scale(0.8"]) {
  background-color: #ABAAA9 !important;
}








.at_the_heart_of_nus_text,
.within_the_ridge_text{
	width: fit-content;
  background-color: #B7B99A;
	padding-top: 12px;
	padding-right: 24px;
	padding-bottom: 12px;
	padding-left: 55px;
	position: relative;
}

.close_to_what_matters_text,
.on_campus_text{
	width: fit-content;
  background-color: #D2C9BD;
	padding-top: 12px;
	padding-right: 24px;
	padding-bottom: 12px;
	padding-left: 55px;
	position: relative;
}

.beyond_the_campus_text,
.nus_supper_stretch_text{
	width: fit-content;
  background-color: #A7C0D1;
	padding-top: 12px;
	padding-right: 24px;
	padding-bottom: 12px;
	padding-left: 55px;
	position: relative;
}







.campus_amenities_button_group{
	background-color: #CBCBCB;
	border-radius: 12px;
	padding: 12px 20px 12px 20px;
	width: fit-content;
  margin-left: auto;
  margin-right: auto;
}


.campus_amenities_button_group > :first-child{
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
	
}

.campus_amenities_button_group > :nth-child(2){
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
	
}

.campus_amenities_button_group > :nth-child(3){
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
	
}

.campus_amenities_button_group > :nth-child(4){
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
	;
}


.campus_amenities_button_group > :nth-child(5){
	.fl-button{
		position: relative;
		padding-left: 40px !important;
	}
	
}


@media screen and (max-width: 767px) {
.top_breadcrumbs_column{
	background-color: #e9e9e9;
}

.top_breadcrumbs p{
	color: #292e2e !important;
}
}


.above_footer_row{
	position: relative;
}

.above_footer_row::after{
	content: "";
	position: absolute;
	height: 20px;
	width: 100%;
	top: 0;
	left: 0;
	background-color: #B7B99A;
}

.above_footer_row a{
	text-decoration: none !important;
	color: #1e293b;
}

.above_footer_row a:hover{
	color: #DFE0D2;
}



@media screen and (max-width: 767px) {
.fl-module-rich-text:has(table){
	overflow-x: auto;
}
}





@media screen and (max-width: 767px) {
.slider_rev_mobile_arrows_fix .sr7-leftarrow{
	transform: translate(-325px, 220px) !important;
}
.slider_rev_mobile_arrows_fix	.sr7-rightarrow{
		transform: translate(-280px, 220px) !important;
	}
	
	.slider_rev_mobile_arrows_fix_2 .sr7-leftarrow{
	transform: translate(-325px, 300px) !important;
}
.slider_rev_mobile_arrows_fix_2	.sr7-rightarrow{
		transform: translate(-280px, 300px) !important;
	}
}





































