/* ===================================
    Table of Content
====================================== */

/*  - Fonts
    - Scrollbar
    - General
    - Loader
    - Navbar
    - Side Menu
    - Banner
    - About-us
    - Gallery
    - Testimonials
    - Contact-Section
    - Footer
    - StandAlone Page
    - Media Queries
*/

/* ===================================
    Fonts
====================================== */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');

/* ===================================
    Scrollbar
====================================== */

::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    width: 12px;
    background: white;
    border-left: 0 solid white;
    border-right: 0 solid white;
}
::-webkit-scrollbar-thumb {
    background: #b5a456;
    width: 0;
    height: 25%;
    transition: .5s ease;
    cursor: pointer;
}


/* ===================================
    General
====================================== */

body{
    overflow-x:hidden;
    font-family: 'Roboto', sans-serif;
}
a{
    text-decoration: none;
}
.heading{
    font-family: 'Montserrat', sans-serif;
}
.subheading{
    font-weight: 400;
    font-size: 20px;
    color:#000;
}
/*Opacity*/
.opacity-1 {opacity: 0.1;}
.opacity-2 {opacity: 0.2;}
.opacity-3 {opacity: 0.3;}
.opacity-4 {opacity: 0.4;}
.opacity-5 {opacity: 0.5;}
.opacity-6 {opacity: 0.6;}
.opacity-7 {opacity: 0.7;}
.opacity-8 {opacity: 0.8;}
.opacity-8 {opacity: 0.9;}

/*Social Icons*/
.social-icons ul {
    margin-bottom: 0;
}

.social-icons ul li {
    font-size: 15px;
    display: inline-block;
    margin-right: 5px;
    margin-left: 5px;
}

.social-icons ul li a {
    overflow: hidden;
    border-radius: 50%;
    display: block;
    color: #b5a456;
    height: 40px;
    line-height: 40px;
    width: 40px;
    border: 1px solid transparent;
    text-align: center;
}

/*Social icons background hover*/
.icon-hover:hover {color: #fff; transition: all 0.5s ease; background-color: #b5a456;}

/*Button*/
.btn {
    z-index: 2;
    letter-spacing: .5px;
    border-radius: 0;
    font-weight: 600;
    overflow: hidden;
    position: absolute;
    line-height: inherit;
    display: inline-block;
    color: #fff;
    border: 2px solid transparent;
    text-transform: capitalize;
    transition: all .5s ease !important;
}

.btn.button {
    font-size: 14px !important;
    font-weight: 600;
    color: #fff;
    padding: 3px 15px !important;
    line-height: 1.8em !important;
    cursor: pointer;
    display: inline-block;
    position: relative;
    transition: 0.5s;
}

.btn.btn-rounded {
    border-radius: 50px;
}

.btn.white-btn {
    background: transparent;
    border-color: #fff;
    color: #fff;
}

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

.btn.pink-btn {
    background: #b5a456;
    border-color: #fff;
    color: #fff;
}

.btn.trans-btn {
    background: transparent;
    border-color: #fff;
    color: #fff;
}

/*Button hover*/
.btn.btn-hvr-black:hover {
    background-color: #000;
    border-color: #000;
    color: #fff;
}

.btn.btn-hvr-white:hover {
    background-color: #fff;
    border-color: #fff;
    color: #b5a456;
}

/* ===================================
    Loader
====================================== */

.loader {
    height: 100%;
    width: 100%;
    position: fixed;
    overflow: hidden;
    z-index: 11111111;
    background: #FFFFFF;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.loader-spinner {
    position: relative;
    height: 100px;
    width: 100px;
    border: 4px solid transparent;
    border-top-color: #b5a456;
    border-left-color: #b5a456;
    border-radius: 50%;
    animation: spin 1.5s linear infinite;
}

.loader-spinner::before {
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;
    content: "";
    border: 4px solid transparent;
    border-top-color: #fbaaa9;
    border-left-color: #fbaaa9;
    border-radius: 50%;
    -webkit-animation: spinBack 1s linear infinite;
    animation: spinBack 1s linear infinite;
}

@-webkit-keyframes spin {
from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}
to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
    }
}

@keyframes spin {
from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    }
to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
    }
}

@-webkit-keyframes spinBack {
from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}
to {
    -webkit-transform: rotate(-720deg);
    transform: rotate(-720deg);
    }
}

@keyframes spinBack {
from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}

to {
    -webkit-transform: rotate(-720deg);
    transform: rotate(-720deg);
    }
}

/* ===================================
    Navbar
====================================== */

.navbar {
    padding: 0;
    z-index: 111;
    height: 90px;
    width: 100%;
    background-color: #ffffff !important;
}

