/* =============================================================================
   Hotel Amazon — single stylesheet
   =============================================================================

     1.  Base and typography
     2.  Icons
     3.  Grid (Bootstrap 3)
     4.  SP Page Builder grid and blocks
     5.  Top bar
     6.  Header, menu and off-canvas menu
     7.  Slider
     8.  Home page sections
     9.  Rooms carousel
     10. Gallery
     11. Contact form
     12. Footer
     13. WhatsApp chat
     14. Video lightbox
     15. About us page
     16. Contact page
     17. Tours and events pages
     18. Tabs
     19. Room gallery
     20. Room pages
     21. Legal pages
   ========================================================================== */


/* 1. Base and typography
   ========================================================================== */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 17px;
    font-weight: normal;
    line-height: 24px;
    color: #333;
    background-color: #fff;
}

h1, h2, h3, h4, h5, h6 {
    margin-top: 10px;
    margin-bottom: 10px;
    color: inherit;
    line-height: 1;
    overflow-wrap: break-word;
}

p {
    margin: 0 0 10px;
}

ul, ol {
    margin-top: 0;
    margin-bottom: 10px;
}

h1 {
    font-family: Lato, sans-serif;
    font-size: 42px;
    font-weight: normal;
}

h2 {
    font-family: Raleway, sans-serif;
    font-size: 26px;
    font-weight: normal;
}

h3 {
    font-family: "Open Sans", sans-serif;
    font-size: 30px;
    font-weight: 300;
}

h4 {
    font-family: Raleway, sans-serif;
    font-size: 22px;
    font-weight: normal;
}

h5 {
    font-family: Oswald, sans-serif;
    font-size: 20px;
    font-weight: normal;
}

h6 {
    font-family: Lato, sans-serif;
    font-size: 18px;
    font-weight: 700;
}

/* The content headings moved up a level so that the document outline runs h1,
   h2, h3 without gaps. Their size should not have moved with them: a heading
   the page-builder export gives no size of its own would otherwise be drawn as
   whatever the rules above say the new tag is. These hand back the size the old
   tag had. They name no addon id on purpose — every export rule does, so every
   heading that was styled explicitly still is. The id here is the main body's
   page builder, which the footer and header modules do not carry. */

#sp-page-builder h2 {
    font-family: "Open Sans", sans-serif;
    font-size: 30px;
    font-weight: 300;
}

#sp-page-builder h3 {
    font-family: Raleway, sans-serif;
    font-size: 22px;
    font-weight: normal;
}

/* Two intro paragraphs on the home page were marked up as headings. They are
   divs now, which costs them the box the heading rules above gave: this hands
   it back. The cramped line-height is the one they have always had. */

#sppb-addon-1692677282902 .sppb-addon-title {
    margin: 10px 0;
    line-height: 1;
}

#sppb-addon-1692592414129 .sppb-addon-title {
    margin: 10px 0;
}

a {
    color: #99883c;
    text-decoration: none;
}

a:hover,
a:focus,
a:active {
    color: #74672e;
    text-decoration: none;
}

img {
    display: block;
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}

label {
    font-weight: normal;
}

button,
input,
textarea {
    font: inherit;
}

.clearfix::before,
.clearfix::after {
    content: " ";
    display: table;
}

.clearfix::after {
    clear: both;
}

.body-wrapper {
    position: relative;
    right: 0;
    backface-visibility: hidden;
    transition: .5s;
}

.body-innerwrapper {
    overflow-x: hidden;
}

.off-canvas-menu-init {
    position: relative;
    overflow-x: hidden;
}


/* 2. Icons
   ========================================================================== */

@font-face {
    font-family: FontAwesome;
    src: url(/fonts/fontawesome-webfont.woff2) format("woff2"),
         url(/fonts/fontawesome-webfont.woff) format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

.fa,
.fas,
.far,
.fab {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.fa-2x {
    font-size: 2em;
}

.fa-phone::before                { content: "\f095"; }
.fa-envelope::before             { content: "\f0e0"; }
.fa-bars::before                 { content: "\f0c9"; }
.fa-whatsapp::before             { content: "\f232"; }
.fa-long-arrow-alt-right::before { content: "\f178"; }
.fa-play-circle::before          { content: "\f01d"; }
.fa-file-pdf::before             { content: "\f1c1"; }
.fa-angle-left::before           { content: "\f104"; }
.fa-angle-right::before          { content: "\f105"; }
.fa-angle-down::before           { content: "\f107"; }
.fa-angle-up::before             { content: "\f106"; }
.fa-arrow-left::before           { content: "\f060"; }
.fa-arrow-right::before          { content: "\f061"; }
.fa-remove::before               { content: "\f00d"; }
.fa-facebook::before             { content: "\f09a"; }
.fa-instagram::before            { content: "\f16d"; }


/* 3. Grid (Bootstrap 3)
   ========================================================================== */

.container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
}

@media (min-width: 768px) {
    .container {
        width: 750px;
    }
}

@media (min-width: 992px) {
    .container {
        width: 970px;
    }
}

@media (min-width: 1200px) {
    .container {
        width: 1170px;
    }
}

.row {
    margin-right: -15px;
    margin-left: -15px;
}

.row::after {
    content: "";
    display: table;
    clear: both;
}

/* Anchored so they never reach the builder's own sppb-col-* classes */
[class^="col-"],
[class*=" col-"] {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

[class^="col-xs-"],
[class*=" col-xs-"] {
    float: left;
}

.col-xs-1  { width: 8.33333333%; }
.col-xs-2  { width: 16.66666667%; }
.col-xs-3  { width: 25%; }
.col-xs-4  { width: 33.33333333%; }
.col-xs-5  { width: 41.66666667%; }
.col-xs-6  { width: 50%; }
.col-xs-7  { width: 58.33333333%; }
.col-xs-8  { width: 66.66666667%; }
.col-xs-9  { width: 75%; }
.col-xs-10 { width: 83.33333333%; }
.col-xs-11 { width: 91.66666667%; }
.col-xs-12 { width: 100%; }

@media (min-width: 768px) {
    [class^="col-sm-"],
    [class*=" col-sm-"] {
        float: left;
    }

    .col-sm-1  { width: 8.33333333%; }
    .col-sm-2  { width: 16.66666667%; }
    .col-sm-3  { width: 25%; }
    .col-sm-4  { width: 33.33333333%; }
    .col-sm-5  { width: 41.66666667%; }
    .col-sm-6  { width: 50%; }
    .col-sm-7  { width: 58.33333333%; }
    .col-sm-8  { width: 66.66666667%; }
    .col-sm-9  { width: 75%; }
    .col-sm-10 { width: 83.33333333%; }
    .col-sm-11 { width: 91.66666667%; }
    .col-sm-12 { width: 100%; }
}

@media (min-width: 992px) {
    [class^="col-md-"],
    [class*=" col-md-"] {
        float: left;
    }

    .col-md-1  { width: 8.33333333%; }
    .col-md-2  { width: 16.66666667%; }
    .col-md-3  { width: 25%; }
    .col-md-4  { width: 33.33333333%; }
    .col-md-5  { width: 41.66666667%; }
    .col-md-6  { width: 50%; }
    .col-md-7  { width: 58.33333333%; }
    .col-md-8  { width: 66.66666667%; }
    .col-md-9  { width: 75%; }
    .col-md-10 { width: 83.33333333%; }
    .col-md-11 { width: 91.66666667%; }
    .col-md-12 { width: 100%; }
}

.visible-xs,
.visible-sm {
    display: none !important;
}

@media (max-width: 767px) {
    .hidden-xs {
        display: none !important;
    }

    .visible-xs {
        display: block !important;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .hidden-sm {
        display: none !important;
    }

    .visible-sm {
        display: block !important;
    }
}


/* 4. SP Page Builder grid and blocks
   ==========================================================================
   The builder's own grid is flexbox and breaks at 992px (md) and 768px (sm),
   not at the same points as Bootstrap. */

#sp-page-builder {
    position: relative;
}

.sp-page-builder .page-content .sppb-section,
.mod-sppagebuilder .sppb-section {
    position: relative;
    z-index: 1;
}

.sp-page-builder .page-content .sppb-section:first-child {
    margin-top: 0;
}

.sppb-row-container {
    position: relative;
    z-index: 3;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
}

@media (min-width: 576px)  { .sppb-row-container { max-width: 540px; } }
@media (min-width: 768px)  { .sppb-row-container { width: 750px; max-width: 720px; } }
@media (min-width: 992px)  { .sppb-row-container { width: 970px; max-width: 960px; } }
@media (min-width: 1200px) { .sppb-row-container { width: 1170px; max-width: 1140px; } }

.sppb-container-inner {
    position: relative;
    z-index: 3;
}

.sppb-row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.sppb-no-gutter {
    margin-right: 0;
    margin-left: 0;
}

.sppb-no-gutter > [class*="sppb-col-"] {
    padding-right: 0;
    padding-left: 0;
}

[class*="sppb-col-md-"] {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

@media (min-width: 992px) {
    .sppb-col-md-1  { flex: 0 0 8.333333%;  max-width: 8.333333%; }
    .sppb-col-md-2  { flex: 0 0 16.666667%; max-width: 16.666667%; }
    .sppb-col-md-3  { flex: 0 0 25%;        max-width: 25%; }
    .sppb-col-md-4  { flex: 0 0 33.333333%; max-width: 33.333333%; }
    .sppb-col-md-5  { flex: 0 0 41.666667%; max-width: 41.666667%; }
    .sppb-col-md-6  { flex: 0 0 50%;        max-width: 50%; }
    .sppb-col-md-7  { flex: 0 0 58.333333%; max-width: 58.333333%; }
    .sppb-col-md-8  { flex: 0 0 66.666667%; max-width: 66.666667%; }
    .sppb-col-md-9  { flex: 0 0 75%;        max-width: 75%; }
    .sppb-col-md-10 { flex: 0 0 83.333333%; max-width: 83.333333%; }
    .sppb-col-md-11 { flex: 0 0 91.666667%; max-width: 91.666667%; }
    .sppb-col-md-12 { flex: 0 0 100%;       max-width: 100%; }
}

.sppb-column,
.sppb-column-addons {
    position: relative;
    z-index: 1;
    width: 100%;
}

.sppb-column {
    display: flex;
    flex-wrap: wrap;
    height: 100%;
}

.sppb-row-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    background-position: center center;
    background-repeat: repeat;
}

.sppb-column-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-position: center center;
    background-repeat: repeat;
}

.sppb-text-left   { text-align: left; }
.sppb-text-center { text-align: center; }

.sppb-img-responsive {
    display: block;
    max-width: 100%;
    height: auto;
}

.sppb-text-left .sppb-img-responsive,
.sppb-text-center .sppb-img-responsive {
    display: inline-block;
}

.sppb-addon-single-image::before,
.sppb-addon-single-image::after {
    content: "";
    display: table;
}

.sppb-addon-single-image-container {
    position: relative;
    display: inline-block;
    transition: all .4s ease;
}

@media (min-width: 992px) and (max-width: 1199px) {
    .sppb-hidden-md {
        display: none !important;
    }
}

@media (min-width: 1200px) {
    .sppb-hidden-lg {
        display: none !important;
    }
}

/* Builder buttons */
.sppb-btn {
    display: inline-block;
    padding: 8px 12px;
    border: 1px solid transparent;
    border-radius: 4px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.25;
    text-align: center;
    vertical-align: middle;
    white-space: pre-line;
    user-select: none;
    transition: color 400ms, background-color 400ms, border-color 400ms;
}

.sppb-btn:hover,
.sppb-btn:focus {
    text-decoration: none;
}

/* The template enlarges every button over the builder's base size */
.btn,
.sppb-btn {
    font-size: 20px;
    padding: 10px 25px;
}

.sppb-btn-round {
    border-radius: 100px;
}

/* Overlay image: a banner with the title over a background photo */
.sppb-addon-overlay-image-content {
    position: relative;
    display: flex;
    padding: 35px;
    overflow: hidden;
    backface-visibility: hidden;
}

.title-subtitle-center-center {
    align-items: center;
    justify-content: center;
    text-align: center;
}

.overlay-image-title {
    position: relative;
    z-index: 1;
}

.title-subtitle-center-center .overlay-image-title {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.overlay-image-title .sppb-addon-title {
    margin-top: 0;
    color: #fff;
    transition: .35s;
}

.title-subtitle-center-center .sppb-addon-title {
    transform: translate3d(0, 15px, 0);
}

.sppb-addon-overlay-image:hover .title-subtitle-center-center .sppb-addon-title {
    transform: translate3d(0, 0, 0);
}

.overlay-background-image-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.overlay-background-image {
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    transition: .35s;
}

.overlay-background-style {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: .4s linear;
}

/* Link that opens the video */
.sppb-modal-selector {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
}

.sppb-modal-icon-wrap {
    position: relative;
    display: inline-block;
}

@keyframes sppbModalRipple {
    0%   { opacity: 0; transform: scale(.5); }
    10%  { opacity: 1; }
    90%  { opacity: 0; }
    100% { opacity: 0; transform: scale(1); }
}


/* 5. Top bar
   ========================================================================== */

#sp-top-bar {
    padding: 0;
    color: #fff;
    background: linear-gradient(90deg, #2c4d06 0%, #437708 50%, #2c4d06 100%);
    border-bottom: 1px solid #253f08;
}

.sp-contact-info {
    margin: 0 -10px;
    padding: 0;
    list-style: none;
}

#sp-top-bar .sp-contact-info {
    display: flex;
    float: none;
}

.sp-contact-info li {
    display: inline-block;
    font-size: 90%;
}

#sp-top-bar .sp-contact-info li {
    margin: 0;
    padding: 0 10px;
    min-height: 35px;
    line-height: 35px;
    font-family: "Poppins", sans-serif;
    border-left: 1px solid #213708;
}

