@import url('https://fonts.googleapis.com/css2?family=Baskervville&family=Montserrat&display=swap');

/* ===== ACCESSIBILITY IMPROVEMENTS ===== */

/* Skip to main content link for keyboard navigation */
.skip-to-main {
    position: absolute;
    top: -40px;
    left: 0;
    background: #9d8e59;
    color: white;
    padding: 8px;
    text-decoration: none;
    z-index: 100;
    font-weight: bold;
}

.skip-to-main:focus {
    top: 0;
}

/* Focus visible for keyboard navigation */
:focus-visible {
    outline: 2px solid #9d8e59;
    outline-offset: 2px;
}

/* Ensure all links are distinguishable */
a {
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
}

/* Remove underline from buttons and image links */
a.button,
a.btn,
button,
input[type="button"],
input[type="submit"],
img + a {
    text-decoration: none !important;
}

/* Focus states - high contrast */
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
    outline: 2px solid #9d8e59;
    outline-offset: 2px;
    box-shadow: 0 0 0 3px rgba(157, 142, 89, 0.25);
}

/* Remove default focus outline that gets overridden */
:focus {
    outline: 0 !important;
}

/* ===== END ACCESSIBILITY IMPROVEMENTS ===== */

address,
article,
aside,
blockqoute,
body,
button,
dd,
div,
dl,
dt,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hr,
html,
iframe,
input,
label,
legend,
li,
main,
nav,
ol,
p,
pre,
section,
select,
textarea,
ul {
    display: block;
    outline: 0;
}

a,
button {
    cursor: pointer;
    text-decoration: none;
}

:focus {
    outline: 0 !important;
}

a,
body,
p.white {
    color: #FAF9F6;
}

body {
    font-size: 16px;
    line-height: 1.6;
    font-weight: 400;
    font-family: "montserrat", Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-color: #5a5350 !important;
}

img {
    max-width: 100%;
    height: auto;
}

section {
    display: block;
    margin: 0;
    padding: 0;
}

p {
    margin-bottom: 1.3em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-bottom: 1.3em;
    line-height: 1.4;
    font-weight: 400;
    margin-top: 0;
}

h1 {
    font-size: 49px;
}

h2 {
    font-size: 44px;
}

h3 {
    font-size: 24 spx;
}

h4 {
    font-size: 36px;
}

ul {
    padding: 0;
}

.page,
textarea {
    overflow: hidden;
}

button {
    color: #fff;
}

strong {
    font-weight: 400;
}

.select-title {
    font-size: 30px;
    margin-bottom: 5px;
}

.select-title span {
    font-size: 17px;
    vertical-align: text-top;
    color: #f1f3f3;
}

.section-title {
    margin-bottom: 10px;
    margin-top: 0;
    padding-bottom: 15px;
    font-size: 20px;
    font-weight: 400 !important;
    text-align: center;
    line-height: 1.3;
    z-index: 4;
    position: relative;
    letter-spacing: 3px;
}

.section-title span {
    display: block;
    position: relative;
    font-family: Baskerville, "Palatino Linotype", Palatino, "Century Schoolbook L", "Times New Roman", serif;
    font-size: 18px;
    font-weight: 400;
    color: #ffffff;
    font-style: normal;
}

.section-title.white {
    color: #fff;
}

.bottom-line.section-title span:after,
.bottom-line.section-title span:before {
    content: " ";
    display: inline-block;
    vertical-align: middle;
    top: 50%;
    width: 10px;
    height: 1px;
    background: #ffffff;
}

.bottom-line.section-title span:before {
    margin-right: 10px;
}

.bottom-line.section-title span:after {
    margin-left: 10px;
}

.bottom-line.long.section-title span:after,
.bottom-line.long.section-title span:before {
    width: 100px;
}

.section-text {
    font-weight: 300;
}

.section-text.white {
    color: #fff;
}

img.img-border {
    border: 1px solid #e3e7e7;
    padding: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    display: block;
    margin: auto;
}

.img-line {
    line-height: 0;
}

.align-center {
    text-align: center !important;
}

.align-left {
    text-align: left !important;
    font-style: normal;
}

.left {
    float: left !important;
}

.right {
    float: right !important;
}

.relative {
    position: relative;
    z-index: 2;
}

.hidden {
    display: none;
}

.inline-block {
    display: inline-block;
}

.italic {
    font-style: italic;
    color: #e6dddd;
}

.font-alt {
    font-family: Baskerville, "Palatino Linotype", Palatino, "Century Schoolbook L", "Times New Roman", serif;
    font-weight: 500;
    text-transform: uppercase;
    color: inherit;
    letter-spacing: 0.9px;
}

.circle-letter-1,
.circle-letter-2 {
    display: inline-block;
    text-align: center;
    color: #fff !important;
    font-size: 34px;
    width: 45px;
    height: 45px;
    line-height: 45px;
    background-color: #ab8249;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    margin-right: 5px;
    margin-top: 5px;
    float: left;
}

.list-style-1 li,
.list-style-2 li,
.list-style-3 li,
.list-style-4 li {
    position: relative;
    padding-left: 15px;
    line-height: 2.3;
}

.list-style-1 li:before,
.list-style-2 li:before,
.list-style-3 li:before,
.list-style-4 li:before {
    position: absolute;
    z-index: 1;
    left: 0;
    font-size: 7px;
    line-height: 39px;
}

.list-style-2 li:before {
    content: "\f103";
    font-family: Flaticon;
}

.list-style-3 li:before,
.list-style-4 li:before {
    content: " ";
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
    margin-top: -3px;
    width: 6px;
    height: 6px;
    border: 1px solid #c7d5d3;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}

hr.alt-1 {
    border-top: 2px solid #c7d5d3;
    width: 100%;
}

hr.alt-2 {
    border-top: none;
    border-bottom: none;
    background-color: transparent;
    width: 100%;
    height: 0;
    margin: 0;
    padding: 0;
}

.menu-rect {
    position: absolute;
    left: 50%;
    bottom: -57px;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    max-width: 107px;
}

.small-height .menu-rect {
    opacity: 0;
}

.footer-rect,
.slider-rect-bot img {
    position: absolute;
    z-index: 20;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    max-width: 107px;
    margin-bottom: -8px;
}

.footer-rect {
    top: -56px;
}

header.sticky-header {
    position: relative;
    left: 0;
    width: 100%;
    z-index: 99;
    font-size: 0;
    background-color: #7a6e42;
    -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
    -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
}

header .bottom-header {
    padding: 15px 0;
}

header .inner-nav .logo>a {
    display: inline-block;
    height: 100%;
}

header .inner-nav .logo>a>img {
    height: 100%;
}

.small-height {
    height: 60px !important;
    line-height: 60px !important;
}

.site-top-panel {
    background-color: #422d17;
    line-height: 55px;
    font-size: 15px;
    position: relative;
    z-index: 999;
    align-content: center;
}

.background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
}