.navbar-brand img {
    padding-left: 3px;
}

.navbar .navbar-nav .nav-link {
    font-size: 16px;
    color: #000;
    font-weight: 500;
    padding: 6px 6px;
    margin-left: 50px;
    margin-right: 50px;
    transition: .5s ease;
    border: 2px solid transparent;
    display: block;
}

.navbar .navbar-nav {
    margin-left: 20rem;
}

.navbar .navbar-nav .nav-link.active {
    color: #b5a456;
    transition: all .6s ease;
}

.navbar .navbar-nav .nav-link:hover {
    color: #b5a456;
    transition: all .6s ease;
}

.navbar .navbar-nav .nav-link:last-child {
    margin-right: 0;
}

.navbar .navbar-nav .nav-link:after {
    content: '';
    display: block;
    margin: auto;
    height: 3px;
    width: 0;
    background: transparent;
    transition: width .5s ease, background-color .5s ease;
}

.navbar .navbar-nav .nav-link:hover:after {
    width: 100%;
    background: #b5a456;
}

.navbar .navbar-nav .button {
    margin-left: 30px;
}

.navbar-fixed-top.scrolled {
    transition: .2s linear;
    /*box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.35);*/
}

/*side menu button*/
.sidemenu_btn {
    width: 36px;
    padding: 6px;
    right: 12px;
    top: 30px;
    z-index: 999;
    margin-top: 2px;
    margin-left: 25px;
    margin-right: 0px;
    cursor: pointer;
    position: absolute;
    display: inline-block;
    transition: all .3s linear;
}

.sidemenu_btn span {
    height: 2px;
    width: 100%;
    background: #b5a456;
    display: block;
    margin: auto;
    transition: .5s ease;
}

.sidemenu_btn:hover span:first-child,
.sidemenu_btn:hover span:last-child {
    width: 70%;
    background-color: #000;
}

.sidemenu_btn:hover span:nth-child(2) {
    background-color: #000;
}

.sidemenu_btn span:nth-child(2) {
    margin: 4px 0;
}

/* ===================================
    Side Menu
====================================== */

.side-menu {
    width: 100%;
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 2032;
    height: 100%;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    transform: translate3d(0, -100%, 0);
    transition: transform .5s ease;
    background-color: rgb(114 103 54 / 82%);
}

.side-menu.left {
    left: 0;
    right: auto;
    transform: translate3d(-100%, 0, 0);
}

.side-menu.before-side {
    width: 280px;
}

.side-menu.side-menu-active,
.side-menu.before-side {
    transform: translate3d(0, 0, 0);
}

.side-menu-opacity {
    opacity: 0;
}

.pul-menu .side-menu.side-menu-active {
    visibility: visible;
    opacity: 1;
}

.side-menu .logo-image {
    margin: 0 0 2.5rem 0;
}

/*Side overlay*/
#close_side_menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #202020;
    transition: opacity 300ms cubic-bezier(0.895, 0.03, 0.685, 0.22);
    display: none;
    z-index: 1031;
    opacity: 0.4;
}

/*side close btn*/
.side-menu .btn-close {
    height: 33px;
    width: 33px;
    display: inline-block;
    text-align: center;
    position: absolute;
    top: 42px;
    right: 40px;
    cursor: pointer;
}

.side-menu .btn-close:hover{
    animation: .8s rotate;
}

.side-menu .btn-close:hover {
    -webkit-animation: .8s rotate;
    animation: .8s rotate;
}

@-webkit-keyframes rotate {
    from{
        transform: rotate(0deg);
    }

    to{
        transform: rotate(360deg);
    }
}

@keyframes rotates {
    from{
        transform: rotate(0deg);
    }
    to{
        transform: rotate(360deg);
    }
}

.side-menu.before-side .btn-close {
    display: none;
}

.side-menu .btn-close::before,
.side-menu .btn-close::after {
    position: absolute;
    right: 16px;
    content: ' ';
    height: 24px;
    width: 2px;
    background: #fff;
    top: 5px;
}

.side-menu .btn-close:before {
    transform: rotate(45deg);
}

.side-menu .btn-close:after {
    transform: rotate(-45deg);
}

/*Side menu Wrapper*/
.side-menu .logo-image img{
    max-width: 80%;
}

.side-menu .inner-wrapper {
    padding: 2.5rem 5rem;
    height: 100%;
    position: relative;
    overflow-y: auto;
    display: flex;
    align-items: center;
    text-align: left;
    flex-wrap: wrap;
}

.pul-menu.pushwrap .side-menu .inner-wrapper {
    padding: 3.5rem 2.5rem;
}