#sp-top-bar .sp-contact-info li:first-child {
    padding-left: 0;
    border-left: none;
}

#sp-top-bar .sp-contact-info li .fa {
    margin: 0 3px;
    padding-right: 5px;
    color: #fff;
}

#sp-top-bar a {
    color: inherit;
}


/* 6. Header, menu and off-canvas menu
   ========================================================================== */

#sp-header {
    position: relative;
    top: 0;
    left: 0;
    z-index: 99;
    width: 100%;
    height: 100px;
    background: #fff;
    box-shadow: 0 3px 3px rgba(0, 0, 0, .05);
}

#sp-header.menu-fixed {
    position: fixed;
    z-index: 9999;
}

#sp-header .logo {
    display: table;
    height: 100px;
    margin: 0;
    transition: all 400ms ease;
}

#sp-header .logo a {
    display: table-cell;
    margin: 0;
    padding: 0;
    font-size: 24px;
    line-height: 1;
    vertical-align: middle;
}

@media (max-width: 767px) {
    #sp-header {
        max-width: 100% !important;
    }
}

/* Main menu */
.sp-megamenu-parent {
    position: relative;
    z-index: 99;
    display: flex;
    align-items: center;
    float: right;
    margin: 0;
    padding: 0;
    list-style: none;
    font-family: "Playfair Display", sans-serif;
    font-size: 16px;
    font-weight: 700;
}

/* The 100px height sits on the <li>; the link keeps a normal line-height, so
   its right border is only as tall as the text. */
.sp-megamenu-parent > li {
    position: relative;
    display: inline-block;
    padding: 0;
    line-height: 100px;
}

.sp-megamenu-parent > li > a {
    display: inline-block;
    margin: 0;
    padding: 0 15px;
    color: #274307;
    font-family: inherit;
    font-size: 17px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: normal;
    text-transform: capitalize;
    border-right: 1px solid #274307;
}

@media (max-width: 1024px) {
    .sp-megamenu-parent > li > a {
        padding: 0 12px;
    }
}

.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li:hover > a {
    color: #99883c;
}

.sp-megamenu-parent > li.sp-has-child > a::after {
    font-family: FontAwesome;
    content: " \f107";
}

.sp-megamenu-parent .sp-dropdown {
    position: absolute;
    z-index: 10;
    margin: 0;
    display: none;
}

.sp-megamenu-parent .sp-dropdown.sp-dropdown-main {
    top: 100%;
}

.sp-megamenu-parent .sp-dropdown.sp-dropdown-main.sp-menu-right {
    left: 0;
}

.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
    padding: 0;
    background: #fff;
    border-top: 3px solid #99883c;
    box-shadow: 0 3px 5px 0 rgba(0, 0, 0, .2);
}

.sp-megamenu-parent .sp-dropdown .sp-dropdown-items {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item {
    position: relative;
    display: block;
    padding: 0;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
    display: block;
    color: #6d6c69;
    font-size: 14px;
    cursor: pointer;
}

.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner ul.sp-dropdown-items > li.sp-menu-item {
    line-height: normal;
    border-bottom: 1px dashed #d7d4d4;
}

.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner ul.sp-dropdown-items > li.sp-menu-item:last-child {
    border-bottom: none;
}

.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner ul.sp-dropdown-items > li.sp-menu-item > a {
    padding: 10px 15px;
    transition: all .2s ease-in-out;
}

.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner ul.sp-dropdown-items > li.sp-menu-item > a:hover {
    padding-left: 20px;
    color: #fff;
    background: #99883c;
}

.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner ul.sp-dropdown-items > li.sp-menu-item.active > a {
    padding-left: 20px;
    color: #fff;
    background: #437708;
}

.sp-megamenu-parent .sp-has-child:hover > .sp-dropdown {
    display: block;
}

.sp-megamenu-parent.menu-fade .sp-has-child:hover > .sp-dropdown {
    animation: spMenuFadeIn 400ms;
}

@keyframes spMenuFadeIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Button that opens the off-canvas menu */
#offcanvas-toggler {
    float: right;
    margin-left: 15px;
    font-size: 20px;
    line-height: 87px;
    color: #102e64;
}

#offcanvas-toggler > i {
    transition: color 400ms, background-color 400ms;
}

#offcanvas-toggler:hover > i {
    color: #99883c;
}

/* Off-canvas menu
   The jd_medical theme repaints it white over the dark Helix3 panel, and
   cancels the page slide: the panel comes in on top instead. */
.offcanvas-menu {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10000;
    width: 320px;
    height: 100%;
    transform: translateX(320px);
    visibility: hidden;
    transition: .5s;
}

.default-offcanvas .offcanvas-menu {
    color: #333;
    background: #fff;
}

.offcanvas .offcanvas-menu {
    right: 0;
    z-index: 9999;
    transform: translateX(0);
    visibility: visible;
}

.offcanvas .body-wrapper {
    transform: none;
}

.offcanvas-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 9999;
    background: rgba(0, 0, 0, .2);
    opacity: 0;
    visibility: hidden;
    transition: .5s;
}

.offcanvas .offcanvas-overlay {
    opacity: 1;
    visibility: visible;
}

.close-offcanvas {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 1;
    padding-top: 3px;
    text-align: center;
    border: 1px solid #fff;
}

.default-offcanvas .offcanvas-menu .close-offcanvas {
    width: 40px;
    height: 40px;
    color: #102e64;
    font-size: 20px;
    line-height: 30px;
    background: #99883c;
    border-color: #99883c;
    border-radius: 0;
}

.default-offcanvas .offcanvas-menu .offcanvas-inner {
    padding: 20px 0 0;
}

.offcanvas-menu .offcanvas-inner .sp-module {
    margin-top: 20px;
    margin-bottom: 50px;
    border-bottom: 1px solid rgba(0, 0, 0, .08);
}

.offcanvas-menu .offcanvas-inner .sp-module:first-child {
    margin-top: 0;
    padding: 30px;
}

.offcanvas-menu .offcanvas-inner .sp-module:last-child {
    margin-bottom: 0;
    border-bottom: none;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li {
    position: relative;
    overflow: hidden;
    border: 0;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li a {
    display: block;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 500;
    line-height: 28px;
    text-transform: none;
    transition: 300ms;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li > a::before {
    display: none;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li .offcanvas-menu-toggler {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    cursor: pointer;
}

.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu {
    margin: 0 -30px;
}

.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li {
    padding: 0 10px;
}

.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li a {
    color: #333;
    background: none;
}

.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li .offcanvas-menu-toggler {
    padding: 7px 20px;
    color: #333;
    font-size: 20px;
}

.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li.active a,
.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li:hover a {
    color: #99883c;
    background: none !important;
}

.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li.active .offcanvas-menu-toggler,
.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li:hover .offcanvas-menu-toggler {
    color: #99883c;
}

.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li.active ul > li a,
.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li:hover ul > li a {
    color: #333;
    background: none;
}

.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li.active ul > li.active > a,
.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li.active ul > li:hover > a,
.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li:hover ul > li.active > a,
.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li:hover ul > li:hover > a {
    color: #99883c;
    background: none !important;
}

.default-offcanvas .offcanvas-menu .offcanvas-inner .sp-module ul.nav.menu > li ul {
    background: none;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li .offcanvas-menu-toggler .open-icon {
    display: none;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li .offcanvas-menu-toggler .close-icon {
    display: inline-block;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li .offcanvas-menu-toggler.collapsed .open-icon {
    display: inline-block;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li .offcanvas-menu-toggler.collapsed .close-icon {
    display: none;
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li ul {
    background: rgba(0, 0, 0, .02);
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li ul > li > a {
    padding-left: 30px;
}

/* Collapsible submenu: no Bootstrap JS, just the .collapse class */
.offcanvas-menu .collapse {
    display: none;
}

.offcanvas-menu .collapse.in {
    display: block;
}

#sp-title {
    min-height: 0;
}


/* 7. Slider
   ==========================================================================
   Rewritten on the original Revolution Slider classes. The height follows the
   original's 700/1000 ratio, capped at 700px. */

.rev_slider_wrapper {
    position: relative;
    margin: 0 auto;
    overflow: hidden;
    background-color: #fff;
}

.rev_slider {
    position: relative;
    height: min(70vw, 700px);
}

.rev_slider > ul {
    margin: 0;
    padding: 0;
    list-style: none;
    height: 100%;
}

.rev_slider > ul > li {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 300ms ease-in-out;
}

.rev_slider > ul > li.active {
    opacity: 1;
    visibility: visible;
}

.rev_slider > ul > li > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
}

.tp-caption.large_text-one-slide {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    white-space: nowrap;
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(28px, 9.1vw, 91px);
    text-decoration: none;
    text-shadow: -1px 1px #0e0e0e;
    background-color: transparent;
}

.tp-leftarrow,
.tp-rightarrow {
    position: absolute;
    top: 50%;
    z-index: 100;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    padding: 0;
    border: 0;
    background-color: rgba(0, 0, 0, .35);
    color: #fff;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s ease-out, visibility .2s ease-out, background-color .2s ease-out;
}

.rev_slider_wrapper:hover .tp-leftarrow,
.rev_slider_wrapper:hover .tp-rightarrow,
.rev_slider_wrapper:focus-within .tp-leftarrow,
.rev_slider_wrapper:focus-within .tp-rightarrow {
    opacity: 1;
    visibility: visible;
}

.tp-leftarrow:hover,
.tp-rightarrow:hover {
    background-color: rgba(0, 0, 0, .6);
}

.tp-leftarrow  { left: 20px; }
.tp-rightarrow { right: 20px; }

.tp-leftarrow::before,
.tp-rightarrow::before {
    display: block;
    font-family: FontAwesome;
    font-size: 28px;
    line-height: 40px;
}

.tp-leftarrow::before  { content: "\f104"; }
.tp-rightarrow::before { content: "\f105"; }

.tp-bullets.tp-thumbs {
    position: absolute;
    bottom: 20px;
    left: 50%;
    z-index: 1000;
    transform: translateX(-50%);
    display: flex;
    padding: 3px;
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s ease-out, visibility .2s ease-out;
}

.rev_slider_wrapper:hover .tp-bullets.tp-thumbs,
.rev_slider_wrapper:focus-within .tp-bullets.tp-thumbs {
    opacity: 1;
    visibility: visible;
}

.tp-bullets.tp-thumbs .bullet {
    width: 100px;
    height: 50px;
    margin: 0;
    padding: 0;
    border: 0;
    overflow: hidden;
    background: none;
    opacity: .5;
    cursor: pointer;
    transition: all .2s ease-out;
}

.tp-bullets.tp-thumbs .bullet:hover,
.tp-bullets.tp-thumbs .bullet.selected {
    opacity: 1;
}

.tp-bullets.tp-thumbs .bullet img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    vertical-align: top;
}

@media (max-width: 767px) {
    .tp-bullets.tp-thumbs {
        display: none;
    }
}


/* 8. Home page sections
   ==========================================================================
   What the editor generated for each block. The ids are the ones SP Page
   Builder assigned; the markup keeps them. */

#sp-main-body {
    background-color: #fff;
}

.com-sppagebuilder #sp-main-body {
    padding: 0;
}

/* Header "Reservas" button */
.sp-page-builder .page-content #section-id-1663878887603 {
    padding: 30px 0 0;
}

#sppb-addon-1663878887606 .sppb-btn {
    font-family: "Cormorant Garamond", serif;
}

#sppb-addon-1663878887606 #btn-1663878887606.sppb-btn-custom {
    background-color: #99883c;
    color: #fff;
    font-size: 21px;
    font-weight: 700;
}

#sppb-addon-1663878887606 #btn-1663878887606.sppb-btn-custom:hover {
    background-color: #7f702d;
    color: #fff;
}

#sppb-addon-1663878887606 .sppb-btn i {
    margin: 0;
}