.home-section {
    width: 100%;
    height: 900px;
    display: block;
    position: relative;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.breadcrumb-section,
.footer-section,
.page-section,
.small-section {
    width: 100%;
    display: block;
    position: relative;
    overflow: hidden;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 90px 0;
    background-color: #545454;
}

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

.breadcrumb-section {
    height: 110px;
    padding: 10px 0 50px 0;
    background-attachment: scroll;
    background-position: top;
    margin-bottom: 100px;
}

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

.scroll {
    background-attachment: scroll;
}

.home-section .col-md-6 {
    padding: 0;
}

.main-nav {
    width: 100%;
    height: 80px;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1030;
    background-color: #7a6e42;
}

.full-wrapper {
    height: 100%;
}

.inner-nav>ul>li.nav-logo-wrap {
    padding: 0 40px;
}

.nav-logo-wrap .logo {
    max-width: 140px;
    height: 80px;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
    align-content: center;
}

.nav-logo-wrap .logo.small-height {
    max-width: 100px;
}

.nav-logo-wrap-sticky {
    position: absolute;
    top: 50%;
    left: 0;
    max-width: 200px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    display: none;
}

.inner-nav {
    display: inline-block;
}

.inner-nav ul {
    margin: auto;
    font-size: 17px;
    font-weight: 400;
    text-align: center;
    line-height: 1.3;
}

.inner-nav>ul>li {
    display: inline-block;
    padding: 0 7px;
    vertical-align: middle;
}

.mobile-on .nav-submenu>i {
    position: absolute;
    z-index: 1;
    display: block;
    top: 50%;
    right: 30px;
    margin-top: -10px;
    line-height: 1;
}

.sep a {
    color: #ffffff;
    cursor: default !important;
}

.inner-nav ul li .search-menu,
.inner-nav ul li a {
    height: 80px;
    line-height: 80px;
    display: inline-block;
    text-decoration: none;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
    cursor: pointer;
}

.small-height .inner-nav ul li .search-menu,
.small-height .inner-nav ul li a {
    height: 60px !important;
    line-height: 60px !important;
}

.submenu li ul {
    left: 100%;
    right: auto;
    top: 0;
}

.submenu {
    display: none;
    width: 190px;
    position: absolute;
    top: 100%;
    font-size: 15px !important;
    padding: 20px;
    background: rgba(93, 93, 93, 0.9);
    border-bottom: 4px solid;
}

.submenu li a {
    position: relative;
    display: block;
    padding: 10px 18px;
    width: 190px;
    text-align: center;
}

.submenu li:last-child a {
    border-bottom: none;
}

.inner-nav ul li .submenu li a {
    display: block;
    width: 100%;
    height: auto !important;
    line-height: 1.3 !important;
}

.inner-nav ul li .submenu li a:before {
    content: " ";
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -15px;
    z-index: 1;
    width: 30px;
    height: 1px;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.inner-nav ul li .submenu li a:hover:before {
    width: 80px;
    margin-left: -40px;
}

.mobile-on .inner-nav ul li .submenu li:last-child a:before {
    display: none;
}

.submenu-mega {
    white-space: nowrap;
    width: 100%;
    padding: 30px 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.submenu-mega-col {
    display: inline-block;
    vertical-align: top;
    overflow: visible;
    white-space: normal;
    width: 33.33%;
    margin-left: -5px;
    border-right: 1px;
}

.submenu-mega-col:last-child {
    border-right: 0;
}

.submenu-mega-col:first-child {
    margin-left: 0;
}

.submenu-mega-col>ul {
    float: none;
    margin: 0;
    width: auto;
    padding: 0;
}

.submenu-mega-col ul li {
    font-size: 14px;
}

.inner-nav ul li .submenu-mega li a {
    display: block;
    width: 100%;
    height: auto;
    line-height: 1.3;
    padding: 7px 18px;
    position: relative;
    text-align: center;
}

@media (min-width: 1025px) {
    .submenu {
        width: 320px;
    }

    .submenu li a {
        width: 100%;
        white-space: nowrap;
        overflow: visible;
        text-overflow: clip;
    }

    .submenu-mega {
        width: 95vw;
        max-width: 1320px;
        min-width: 1080px;
        padding: 30px 10px;
    }

    .submenu-mega-col {
        width: 30%;
    }

    .submenu-mega-col:nth-child(2) {
        width: 40%;
    }

    .inner-nav ul li .submenu-mega li a {
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        font-size: 13px;
        padding: 6px 10px;
    }

    .submenu-mega-title {
        white-space: nowrap;
        letter-spacing: 0.5px;
    }
}

.mobile-on .inner-nav ul li .submenu li a:hover,
.mobile-on .submenu li a.active,
.mobile-on .submenu li a:hover {
    background: rgba(255, 255, 255, 0.03);
}

.mobile-on .inner-nav ul li .submenu li a:not(.submenu-mega-title):hover {
    font-size: 15px;
}

.mobile-on .submenu>li:last-child>a {
    border: none !important;
}

.mobile-on .desktop-nav {
    display: none;
    width: 100%;
    position: absolute;
    top: 100%;
    left: 0;
    padding: 0 10px;
    z-index: 100;
}

.mobile-on .desktop-nav ul {
    width: 100%;
    float: none;
    background: rgba(93, 93, 93, 0.9);
    position: relative;
    overflow-x: hidden;
    border: 1px solid;
    border-top: 0;
    -webkit-border-bottom-left-radius: 5px;
    -moz-border-bottom-left-radius: 5px;
    border-bottom-left-radius: 5px;
    -webkit-border-bottom-right-radius: 5px;
    -moz-border-bottom-right-radius: 5px;
    border-bottom-right-radius: 5px;
}

.mobile-on .desktop-nav>ul {
    overflow-y: auto;
}

.mobile-on .desktop-nav ul li {
    display: block;
    float: none !important;
    overflow: hidden;
}

.mobile-on .desktop-nav ul li:last-child {
    border-color: #428bca;
}

.mobile-on .desktop-nav ul li ul {
    padding: 0 0 20px;
    margin-top: -2px !important;
    background-color: rgba(153, 147, 147, 0.774);
    border: 1px solid;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.mobile-on .desktop-nav ul li a,
.mobile-on .inner-nav ul li .submenu li a {
    display: block;
    width: 100%;
    height: 50px !important;
    line-height: 50px !important;
    position: relative;
    padding: 0 30px;
    border-left: none;
    border-right: none;
    border-bottom: 1px solid;
    letter-spacing: 1px;
    cursor: pointer;
}

.mobile-on .desktop-nav ul li:last-child a,
.mobile-on .inner-nav ul li .submenu li a {
    border-bottom: 0;
}

.mobile-on .desktop-nav ul li a.active,
.mobile-on .desktop-nav ul li a:hover {
    font-size: 18px;
}

.mobile-on .js-opened>.nav-submenu>.fa {
    border-color: rgba(82, 80, 78, 0.9);
    line-height: 14px;
}

.mobile-on .inner-nav li {
    margin: 0 20px !important;
    padding: 0 !important;
}

.mobile-on .submenu {
    display: none;
    opacity: 0;
    z-index: 10;
}

.mobile-on .submenu li {
    padding-left: 10px;
}

.mobile-on .menu-rect,
.mobile-on .nav-logo-wrap,
.mobile-on .sep {
    display: none !important;
}

.mobile-on .nav-logo-wrap-sticky {
    display: block;
}

.inner-nav li.js-opened .submenu {
    opacity: 1;
    background-color: rgba(65, 63, 62, 0.9);
}

.mobile-nav {
    display: none;
    float: right;
    vertical-align: middle;
    font-size: 20px;
    font-weight: 300;
    text-transform: uppercase;
    cursor: pointer;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
    -webkit-transition: background 0.3s, color 0.3s;
    -moz-transition: background 0.3s, color 0.3s;
    -o-transition: background 0.3s, color 0.3s;
    -ms-transition: 0.3s;
    transition: background 0.3s, color 0.3s;
}

.mobile-nav.small-height {
    color: #4c4c4c;
}

.mobile-nav:active {
    -webkit-box-shadow: 0 0 35px rgba(0, 0, 0, 0.05) inset;
    -moz-box-shadow: 0 0 35px rgba(0, 0, 0, 0.05) inset;
    box-shadow: 0 0 35px rgba(0, 0, 0, 0.05) inset;
}

.no-js .mobile-nav {
    width: 55px;
    height: 55px;
}

.mobile-on .mobile-nav {
    display: table;
}

.mobile-on .submenu {
    width: 100%;
    float: none;
    position: relative;
    overflow-x: hidden;
}

.submenu-mega-title {
    margin-bottom: 10px;
    text-transform: uppercase;
    font-size: 16px;
    white-space: nowrap;
}

.inner-nav ul li .submenu li a.submenu-mega-title:before {
    display: none;
}

.mobile-on .submenu-mega-col>ul {
    left: auto;
    right: auto;
    border: none;
}

.mobile-on .submenu-mega-col {
    display: block;
    width: auto;
    padding: 0;
    text-align: left;
    white-space: normal;
}

.banner-soc a {
    position: relative;
    z-index: 1;
    color: #c7d5d3;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    display: inline-block;
    margin: 0 2px;
}

.banner-soc a:before {
    content: " ";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-box-shadow: 0 0 0 2px #c7d5d3 inset;
    -moz-box-shadow: 0 0 0 2px #c7d5d3 inset;
    box-shadow: 0 0 0 2px #c7d5d3 inset;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-transition: 0.3s ease-out;
    -moz-transition: 0.3s ease-out;
    -o-transition: 0.3s ease-out;
    -ms-transition: 0.3s ease-out;
    transition: 0.3s ease-out;
}

.banner-soc a:hover {
    color: #fff;
}

.banner-soc a:hover:before {
    -webkit-box-shadow: 0 0 0 20px #c7d5d3 inset;
    -moz-box-shadow: 0 0 0 20px #c7d5d3 inset;
    box-shadow: 0 0 0 20px #c7d5d3 inset;
}

.banner-bottom .button {
    padding: 0 18px 0 38px;
    text-align: left;
    font-size: 16px;
    line-height: 1.15;
    margin-left: -2px;
}

.button {
    display: inline-block;
    position: relative;
    padding: 10px 30px;
    color: #fff;
    border: none;
    border-left: 4px solid #9d8e59;
    font-size: 18px;
    font-family: Philosopher;
    line-height: 1.375;
    text-decoration: none;
    letter-spacing: 1px;
    border-radius: 6px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.3s ease;
    background: linear-gradient(to bottom, #333333, #282828);
}

.button.small {
    height: auto;
    padding: 4px 28px;
    font-size: 17px;
}

.button.mini {
    height: auto;
    padding: 2px 28px;
    font-size: 16px;
}

.button.fullwidth {
    width: 100%;
}

.button-border {
    border: 1px solid #9d8e59;
    border-left: 4px solid #9d8e59;
    background: transparent;
    color: #9d8e59;
}

.button:hover {
    color: #fff;
    background: linear-gradient(to bottom, #3d3d3d, #303030);
    border-left-color: #b1a975;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
    font-family: philosopher;
    font-style: normal;
    font-weight: 400;
}

.button.button-border:hover {
    color: #fff;
    background: linear-gradient(to bottom, #333333, #282828);
    border-color: #9d8e59;
    border-left-color: #9d8e59;
}

.features-center {
    text-align: center;
}

.features-center p {
    margin-bottom: 0;
}

.slider-2 {
    overflow: hidden;
}

.nav-alt-1 .owl-buttons .owl-next,
.nav-alt-1 .owl-buttons .owl-prev {
    position: absolute;
    z-index: 40;
    top: -35px;
    right: 0;
    display: inline-block;
    font-size: 16px;
    color: #ffffff;
}

.nav-alt-1 .owl-buttons .owl-prev {
    right: 20px;
}

.dots-alt .owl-pagination,
.dots-alt2 .owl-pagination {
    position: absolute;
    z-index: 5;
    bottom: -50px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.dots-alt .owl-page,
.dots-alt2 .owl-page {
    display: inline-block;
    padding: 0 5px;
    position: relative;
}

.tp-leftarrow,
.tp-rightarrow {
    position: absolute;
    z-index: 40;
    display: inline-block;
    font-size: 24px;
    color: #473012;
    width: 38px;
    height: 38px;
    background-color: #9d8e59;
    -webkit-box-shadow: 0 0 0 4px #f7f5ef inset, 0 0 0 1px #c7d5d3;
    -moz-box-shadow: 0 0 0 4px #f7f5ef inset, 0 0 0 1px #c7d5d3;
    box-shadow: 0 0 0 4px #f7f5ef inset, 0 0 0 1px #c7d5d3;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    text-align: center;
    line-height: 36px;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.tp-leftarrow:hover,
.tp-rightarrow:hover {
    color: #8d6025;
    -webkit-box-shadow: inset 0 0 0 20px #473012, 0 0 0 1px #c7d5d3;
    -moz-box-shadow: 0 0 0 20px #f7f5ef inset, 0 0 0 1px #c7d5d3;
    box-shadow: inset 0 0 0 20px #473012, 0 0 0 1px #c7d5d3;
}

.tparrows:hover {
    background: 0 0;
}

.tp-bannertimer {
    top: inherit;
    bottom: 0;
}

.products.list-view>div {
    width: 100%;
}

.products.list-view p {
    display: block;
}

.products.list-view a.button {
    float: right;
}

.products.list-view>* {
    margin-bottom: 30px;
}

table {
    border-collapse: separate;
}

table.table {
    font-size: 16px;
}

table.table tr td:first-child,
table.table tr th:first-child {
    text-align: left;
}

table.table tr td:last-child,
table.table tr th:last-child {
    max-width: 45px;
    padding: 7px;
}

::-webkit-input-placeholder {
    color: #646464;
}

::-moz-placeholder {
    color: #646464;
}

:-moz-placeholder {
    color: #646464;
}

:-ms-input-placeholder {
    color: #646464;
}

/* ===== FORM ACCESSIBILITY IMPROVEMENTS ===== */

/* Ensure form labels are visible and had proper contrast */
label {
    display: block;
    margin-bottom: 0.5em;
    font-weight: 500;
    color: #e8e8e8;
}

/* Form input focus states with high contrast */
.form input[type="color"],
.form input[type="date"],
.form input[type="email"],
.form input[type="number"],
.form input[type="password"],
.form input[type="search"],
.form input[type="tel"],
.form input[type="text"],
.form input[type="url"],
.form select {
    display: inline-block;
    height: 44px;
    vertical-align: middle;
    font-size: 15px;
    text-transform: none;
    color: #646464;
    border: 2px solid #c7d5d3;
    padding-left: 15px;
    padding-right: 15px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.form input[type="color"]:focus,
.form input[type="date"]:focus,
.form input[type="email"]:focus,
.form input[type="number"]:focus,
.form input[type="password"]:focus,
.form input[type="search"]:focus,
.form input[type="tel"]:focus,
.form input[type="text"]:focus,
.form input[type="url"]:focus,
.form select:focus {
    color: #646464;
    border-color: #9d8e59;
    box-shadow: 0 0 0 3px rgba(157, 142, 89, 0.15);
    outline: 0;
    -webkit-appearance: none;
}

.form textarea {
    font-size: 15px;
    border: 2px solid #c7d5d3;
    outline: 0;
    text-transform: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    height: 120px;
    max-width: 100%;
    color: #646464;
    padding-left: 8px;
    padding-right: 8px;
    -webkit-appearance: none;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.form textarea:focus {
    color: #646464;
    border-color: #9d8e59;
    box-shadow: 0 0 0 3px rgba(157, 142, 89, 0.15);
}

/* ===== END FORM ACCESSIBILITY IMPROVEMENTS ===== */

form.form.code,
form.form.login {
    font-size: 16px;
}

form.form.code .input-md,
form.form.login .input-md {
    font-size: 16px !important;
    -webkit-border-radius: 3px !important;
    -moz-border-radius: 3px !important;
    border-radius: 3px !important;
    margin-right: 25px;
    width: 260px;
}

form.form.code .input-md {
    vertical-align: baseline;
}

input.input-text {
    height: 30px;
    width: 100%;
    padding-left: 8px;
    padding-right: 8px;
    font-size: 17px;
    border: 1px solid #c7d5d3;
    text-transform: none;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    margin-top: 5px;
}

input.input-text:focus {
    color: #646464;
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    outline: 0;
}

.payment_method_bank,
.payment_method_cheque,
.payment_method_paypal {
    position: relative;
    margin-bottom: 20px;
}

.payment_box {
    font-size: 16px;
    padding: 10px 30px;
    background-color: #f0f7f2;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

footer {
    position: relative;
}

.footer-section {
    background-color: #7a6e42;
    color: #fff;
}

.footer-section .img-line {
    margin-bottom: 20px;
}

.footer-about .form {
    width: 270px;
    margin: auto;
}

.footer-about .form .input-sm:-moz-placeholder {
    color: #fff;
}

.footer-about .form .input-sm:-ms-input-placeholder {
    color: #fff;
}

.footer-contact {
    font-size: 16px;
    line-height: 1.2;
}

.footer-contact a {
    color: #fff;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.footer-contact a:hover {
    color: #f5f5f5;
}

.twitter-footer .tweet_time {
    position: relative;
    display: block;
    margin-top: 5px;
    padding-top: 5px;
}

.twitter-footer .tweet_time:before {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 25px;
    height: 2px;
    background-color: #dfc449;
}

.twitter-footer .tweet_time a {
    color: #fff;
}

.twitter-footer .twitt {
    float: left;
    font-size: 24px;
}

.twitter-footer li p {
    margin-left: 30px;
}

.news-item {
    max-width: 370px;
    margin-left: auto;
    margin-right: auto;
}

.alt-2.news-item:not(.mini) {
    min-height: 360px;
}

.alt-2.news-item.small {
    max-width: 260px;
    padding-top: 50px;
    margin: auto;
}

.news-right .alt-2.news-item.small {
    margin-right: 0;
}

.news-left .alt-2.news-item.small {
    margin-left: 0;
}

.alt-2.news-item.mini {
    max-width: 165px;
}

.alt-2 .news-media,
.alt-3 .news-media {
    position: relative;
}

.alt-2 .news-media img {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}

.alt-2 .news-media:before {
    content: " ";
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 0 8px rgba(157, 142, 89, 0.8) inset;
    -moz-box-shadow: 0 0 0 8px rgba(157, 142, 89, 0.8) inset;
    box-shadow: 0 0 0 8px rgba(157, 142, 89, 0.8) inset;
}

.accordion,
.toggle {
    text-align: left;
}

.tab-content {
    padding: 15px 30px;
    border: 1px solid;
    -webkit-border-radius: 8px;
    -moz-border-radius: 0 8px 8px;
    border-radius: 0 8px 8px;
    -webkit-border-top-left-radius: 0;
}

.tab-content p {
    line-height: 1.2;
    margin-bottom: 10px;
}

.tab-title {
    font-size: 17px;
    margin-bottom: 5px;
}

.pricing-table-container {
    max-width: 263px;
    margin: auto;
}

.pricing-table {
    position: relative;
    z-index: 1;
    border: 1px solid #ab8249;
    -webkit-border-top-left-radius: 285px;
    -webkit-border-top-right-radius: 285px;
    -webkit-border-bottom-left-radius: 20px;
    -webkit-border-bottom-right-radius: 20px;
    -moz-border-radius: 285px 285px 20px 20px;
    border-radius: 285px 285px 20px 20px;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.active.pricing-table {
    margin: -14px -14px 0;
    border: 1px solid #c7d5d3;
}

.pricing-table .img-line {
    margin-top: -8px;
}

.pricing-media {
    position: relative;
    z-index: 1;
    margin-top: -2px;
}

.pricing-media img {
    width: 100%;
    -webkit-border-radius: 285px;
    -moz-border-radius: 285px;
    border-radius: 285px;
    padding: 1px;
}

.pricing-media:before {
    content: " ";
    position: absolute;
    z-index: 1;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-border-radius: 285px;
    -moz-border-radius: 285px;
    border-radius: 285px;
    -webkit-box-shadow: inset 0 0 0 10px #d4cfcf, 0 0 0 1px #c7d5d3;
    -moz-box-shadow: 0 0 0 10px #c7d5d3 inset, 0 0 0 1px #c7d5d3;
    box-shadow: inset 0 0 0 10px #d4cfcf, 0 0 0 1px #c7d5d3;
}

.pricing-price {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 105px;
    height: 105px;
    line-height: 1;
    text-align: center;
    font-size: 40px;
    color: #fff !important;
    padding-top: 25px;
    -webkit-border-radius: 60px;
    -moz-border-radius: 60px;
    border-radius: 60px;
}

.active.pricing-table .pricing-price {
    background: #ffca28;
}

.pricing-price sup {
    font-size: 20px;
    vertical-align: middle;
}

.pricing-title {
    font-size: 30px;
    margin-bottom: 10px;
    margin-top: 5px;
}

.pricing-table ul {
    padding: 0 15px;
    margin-bottom: 30px;
    margin-top: 15px;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.active.pricing-table ul {
    padding: 0 25px;
}

.pricing-table ul li {
    padding: 5px 0;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

/* Remove alternating background from pricing table list items so the table bg is lost */
.pricing-table ul li:nth-child(2n + 1) {
    background-color: transparent;
}

.pricing-table:not(.active):hover {
    margin-top: -15px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.25);
    -moz-box-shadow: 0 0 15px rgba(0, 0, 0, 0.25);
    -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.25);
}

.pricing-table:not(.active):hover ul li {
    padding: 7px 0;
    color: #fff;
}

.serv-title {
    font-size: 20px;
    margin-bottom: 10px;

}

.serv-button {
    display: block;
    text-align: right;
}

.serv-button a {
    width: auto;
    max-height: none;
    padding: 4px 10px !important;
    margin-left: 7px;
    margin-top: 4px;
    margin-bottom: 4px;
}

.serv-button a span {
    font-size: 16px;
    vertical-align: text-top;
}

.exp-media {
    position: relative;
    border: 3px solid #c7d5d3;
    padding: 10px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    max-width: 270px;
    margin: auto;
}

.exp-media img {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    overflow: hidden;
}

.exp-title {
    font-size: 24px;
    margin-bottom: 0;
    margin-top: 10px;
}

.expert-container .img-line {
    margin-top: 10px;
    margin-bottom: 10px;
}

.expert-container p {
    padding: 0 15px;
}

.work-filter {
    list-style: none;
    padding: 0;
    text-transform: uppercase;
    margin-top: 10px;
    display: inline-block;
}

.work-filter>* {
    display: inline-block;
}

.work-filter a {
    display: inline-block;
    position: relative;
    z-index: 1;
    padding: 0 7px;
    text-decoration: none;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.work-filter a.active,
.work-filter a:hover {
    color: #9d8e59;
}

#filter-grid hr {
    display: inline-block;
    width: 100%;
}

#filter-grid li:last-child hr {
    display: none;
}

.filter-grid {
    max-width: 1920px;
    margin: 30px auto 0;
}

.avatar {
    display: inline-block;
    float: left;
    margin-right: 10px;
    padding: 3px;
    border: 1px solid #c7d5d3;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}

.avatar img {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}

.twitter li p {
    margin-left: 25px;
}

.price_slider_amount {
    display: inline-block;
    font-size: 16px;
    margin-top: 5px;
    letter-spacing: 1px;
}

.price_slider .ui-slider-range {
    height: 5px;
    position: absolute;
}

.price_slider .ui-slider-handle {
    width: 0;
    height: 0;
    padding-bottom: 11px;
    position: absolute;
    top: 0;
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    transition: none;
}

.price_slider .ui-slider-handle+.ui-slider-handle {
    transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
}

.price_slider .ui-slider-handle:before {
    content: " ";
    position: absolute;
    z-index: 1;
    bottom: 3px;
    left: -1px;
    width: 13px;
    height: 13px;
    background-color: #fff;
    border: 1px solid;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}

.ui-datepicker-calendar {
    width: 100%;
    border-top: 1px solid;
    padding-top: 5px;
    margin-top: 15px;
}

.ui-datepicker-calendar td,
.ui-datepicker-calendar th {
    text-align: center;
    width: 31px;
    height: 31px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    margin: 0 3px;
    display: inline-block;
    padding-top: 3px;
}

.ui-datepicker-current-day a {
    color: #fff;
}

.ui-datepicker-header {
    position: relative;
}

.ui-datepicker-title {
    text-align: center;
    font-family: Philosopher;
    font-weight: 600;
}

.ui-datepicker-next,
.ui-datepicker-prev {
    position: absolute;
    z-index: 1;
    top: 0;
    width: 28px;
    height: 28px;
    line-height: 28px;
    font-size: 14px;
    text-align: center;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.ui-datepicker-next:hover,
.ui-datepicker-prev:hover {
    color: #fff;
}

.ui-datepicker-prev {
    left: 0;
}

.ui-datepicker-next {
    right: 0;
}

.widget-form {
    position: relative;
}

.widget-form form input {
    font-size: 14px !important;
    width: 100%;
    -webkit-border-radius: 3px !important;
    -moz-border-radius: 3px !important;
    border-radius: 3px !important;
    height: 38px !important;
}

.widget-form h4 {
    font-size: 18px;
    margin-bottom: 10px;
    font-weight: 400;
}

.widget-form .form textarea {
    height: 38px;
    font-size: 14px;
    padding-top: 7px;
}

.widget-navigation ul {
    font-family: Philosopher;
    overflow: hidden;
}

.widget-navigation h4 {
    float: none;
}

.widget-navigation>ul {
    border: 1px solid;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-align: center;
}

.widget-navigation li {
    padding-left: 0;
    overflow: hidden;
}

.widget-navigation>ul>li {
    margin: 0 20px;
    border-bottom: 1px solid;
}

.widget-navigation li:last-child {
    border-bottom: 0;
}

.widget-navigation a {
    display: block;
    padding: 6px 0;
}

.widget-navigation li:before {
    display: none;
}

.widget-navigation>ul>li>a {
    padding: 10px 0;
    margin: 0 20px;
    text-transform: uppercase;
}

.widget-navigation>ul>li>ul>li>a {
    padding: 7px 0;
    margin: 0 20px;
    border-bottom: 1px solid;
}

.widget-navigation>ul>li>ul>li:last-child>a {
    border-bottom: 0;
}

.widget-navigation>ul>li>ul>li>ul>li>a {
    position: relative;
}

.widget-navigation>ul>li>ul>li>ul>li>a:before {
    content: " ";
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -15px;
    z-index: 1;
    width: 30px;
    height: 1px;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.widget-navigation>ul>li>ul>li>ul>li>a:hover:before {
    width: 80px;
    margin-left: -40px;
}

.widget-navigation>ul>li.active,
.widget-navigation>ul>li.hover>a,
.widget-navigation>ul>li:hover>a {
    font-weight: 700;
}

.widget-navigation>ul>li.active:before,
.widget-navigation>ul>li.hover> :before,
.widget-navigation>ul>li:hover:before,
.widget-navigation>ul>li>ul>li:before {
    color: #fff;
}

.widget-navigation>ul>li>ul>li.active:before,
.widget-navigation>ul>li>ul>li.hover:before,
.widget-navigation>ul>li>ul>li:hover:before {
    color: #f27c66;
}

.widget-navigation>ul>li>ul {
    margin-bottom: -1px;
    border: 1px solid;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background-color: #fbfaf6;
}

.widget-navigation>ul>li>ul>li {
    color: #fff;
}

.widget-navigation>ul>li ul {
    display: none;
}

.widget-navigation>ul>li.active ul {
    display: block;
}

.form {
    position: relative;
}

.form input[type="color"],
.form input[type="date"],
.form input[type="email"],
.form input[type="number"],
.form input[type="password"],
.form input[type="search"],
.form input[type="tel"],
.form input[type="text"],
.form input[type="url"],
.form select {
    display: inline-block;
    height: 44px;
    vertical-align: middle;
    font-size: 15px;
    text-transform: none;
    color: #646464;
    border: 1px solid #c7d5d3;
    padding-left: 15px;
    padding-right: 15px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
}

.form input[type="color"].input-md,
.form input[type="date"].input-md,
.form input[type="email"].input-md,
.form input[type="number"].input-md,
.form input[type="password"].input-md,
.form input[type="search"].input-md,
.form input[type="tel"].input-md,
.form input[type="text"].input-md,
.form input[type="url"].input-md,
.form select.input-md {
    height: 30px;
    padding-left: 8px;
    padding-right: 8px;
    font-size: 15px;
    border: 1px solid #c7d5d3;
    text-transform: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin-bottom: 15px;
    -webkit-appearance: none;
}

.form input[type="color"]:focus,
.form input[type="date"]:focus,
.form input[type="email"]:focus,
.form input[type="number"]:focus,
.form input[type="password"]:focus,
.form input[type="search"]:focus,
.form input[type="tel"]:focus,
.form input[type="text"]:focus,
.form input[type="url"]:focus,
.form select:focus {
    color: #646464;
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    outline: 0;
    -webkit-appearance: none;
}

.form textarea {
    font-size: 15px;
    border: 1px solid #c7d5d3;
    outline: 0;
    text-transform: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    height: 120px;
    max-width: 100%;
    color: #646464;
    padding-left: 8px;
    padding-right: 8px;
    -webkit-appearance: none;
}

.form textarea:focus {
    color: #646464;
    -webkit-box-shadow: 0 0 3px rgba(21, 21, 21, 0.3);
    -moz-box-shadow: 0 0 3px rgba(21, 21, 21, 0.3);
    box-shadow: 0 0 3px rgba(21, 21, 21, 0.3);
}

.contact-title {
    font-size: 24px;
    margin-bottom: 5px;
}

.contact-follow .img-line,
.contact-offices .img-line {
    margin-bottom: 7px;
}

.contact-forms .img-line {
    margin-bottom: 13px;
}

.contact-follow p {
    margin-bottom: 15px;
}

.contact-follow a {
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.contact-soc a {
    position: relative;
    z-index: 1;
    color: #9d8e59;
    width: 40px;
    height: 40px;
    line-height: 40px;
    display: inline-block;
    margin: 0 2px;
}

.contact-soc a:before {
    content: " ";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-box-shadow: 0 0 0 1px #c7d5d3 inset;
    -moz-box-shadow: 0 0 0 1px #c7d5d3 inset;
    box-shadow: 0 0 0 1px #c7d5d3 inset;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.contact-soc a:hover {
    color: #b1b1b1;
}

.contact-soc a:hover:before {
    -webkit-box-shadow: 0 0 0 20px #c7d5d3 inset;
    -moz-box-shadow: 0 0 0 20px #c7d5d3 inset;
    box-shadow: 0 0 0 20px #c7d5d3 inset;
}

.google-map {
    position: relative;
    background-color: #8d6025;
}

#map-canvas {
    height: 495px;
    position: relative;
    z-index: 1;
}

.info-boxes {
    line-height: 1.2;
    position: relative;
    font-size: 1em;
    display: block;
    padding: 7px 60px;
    margin-bottom: 20px;
    min-height: 60px;
    max-width: 555px;
    margin-right: auto;
    margin-left: auto;
    color: #fff;
    border: 1px solid transparent;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

.info-boxes:last-child {
    margin-bottom: 0;
}

.info-boxes.error-message {
    background-color: #f2722e;
}

.info-boxes .close-button {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 20px;
    cursor: pointer;
    color: #fff;
    -ms-transition: 0.3s;
    -moz-transition: 0.3s;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

#scroll-top {
    position: fixed;
    z-index: 100;
    bottom: 20px;
    right: 20px;
    width: 40px;
    height: 40px;
    text-align: center;
    font-size: 12px;
    cursor: pointer;
    background-color: #7a6e42;
    text-transform: uppercase;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
    -webkit-box-shadow: 0 0 0 1px #fff inset, 0 0 0 3px #ebe6d2;
    -moz-box-shadow: 0 0 0 1px #fff inset, 0 0 0 3px #ebe6d2;
    box-shadow: 0 0 0 1px #fff inset, 0 0 0 3px #ebe6d2;
}

#scroll-top>* {
    display: block;
}

#scroll-top>i {
    margin-top: 5px;
}

#scroll-top:hover {
    -webkit-box-shadow: inset 0 0 0 20px #494540, 0 0 0 3px #ebe6d2;
    -moz-box-shadow: 0 0 0 20px #fff inset, 0 0 0 3px #ebe6d2;
    box-shadow: inset 0 0 0 20px #3f3d3b, 0 0 0 3px #ebe6d2;
}

#preloader {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 999999;
    display: block;
    background: #fff;
}

.preloader-wave {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 60px;
    height: 60px;
    margin: -30px 0 0 -30px;
}

.preloader-wave:after,
.preloader-wave:before {
    position: absolute;
    display: inline-block;
    content: "";
    width: 100px;
    height: 100px;
    border-radius: 50%;
    -webkit-animation: 1.6s linear infinite preloader-wave;
    animation: 1.6s linear infinite preloader-wave;
}

.preloader-wave:after {
    animation-delay: -0.8s;
    -webkit-animation-delay: -0.8s;
}

@keyframes preloader-wave {
    0% {
        -webkit-transform: scale(0, 0);
        transform: scale(0, 0);
        opacity: 0.5;
    }

    100% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1);
        opacity: 0;
    }
}

@-webkit-keyframes preloader-wave {
    0% {
        -webkit-transform: scale(0, 0);
        opacity: 0.5;
    }

    100% {
        -webkit-transform: scale(1, 1);
        opacity: 0;
    }
}

.accordion>dd:before,
.accordion>dt>a.active,
.accordion>dt>a>i:after,
.accordion>dt>a>i:before,
.alt-3 .gift-inside-2,
.alt-3 .gift-inside-2-white,
.circle-letter-2,
.code-enter a:before,
.dots-alt .owl-page span,
.dots-alt .owl-page.active span,
.features-icon,
.features-title:before,
.footer-tweets-item .line,
.info-boxes.confirmation-message,
.info-boxes.confirmation-message.alt .info-box-icon,
.inner-nav ul li .submenu li a:before,
.login-enter a:before,
.nav-tabs>li.active>a,
.nav-tabs>li.active>a:focus,
.nav-tabs>li.active>a:hover,
.nav-tabs>li>a:hover,
.preloader-wave:after,
.preloader-wave:before,
.price_slider .ui-slider-range,
.pricing-price,
.single-price .old-price:before,
.toggle>dd:before,
.toggle>dt>a.active,
.ui-datepicker-current-day,
.widget-banner h4 span:after,
.widget-banner h4 span:before,
.widget-navigation>ul>li>ul>li>ul>li>a:before,
.widget-post .author:before,
.widget-tag a:before,
.widget-twitter .tweet_time:before,
ins.ins-2 {
    background-color: #ab8249;
}

#list-grid>div.active,
#scroll-top,
.accordion>dt>a,
.alt-1 .gift-price,
.alt-1 .news-date,
.alt-1 .news-title,
.alt-1 .portfolio-title,
.alt-2 .gift-step,
.alt-2 .gift-title h3,
.alt-2 .news-title,
.alt-3 .gift-inside-1,
.alt-3 .news-title,
.banner-title,
.billing-fields .list-style-2 li .free,
.billing-fields select,
.blog-comment,
.blog-item .blog-date,
.blog-post .blog-title.comments span,
.blog-title,
.blog-title.link a,
.blog-title.link a:hover,
.code-enter a,
.comment .meta,
.comment .reply:hover,
.contact-follow a:hover,
.contact-title,
.exp-title,
.features-center:hover .features-icon i,
.features-icon.alt-1 i,
.features-title,
.font-alt,
.footer-contact a.mail,
.footer-soc-links a:hover,
.group,
.info-boxes.confirmation-message .info-box-icon,
.info-boxes.confirmation-message.alt .close-button,
.info-boxes.confirmation-message.alt .info-title,
.inner-nav ul li a.active,
.inner-nav ul li a:hover,
.link-color,
.list-style-1 li:before,
.list-style-2 li:before,
.list-style-2.shop-cart li:last-child,
.list-style-3 li:before,
.list-style-3 li>a:hover>span,
.list-style-3 li>a>span,
.list-style-4 li:before,
.login-enter a,
.mobile-nav.active,
.mobile-nav:hover,
.nav-tabs>li>a,
.nav-tabs>li>a:hover,
.payment_method_paypal label a,
.payment_method_paypal label a:hover,
.pricing-title,
.promo-title,
.promo-title-top,
.search-submit,
.section-title,
.select-title,
.serv-title,
.shop-categories a,
.shop-container .info a:hover,
.shop-info-title,
.shop-title,
.single-price .reg-price,
.skill-bar .name .skill-bar-perc,
.skill-bar .name span,
.submenu-mega-title,
.tab-title,
.tel-wrap address a:hover,
.title-under h3,
.title-under.alt a h3:hover,
.toggle>dd,
.toggle>dt>a:before,
.tparrows:hover:before,
.twitter-footer .twitt,
.twitter-footer a,
.ui-datepicker-inline thead,
.ui-datepicker-next,
.ui-datepicker-prev,
.ui-datepicker-title,
.widget-archives li a:hover,
.widget-categories .cat-item span,
.widget-comments .comments-bottom,
.widget-meta li a:hover,
.widget-meta li:before,
.widget-navigation>ul>li>a,
.widget-navigation>ul>li>ul>li.active,
.widget-navigation>ul>li>ul>li.active>a,
.widget-navigation>ul>li>ul>li.hover>a,
.widget-navigation>ul>li>ul>li:hover>a,
.widget-navigation>ul>li>ul>li>ul>li.hover>a,
.widget-tag,
.widget-tag a:hover,
.widget-twitter .twitt,
.widget-twitter a,
.work-filter a,
aside h3,
aside h4,
blockquote,
form.form.login .lost,
form.form.login .lost:hover,
strong,
table.shopping-cart-table tr td a.shop-cart-name,
table.shopping-cart-table tr td a.shop-cart-name:hover {
    color: #FFFFFF;
}

.alt-1.work-filter a,
.alt-1.work-filter a.active,
.alt-1.work-filter a:hover,
.alt-3 .gift-inside-2-white:after,
.alt-3 .gift-inside-2-white:before,
.alt-3 .gift-inside-2:after,
.alt-3 .gift-inside-2:before,
.blog-title.link a,
.blog-title.link a:hover,
.form input[type="color"]:focus,
.form input[type="date"]:focus,
.form input[type="email"]:focus,
.form input[type="number"]:focus,
.form input[type="password"]:focus,
.form input[type="search"]:focus,
.form input[type="tel"]:focus,
.form input[type="text"]:focus,
.form input[type="url"]:focus,
.form select:focus,
.form textarea:focus,
.info-boxes.confirmation-message.alt,
.list-style-2.shop-cart li:before,
.mobile-on .desktop-nav ul,
.mobile-on .desktop-nav ul li a,
.mobile-on .desktop-nav ul li ul,
.mobile-on .inner-nav ul li .submenu li a,
.nav-tabs>li.active>a,
.nav-tabs>li.active>a:focus,
.nav-tabs>li.active>a:hover,
.nav-tabs>li>a,
.nav-tabs>li>a:hover,
.price_slider .ui-slider-handle:before,
.skill-bar .bar,
.submenu,
.tab-content,
.title-under h3,
.title-under.alt a h3:hover,
.title-under.alt h3,
.ui-datepicker-calendar,
.widget-banner .product,
.widget-cart .product,
.widget-cart article,
.widget-navigation>ul,
.widget-navigation>ul>li,
.widget-navigation>ul>li>ul,
.widget-navigation>ul>li>ul>li>a,
.widget-selers .product,
aside,
input.input-text:focus {
    border-color: #ab8249;
}


.iframe-container {
    position: relative;
    overflow: hidden;
    padding-top: 60%;
}

.iframe-container iframe {

    position: absolute;
    top: 0;
    border: 0;
    height: 100%;
    width: 100%;
}

.active.pricing-table .pricing-media:before {
    -webkit-box-shadow: 0 0 0 10px #ab8249 inset;
    -moz-box-shadow: 0 0 0 10px #ab8249 inset;
    box-shadow: 0 0 0 10px #ab8249 inset;
}

#list-grid>div.active,
.accordion>dt>a>i,
.comment .reply:hover,
.toggle>dt>a:before,
.ui-datepicker-next,
.ui-datepicker-prev {
    -webkit-box-shadow: 0 0 0 1px lab(57.18% 9.07 36.6) inset;
    -moz-box-shadow: 0 0 0 1px #ab8249 inset;
    box-shadow: 0 0 0 1px #ab8249 inset;
}

.comment .reply,
.ui-datepicker-next:hover,
.ui-datepicker-prev:hover {
    -webkit-box-shadow: 0 0 0 14px #ab8249 inset;
    -moz-box-shadow: 0 0 0 14px #ab8249 inset;
    box-shadow: 0 0 0 14px #ab8249 inset;
}

.input-text::-webkit-input-placeholder {
    color: #ab8249;
}

.input-text::-moz-placeholder {
    color: #ab8249;
}

.input-text:-moz-placeholder {
    color: #ab8249;
}

.input-text:-ms-input-placeholder {
    color: #ab8249;
}

@media only screen and (max-width: 1200px) {
    .alt-2.news-item.small {
        padding-top: 20px;
    }

    .alt-2.news-item:not(.mini) {
        min-height: inherit;
    }
}

@media only screen and (max-width: 992px) {

    .news-left .alt-2.news-item.small,
    .news-right .alt-2.news-item.small {
        margin-right: auto;
        margin-left: auto;
    }

    .footer-about,
    .footer-tweets {
        padding-bottom: 9px;
        margin-bottom: 10px;
    }
}

@media only screen and (max-width: 550px) {
    .iframe-container {
        position: relative;
        overflow: hidden;
        padding-top: 170%;
    }

    .iframe-container iframe {
        position: absolute;
        top: 0;
        border: 0;
        height: 100%;
        width: 100%;
    }

    .serv-button {
        float: none;
    }
}

@media only screen and (max-width: 480px) {
    .tab-content {
        -webkit-border-top-right-radius: 0;
        -moz-border-top-right-radius: 0;
        border-top-right-radius: 0;
    }

}

@media (max-width: 768px) {
    img {
        max-width: 100%;
    }
}

.ribbon-wrapper-red {
    width: 85px;
    height: 88px;
    overflow: hidden;
    position: absolute;
    top: -3px;
    right: -3px;
}

.ribbon-red {
    font: bold 8px Sans-Serif;
    text-align: center;
    text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    position: relative;
    padding: 7px 0;
    left: -10ípx;
    top: 15px;
    width: 120px;
    background-color: #ea181e;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#ea181e), to(#b90005));
    background-image: -webkit-linear-gradient(top, #ea181e, #b90005);
    background-image: -moz-linear-gradient(top, #bfdc7a, #8ebf45);
    background-image: -ms-linear-gradient(top, #bfdc7a, #8ebf45);
    background-image: -o-linear-gradient(top, #bfdc7a, #8ebf45);
    color: #fff;
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
}

.ribbon-red:after,
.ribbon-red:before {
    content: "";
    border-top: 3px solid #b90005;
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    position: absolute;
    bottom: -3px;
}

.ribbon-red:before {
    left: 0;
}

.ribbon-red:after {
    right: 0;
}

.popup-trigger {
    display: block;
    margin: 0 auto;
    padding: 10px;
    max-width: 260px;
    background: #9d8e59;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    line-height: 24px;
    cursor: pointer;
}

.popup {
    display: none;
    position: absolute;
    top: 100px;
    left: 50%;
    width: 700px;
    margin-left: -350px;
    padding: 50px 30px;
    background: #9d8e59;
    color: #fff;
    font-size: 19px;
    line-height: 30px;
    border: 6px solid #817c8f;
    z-index: 9999;
}

.popup-mobile {
    position: relative;
    top: 0;
    left: 0;
    margin: 30px 0 0;
    width: 100%;
}

.popup-btn-close {
    position: absolute;
    top: 8px;
    right: 14px;
    color: #0d0d0a;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
}

.pa-bullet-list-1 ul {
    list-style-type: none !important;
}

.pa-bullet-list-1 ul li:before {
    content: '\e052' !important;
    color: #2cba6c;
    margin-right: 10px;
    margin-left: -14px;
    font-size: 1.2em !important;
}

/* Snow container */
#snow-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: hidden;
    z-index: 9999;
}

.snowflake {
    position: absolute;
    top: -20px;
    background: #FFFFFF;
    border-radius: 50%;
    opacity: 0.8;
    animation-name: fall;
    animation-timing-function: linear;
    animation-iteration-count: 1;
}

@keyframes fall {
    0% {
        transform: translateY(0);
        opacity: 1;
    }

    100% {
        transform: translateY(110vh);
        opacity: 0;
    }
}

/* Consolidated .breadcrumb-container styles - Improved Accessibility */
.breadcrumb-container {
    background: linear-gradient(to bottom, #333333, #282828);
    padding: 1.2em 1.5em;
    margin: 1.5em 0 2.5em 0;
    font-size: 1.7rem;
    border-radius: 6px;
    text-align: center;
    border-left: 4px solid #9d8e59;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
    justify-content: center;
    gap: 0.5em;
}

.breadcrumb li {
    display: flex;
    align-items: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.breadcrumb li a {
    text-decoration: none;
    font-weight: 500;
    color: #9d8e59;
    padding: 0.5em 0.75em;
    border-radius: 4px;
    transition: all 0.3s ease;
    border-bottom: 2px solid transparent;
}

.breadcrumb li a:hover {
    background: rgba(157, 142, 89, 0.15);
    border-bottom-color: #9d8e59;
    color: #b1a975;
}

.breadcrumb li a:focus {
    outline: 2px solid #9d8e59;
    outline-offset: 2px;
    background: rgba(157, 142, 89, 0.25);
}

/* Current/active page in breadcrumb */
.breadcrumb li.active a,
.breadcrumb li a[aria-current="page"] {
    color: #ffffff;
    background: rgba(157, 142, 89, 0.5);
    cursor: default;
    font-weight: 600;
}

.breadcrumb-separator {
    margin: 0 0.25em;
    color: #888888;
    flex-shrink: 0;
    opacity: 0.8;
}

.breadcrumb-clear {
    clear: both;
}

/* Mobile Adjustments */
@media (max-width: 600px) {
    .breadcrumb-container {
        padding: 1em 1em;
        margin: 1em 0 2em 0;
        font-size: 1rem;
        border-radius: 4px;
    }

    .breadcrumb li a {
        padding: 0.4em 0.5em;
        font-size: 0.95em;
    }

    .breadcrumb li {
        max-width: calc(100% - 1em);
    }

    .breadcrumb li a {
        overflow: hidden;
        text-overflow: ellipsis;
        display: inline-block;
        max-width: 90vw;
    }

    /* Adjust video caption for smaller screens */
    .video-caption {
        font-size: 0.9rem;
        padding: 8px 16px;
    }

    .video-caption h4 {
        font-size: 1rem;
    }

    .video-caption p {
        font-size: 0.9rem;
    }
}

/* Rounded Border for Video */
.rounded-video {
    border-radius: 15px;
    border: 2px solid #ccc;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    /* 16:9 Aspect Ratio */
    padding-top: 25px;
    height: 0;
    overflow: hidden;
    margin: 20px 0;
    text-align: center;
}

.video-container video.rounded-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 15px;
}

.rounded-video:hover {
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
    transform: scale(1.02);
    transition: transform 0.3s, box-shadow 0.3s;
}

.video-caption {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background: #545454;
    color: #fff;
    padding: 10px 20px;
    border-radius: 5px;
}

.video-caption h4 {
    margin: 0;
    font-size: 1.2rem;
}

.video-caption p {
    margin: 5px 0 0;
    font-size: 1rem;
}

.btn {
    display: inline-block;
    padding: 10px 20px;
    border: none;
    border-left: 4px solid #9d8e59;
    background: linear-gradient(to bottom, #333333, #282828);
    color: #fff;
    text-decoration: none;
    border-radius: 6px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn:hover {
    background: linear-gradient(to bottom, #3d3d3d, #303030);
    border-left-color: #b1a975;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
}

.btn-mod {
    /* Add modifications for btn-mod class if needed */
}

.btn-medium {
    /* Add modifications for btn-medium class if needed */
}

.btn-round {
    border-radius: 20px;
}

em {
    font-style: italic;
    font-weight: bold;
    color: #ffffff;
}

.benefits-list {
    list-style-type: disc;
    /* Use a different bullet point style */
    text-align: left;
    /* Adjust indentation */
    line-height: 1.5;
    /* Increase line spacing */
}

.benefits-list li {
    font-weight: normal;
    margin-bottom: 10px;
    /* Increased spacing between list items */

}

.benefits-list strong {
    /* Target the <strong> tag directly */
    font-weight: bold;
    color: #d6b07a;
}

.benefits-title {
    text-align: center;

}

.coming-soon-banner {
    background-color: #9e8e59;
    /* Use button background color */
    padding: 15px 0;
    text-align: center;
    margin-bottom: 30px;
    border: 2px dotted #fff;
    /* White dotted border */
}

.coming-soon-text {
    font-family: Dosis, arial, sans-serif;
    font-size: 1.5em;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.3em;
    color: #fff;
    /* White text color */
}

#trilogyice-notify-form {
    text-align: center;
    padding: 30px;
    border: 1px solid #ddd;
    border-radius: 5px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    /* Add a subtle shadow */
}

#trilogyice-notify-form .form-group {
    margin-bottom: 20px;
    text-align: left;
}

#trilogyice-notify-form input[type="text"],
#trilogyice-notify-form input[type="email"],
#trilogyice-notify-form input[type="tel"],
#trilogyice-notify-form textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 3px;
    box-sizing: border-box;
    /* Include padding and border in element's total width and height */
}

#trilogyice-notify-form .checkbox {
    display: inline-block;
    margin-top: 10px;
    text-align: left;
    /* Align checkbox and label to the left */
}

#trilogyice-notify-form .checkbox label {
    margin-left: 5px;
}

#trilogyice-notify-form button[type="submit"] {
    margin-top: 20px;
    /* Add spacing above the button */
}

.price-gold {
    color: #a8995f;
    /* Gold color used elsewhere in the theme */
    font-weight: bold;
    /* Optional: Make the price stand out more */

}

em {
    font-style: italic;
    font-weight: 600;
    /* Changed to semi-bold */
    color: #ffffff;
}


/* Add specific margin-top for the FAQ subsection heading on mobile */
@media (max-width: 767px) {

    /* Targets screens smaller than 768px (typical mobile breakpoint) */
    #intimate-styles-explainer {
        margin-top: 30px !important;
        /* Ensures the 30px top margin is applied */
    }
}

/* Extra options box styles moved from page-specific inline CSS */
.extra-options-box {
    background: #666462;
    padding: 16px;
    margin-bottom: 12px;
    border-radius: 3px;
    font-family: inherit;
    color: #ffffff;
}

.extra-options-box p {
    color: #ffffff;
}

.extra-options-title {
    color: #ffffff;
    font-size: 1.1em;
    margin: 0 0 6px 0;
    font-weight: 700
}

.extra-options-desc {
    margin: 0 0 10px 0;
    color: #e4e3e3
}

.extra-options-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 0 0 8px 0;
    padding: 0;
    list-style: none !important;
}

/* disable any decorative bullets/pseudo elements for extra options specifically */
.extra-options-list li:before,
.extra-options-list li::marker {
    content: none !important;
    display: none !important;
}

.extra-option .name {
    color: #2f2f2f
}

.extra-option .meta {
    color: #666
}

.extra-option {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px 0;
    border-bottom: 1px dashed rgba(132, 131, 131, 0.06)
}

.extra-option:last-child {
    border-bottom: 0
}

.extra-option .name {
    font-weight: 600;
    color: #fffefe
}

.extra-option .meta {
    color: #ffffff;
    font-size: 0.95em
}

.extra-options-note {
    font-size: 0.95em;
    color: #333;
    margin: 8px 0 0 0
}

@media (max-width:767px) {
    .extra-option {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px
    }
}

/* Strong override: remove any decorative bullets/green boxes in the Extra Options and pa-bullet-list-1 */
.extra-options-box,
.extra-options-box * {
    background-image: none !important;
}

.extra-options-box .extra-options-list,
.extra-options-box .extra-options-list li {
    list-style: none !important;
    padding-left: 0 !important;
}

.extra-options-box .extra-options-list li:before,
.extra-options-box .extra-options-list li::marker,
.extra-options-box li:before,
.extra-options-box li::marker,
.pa-bullet-list-1 ul li:before,
.pa-bullet-list-1 ul li::marker {
    content: none !important;
    display: none !important;
    background: none !important;
    border: none !important;
}

/* If other site CSS adds a green box via background or pseudo element, this will hide it */
.extra-options-box .name,
.extra-options-box .meta {
    box-shadow: none !important
}

/* Client Reviews Section Styling */
.reviews-section {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
    background-color: #6a665e;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

/* FAQ Section Styling */
.faq-section {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
    background-color: #6a665e;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.faq-section ul#filter-grid {
    background-color: transparent;
}

.faq-section .section-title span {
    color: #9d8e59;
}

/* Homepage Content Two-Column Layout */
body.homepage .page-section .row:has(.col-md-6) {
    display: flex;
    align-items: stretch;
}

body.homepage .page-section .row:has(.col-md-6)>.col-md-6 {
    padding: 0 15px;
    display: flex;
    flex-direction: column;
}

body.homepage .page-section .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

body.homepage .page-section .col-md-6 p {
    line-height: 1.8;
    font-size: 16px;
    margin-bottom: 20px;
}

body.homepage .page-section .col-md-6 .section-title {
    margin-top: 0;
}

/* Mobile responsive - stack columns on smaller screens */
@media (max-width: 768px) {
    body.homepage .page-section .row {
        display: block;
    }

    body.homepage .page-section .col-md-6 {
        flex: 0 0 100%;
        max-width: 100%;
        padding: 0 10px;
        margin-bottom: 40px;
    }
}

.reviews-rating-header {
    text-align: center;
    margin-bottom: 40px;
    padding: 30px 0;
    border-bottom: 2px solid #9d8e59;
}

.rating-stars {
    font-size: 48px;
    color: #1a1815;
    letter-spacing: 8px;
    margin-bottom: 10px;
    display: block;
}

.rating-text {
    font-size: 18px;
    color: #f7f4ef !important;
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
}

.rating-text strong {
    color: #f7f4ef !important;
}

.review-cards {
    margin: 40px -15px;
    display: flex;
    flex-wrap: wrap;
}

.review-cards .col-md-6 {
    padding: 15px;
}

.review-card {
    background-color: #faf8f5 !important;
    border: 1px solid #e8e0d5;
    border-radius: 8px;
    padding: 25px;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
    margin-bottom: 30px;
}


.review-card:hover {
    box-shadow: 0 4px 12px rgba(157, 142, 89, 0.15);
    border-color: #9d8e59;
}

.review-stars {
    font-size: 18px;
    color: #3d3a35;
    margin-bottom: 15px;
}

.review-quote {
    font-style: italic;
    color: #333;
    margin-bottom: 15px;
    flex-grow: 1;
}

.review-quote a {
    color: #9d8e59;
    text-decoration: none;
    font-weight: 600;
}

.review-quote a:hover {
    color: #6a665e;
    text-decoration: underline;
}

letter-spacing: 2px;
}

.review-quote {
    font-size: 14px;
    color: #333;
    line-height: 1.6;
    margin-bottom: 15px;
    font-style: italic;
    flex-grow: 1;
    font-family: 'Baskervville', serif;
}

.review-author {
    font-size: 16px;
    color: #000 !important;
    margin-top: 10px;
    margin-bottom: 0;
    font-weight: 800;
    font-family: 'Montserrat', sans-serif;
    display: block;
    text-decoration: none;
}

.review-author strong {
    color: #000 !important;
}

.reviews-footer {
    text-align: center;
    padding: 20px 0;
    margin-top: 20px;
}

.reviews-footer a {
    background-color: #7a6e42;
    color: white;
    padding: 12px 30px;
    border-radius: 4px;
    display: inline-block;
    transition: all 0.3s ease;
}

.reviews-footer a:hover {
    background-color: #6a665e;
    text-decoration: none;
}

/* Responsive Design */
@media (max-width: 768px) {
    .rating-stars {
        font-size: 36px;
        letter-spacing: 6px;
    }

    .review-cards {
        margin: 40px -10px;
    }

    .review-cards .col-md-6 {
        padding: 10px;
    }

    .review-quote {
        font-size: 13px;
    }
}

/* Cookie Consent Banner */
.cookie-consent-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(135deg, #6a665e 0%, #5a5350 100%);
    color: #fff;
    padding: 20px;
    z-index: 9999;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.3);
    display: none;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    opacity: 0;
    transform: translateY(100%);
    transition: opacity 0.4s ease, transform 0.4s ease;
}

.cookie-consent-banner.cookie-consent-visible {
    display: flex;
    opacity: 1;
    transform: translateY(0);
}

.cookie-consent-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    max-width: 1200px;
    width: 100%;
}

.cookie-consent-text h3 {
    margin: 0 0 10px 0;
    font-size: 18px;
    color: #9d8e59;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
}

.cookie-consent-text p {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
    color: #f0ebe5;
}

.cookie-consent-text a {
    color: #f7f4ef;
    text-decoration: underline;
    transition: color 0.3s ease;
}

.cookie-consent-text a:hover {
    color: #ffffff;
}

.cookie-consent-actions {
    display: flex;
    gap: 10px;
    flex-shrink: 0;
}

.cookie-btn {
    padding: 10px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.cookie-btn-primary {
    background-color: #9d8e59;
    color: white;
}

.cookie-btn-primary:hover {
    background-color: #a69253;
    box-shadow: 0 2px 8px rgba(157, 142, 89, 0.3);
}

.cookie-btn-secondary {
    background-color: transparent;
    color: #9d8e59;
    border: 2px solid #9d8e59;
}

.cookie-btn-secondary:hover {
    background-color: rgba(157, 142, 89, 0.1);
    border-color: #a69253;
    color: #a69253;
}

/* Responsive Cookie Banner */
@media (max-width: 768px) {
    .cookie-consent-banner {
        padding: 15px;
        gap: 15px;
    }

    .cookie-consent-content {
        flex-direction: column;
        gap: 15px;
    }

    .cookie-consent-text {
        width: 100%;
    }

    .cookie-consent-actions {
        width: 100%;
        gap: 10px;
    }

    .cookie-btn {
        flex: 1;
        padding: 12px 15px;
        font-size: 13px;
    }
}

/* Contact Page - Center content on desktop */
.contact-follow {
    text-align: center;
}

/* Text links - more obvious styling */
p a, 
.page-section p a,
.container p a,
section p a {
    color: #c4b88a;
    text-decoration: underline;
    text-decoration-color: rgba(157, 142, 89, 0.4);
    text-underline-offset: 3px;
    transition: all 0.3s ease;
}

p a:hover,
.page-section p a:hover,
.container p a:hover,
section p a:hover {
    color: #d4c99a;
    text-decoration-color: #d4c99a;
}

/* ── Navigation NEW treatment badge ── */
.nav-new-badge {
    display: inline-block;
    background: #9d8e59;
    color: #fff;
    font-size: 0.58em;
    font-family: sans-serif;
    font-weight: 700;
    letter-spacing: 0.4px;
    padding: 1px 5px 2px;
    border-radius: 8px;
    vertical-align: super;
    margin-left: 4px;
    line-height: 1;
    animation: navBadgePulse 2s ease-in-out infinite;
}
@keyframes navBadgePulse {
    0%, 100% { opacity: 1; transform: scale(1); box-shadow: 0 0 0 0 rgba(157,142,89,0.6); }
    50%       { opacity: 0.85; transform: scale(1.18); box-shadow: 0 0 0 4px rgba(157,142,89,0); }
}