.side-menu .side-nav {
    margin-bottom: 30px;
    display: block;
}

.side-nav .navbar-nav .nav-link {
    display: block;
    margin: 3px 0;
    padding: 0 !important;
    opacity: 0;
    transition: all 0.8s ease 500ms;
    transform: translateY(30px);
}

.side-nav .navbar-nav .nav-link:first-child {
    transition-delay: .1s;
}

.side-nav .navbar-nav .nav-link:nth-child(2) {
    transition-delay: .2s;
}

.side-nav .navbar-nav .nav-link:nth-child(3) {
    transition-delay: .3s;
}

.side-nav .navbar-nav .nav-link:nth-child(4) {
    transition-delay: .4s;
}

.side-nav .navbar-nav .nav-link:nth-child(5) {
    transition-delay: .5s;
}

.side-nav .navbar-nav .nav-link:nth-child(6) {
    transition-delay: .6s;
}

.side-nav .navbar-nav .nav-link:nth-child(7) {
    transition-delay: .7s;
}

.side-nav .navbar-nav .nav-link:nth-child(8) {
    transition-delay: .8s;
}

.side-nav .navbar-nav .nav-link:nth-child(9) {
    transition-delay: .9s;
}

.side-menu.side-menu-active .side-nav .navbar-nav .nav-link {
    transform: translateY(0);
    opacity: 1;
}

.side-nav .navbar-nav .nav-link {
    display: inline-table;
    color: #fff;
    padding: 5px 0 5px 0 !important;
    font-size: 36px;
    font-weight: 300;
    line-height: normal;
    position: relative;
    border-radius: 0;
}

.side-nav .navbar-nav .nav-link::after {
    content: "";
    position: absolute;
    background: #fff;
    display: inline-block;
    width: 0;
    height: 3px;
    bottom: 0;
    left: 0;
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0, 0, 0.2, 1);
}

.side-nav .navbar-nav .nav-link:hover::after,
.side-nav .navbar-nav .nav-link:focus::after,
.side-nav .navbar-nav .nav-link.active::after {
    width: 100%;
}

.side-nav .navbar-nav .nav-link.active {
    background: transparent;
}

.side-menu-inner-content {
    border-bottom: solid 1px rgba(255, 255, 255, 0.5);
    padding-bottom: 30px;
}

.side-menu p {
    margin-bottom: 0;
    font-size: 14px;
}

.menu-company-details {
    margin-bottom: 15px;
    margin-top: -15px;
}

.menu-company-details span {
    display: block;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 300;
    margin-bottom: 5px;
}

.social-icons-simple {
    margin-bottom: 0;
    margin-left: -10px;
}

.social-icons-simple li {
    display: inline-block;
    padding-left: 8px;
}

.social-icons-simple li:first-child {
    padding-left: 0;
}

.social-icons-simple li a {
    display: block;
    font-size: 16px;
    height: 40px;
    line-height: 42px;
    border: 1px solid transparent;
    text-align: center;
    width: 40px;
    border-radius: 50%;
    position: relative;
    z-index: 1;
    overflow: hidden;
    transition: background-color .5s ease;
    color: #ffffff;
}

.social-icons-simple li.animated-wrap a:hover {
    background-color: transparent;
}

.icon-hovr:hover{
    background-color: #fff;
    color:#b5a456;
}

/* ===================================
    Banner
====================================== */

.banner-section {
    background-color: #f9e2e2;
    padding-top: 9rem;
    background-size: cover;
    overflow: hidden;
    background-image: url(../img/banner-alexsophie2.jpg);
    background-position: 53% 50%;
    height: 100vh;

}

.banner-section .caption {
    padding-top: 9.5rem;
    padding-bottom: 9.5rem;
}

.caption .subheading{
    padding-left: 5px;
}

.caption .heading {
    font-size: 60px;
    font-weight: 600;
    color: #b5a456;
    letter-spacing: -3px;
    word-spacing: -5px;
    margin-bottom: 15px;
}

.caption .text {
    color: #000;
    font-weight: 400;
    text-align: left;
    padding-right: 25px;
    margin-bottom: 15px;
    font-size: 18px;
    padding-left: 5px;
}

.banner-section .media i {
    overflow: hidden;
    border-radius: 50%;
    color: #011321;
    height: 30px;
    line-height: 28px;
    width: 30px;
    border: 1px solid #000;
    text-align: center;
    font-size: 10px;
    transition: .5s ease;
}

.banner-section .media .media-body{
    margin-left: 10px;
    color: #000
}