/* About us */
.sp-page-builder .page-content #nosotros {
    padding: 100px 0;
    background-color: #fff;
    background-image: url(/images/2023/08/23/bghojas3.png);
    background-repeat: no-repeat;
    background-position: 100% 100%;
    background-attachment: scroll;
}

#sppb-addon-1692603009326 .sppb-addon-title {
    color: #2e5304;
    font-family: "Cormorant Garamond", serif;
    font-size: 50px;
    font-weight: 900;
}

#sppb-addon-wrapper-1692677282902 {
    margin: 0 0 30px;
}

#sppb-addon-1692677282902 {
    color: #313131;
    font-weight: 400;
}

#sppb-addon-1692677282902 .sppb-addon-title {
    font-family: "Poppins", sans-serif;
    font-size: 20px;
    font-weight: 600;
}

#sppb-addon-1692677282902 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}

#sppb-addon-1668032487535 {
    color: #2d2d2d;
    font-size: 16px;
    font-weight: 400;
}

#sppb-addon-1668032487535 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}

#sppb-addon-wrapper-1692677282917 {
    margin: 0 0 30px;
}

#sppb-addon-1692677282917 .sppb-btn {
    border-radius: 0;
    font-family: "Cormorant Garamond", serif;
}

#sppb-addon-1692677282917 #btn-1692677282917.sppb-btn-custom {
    background-color: #2e5304;
    color: #fff;
    font-size: 21px;
    font-weight: 700;
}

#sppb-addon-1692677282917 #btn-1692677282917.sppb-btn-custom:hover {
    background-color: #99883c;
    color: #fff;
}

#sppb-addon-1692677282917 .sppb-btn i {
    margin: 0;
}

/* Video block */
#sppb-addon-wrapper-1692677282910 {
    margin: 0 0 30px;
}

#sppb-addon-1692677282910 {
    padding: 100px;
    background-image: url(/images/2023/08/22/bgvideo.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

#sppb-addon-1692677282910 .sppb-modal-selector span {
    display: inline-block;
    color: rgba(255, 255, 255, .73);
    line-height: 1;
    border-radius: 180px;
}

#sppb-addon-1692677282910 .sppb-modal-selector span > i {
    width: 80px;
    height: 80px;
    font-size: 80px;
    line-height: 80px;
}

#sppb-addon-1692677282910 .sppb-ripple-effect {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    box-shadow:
        0 0 0 15px rgba(255, 255, 255, .8),
        0 0 0 30px rgba(255, 255, 255, .6),
        0 0 0 45px rgba(255, 255, 255, .4);
    animation: sppbModalRipple 2s infinite;
}

@media (min-width: 768px) and (max-width: 991px) {
    #sppb-addon-wrapper-1692677282902,
    #sppb-addon-wrapper-1668032487535,
    #sppb-addon-wrapper-1692677282910 {
        margin: 0 0 20px;
    }
}

@media (max-width: 767px) {
    #sppb-addon-wrapper-1692677282902,
    #sppb-addon-wrapper-1668032487535,
    #sppb-addon-wrapper-1692677282910 {
        margin: 0 0 10px;
    }

    #sppb-addon-1692677282910 {
        padding: 40px;
    }

    #sppb-addon-1692677282910 .sppb-modal-selector span > i {
        width: 50px;
        height: 50px;
        font-size: 50px;
        line-height: 50px;
    }
}

/* Rooms */
.sp-page-builder .page-content #section-id-1692592414126 {
    padding: 100px 0;
    background-color: #f2f7f4;
}

#sppb-addon-wrapper-1692603197794,
#sppb-addon-wrapper-1692592414129,
#sppb-addon-wrapper-1692595787894 {
    margin: 0 0 30px;
}

#sppb-addon-1692603197794 .sppb-addon-title {
    color: #2e5304;
    font-family: "Cormorant Garamond", serif;
    font-size: 50px;
    font-weight: 900;
}

#sppb-addon-1692592414129 .sppb-addon-title {
    font-family: "Poppins", sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
}

/* Services, over the sunset photo */
.sp-page-builder .page-content #section-id-1663906963395 {
    padding: 70px 0;
    background-image: url(/images/2023/08/19/atardecer1.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-attachment: scroll;
}

.sp-page-builder .page-content #section-id-1663906963395 > .sppb-row-overlay {
    background-color: rgba(33, 33, 33, .74);
}

#sppb-addon-1677400378817 .sppb-empty-space {
    height: 10px;
}

#sppb-addon-wrapper-1664087003325 {
    margin: 0 0 30px;
}

#sppb-addon-1664087003325 {
    padding: 40px;
    color: #fff;
    font-size: 20px;
    font-weight: 300;
}

#sppb-addon-1664087003325 .sppb-addon-title {
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 50px;
    font-weight: 900;
}

#sppb-addon-1664087003325 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}

.sp-page-builder .page-content #section-id-1692687464506 {
    padding: 0 0 50px;
}

/* The four service cards share one style */
#sppb-addon-wrapper-1692688248755,
#sppb-addon-wrapper-1692688248760,
#sppb-addon-wrapper-1692688248765,
#sppb-addon-wrapper-1692687464560 {
    margin: 0 0 30px;
}

#sppb-addon-1692688248755,
#sppb-addon-1692688248760,
#sppb-addon-1692688248765,
#sppb-addon-1692687464560 {
    color: #fff;
    transition: .3s;
}

#sppb-addon-1692688248755 .sppb-addon-title,
#sppb-addon-1692688248760 .sppb-addon-title,
#sppb-addon-1692688248765 .sppb-addon-title,
#sppb-addon-1692687464560 .sppb-addon-title {
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 27px;
    font-weight: 600;
    line-height: 22px;
}

#sppb-addon-1692688248755 .sppb-addon-text,
#sppb-addon-1692688248760 .sppb-addon-text,
#sppb-addon-1692688248765 .sppb-addon-text,
#sppb-addon-1692687464560 .sppb-addon-text {
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 300;
}

#sppb-addon-1692688248755 .sppb-img-container,
#sppb-addon-1692688248760 .sppb-img-container,
#sppb-addon-1692688248765 .sppb-img-container,
#sppb-addon-1692687464560 .sppb-img-container {
    display: block;
}

@media (min-width: 768px) and (max-width: 991px) {
    #sppb-addon-wrapper-1664087003325,
    #sppb-addon-wrapper-1692688248755,
    #sppb-addon-wrapper-1692688248760,
    #sppb-addon-wrapper-1692688248765,
    #sppb-addon-wrapper-1692687464560 {
        margin: 0 0 20px;
    }

    #sppb-addon-1677400378817 .sppb-empty-space {
        height: 30px;
    }
}

@media (max-width: 767px) {
    #sppb-addon-wrapper-1664087003325,
    #sppb-addon-wrapper-1692688248755,
    #sppb-addon-wrapper-1692688248760,
    #sppb-addon-wrapper-1692688248765,
    #sppb-addon-wrapper-1692687464560 {
        margin: 0 0 10px;
    }

    #sppb-addon-1677400378817 .sppb-empty-space {
        height: 20px;
    }
}

/* Spacer between the sunset band and the form */
.sp-page-builder .page-content #section-id-1692595787891 {
    margin-top: -150px;
    padding: 100px 0 50px;
}

#sppb-addon-wrapper-1692600025412 {
    margin: 0 0 30px;
}

#sppb-addon-1692600025412 .sppb-empty-space {
    height: 40px;
}

/* Information request */
.sp-page-builder .page-content #section-id-1677398442435 {
    margin-top: -200px;
    padding: 50px 0 100px;
}

#column-id-1677399534400 {
    padding-top: 50px;
    padding-bottom: 0;
    background-color: #437708;
    background-image: url(/images/2023/08/23/bgpalma.png);
    background-repeat: no-repeat;
    background-position: 100% 0;
    background-attachment: scroll;
}

#sppb-addon-wrapper-1630904215131 {
    margin: 0 30px;
}

#sppb-addon-1630904215131 {
    color: #fff;
}

#sppb-addon-1630904215131 .sppb-addon-title {
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 45px;
    font-weight: 700;
}

#sppb-addon-1630904215131 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}

#sppb-addon-1692777074046 {
    padding: 30px 30px 0;
}

@media (max-width: 991px) {
    #sppb-addon-wrapper-1630904215131 {
        margin: 0;
    }
}

/* What we offer */
.sp-page-builder .page-content #section-id-1630904215127 {
    background-color: #274307;
}

#column-id-1630904215130 {
    padding-top: 100px;
}

#sppb-addon-1692778885564 {
    color: #fff;
}

#sppb-addon-1692778885564 .sppb-addon-title {
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 45px;
    font-weight: 700;
}

#sppb-addon-1692778885564 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}

#sppb-addon-1630904215132 .sppb-empty-space {
    height: 40px;
}

#sppb-addon-1664169759443 .sppb-empty-space {
    height: 70px;
}

@media (min-width: 768px) and (max-width: 991px) {
    #column-id-1630904215130 {
        padding-right: 30px;
        padding-left: 30px;
    }

    #sppb-addon-1630904215132 .sppb-empty-space {
        height: 60px;
    }

    #sppb-addon-1664169759443 .sppb-empty-space {
        height: 30px;
    }

    #sppb-addon-1692600025412 .sppb-empty-space {
        height: 30px;
    }
}

@media (max-width: 767px) {
    #column-id-1630904215130 {
        padding-right: 15px;
        padding-left: 15px;
    }

    #sppb-addon-1630904215132 .sppb-empty-space {
        height: 60px;
    }

    #sppb-addon-1664169759443 .sppb-empty-space {
        height: 70px;
    }

    #sppb-addon-1692600025412 .sppb-empty-space {
        height: 20px;
    }
}

/* Ratings */
.sp-page-builder .page-content #section-id-1692777074035 {
    padding: 100px 0;
}

#sppb-addon-1692811183498 {
    color: #1e1e1e;
    font-size: 18px;
    font-weight: 400;
}

#sppb-addon-1692811183498 .sppb-addon-title {
    color: #2e5304;
    font-family: "Cormorant Garamond", serif;
    font-size: 45px;
    font-weight: 700;
}

#sppb-addon-1692811183498 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}

/* Gallery */
.sp-page-builder .page-content #section-id-1692682304546 {
    background-color: #2c4d06;
}

/* Call-us band */
.sp-page-builder .page-content #section-id-1692580663503 {
    padding: 0 0 30px;
    color: #fff;
    background-color: #2c4d06;
}

#sppb-addon-1692580663524 .sppb-addon-title {
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 35px;
    font-weight: 700;
}

@media (min-width: 768px) and (max-width: 991px) {
    #sppb-addon-wrapper-1692580663524 {
        margin: 0 0 20px;
    }
}

@media (max-width: 767px) {
    #sppb-addon-wrapper-1692580663524 {
        margin: 0 0 10px;
    }
}


/* 9. Rooms carousel
   ==========================================================================
   SP Page Builder carousel classes. The JS builds the track, the arrows and
   the dots inside .sppb-carousel-extended. */

.sppb-carousel-extended {
    position: relative;
    touch-action: pan-y;
    user-select: none;
}

.sppb-carousel-extended-list {
    position: relative;
    overflow: hidden;
}

.sppb-carousel-extended-outer-stage {
    display: flex;
    position: relative;
    transition: transform .25s ease 0s;
}

.sppb-carousel-extended-item {
    position: relative;
    flex: 0 0 auto;
    height: 100%;
}

.sppb-carousel-extended-item img {
    width: 100%;
    height: 100%;
    object-fit: fill;
}

.sppb-carousel-extended-content-wrap {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 20px;
    text-align: center;
}

.sppb-carousel-extended-heading {
    margin-bottom: 15px;
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 45px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-shadow: 1px 1px #242425;
}

.sppb-carousel-extended-nav-control,
.sppb-carousel-extended-dots {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 3;
    width: 100%;
    height: 1px;
    margin: auto;
}

div.sppb-carousel-extended-nav-control {
    top: -60px;
    z-index: 4;
}

div.sppb-carousel-extended-dots {
    top: auto;
    bottom: -30px;
    height: 20px;
}

.sppb-carousel-extended-nav-control .nav-control {
    display: block;
    width: 60px;
    height: 60px;
    color: #2c4d06;
    font-size: 40px;
    line-height: 60px;
    text-align: center;
    border: 1px solid rgba(0, 0, 0, 0);
    border-radius: 3px;
    cursor: pointer;
    transition: .35s;
}

.sppb-carousel-extended-nav-control .nav-control.prev-control {
    float: left;
    margin-left: -75px;
}

.sppb-carousel-extended-nav-control .nav-control.next-control {
    float: right;
    margin-right: -75px;
}

@media (max-width: 568px) {
    .sppb-carousel-extended-nav-control .nav-control.prev-control {
        margin-left: -30px;
    }

    .sppb-carousel-extended-nav-control .nav-control.next-control {
        margin-right: -30px;
    }
}

.sppb-carousel-extended-dots ul {
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
}

.sppb-carousel-extended-dots ul li {
    position: relative;
    display: inline-block;
    width: 25px;
    height: 2px;
    margin: 0 5px;
    overflow: hidden;
    background: #d7d7d7;
    border-radius: 566px;
    cursor: pointer;
    transition: .35s;
}

.sppb-carousel-extended-dots ul li span {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background: #99883c;
    opacity: 0;
    transition: none;
}

.sppb-carousel-extended-dots ul li.active span,
.sppb-carousel-extended-dots ul li:hover span {
    opacity: 1;
}


/* 10. Gallery
   ==========================================================================
   Owl Carousel classes; the JS builds .owl-stage and .owl-nav. */

.owl-carousel {
    position: relative;
    display: block;
    width: 100%;
}

.owl-stage-outer {
    position: relative;
    overflow: hidden;
}

.owl-stage {
    display: flex;
    transition: transform .6s ease;
}

.owl-item {
    position: relative;
    flex: 0 0 auto;
}

.owl-theme .owl-nav {
    margin-top: 10px;
    text-align: center;
    -webkit-tap-highlight-color: transparent;
}

.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next {
    display: inline-block;
    margin: 5px;
    padding: 0 !important;
    border: none;
    background: transparent;
    color: #fff;
    font: inherit;
    font-size: 14px;
    cursor: pointer;
}

.uteig-carousel-img {
    position: relative;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.uteig-carousel-normal-img + .uteig-carousel-item-info {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.uteig-carousel-item-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 20px;
    color: #fff;
    text-align: center;
}


/* 11. Contact form
   ==========================================================================
   PWebContact module, "black" theme, labels over the field. */

/* The module opts out of the template's box-sizing, except for the fields */
div.pwebcontact,
div.pwebcontact * {
    box-sizing: content-box;
}

.pwebcontact-box {
    position: relative;
    z-index: 0;
}

.pwebcontact-box::after,
.pweb-fields::after,
.pweb-field-container::after {
    content: "";
    display: table;
    line-height: 0;
    clear: both;
}

.pweb-static .pwebcontact-container {
    padding: 5px;
    text-align: left;
}

form.pwebcontact-form .pweb-fields::after {
    content: "";
    display: table;
    clear: both;
}

.pweb-column {
    float: left;
    margin-right: 2.8%;
}

.pweb-column:last-child {
    margin-right: 0;
}

.pweb-width-50 {
    width: 47%;
}

.pweb-width-50:last-child {
    width: 50%;
}

@media (max-width: 600px) {
    .pweb-column,
    .pweb-column:last-child {
        float: none;
        width: auto !important;
        margin-right: 0;
    }
}

form.pwebcontact-form .pweb-field-container {
    position: relative;
    margin-bottom: 8px;
}

form.pwebcontact-form .pweb-label,
form.pwebcontact-form .pweb-field {
    float: none;
    width: 100%;
}

form.pwebcontact-form .pweb-label {
    margin-bottom: 3px;
}

form.pwebcontact-form .pweb-label label {
    display: block;
    width: auto;
    max-width: 100%;
    margin: 0;
    padding: 0;
    word-wrap: break-word;
}

/* With .pweb-label-over (added by the JS) the label sits inside the field */
.pweb-labels-over form.pwebcontact-form .pweb-label-over .pweb-label {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    width: auto !important;
    margin-bottom: 0;
}

.pweb-labels-over form.pwebcontact-form .pweb-label-over label {
    padding: 7px 6px 0;
    color: #aaa;
    white-space: nowrap;
    text-shadow: none;
    cursor: text;
}

form.pwebcontact-form input.pweb-input,
form.pwebcontact-form textarea {
    float: none;
    width: 100%;
    margin: 0;
    padding: 2px 4px;
    outline: none;
    border-radius: 0;
    box-sizing: border-box !important;
}

form.pwebcontact-form input.pweb-input {
    max-width: 100%;
    height: 40px;
    line-height: 22px;
}

.pweb-form-black form.pwebcontact-form input.pweb-input,
.pweb-form-black form.pwebcontact-form textarea {
    background: #fff;
    color: #333;
    border: 1px solid #34550e;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .2) inset;
}

form.pwebcontact-form input.pweb-input:focus,
form.pwebcontact-form textarea:focus {
    transition: border .2s linear, box-shadow .2s linear;
}

form.pwebcontact-form .invalid,
.pweb-form-black form.pwebcontact-form input.invalid.pweb-input,
.pweb-form-black form.pwebcontact-form textarea.invalid {
    border-color: #f00 !important;
}

#pwebcontact247_box,
#pwebcontact247_form label,
#pwebcontact247_form input,
#pwebcontact247_form textarea,
#pwebcontact247_form button,
#pwebcontact247_form .btn {
    font-family: "Poppins", sans-serif;
    font-size: 15px;
}

#pwebcontact247_form label,
#pwebcontact247_form .pweb-msg,
#pwebcontact247_form .pweb-chars-counter {
    color: #b5b5b5;
}

form.pwebcontact-form .pweb-chars-counter {
    font-size: 85%;
}

form.pwebcontact-form .pweb-msg {
    min-height: 16px;
    line-height: 16px;
}

form.pwebcontact-form .pweb-msg .pweb-success {
    color: #009e0a;
}

form.pwebcontact-form .pweb-msg .pweb-error {
    color: #a80000;
}

/* The module ships its own Bootstrap 2, and its grey button outranks the
   template's larger .btn on specificity. */
form.pwebcontact-form .btn {
    display: inline-block;
    padding: 4px 12px;
    margin-bottom: 0;
    color: #333;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
    text-shadow: 0 1px 1px rgba(255, 255, 255, .75);
    vertical-align: middle;
    cursor: pointer;
    background-color: #f5f5f5;
    background-image: linear-gradient(to bottom, #fff, #e6e6e6);
    background-repeat: repeat-x;
    border: 1px solid #ccc;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    border-bottom-color: #b3b3b3;
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
}

form.pwebcontact-form .btn:hover {
    color: #333;
    background-color: #e6e6e6;
    background-position: 0 -15px;
    transition: background-position .1s linear;
}

.pweb-form-black form.pwebcontact-form button,
.pweb-form-black form.pwebcontact-form .btn {
    color: #fff !important;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
    background: #000;
    background-image: linear-gradient(to bottom, #333, #000);
    background-repeat: repeat-x;
    border: 1px solid;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    box-shadow: 0 1px 0 rgba(255, 255, 255, .2) inset;
}

.pweb-form-black form.pwebcontact-form button:hover,
.pweb-form-black form.pwebcontact-form .btn:hover {
    background-color: #000;
    background-position: 0 -30px;
}

/* "orange" theme on a white panel, used by the contact page */
.pweb-bg-white .pwebcontact-container {
    background-color: #fff;
}

.pweb-bg-white form.pwebcontact-form label,
.pweb-bg-white form.pwebcontact-form .pweb-msg,
.pweb-bg-white form.pwebcontact-form .pweb-chars-counter {
    color: #333;
}

.pweb-bg-white form.pwebcontact-form .pweb-msg .pweb-success {
    color: #009e0a;
}

.pweb-bg-white form.pwebcontact-form .pweb-msg .pweb-error {
    color: #a80000;
}

/* The template's own CSS replaces the theme's #aaa border with #a5a5a5 */
.pweb-form-orange form.pwebcontact-form input.pweb-input,
.pweb-form-orange form.pwebcontact-form textarea {
    background: #fff;
    color: #333;
    border: 1px solid #a5a5a5;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .2) inset;
}

.pweb-form-orange form.pwebcontact-form button,
.pweb-form-orange form.pwebcontact-form .btn {
    color: #fff !important;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
    background: #d64c11;
    background-image: linear-gradient(to bottom, #e56129, #d64c11);
    background-repeat: repeat-x;
    border: 1px solid;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    box-shadow: 0 1px 0 rgba(255, 255, 255, .2) inset;
}

.pweb-form-orange form.pwebcontact-form button:hover,
.pweb-form-orange form.pwebcontact-form .btn:hover {
    background-color: #d64c11;
    background-position: 0 -30px;
}

#pwebcontact134_box,
#pwebcontact134_form label,
#pwebcontact134_form input,
#pwebcontact134_form textarea,
#pwebcontact134_form button,
#pwebcontact134_form .btn {
    font-family: "Poppins", sans-serif;
    font-size: 15px;
}

#pwebcontact134_form label,
#pwebcontact134_form .pweb-msg,
#pwebcontact134_form .pweb-chars-counter {
    color: #262626;
}


/* 12. Footer
   ========================================================================== */

#sp-bottom {
    padding: 100px 0;
    color: #f1f1f1;
    background-color: #152902;
}