.banner-section .media:hover i{
    color:#fff;
    border: 1px solid #000;
    background-color: #000;
    transition: .5s ease;
}

.banner-section .media:hover{
    cursor: pointer;
    transition: .5s ease;
}

.banner-section .media{
    width: 160px;
    height: 50px;
    padding:10px 12px 10px 5px;
    background-color: transparent;
}

/* ===================================
    About-us
====================================== */

.about-us{
    padding: 120px 0;
    background-color: #fff;
}

.about-us .left-col{
    margin-right: 25px;
}

.about-us .right-col{
    margin-left: 25px;
}

.about-us .media{
    margin-top: 30px;
}

.about-us .image{
    padding-left: 20px;
    padding-right: 20px;
}

.about-us .media .media-body h5{
    color: #b5a456;
    font-weight: 400;
}

.about-us .media .media-body {
    font-size: 14px;
    color: #343434;
    font-weight: 500;
}

.about-us .media i{
    font-size: 30px;
    color: #b5a456;
    transition: all .5s ease;
}

.about-us .media:hover{
    cursor: pointer;
}

.about-us .media:hover i{
    transform: translateY(-10px);
    transition: all .5s ease;
}

/* ===================================
    About-us-2
====================================== */

.about-us-2 {
    padding: 120px 0;
    background-color:  #1b1b1b;
}

.about-us-2 .about-img {
    position: relative;
}

.about-us-2 .about-img img {
    width: 80%;
    border: 20px solid #f6f6f6;
    position: relative;
    z-index: 1;
}

.about-us-2 .rectangle {
    opacity: 0.6;
    position: absolute;
    bottom: -38px;
    left: -33px;
    width: 340px;
    height: 380px;
    padding: 8px 8px 8px 0;
    border-left: 52px solid #fff;
    border-bottom: 52px solid #fff;
    border-top: 0 solid transparent;
    border-right: 0 solid transparent;
}

.about-us-2 .about-text{
    margin-top: 65px;
}

.about-us-2 .about-text h5{
    color: #fff;
    margin-bottom: 20px;
}

.about-us-2 .about-text h2{
    font-size: 48px;
    color: #fff;
    letter-spacing: -3px;
    margin-bottom: 20px;
}

.about-us-2 .about-text p{
    color: #fff;
    font-weight: 400;
    text-align:left;
    margin-bottom: 30px;
    font-size: 18px;
}

/* ===================================
    Cube-Portfolio
====================================== */

.gallery{
    padding: 100px 0 0 0;
    background-color: #fff;
}

.gallery .gallery-heading p{
    margin-bottom: 10px;
    color: #333333;
}

.gallery .gallery-heading h2{
    font-size: 44px;
    font-weight: 600;
    color: #000;
}

.gallery .cbp-l-filters-buttonCenter .cbp-filter-item {
    border: none;
    padding: 10px 0;
    font-size: 18px;
    font-weight: 500;
    color: #000;
    display: inline-block;
    background: transparent;
    transition: all .2s ease-in-out;
}

.gallery .cbp-l-filters-buttonCenter {
    margin-bottom: 0;
    margin-top: 20px;
}

.gallery .cbp-l-filters-buttonCenter .cbp-filter-item:hover {
    color: #b5a456;
}

.gallery .cbp-l-filters-buttonCenter .cbp-filter-item-active.cbp-filter-item {
    color: #b5a456;
}

.gallery .cbp-l-caption-body .title {
    color: #fff;
    font-size: 25px;
    opacity: 1;
}

.gallery .cbp-l-grid-mosaic-flat .cbp-caption-activeWrap {
    background: #b5a456;
}

.gallery .cbp-l-grid-mosaic-flat .cbp-caption-activeWrap:hover {
    background-color: #b5a456;
    opacity: 0.9;
}

.cbp-item:hover .cbp-caption-defaultWrap {
    transform: scale(1.25);
    transition: 0.6s ease-in-out;
}

.cbp-l-caption-body .cbp-l-caption-desc {
    color: #ffff;
    font-size: 12px;
}

.gallery .plus {
    margin: 0 auto;
    height: 70px;
    width: 70px;
    margin-bottom: 16px;
    display: block;
    position: relative;
    overflow: hidden;
}

.gallery .plus::before {
    width: 2px;
    left: 50%;
    top: 5px;
    bottom: 5px;
    margin-left: -1px;
}

.gallery .plus::after {
    height: 2px;
    top: 50%;
    left: 5px;
    right: 5px;
    margin-top: -1px;
}

.gallery .plus::before,
.plus::after {
    content: " ";
    position: absolute;
    background: #fff;
}

.gallery .cube-button {
    text-align: center;
    margin-top: 50px;
}

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