#sp-bottom .sp-module .sp-module-title {
    font-size: 24px;
    font-weight: 400;
    text-transform: none;
}

.sp-module {
    margin-top: 50px;
}

.sp-module:first-child {
    margin-top: 0;
}

.sp-module ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sp-module ul > li {
    display: block;
}

.sp-module ul > li > a {
    display: block;
    padding: 2px 0;
    color: #fff;
    font-weight: 300;
    line-height: 25px;
    transition: 300ms;
}

.sp-module ul > li > a:hover {
    color: #99883c;
    background: none;
}

.sp-module ul > li > a::before {
    font-family: FontAwesome;
    content: "\f105";
    margin-right: 8px;
}

/* Social links */
ul.genius {
    display: flex;
    padding: 0;
    list-style: none;
}

ul.genius li {
    display: inline-block;
    margin-right: 2px;
    padding: 5px;
    border-radius: 3px;
    transition: transform 1s;
}

ul.genius li a {
    color: #fff;
}

ul.genius li:hover {
    transform: scale(1.5);
}

/* Footer columns */
.sp-page-builder .page-content #section-id-1618177341626 {
    padding: 10px 0;
}

#sppb-addon-wrapper-1664049434197,
#sppb-addon-wrapper-1618255610232,
#sppb-addon-wrapper-1618259275797,
#sppb-addon-wrapper-1692511827564,
#sppb-addon-wrapper-1692590972907 {
    margin: 0 0 30px;
}

#sppb-addon-1664049434197 {
    font-weight: 300;
}

#sppb-addon-1664049434197 .sppb-addon-title {
    color: #fff;
    font-family: "Playfair Display", serif;
    font-size: 22px;
    font-weight: 400;
}

#sppb-addon-1664049434197 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}

#sppb-addon-1618259275797 .sppb-addon-title {
    font-family: "Playfair Display", serif;
    font-size: 22px;
    font-weight: 400;
}

#sppb-addon-1692511827564 img {
    width: 300px;
    max-width: 300px;
}

@media (min-width: 768px) and (max-width: 991px) {
    #sppb-addon-wrapper-1664049434197,
    #sppb-addon-wrapper-1618255610232,
    #sppb-addon-wrapper-1618259275797 {
        margin: 0 0 20px;
    }
}

@media (max-width: 767px) {
    #sppb-addon-wrapper-1664049434197,
    #sppb-addon-wrapper-1618255610232,
    #sppb-addon-wrapper-1618259275797 {
        margin: 0 0 10px;
    }
}

/* Bottom strip */
#sp-section-10 {
    padding: 10px;
    color: #f4f4f4;
    font-weight: 300;
    line-height: 15px;
    background-color: #0d1601;
}

#sp-section-10 a {
    color: #fff;
}

.sp-copyright {
    display: block;
}


/* 13. WhatsApp chat
   ==========================================================================
   mod_whatsapp_agent module. Its own icons (badge, arrows, paper plane) come
   from the module's SVGs in /img. */

.wa_agent_btn {
    z-index: 99999;
}

.btn_type_2 {
    position: fixed;
    bottom: 15px !important;
    width: auto !important;
    height: 46px !important;
    padding: 0 !important;
    list-style: none !important;
    font-size: 14px !important;
    line-height: 46px !important;
    border: 1px solid rgba(0, 0, 0, .1);
    border-radius: 50px;
    box-shadow: 0 0 30px rgba(0, 0, 0, .3);
    cursor: pointer;
    background: url(/img/whatsapp-white.svg) no-repeat 12px center #82aa05 !important;
    background-size: 26px 26px !important;
}

.btn_type_2 span {
    margin: 0 20px 0 50px !important;
    color: #fff !important;
}

.btn_type_2:hover {
    animation: wa-glow .8s infinite linear;
}

@keyframes wa-glow {
    from { background-color: #749a02; }
    50%  { background-color: #91bd09; transform: scale(.96); }
    to   { background-color: #749a02; }
}

.btnright li {
    right: 15px !important;
}

.boxright {
    right: 15px;
}

.wa_agent_btn .online_agent_count {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: 11px;
    line-height: 20px;
    text-align: center;
    background: #007acc;
    border-radius: 50%;
}

.wa_agent_btn .btn_type_2 .online_agent_count {
    top: -5px !important;
    left: -5px !important;
}

.wa_agent {
    position: fixed;
    bottom: 90px !important;
    z-index: 9999999 !important;
    display: block !important;
    width: 350px !important;
    height: auto !important;
    font-size: 14px;
    background: #fff !important;
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, .3) 0 0 30px;
}

/* The agent's name was an <h1>, which put the only h1 of every page inside a
   popup that starts hidden. It is a label, not a heading, so it is a div now —
   and these are the rules for the heading it used to be. */

.wa_agent .wa_agent_title {
    margin: 0 0 5px !important;
    font-size: 22px;
    font-weight: 700;
}

.wa_agent p,
.wa_agent span {
    font-size: 14px;
    line-height: 130%;
}

.is_hide { display: none !important; }
.is_show { display: block !important; }

@media (max-width: 360px) {
    .wa_agent {
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        max-width: 100%;
    }
}

/* The two animate.css animations the widget uses */
.animated {
    animation-duration: 1s;
    animation-fill-mode: both;
}

@keyframes bounceInUp {
    from, 60%, 75%, 90%, to { animation-timing-function: cubic-bezier(.215, .61, .355, 1); }
    from { opacity: 0; transform: translate3d(0, 3000px, 0); }
    60%  { opacity: 1; transform: translate3d(0, -20px, 0); }
    75%  { transform: translate3d(0, 10px, 0); }
    90%  { transform: translate3d(0, -5px, 0); }
    to   { transform: translate3d(0, 0, 0); }
}

.bounceInUp {
    animation-name: bounceInUp;
}

@keyframes bounceOutDown {
    20% { transform: translate3d(0, 10px, 0); }
    40%, 45% { opacity: 1; transform: translate3d(0, -20px, 0); }
    to  { opacity: 0; transform: translate3d(0, 2000px, 0); }
}

.bounceOutDown {
    animation-name: bounceOutDown;
}

.wa_agent_header,
.wa_agent_header_tab {
    display: block;
    padding: 20px;
    color: #fff;
    text-align: left;
    background-color: #82aa05;
    background-image: url('/images/bgchat.png');
    background-size: cover;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.wa_agent_header_tab .wa_agent_title {
    color: #fff;
}

.close_chat,
.back_to_list {
    position: absolute;
    top: 10px;
    right: 10px;
    display: block;
    width: 40px !important;
    height: 40px;
    padding: 10px 0 5px;
    text-align: center;
    border-radius: 8px;
    cursor: pointer;
    background: url(/img/arrow-down.svg) no-repeat center;
    background-size: 20px 20px !important;
}

.close_chat:hover,
.back_to_list:hover {
    background-color: rgba(0, 0, 0, .15);
}

.back_to_list {
    background: url(/img/arrow-left.svg) no-repeat center rgba(0, 0, 0, .1);
    background-size: 20px 20px !important;
}

.wa_agent_body .wa_agent_body_list {
    margin: 0;
    padding: 0;
}

.wa_agent_body .wa_agent_body_list li {
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: left;
}

.wa_agent_body .wa_agent_body_list li.tab-link {
    display: block;
    clear: both;
    padding: 15px;
    border-bottom: 1px solid #e0e0e0;
    cursor: pointer;
}

.wa_agent_body .wa_agent_body_list li.tab-link:last-child {
    border-bottom: none;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}

.wa_agent_body .wa_agent_body_list li.tab-link:hover {
    background: #f0f0f0;
}

.wa_agent_body .wa_agent_body_list li.tab-link .wavatar_list {
    float: left;
    display: block;
    width: 50px;
    height: 50px;
    margin-right: 10px;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 50%;
}

.wa_agent_body .wa_agent_body_list li.tab-link span {
    display: block;
}

.wa_agent_body .wa_agent_body_list li.tab-link .wa_agent_role {
    color: #666;
}

.wa_agent_body .wa_agent_body_list li.tab-link .wa_agent_name {
    color: #333;
    font-size: 110%;
    font-weight: 700;
}

.wa_agent_body .wa_agent_body_list li.tab-link .wa_agent_status {
    position: relative;
    font-size: 75%;
    text-transform: uppercase;
}

.wa_agent_body .wa_agent_body_list li.tab-link .agent_is_online::before {
    content: "";
    position: absolute;
    display: block;
    width: 12px;
    height: 12px;
    background: #0bd10c;
    border-radius: 50%;
}

.wa_agent_body .tab_content {
    display: none;
    padding: 0;
}

.wa_agent_body .tab_content.current {
    display: inherit;
}

.wa_agent_body .tab_content .wa_agent_body_tab {
    padding: 0 0 20px;
    background: #ddd;
    background-size: 50%;
    mix-blend-mode: multiply;
}

.wa_agent_body .tab_content .wa_agent_body_tab .wavatar {
    float: left;
    display: block;
    width: 40px;
    height: 40px;
    margin: 15px 0 15px 15px;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 50%;
}

.wa_agent_body .tab_content .wa_agent_body_tab .talk-bubble {
    position: relative;
    display: inline-block;
    width: 230px;
    height: auto;
    margin: 20px 20px 0 10px;
    background-color: lightyellow;
    border-radius: 5px;
    box-shadow: 1px 1px 0 rgba(0, 0, 0, .1);
}

.wa_agent_body .tab_content .wa_agent_body_tab .tri-right.left-top::after {
    content: " ";
    position: absolute;
    top: 0;
    left: -10px;
    width: 0;
    height: 0;
    border: 12px solid;
    border-color: lightyellow transparent transparent transparent;
}

.wa_agent_body .tab_content .wa_agent_body_tab .talktext {
    padding: 10px;
    text-align: left;
}

.wa_agent_body .tab_content .wa_agent_body_tab .talktext .wa_agent_name {
    display: block;
    margin: 0 0 5px;
    color: #333;
    font-size: 85%;
    font-weight: 700;
    line-height: normal;
}

.wa_agent_body .tab_content .wa_agent_body_tab .talktext .wa_msg_time {
    position: absolute;
    right: 8px;
    bottom: 5px;
    display: block;
    color: #999;
    font-size: 85%;
}

.wa_agent_body .tab_content .wa_agent_body_tab .talktext p {
    display: block;
    margin: 0 0 10px;
    color: #333;
}

.wa_agent_body .tab_content .wa_agent_msg_input {
    position: relative;
    display: block;
    margin: 0;
}

.wa_agent_body .tab_content .wa_agent_msg_input form {
    margin: 0 !important;
}

.wa_agent_body .tab_content .wa_agent_msg_input input {
    display: block;
    width: calc(100% - 40px);
    height: 50px;
    margin: 0 !important;
    padding: 15px !important;
    font-size: 13px;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    word-break: break-word !important;
    appearance: none;
}

.wa_agent_body .tab_content .wa_agent_msg_input .send_msg {
    position: absolute !important;
    top: 5px !important;
    right: 10px !important;
    display: block !important;
    width: 40px !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    opacity: .5;
    cursor: pointer;
    background: url(/img/paper-plane.svg) no-repeat center !important;
    background-size: 20px 20px !important;
}

.wa_agent_body .tab_content .wa_agent_msg_input .send_msg:hover {
    opacity: 1;
}


/* 14. Video lightbox
   ==========================================================================
   Magnific Popup classes, which is what the link declares
   (data-mainclass="mfp-no-margins mfp-with-zoom"). The JS builds the dialog. */

.mfp-bg {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #0b0b0b;
    opacity: .8;
}

.mfp-wrap {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999999;
    width: 100%;
    height: 100%;
    outline: 0 !important;
    backface-visibility: hidden;
}

.mfp-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0 8px;
    text-align: center;
}

.mfp-container::before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.mfp-content {
    position: relative;
    z-index: 1045;
    display: inline-block;
    margin: 0 auto;
    text-align: left;
    vertical-align: middle;
}

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
    width: 100%;
    max-width: 900px;
    line-height: 0;
}

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    overflow: hidden;
}