.testimonial-section .img-section {
    background-color: #1b1b1b;
    padding-top: 120px;
}

.testimonial-section .img-section .img-area {
    padding-right: 20px;
    padding-left: 180px;
}

.testimonial-section .img-section .img-area img{
    display: flex;
    justify-content: center;
    width: 80%;
}

.testimonial-section .carousel-section h2{
    color: #fff;
    font-size: 48px;
    font-weight: 500;
    margin-bottom: 40px;
}

.testimonial-section .carousel-section {
    background-color: #b5a456;
    padding-top: 120px;
    padding-right: 160px;
    padding-left: 50px;
}

.carousel-section .testimonial-image {
    width: 80px;
    height: 80px;
    display: block;
    margin: auto;
}

.carousel-section .testimonials .quote i {
    color: #fff;
    font-style: italic;
    font-size: 20px;
}

.carousel-section .testimonials p {
    text-align: center;
    margin-top: 34px;
    color: #fff;
    font-size: 18px;
    font-weight: 400;
}

.carousel-section .testimonials h5 {
    font-size: 24px;
    color: #fff;
    font-weight: 400;
    margin-top: 25px;
}

/* ===================================
    Contact-Section
====================================== */

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

.contact-section form {
    margin-top: 50px;
    padding-left: 135px;
    padding-right: 135px;
}

.contact-form .form-control::placeholder {
    color: #808080;
}

.contact-form textarea {
    /*min-height: 175px;*/
    resize: none;
}

.contact-section .contact-form .form-control {
    border: none;
    border-bottom: 1px solid #ced4da;
    background: transparent;
    font-weight: normal;
    border-radius: 0;
    box-shadow: none;
    margin-bottom: 30px;
    font-size: 16px;
    transition: border .9s ease;
    font-family: 'Roboto', sans-serif;
}

.contact-section h2{
    font-size: 48px;
    font-weight: 500;
}

.form-control:focus {
    color: #011321;
    box-shadow: 0 0 0 0.0rem transparent;
}

.contact-section .button {
    /*width: 100%;*/
}

.contact-section .button {
    margin-left: 20px;
    margin-right: 20px;
}

/* ===================================
    Footer
====================================== */

footer {
    padding: 120px 0;
    background-color: #f9e2e2;
}

footer p {
    font-size: 13px;
    color: #000;
    font-weight: 400;
}

footer .social-icons {
    text-align: center;
}

/* ===================================
    Stand Alone page
====================================== */

.header {
    background-color: #f9e2e2;
    height: 70vh;
    background-size: cover;
}

.header img{
    width:100%;
    padding-top: 20px;
}

.header .header-text {
    padding-top: 12.5rem;
}

.header h2 {
    font-size: 55px;
    color: #b5a456;
    padding-bottom: 16px;
}

.page-breadcrumb li {
    display: inline-block;
    font-size: 18px;
    font-weight: 500;
    color: #000;
}

.page-breadcrumb li a {
    color: #000;
    margin-right: 5px;
    transition: all 0.3s ease;
}

.page-breadcrumb li i {
    color: #b5a456;
}

/*Main Page Start*/
.main-page {
    padding: 120px 0;
}

.main-page .standalone-heading {
    padding-bottom: 100px;
}

.main-page .subheading {
    margin-bottom: 5px;
}

.main-page .heading {
    font-size: 40px;
    margin-bottom: 20px;
    font-weight: 500;
}

.main-page .image {
    position: relative;
}

.main-page .image img {
    width: 100%;
    height: 100%;
    display: block;
}

.main-page .text{
	font-weight: 400;
	color: #000;
}

.standalone-area .standalone-row {
    margin-bottom: 40px;
}

.standalone-area .standalone-row:last-child {
    margin-bottom: 0;
}

.main-page .standalone-row .text {
    padding-left: 30px;
    text-align: center;
}

.standalone-row:nth-child(2) .text {
    padding-left: 0;
    padding-right: 30px;
}

/* Image Hover*/
.standaloneoverlay {
    opacity: 0;
    position: absolute;
    transition: all 0.3s ease;
    background-color: #011321;
}

.hover-effect:hover .standaloneoverlay {
    opacity: .4;
}

.overlayBottom {
    width: 100%;
    height: 0;
    bottom: 0;
    right: 0;
    background-color: #b5a456;
    cursor: pointer;
}

.hover-effect:hover .overlayBottom {
    height: 100%;
}

.logosite{
    position: absolute;
    width: 168px;
    top: 15px;
}

/* ===================================
    Media Queries
====================================== */