.mfp-iframe-scaler iframe {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: #000;
    box-shadow: 0 0 8px rgba(0, 0, 0, .6);
}

button.mfp-close {
    position: absolute;
    top: -40px;
    right: -6px;
    z-index: 1046;
    display: block;
    width: 100%;
    height: 44px;
    padding: 0 6px 18px 10px;
    border: 0;
    background: 0 0;
    box-shadow: none;
    color: #fff;
    font-family: Arial, Baskerville, monospace;
    font-size: 28px;
    font-style: normal;
    line-height: 44px;
    text-align: right;
    text-decoration: none;
    opacity: .65;
    cursor: pointer;
}

button.mfp-close:hover,
button.mfp-close:focus {
    opacity: 1;
}

.mfp-with-zoom .mfp-container,
.mfp-with-zoom.mfp-bg {
    opacity: 0;
    backface-visibility: hidden;
    transition: all .3s ease-out;
}

.mfp-with-zoom.mfp-ready .mfp-container {
    opacity: 1;
}

.mfp-with-zoom.mfp-ready.mfp-bg {
    opacity: .8;
}

.mfp-with-zoom.mfp-removing .mfp-container,
.mfp-with-zoom.mfp-removing.mfp-bg {
    opacity: 0;
}

@media all and (max-width: 900px) {
    .mfp-container {
        padding-right: 6px;
        padding-left: 6px;
    }
}


/* 15. About us page
   ========================================================================== */

/* Banner */
.sp-page-builder .page-content #section-id-1677871511160 {
    padding: 0;
}

#sppb-addon-wrapper-1677871511179 {
    margin: 0 0 30px;
}

#sppb-addon-1677871511179 .sppb-addon-title {
    font-family: "Playfair Display", serif;
    font-size: 40px;
    font-weight: 700;
}

#sppb-addon-1677871511179 .sppb-addon-overlay-image-content {
    height: 400px;
}

#sppb-addon-1677871511179 .overlay-background-style {
    background: rgba(0, 0, 0, .32);
}

@media (min-width: 768px) and (max-width: 991px) {
    #sppb-addon-wrapper-1677871511179 {
        margin: 0 0 20px;
    }
}

@media (max-width: 767px) {
    #sppb-addon-wrapper-1677871511179 {
        margin: 0 0 10px;
    }

    #sppb-addon-1677871511179 .sppb-addon-title {
        font-size: 30px;
        line-height: 30px;
    }

    #sppb-addon-1677871511179 .sppb-addon-overlay-image-content {
        height: 200px;
    }
}

/* Who we are, mission and vision */
.sp-page-builder .page-content #section-id-1677871417118 {
    padding: 50px 0 100px;
    background-image: url(/images/2023/08/23/bghojas4.png);
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-attachment: scroll;
}

#sppb-addon-wrapper-1677924843957,
#sppb-addon-wrapper-1692812583800,
#sppb-addon-wrapper-1677871417122,
#sppb-addon-wrapper-1692812583791 {
    margin: 0 0 30px;
}

#sppb-addon-1677924843957 {
    font-size: 16px;
}

#sppb-addon-1677924843957 .sppb-addon-title {
    color: #2e5304;
    font-family: "Cormorant Garamond", serif;
    font-size: 40px;
    font-weight: 800;
}

#sppb-addon-1677871417122,
#sppb-addon-1692812583791 {
    padding: 20px;
    font-size: 16px;
    background-color: #edf5f0;
    border-radius: 10px;
}

#sppb-addon-1677871417122 .sppb-addon-title,
#sppb-addon-1692812583791 .sppb-addon-title {
    color: #2e5304;
    font-family: "Cormorant Garamond", serif;
    font-size: 30px;
    font-weight: 800;
}

/* Call-us band */
.sp-page-builder .page-content #section-id-1692916050346 {
    padding: 20px 0;
    background-color: #2c4d06;
}

#sppb-addon-wrapper-1692916050351 {
    margin: 0;
}

#sppb-addon-1692916050351 .sppb-addon-title {
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 35px;
    font-weight: 700;
}

@media (min-width: 768px) and (max-width: 991px) {
    #sppb-addon-wrapper-1692916050351 {
        margin: 0 0 20px;
    }
}

@media (max-width: 767px) {
    #sppb-addon-wrapper-1692916050351 {
        margin: 0 0 10px;
    }
}


/* 16. Contact page
   ========================================================================== */

/* Banner */
.sp-page-builder .page-content #video {
    padding: 0;
    background-color: #2c4d06;
}

#sppb-addon-wrapper-1692575588172 {
    margin: 0;
}

#sppb-addon-1692575588172 .sppb-addon-title {
    color: #fff;
    font-family: "Playfair Display", serif;
    font-size: 50px;
    font-weight: 800;
}

#sppb-addon-1692575588172 .sppb-addon-overlay-image-content {
    height: 400px;
}

#sppb-addon-1692575588172 .overlay-background-style {
    background: rgba(28, 49, 5, .71);
}

@media (max-width: 767px) {
    #sppb-addon-1692575588172 .sppb-addon-title {
        font-size: 35px;
        line-height: 35px;
    }

    #sppb-addon-1692575588172 .sppb-addon-overlay-image-content {
        height: 250px;
    }
}

/* Form and contact details */
.sp-page-builder .page-content #section-id-1576318480711 {
    padding: 80px 0;
    background-color: #fff;
}

#sppb-addon-1576250283471 .sppb-addon-title {
    color: #262626;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 600;
}

#sppb-addon-1576256592291 .sppb-empty-space {
    height: 10px;
}

#sppb-addon-1590257021637 {
    color: #292727;
    font-weight: 400;
}

#sppb-addon-1590257021637 .sppb-addon-title {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
}

#sppb-addon-1590257021637 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}


/* 17. Tours and events pages
   ==========================================================================
   They were built from the same template and still share the banner, the
   call-us band and — on the events page — the photo-and-text items. The tours
   page no longer uses those items: the operator now supplies each tour as a
   finished flyer, so that page is the four images and nothing else. The rules
   for the items stay because events is still built that way. */

/* Banner: same values as the contact page, only the id differs */
#sppb-addon-wrapper-1692823318919 {
    margin: 0;
}

#sppb-addon-1692823318919 .sppb-addon-title {
    color: #fff;
    font-family: "Playfair Display", serif;
    font-size: 50px;
    font-weight: 800;
}

#sppb-addon-1692823318919 .sppb-addon-overlay-image-content {
    height: 400px;
}

#sppb-addon-1692823318919 .overlay-background-style {
    background: rgba(28, 49, 5, .71);
}

@media (max-width: 767px) {
    #sppb-addon-1692823318919 .sppb-addon-title {
        font-size: 35px;
        line-height: 35px;
    }

    #sppb-addon-1692823318919 .sppb-addon-overlay-image-content {
        height: 250px;
    }
}

/* Each item: photo on the left, text on a tinted column on the right.
   cactus-2.png is missing from the server; it already 404s on the original. */
#column-id-1691946764368,
#column-id-1691957280869 {
    background-color: #e5f1ea;
}

#column-id-1691946764383,
#column-id-1691957280882 {
    background-color: #f2f7f4;
    background-image: url(/images/2023/08/14/cactus-2.png);
    background-repeat: no-repeat;
    background-position: 100% 100%;
    background-attachment: scroll;
}


.sp-page-builder .page-content #section-id-1691946764365 {
    padding: 100px 0 30px;
}

.sp-page-builder .page-content #section-id-1691946764380 {
    padding: 0 0 30px;
}

.sp-page-builder .page-content #section-id-1691957280866 {
    padding: 0 0 30px;
}

/* Only the events page has a fourth item */
.sp-page-builder .page-content #section-id-1691957280879 {
    padding: 0 0 80px;
}

#sppb-addon-1691946764369,
#sppb-addon-1691946764384,
#sppb-addon-1691957280870,
#sppb-addon-1691957280883 {
    padding: 50px 15px 20px;
    font-size: 16px;
}

#sppb-addon-1691946764369 .sppb-addon-title,
#sppb-addon-1691946764384 .sppb-addon-title,
#sppb-addon-1691957280870 .sppb-addon-title,
#sppb-addon-1691957280883 .sppb-addon-title {
    color: #2e5304;
    font-family: "Cormorant Garamond", serif;
    font-size: 40px;
    font-weight: 800;
}

#sppb-addon-1691946764369 .sppb-addon-content,
#sppb-addon-1691946764384 .sppb-addon-content,
#sppb-addon-1691957280870 .sppb-addon-content,
#sppb-addon-1691957280883 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}

/* Call-us band */
.sp-page-builder .page-content #section-id-1692916067077 {
    padding: 20px 0;
    background-color: #2c4d06;
}

#sppb-addon-wrapper-1692916067102 {
    margin: 0;
}

#sppb-addon-1692916067102 .sppb-addon-title {
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 35px;
    font-weight: 700;
}

@media (min-width: 768px) and (max-width: 991px) {
    #sppb-addon-wrapper-1692916067102 {
        margin: 0 0 20px;
    }
}

@media (max-width: 767px) {
    #sppb-addon-wrapper-1692916067102 {
        margin: 0 0 10px;
    }
}

/* The tours flyers, one per row. They are portrait and about 1114px wide, so
   inside the 1140px container they reach their own size and stop; img's
   max-width keeps them inside it on anything narrower, and sppb-text-center
   centres whatever is left over. */
.sp-page-builder .page-content #tours-flyers {
    padding: 100px 0 80px;
}

.tour-flyer {
    margin: 0 0 40px;
}

.tour-flyer:last-child {
    margin: 0;
}

/* The same tour, as text under its flyer. Held to the flyer's width so the two
   read as one block rather than a caption stretched across the container. */

.tours-intro,
.tour-detail {
    max-width: 700px;
    margin: 0 auto;
    font-family: "Poppins", sans-serif;
}

.tours-intro {
    margin-bottom: 60px;
    font-size: 18px;
    text-align: center;
}

.tour-detail {
    padding: 24px 0 0;
}

/* The id is needed, not decoration: the #sp-page-builder h2 rule in section 1
   outranks a class-only selector. */
#tours-flyers .tour-detail h2 {
    margin: 0 0 12px;
    color: #2e5304;
    font-family: "Cormorant Garamond", serif;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
}

.tour-detail p {
    margin: 0 0 8px;
    font-size: 16px;
    line-height: 26px;
}

.tour-detail .tour-schedule {
    margin: 0;
    color: #5a5a5a;
    font-size: 15px;
}

@media (max-width: 767px) {
    .tours-intro {
        margin-bottom: 35px;
        font-size: 16px;
    }

    .tour-detail {
        padding: 18px 0 0;
    }

    #tours-flyers .tour-detail h2 {
        font-size: 26px;
    }
}

@media (max-width: 767px) {
    .sp-page-builder .page-content #tours-flyers {
        padding: 50px 0 40px;
    }

    .tour-flyer {
        margin: 0 0 25px;
    }
}


/* 18. Tabs
   ==========================================================================
   SP Page Builder tab addon, used on the room pages. */

.sppb-nav {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sppb-nav > li {
    position: relative;
    display: block;
}

.sppb-nav > li > a {
    position: relative;
    display: block;
    padding: 10px 15px;
}

.sppb-nav > li > a:hover,
.sppb-nav > li > a:focus {
    background-color: #eee;
    text-decoration: none;
}

.sppb-nav-tabs {
    border-bottom: 1px solid #e5e5e5;
}

.sppb-nav-tabs > li {
    float: left;
    margin-bottom: -1px;
}

.sppb-nav-tabs > li > a {
    padding: 12px 15px;
    font-size: 14px;
    font-weight: bolder;
    line-height: 1.42857143;
    background: #f5f5f5;
    border: 1px solid #e5e5e5;
    border-right-width: 0;
}

.sppb-nav-tabs > li:last-child > a {
    border-right-width: 1px;
}

.sppb-nav-tabs > li.active > a,
.sppb-nav-tabs > li.active > a:hover,
.sppb-nav-tabs > li.active > a:focus {
    background-color: #fff;
    border-bottom-color: transparent;
    cursor: default;
}

.sppb-tab-content {
    margin-top: 15px;
}

.sppb-nav-tabs-content {
    margin-top: 0;
    padding: 15px;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-top: 0;
}

/* The theme drops the boxed look: centred tabs, a rule underneath and a
   small arrow below the active one. */
.sppb-addon-tab {
    background: #fff;
}

.sppb-addon-tab ul.sppb-nav {
    margin-bottom: 50px;
    text-align: center;
    border-bottom: 1px solid #ddd;
}

.sppb-addon-tab ul.sppb-nav li {
    float: none;
    display: inline-block;
    text-align: center;
}

.sppb-addon-tab ul.sppb-nav li a {
    padding: 10px 25px;
    margin-bottom: 0;
    color: #fff;
    background: none;
    border-top: none;
    border-left: none;
    border-right: 1px solid #ddd;
}

.sppb-addon-tab ul.sppb-nav li a:hover,
.sppb-addon-tab ul.sppb-nav li a:focus {
    color: #fff;
    background: none;
}

.sppb-addon-tab ul.sppb-nav li.active a {
    border-right: 1px solid #437708;
    border-bottom: 1px solid #437708;
}

.sppb-addon-tab ul.sppb-nav li.active a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -9px;
    left: 0;
    z-index: 99;
    display: block;
    width: 9px;
    margin: 0 auto;
    padding: 8px;
    border-color: #50471f;
    border-style: solid;
    border-width: 0 1px 1px 0;
    transform: rotate(45deg);
}

.sppb-addon-tab ul.sppb-nav li.active a::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -3px;
    left: 0;
    z-index: 99;
    display: block;
    width: 23px;
    height: 10px;
    margin: 0 auto;
    background: #fff;
}

.sppb-addon-tab ul.sppb-nav li.active:last-child a {
    border-right: 1px solid #437708;
}

.sppb-addon-tab ul.sppb-nav li:last-child a {
    border-right: 1px solid transparent;
}

.sppb-addon-tab .sppb-nav-tabs-content {
    padding: 0;
    border: none;
}

.sppb-tab-content > .sppb-tab-pane {
    display: none;
}

.sppb-tab-content > .active {
    display: block;
}

.sppb-fade {
    opacity: 0;
    transition: opacity .15s linear;
}

.sppb-fade.in {
    opacity: 1;
}


/* 19. Room gallery
   ==========================================================================
   com_igallery: a slideshow with a thumbnail strip below it and a lightbox.
   The igui-* classes come from the module's own utility framework; only the
   handful the gallery uses are here. */

.ig-main-scope-wrapper ul {
    margin-bottom: 5px;
}

.ig-gallery-wrapper {
    display: flex !important;
    flex-direction: column;
    margin-top: 0;
    margin-bottom: 0;
}

.igui-inline {
    display: inline-block;
    max-width: 100%;
    vertical-align: middle;
}

.igui-position-relative {
    position: relative !important;
}

.igui-margin-remove,
.igui-padding-remove {
    margin: 0 !important;
}

.igui-margin-remove-bottom {
    margin-bottom: 0 !important;
}

.igui-overflow-hidden {
    overflow: hidden;
}

/* Slideshow */
.ig-slideshow ul,
.igui-slideshow-items {
    margin: 0;
    padding: 0;
}

.igui-slideshow-items {
    position: relative;
    list-style: none;
}

.ig-slideshow-item {
    text-align: center;
}

.igui-slideshow-items > li {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    list-style-type: none !important;
    opacity: 0;
    visibility: hidden;
    transition: opacity .4s linear;
}

.igui-slideshow-items > li.ig-active {
    position: relative;
    opacity: 1;
    visibility: visible;
}

.ig-slideshow-image {
    width: 100%;
    max-height: 100% !important;
    margin: 0;
}

.ig-slideshow-item-inner-lboxon {
    position: relative;
    height: 100%;
    cursor: pointer;
}

/* The magnifier badge over the photo */
.ig-lbox-open-icon {
    position: absolute;
    right: 10px;
    bottom: 10px;
    z-index: 5;
    width: 32px;
    height: 32px;
    background: rgba(34, 34, 34, .5);
    opacity: 0;
    transition: opacity .2s linear;
}

.ig-slideshow-item:hover .ig-lbox-open-icon {
    opacity: 1;
}

.ig-lbox-open-icon span {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 2a8 8 0 1 0 4.9 14.3l5.4 5.4 1.4-1.4-5.4-5.4A8 8 0 0 0 10 2zm0 2a6 6 0 1 1 0 12 6 6 0 0 1 0-12zm-1 2v3H6v2h3v3h2v-3h3V9h-3V6z'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 2a8 8 0 1 0 4.9 14.3l5.4 5.4 1.4-1.4-5.4-5.4A8 8 0 0 0 10 2zm0 2a6 6 0 1 1 0 12 6 6 0 0 1 0-12zm-1 2v3H6v2h3v3h2v-3h3V9h-3V6z'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
}

/* Thumbnail strip */
.ig-thumb-scroller,
.ig-thumb-scroller-horizontal {
    overflow: hidden;
}

.ig-thumb-scroller-main-below {
    padding-top: 5px;
}

.ig-slider-items {
    margin: 0 !important;
    padding: 0 !important;
    list-style-type: none;
}

.ig-thumb-scroller-horizontal .ig-slider-items {
    white-space: nowrap;
}

.ig-thumb-scroller-horizontal .ig-slider-items li {
    display: inline-block;
}

.ig-thumb-scroller li {
    list-style-type: none !important;
    background-image: none !important;
}

.ig-scroller-img-wrapper {
    padding: 0;
    text-align: center;
}

.ig-img-link {
    display: inline-block;
    position: relative;
}

.ig-scroller-img {
    display: block;
    opacity: .6;
    transition: opacity .2s linear;
}

.ig-img-link:hover .ig-scroller-img,
.ig-img-link.ig-active .ig-scroller-img {
    opacity: 1;
}

/* Lightbox */
.igui-lightbox {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1000000;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #000;
    opacity: 0;
    transition: opacity .15s linear;
}

.igui-lightbox.igui-open {
    opacity: 1;
}

.igui-lightbox img {
    max-width: 90vw;
    max-height: 85vh;
}

.igui-lightbox-toolbar {
    position: absolute;
    top: 0;
    right: 0;
    padding: 10px;
}

.igui-close-large {
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    background: none;
    cursor: pointer;
}

.igui-close-large::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.3 5.7 12 12l6.3 6.3-1.4 1.4L10.6 13.4 5.7 18.3l-1.4-1.4L10.6 12 4.3 5.7l1.4-1.4L12 10.6l4.9-4.9z'/%3E%3C/svg%3E") center / 24px 24px no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.3 5.7 12 12l6.3 6.3-1.4 1.4L10.6 13.4 5.7 18.3l-1.4-1.4L10.6 12 4.3 5.7l1.4-1.4L12 10.6l4.9-4.9z'/%3E%3C/svg%3E") center / 24px 24px no-repeat;
}

.igui-lightbox .ig-lightbox-button {
    position: absolute;
    top: 50%;
    width: 40px;
    height: 60px;
    margin-top: -30px;
    padding: 0;
    border: 0;
    background: rgba(0, 0, 0, .3);
    cursor: pointer;
}

.igui-lightbox .ig-lightbox-button-left  { left: 20px; }
.igui-lightbox .ig-lightbox-button-right { right: 20px; }

.igui-lightbox .ig-lightbox-button::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    -webkit-mask: center / 22px 22px no-repeat;
    mask: center / 22px 22px no-repeat;
}

.igui-lightbox .ig-lightbox-button-left::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.4 4.6 8 12l7.4 7.4 1.4-1.4L10.8 12l6-6z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.4 4.6 8 12l7.4 7.4 1.4-1.4L10.8 12l6-6z'/%3E%3C/svg%3E");
}

.igui-lightbox .ig-lightbox-button-right::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8.6 4.6 16 12l-7.4 7.4-1.4-1.4 6-6-6-6z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8.6 4.6 16 12l-7.4 7.4-1.4-1.4 6-6-6-6z'/%3E%3C/svg%3E");
}


/* 20. Room pages
   ==========================================================================
   The five rooms share every id: only the banner photo, the texts and the
   carousel items change from page to page. */

/* Banner */
#sppb-addon-wrapper-1691910063102 {
    margin: 0;
}

#sppb-addon-1691910063102 .sppb-addon-title {
    color: #fff;
    font-family: "Playfair Display", serif;
    font-size: 50px;
    font-weight: 800;
}