@media (width: 1920px) {
    /*Banner Section*/
    .banner-section{
        height: 100vh
    }
    .banner-section .image img{
       display: flex;
       justify-content: center;
       max-width: 142%;
       padding-top: 70px;
    }
    .banner-section .caption{
       padding-top: 19.5rem
    }

    /*Testimonials Section*/
    .testimonial-section .img-section .img-area{
        padding-left: 380px;
    }
    .testimonial-section .carousel-section{
        padding-right: 420px;
    }
    .testimonial-section .carousel-section h2{
        margin-top: 40px;
    }

    /*Stand Alone*/
    .header .header-text {
        padding-top: 20.5rem;
    }
    .header img{
        padding-top: 100px;
    }
}

@media (max-width: 1200px) { 
    /* Navbar */
    .navbar .navbar-nav{
        margin-left: 4rem;
    }
    /*Side Menu*/
    .side-menu p{
        font-size: 16px;
    }

    /*Banner*/
    .caption .heading{
        font-size: 52px;
    }

    /*Testimonials*/
    .testimonial-section .img-section .img-area{
        padding-left: 40px;
    }
    .testimonial-section .img-section .img-area img{
        width: 100%;
    }
    .testimonial-section .carousel-section h2{
        font-size: 32px;
    }
    .testimonial-section .carousel-section{
        padding-right: 100px;
    }
    .testimonial-section .carousel-section{
        padding-top: 130px;
        padding-bottom: 100px;
    }
    .testimonial-section .img-section{
        padding-top: 60px;
    }

    /*About*/
    .about-us .media .media-body{
        font-size: 16px;
    }

    /*Footer*/
    footer p{
        font-size: 16px;
    }

    /*Stand Alone*/
    .header{
        height: 100%;
        padding-top: 1rem;
    }

    .header h2{
        font-size: 55px;
    }

    .header .header-text{
        padding-top: 11.5rem;
    }
}

@media (max-width: 992px) { 
    /*Side Menu*/
    .side-menu .side-nav{
        margin-bottom: 50px;
    }
    .side-menu .logo-image{
        margin: 0 0 2.5rem 0;
    }

    /*Banner*/
    .banner-section .caption{
        text-align: center;
        padding-top: 0;
        padding-bottom: 3.5rem;
    }
    .caption .heading{
        font-size: 50px;
    }
    .caption .text{
        padding-left: 0;
        padding-right: 0;
        text-align: center;
    }
    .banner-section .media{
        width: 100%;
        display: block;
    }
    .banner-section .image{
        text-align: center;
    }
    .banner-section img{
        max-width: 85%;
    }
    .banner-section .media .media-body{
        margin-left: 4px;
    }

    /*About-us Section*/
    .about-us .left-col{
        margin-right: 0;
    }
    .about-us .right-col{
        margin-left: 0;
    }
    .about-us .media{
        display: block;
        text-align: center;
        margin-top: 0;
        margin-bottom: 40px;
    }
    .about-us .image{
        text-align:center;
        padding-left: 0;
        padding-right: 0;
        margin-bottom: 40px;
    }

    /*About-us-2 Section*/
    .about-us-2 .about-img img{
        width: 100%;
    }
    .about-us-2 .rectangle{
        width: 515px;
        height: 580px;
        bottom: -20px;
        left: -20px;
    }
    .about-us-2 .about-text{
        text-align: center;
    }
    .about-us-2 .about-text p{
        text-align: center;
    }
    .about-us-2 .about-text h2{
        font-size: 40px;
    }
    .testimonial-section .img-section .img-area {
        padding-right: 20px;
        padding-left: 180px;
    }

    /*Gallery*/
    .gallery .gallery-heading h2{
        font-size: 40px;
    }

    /*Testimonials Section*/
    .testimonial-section .carousel-section h2{
        font-size: 40px;
    }

    .testimonial-section .img-section .img-area img{
        width: 80%;
    }
    .testimonial-section .carousel-section{
        padding-left: 40px;
        padding-right: 40px;
        padding-bottom: 120px;
    }

    /*Stand Alone*/
    .header .header-text{
        text-align: center;
    }
    .header img{
        padding-top: 0;
    }
    .main-page .text{
        text-align: center;
    }
    .main-page .standalone-row .text{
        padding-left: 0;
        padding-bottom: 10px;
    }
    .standalone-row:nth-child(2) .text{
        padding-right: 0;
        padding-bottom: 10px;
    }
}