#sppb-addon-1691910063102 .sppb-addon-overlay-image-content {
    height: 400px;
}

#sppb-addon-1691910063102 .overlay-background-style {
    background: rgba(28, 49, 5, .71);
}

@media (max-width: 767px) {
    #sppb-addon-1691910063102 .sppb-addon-title {
        font-size: 35px;
        line-height: 35px;
    }
}

/* Intro */
.sp-page-builder .page-content #section-id-1692919526827 {
    padding: 100px 0;
    background-color: #f2f7f4;
}

#sppb-addon-wrapper-1692919526835,
#sppb-addon-wrapper-1692919526836 {
    margin: 0 0 30px;
}

#sppb-addon-1692919526835 .sppb-addon-title {
    color: #2e5304;
    font-family: "Cormorant Garamond", serif;
    font-size: 50px;
    font-weight: 900;
}

#sppb-addon-1692919526836 .sppb-addon-title {
    font-family: "Poppins", sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
}

/* Details column and gallery */
.sp-page-builder .page-content #section-id-1692503106809 {
    padding: 100px 0 50px;
}

#sppb-addon-wrapper-1692509976041,
#sppb-addon-wrapper-1692504337182,
#sppb-addon-wrapper-1692515420179 {
    margin: 0 0 30px;
}

#sppb-addon-1692509976041 {
    padding: 10px;
    background-color: #efefef;
}

#sppb-addon-1692504337182 {
    font-size: 16px;
}

#sppb-addon-1692504337182 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}

#sppb-addon-1692515420179 a {
    color: #393939;
}

#sppb-addon-1692515420179 a:hover,
#sppb-addon-1692515420179 a:focus,
#sppb-addon-1692515420179 a:active {
    color: #437708;
}

#sppb-addon-wrapper-1692504337200 {
    margin: 30px;
}

/* Other rooms — each page repeats the block under its own ids:
   ticuna …055358 · doble …699962 · triple …962983 · cuádruple …994441 ·
   séxtuple …023867 */
.sp-page-builder .page-content #section-id-1692920055358,
.sp-page-builder .page-content #section-id-1692919699962,
.sp-page-builder .page-content #section-id-1692919962983,
.sp-page-builder .page-content #section-id-1692919994441,
.sp-page-builder .page-content #section-id-1692920023867 {
    padding: 100px 0;
    background-color: #f2f7f4;
    background-image: url(/images/2023/08/20/bghojas.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-attachment: scroll;
}

#sppb-addon-wrapper-1692920055368,
#sppb-addon-wrapper-1692919699969,
#sppb-addon-wrapper-1692919962991,
#sppb-addon-wrapper-1692919994448,
#sppb-addon-wrapper-1692920023875 {
    margin: 0;
}

#sppb-addon-1692920055368,
#sppb-addon-1692919699969,
#sppb-addon-1692919962991,
#sppb-addon-1692919994448,
#sppb-addon-1692920023875 {
    color: #191919;
}

#sppb-addon-1692920055368 .sppb-addon-title,
#sppb-addon-1692919699969 .sppb-addon-title,
#sppb-addon-1692919962991 .sppb-addon-title,
#sppb-addon-1692919994448 .sppb-addon-title,
#sppb-addon-1692920023875 .sppb-addon-title {
    color: #437708;
    font-family: "Playfair Display", serif;
    font-size: 35px;
    font-weight: 800;
}

#sppb-addon-wrapper-1692920055369,
#sppb-addon-wrapper-1692919803739,
#sppb-addon-wrapper-1692919962992,
#sppb-addon-wrapper-1692919994449,
#sppb-addon-wrapper-1692920023876 {
    margin: 0 0 30px;
}

#sppb-addon-1692920055369 .sppb-carousel-extended-heading,
#sppb-addon-1692919803739 .sppb-carousel-extended-heading,
#sppb-addon-1692919962992 .sppb-carousel-extended-heading,
#sppb-addon-1692919994449 .sppb-carousel-extended-heading,
#sppb-addon-1692920023876 .sppb-carousel-extended-heading {
    margin-bottom: 15px;
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 35px;
    font-weight: 700;
    line-height: 1;
    text-shadow: 1px 1px #242425;
}

#sppb-addon-1692920055369 .sppb-carousel-extended-nav-control .nav-control,
#sppb-addon-1692919803739 .sppb-carousel-extended-nav-control .nav-control,
#sppb-addon-1692919962992 .sppb-carousel-extended-nav-control .nav-control,
#sppb-addon-1692919994449 .sppb-carousel-extended-nav-control .nav-control,
#sppb-addon-1692920023876 .sppb-carousel-extended-nav-control .nav-control {
    width: 60px;
    height: 60px;
    color: #2c4d06;
    font-size: 40px;
    line-height: 60px;
    border-color: rgba(0, 0, 0, 0);
}

#sppb-addon-1692920055369 .sppb-carousel-extended-dots ul li,
#sppb-addon-1692919803739 .sppb-carousel-extended-dots ul li,
#sppb-addon-1692919962992 .sppb-carousel-extended-dots ul li,
#sppb-addon-1692919994449 .sppb-carousel-extended-dots ul li,
#sppb-addon-1692920023876 .sppb-carousel-extended-dots ul li {
    width: 25px;
    height: 2px;
    line-height: 2px;
    background: #d7d7d7;
    border-radius: 566px;
}

#sppb-addon-1692920055369 .sppb-carousel-extended-dots ul li:hover span,
#sppb-addon-1692920055369 .sppb-carousel-extended-dots ul li.active span,
#sppb-addon-1692919803739 .sppb-carousel-extended-dots ul li:hover span,
#sppb-addon-1692919803739 .sppb-carousel-extended-dots ul li.active span,
#sppb-addon-1692919962992 .sppb-carousel-extended-dots ul li:hover span,
#sppb-addon-1692919962992 .sppb-carousel-extended-dots ul li.active span,
#sppb-addon-1692919994449 .sppb-carousel-extended-dots ul li:hover span,
#sppb-addon-1692919994449 .sppb-carousel-extended-dots ul li.active span,
#sppb-addon-1692920023876 .sppb-carousel-extended-dots ul li:hover span,
#sppb-addon-1692920023876 .sppb-carousel-extended-dots ul li.active span {
    background: #99883c;
}

/* Call-us band */
.sp-page-builder .page-content #section-id-1692916088326,
.sp-page-builder .page-content #section-id-1692916108870,
.sp-page-builder .page-content #section-id-1692916127761,
.sp-page-builder .page-content #section-id-1692916147754,
.sp-page-builder .page-content #section-id-1692916173370 {
    padding: 20px 0;
    background-color: #2c4d06;
}

#sppb-addon-wrapper-1692916088333,
#sppb-addon-wrapper-1692916108892,
#sppb-addon-wrapper-1692916127769,
#sppb-addon-wrapper-1692916147781,
#sppb-addon-wrapper-1692916173379 {
    margin: 0;
}

#sppb-addon-1692916088333 .sppb-addon-title,
#sppb-addon-1692916108892 .sppb-addon-title,
#sppb-addon-1692916127769 .sppb-addon-title,
#sppb-addon-1692916147781 .sppb-addon-title,
#sppb-addon-1692916173379 .sppb-addon-title {
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 35px;
    font-weight: 700;
}

@media (min-width: 768px) and (max-width: 991px) {
    #sppb-addon-wrapper-1692920055368,
    #sppb-addon-wrapper-1692919699969,
    #sppb-addon-wrapper-1692919962991,
    #sppb-addon-wrapper-1692919994448,
    #sppb-addon-wrapper-1692920023875,
    #sppb-addon-wrapper-1692916088333,
    #sppb-addon-wrapper-1692916108892,
    #sppb-addon-wrapper-1692916127769,
    #sppb-addon-wrapper-1692916147781,
    #sppb-addon-wrapper-1692916173379 {
        margin: 0 0 20px;
    }
}

@media (max-width: 767px) {
    #sppb-addon-wrapper-1692920055368,
    #sppb-addon-wrapper-1692919699969,
    #sppb-addon-wrapper-1692919962991,
    #sppb-addon-wrapper-1692919994448,
    #sppb-addon-wrapper-1692920023875,
    #sppb-addon-wrapper-1692916088333,
    #sppb-addon-wrapper-1692916108892,
    #sppb-addon-wrapper-1692916127769,
    #sppb-addon-wrapper-1692916147781,
    #sppb-addon-wrapper-1692916173379 {
        margin: 0 0 10px;
    }
}


/* 21. Legal pages
   ==========================================================================
   The five share a title band, one long text block and the call-us band. Only
   the id of the last one changes from page to page. */

/* The banner is the same #video section every page uses, so the padding and the
   darker green are scoped by the itemid- class, as in section 17. */
.itemid-488 .sp-page-builder .page-content #video,
.itemid-489 .sp-page-builder .page-content #video,
.itemid-490 .sp-page-builder .page-content #video,
.itemid-491 .sp-page-builder .page-content #video,
.itemid-492 .sp-page-builder .page-content #video {
    padding: 50px 0;
    background-color: #253f08;
}

#sppb-addon-wrapper-1691877135165 {
    margin: 0;
}

#sppb-addon-1691877135165 .sppb-addon-title {
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 45px;
    font-weight: 700;
    text-shadow: 1px 1px #1c1c1c;
}

.sp-page-builder .page-content #section-id-1691895381166 {
    padding: 100px 0 50px;
}

#sppb-addon-wrapper-1691887003983 {
    margin: 0 0 30px;
}

#sppb-addon-1691887003983 .sppb-addon-title {
    color: #2c4d06;
    font-family: "Playfair Display", serif;
    font-size: 40px;
    font-weight: 700;
}

#sppb-addon-1691887003983 .sppb-addon-content {
    font-family: "Poppins", sans-serif;
}

.sp-page-builder .page-content #section-id-1692915891165,
.sp-page-builder .page-content #section-id-1692915511937,
.sp-page-builder .page-content #section-id-1692915912992,
.sp-page-builder .page-content #section-id-1692915986821,
.sp-page-builder .page-content #section-id-1692916030164 {
    padding: 20px 0;
    background-color: #2c4d06;
}

#sppb-addon-wrapper-1692915891198,
#sppb-addon-wrapper-1692915465518,
#sppb-addon-wrapper-1692915913028,
#sppb-addon-wrapper-1692915986829,
#sppb-addon-wrapper-1692916030172 {
    margin: 0;
}

#sppb-addon-1692915891198 .sppb-addon-title,
#sppb-addon-1692915465518 .sppb-addon-title,
#sppb-addon-1692915913028 .sppb-addon-title,
#sppb-addon-1692915986829 .sppb-addon-title,
#sppb-addon-1692916030172 .sppb-addon-title {
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: 35px;
    font-weight: 700;
}

@media (min-width: 768px) and (max-width: 991px) {
    #sppb-addon-wrapper-1692915891198,
    #sppb-addon-wrapper-1692915465518,
    #sppb-addon-wrapper-1692915913028,
    #sppb-addon-wrapper-1692915986829,
    #sppb-addon-wrapper-1692916030172 {
        margin: 0 0 20px;
    }
}

@media (max-width: 767px) {
    #sppb-addon-wrapper-1692915891198,
    #sppb-addon-wrapper-1692915465518,
    #sppb-addon-wrapper-1692915913028,
    #sppb-addon-wrapper-1692915986829,
    #sppb-addon-wrapper-1692916030172 {
        margin: 0 0 10px;
    }
}