@media (max-width: 767px) { 
    /*WOW Animation*/
    .wow {
        visibility: visible !important;
        animation: none !important;
    }

    /*Navbar*/
    .navbar{
        height: 75px;
    }

    .sidemenu_btn{
        margin-top: 5px;
    }

    /*Banner*/
    .banner-section{
        padding-top: 7rem;
    }
    .caption .text{
        font-size: 16px !important;
    }
    .caption .heading{
        word-spacing: -2px;
    }
    .banner-section .caption{
        padding-bottom: 3.5rem;
        padding-top: 3.5rem;
    }
    .caption .heading{
        font-size: 38px;
    }

    /*Navbar*/
    .navbar-brand img{
        padding-left: 10px;
    }
    .sidemenu_btn{
        right: 16px;
        top:23px;
    }
    .side-menu .logo-image{
        margin: 0 0 3rem 0;
    }

    /*Side menu*/
    .side-menu .inner-wrapper{
        padding: 2.5rem 3.5rem;
    }
    .side-menu p{
        font-size: 13px;
    }
    .side-menu .side-nav {
        margin-bottom: 40px;
    }
    .side-nav .navbar-nav .nav-link{
        font-size: 25px;
    }

    /*Banner Section*/
    .banner-section img{
        max-width: 100%;
    }

    /*About-us Section*/
    .about-us img{
        max-width: 85%;
    }

    /*About-us-2 Section*/
    .about-us-2 .rectangle{
        bottom: -10px;
        left: -10px;
        width: 280px;
        height: 330px;
    }
    .about-us-2 .about-text h2{
        font-size: 34px;
    }

    /*Gallery*/
    .gallery .gallery-heading h2{
        text-align: center;
        font-size: 34px;
    }
    .gallery .cbp-l-filters-buttonCenter .cbp-filter-item{
        padding: 0;
    }

    /*Testimonials */
    .testimonial-section .img-section .img-area{
        padding-left: 0;
        padding-right: 0;
    }
    .testimonial-section .img-section .img-area img{
        width: 100%;
    }
    .testimonial-section .carousel-section h2{
        font-size: 34px;
    }
    .carousel-section .testimonials p{
        font-size: 16px;
    }
    .testimonial-section .carousel-section{
        padding-left: 3px;
        padding-right: 3px;
        padding-bottom: 120px;
    }

    /*Contact Section*/
    .contact-section form{
        padding-left: 0;
        padding-right: 0;
    }
    .contact-section h2{
        font-size: 34px;
    }

    /*Footer*/
    footer p{
        font-size: 13px;
    }

    /*Stand Alone*/
    .header h2 {
        font-size: 40px;
    }
    .header .header-img img{
        width: 100%;
    }
    .header .header-img {
        text-align: center;
    }
    .main-page .standalone-heading .heading{
        font-size: 40px;
    }
    .main-page .standalone-area .heading{
        font-size: 30px;
    }
    .standalone-area .standalone-row{
        margin-bottom: 80px;
    }

    .logosite{
    width: 138px!important;
   }

    .banner-section {
    background-position: 43% 50%!important;
    background-image: linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.5)), 
                    url('../img/banner-alexsophie2.jpg');}

}




/*teste*/


@media (max-width: 370px){
	/*Banner-Section*/
    .banner-section .fa-play:before{
        margin-left: 3.5px;
    }
    /*Side Menu*/
    .side-menu p{
        font-size: 12px;
    }
    .side-nav .navbar-nav .nav-link{
        font-size: 20px;
    }
    .side-menu .inner-wrapper{
        padding: 4rem 3.5rem;
    }
    .side-menu .logo-image{
        margin: 0 0 1.5rem 0;
    }


}

}


/***************ABOUT SECTION PRICES***********/
.prices{
    padding-bottom: 100px;
}
.prices .price-list{
    border-bottom: 2px solid #f7dcd1;
    padding: 16px 16px 16px 12px;
    font-family: 'Open Sans' , sans-serif;
    cursor: pointer;
    background: -webkit-gradient(linear, left top, right top, color-stop(50%, #f7dcd1), color-stop(50%, white));
    background: -o-linear-gradient(left, #f7dcd1 50%, white 50%);
    background: linear-gradient(to right, #f7dcd1 50%, white 50%);
    background-size: 200% 100%;
    background-position: right bottom;
    -webkit-transition: all .5s ease-out;
    -o-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
.price-list:hover{
    background-position: left bottom;
}
.prices .price-list .info .sub-heading{
    font-size: 15px;
}
.prices .price-list .info .main-heading{
    font-size: 20px;

}
.prices .price-list .rates .rate {
    font-size: 32px;
    margin-top: 15px;
    font-weight: 600;
    color: #b5a456;
}

.logosite{
    position: absolute;
    width: 146px;
    top: 5px;
}

.card-title {
    margin-bottom: .75rem;
    font-family: 'Montserrat';
}


/* ====== FILTROS ====== */
.ug-filters {
    text-align: center;
    margin-bottom: 20px;
}

.ug-filters button {
    padding: 8px 16px;
    margin: 5px;
    border: none;
    cursor: pointer;
    background: #ddd;
    border-radius: 4px;
    transition: 0.3s;
}

.ug-filters button.active,
.ug-filters button:hover {
    background: #b5a456;
    color: #fff;
}

/* ====== GRID RESPONSIVO ====== */
.ug-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 15px;
}

.ug-item {
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

.ug-item img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform .4s ease;
}

.ug-item:hover img {
    transform: scale(1.1);
}

/* ====== CAPTION ====== */
/* ====== OVERLAY TOTAL ====== */
.ug-caption {
    position: absolute;
    inset: 0; /* cobre toda a imagem */
    background: rgb(114 103 54 / 85%); /* rosa com transparência */
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;

    opacity: 0;
    transition: 0.35s ease;
    transform: scale(1.05);
}

.ug-caption {
    pointer-events: none;
}

.ug-item:hover .ug-caption {
    opacity: 1;
    transform: scale(1);
}

/* Conteúdo interno */
.ug-caption-content {
    text-align: center;
}

/* Título */
.ug-caption-title {
    font-size: 18px;
    font-weight: 600;
    display: block;
    margin-bottom: 10px;
}

/* Ícone + */
.ug-caption-plus {
    font-size: 38px;
    font-weight: bold;
    line-height: 1;
    display: block;
}


.ug-item:hover .ug-caption {
    opacity: 1;
    transform: translateY(0);
}

/* ====== LIGHTBOX ====== */
#ug-lightbox {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.8);
    justify-content: center;
    align-items: center;
    z-index: 99999; /* Garantidamente acima de tudo */
}

#ug-lightbox img {
    max-width: 90%;
    max-height: 90%;
}

#ug-lightbox-close {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 40px;
    color: #fff;
    cursor: pointer;
}

.mt-0
 {
    margin-top: 0 !important;
    font-family: 'Montserrat';
}

footer {
    background-color: #fff;
    padding: 80px 0px;
}

/* POPUP COOKIES */
#cookie-popup {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: #2B2B2B;
    color: #fff;
    padding: 15px 25px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 15px;
    z-index: 9999;
    flex-wrap: wrap;
    width: 100%;
    max-width: 673px;
}
#cookie-popup button {
    background: #b5a456;
    border: none;
    color: #fff;
    padding: 8px 15px;
    cursor: pointer;
    border-radius: 4px;
}

@media(max-width:767px){
   #cookie-popup {
    width: 80%;
    max-width: 673px;
}
}

/* PRIVACY MODAL */
#privacy-modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.8);
    justify-content: center;
    align-items: center;
    z-index: 10000;
}
.privacy-content {
    background: #fff;
    padding: 30px;
    border-radius: 10px;
    max-width: 600px;
    width: 90%;
    max-height: 80%;
    overflow-y: auto;
    position: relative;
}
.privacy-close {
    position: absolute;
    top: 15px;
    right: 20px;
    cursor: pointer;
    font-size: 24px;
}

/* FORMULÁRIO */
.contact-section {
    padding: 60px 15px;
}
.contact-section .form-control {
    width: 100%;
    margin-bottom: 15px;
    padding: 8px;
}
.contact-section .btn-pink {
    background: #b5a456;
    color: #fff;
    border: none;
    padding: 10px 20px;
    cursor: pointer;
    border-radius: 6px;
}


.icones-contactos{
    font-size: 30px;
    color: #b5a456;
    background-color: #fff;
    padding: 14px;
    border-radius: 30px;
    margin-top: -24px;
}


/*SERVIÇOS*/

.service-card{
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 14px;
  padding: 18px 18px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0,0,0,.04);
}

.service-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    font-size: 26px;
    color: #b5a456;
    padding: 3px 0px !important;
}

.service-card h5{
  margin-bottom: 6px;
}

.service-sub{
  margin-bottom: 10px;
  opacity: .85;
}

.service-more {
    font-weight: 600;
    text-decoration: underline;
    color: #b5a456 !important;
    border-radius: 5px;
    position: relative;
}
.service-more:hover{
  text-decoration: underline;
}

.modal-title {
    font-family: 'Montserrat'!important;
    color: #b5a456;
}

.caption{
  align-items: center; /* vertical */
}

.caption-inner{
  max-width: 480px; /* opcional: melhora leitura */
}


.fancybox-slide>* {
    background-color: #000000!important;
}