body {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: rgba(118, 86, 61, 1);
  line-height: 1.4;
}

h1 {
  font-family: "Merriweather", serif;
  font-weight: 600;
  font-style: normal;
  font-size: 64px;
}

h2 {
    font-size: 40px;
}
h2,h3,h4,h5,h6 {
  font-family: "Merriweather", sans-serif;
  font-weight: 300;
  font-style: normal;
  color: rgba(159, 69, 78, 1);
  line-height: 1.4;
  
}
/*section#about, section#services, section#contact-us {
    scroll-margin-top: 120px;    
}*/
strong, b {
  font-weight: 700;
  font-style: normal;
} 
.lead {
    font-weight: 400;
}
button.navbar-toggler {
    background: #963f44;
}
.offcanvas-header {
    background: #9f454e;
}
.headline span, .lead span {
  color: rgba(159, 69, 78, 1);
}
.fs-18 {
    font-size: 18px;
}
.fs-24 {
    font-size: 24px;
}
.fs-32 {
    font-size: 32px;
}
.font-medium {
    font-weight: 500;
}
.ls-10 {
    letter-spacing: 10%;
}
.btn-primary {
    background: rgba(159, 69, 78, 1);
    border: 1px solid rgba(159, 69, 78, 1);
    padding: 14px 28px;
    border-radius: 100px;
    font-weight: 300;
}

.btn-ghost {
    background: transparent;
    border: 1px solid rgba(159, 69, 78, 1);
    padding: 14px 28px;
    border-radius: 100px;
    color: rgba(159, 69, 78, 1);
    font-weight: 300;
}

.content-home-banner {
    background: url(../images/banner.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
    z-index: 99;
    padding-top: 120px !important;
    height: 700px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.content-home-banner:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* Transition from solid white on the left to transparent on the right */
    background-image: linear-gradient(to right, rgba(255, 255, 255, 1) 0, rgba(255, 255, 255, 0) 80%);
    z-index: -1;
}
header#wrapper-navbar {
    position: absolute;
    z-index: 9999;
    margin: auto;
    width: 100%;
}
.gradient-bg {
    position: relative;
}

.z-99 {
    z-index: 99;
}
.smudge {
    position: absolute;
    top: -32%;
    z-index: 0;
    width: 100%;
}
.smudge img {
    width: 100%;
}
.z-n1 {
    z-index: -1;
}
.collapsing {
    border-left:3px solid rgba(159, 69, 78, 1) !important;
}
/* Custom styling to match your image */
.custom-accordion-btn {
  background-color: transparent !important;
  color: rgba(159, 69, 78, 1) !important; /* The dusty rose color */
  font-weight: 500;
  font-size: 24px;
  border-left: 3px solid #dcd1c6; /* The light "inactive" line */
  padding-left: 1.5rem;
  transition: all 0.3s ease;
}

/* Change line color when the item is active/expanded */
.custom-accordion-btn:not(.collapsed) {
  border-left: 3px solid rgba(159, 69, 78, 1); /* The dark "active" line */
  box-shadow: none;
}

/* Remove the default Bootstrap chevron icon if you want it clean like the image */
.custom-accordion-btn::after {
  display: none;
}

/* If the body is part of an open item, you can highlight that line too */
.accordion-collapse.show ~ .accordion-body, 
.accordion-item:has(.show) .accordion-body {
    border-left: 3px solid rgba(159, 69, 78, 1);
}
.accordion-item {
    color: rgba(118, 86, 61, 1) !important;
}

.bg-peach {
    background-color: rgba(226, 183, 150, 1);
}

.fs-40 {
    font-size: 40px;
}
.flower-bullet ul li {
    display: flex;
    margin-bottom: 15px;
}
.flower-bullet ul li:last-child {
    margin-bottom: 0;
}
.flower-bullet ul li::before {
    content: url('../images/flower-bullet.svg');
    display: inline-block;
    margin-right: 10px;
}
.fw-medium {
    font-weight: 500;
}
.bullet-list ul {   
    list-style-type: disc;
    padding-left: 20px;
}
.bullet-list ul li {
    margin-bottom: 15px;
}

.light-headline-color {
    color: rgba(150, 63, 68, 1);
}

.bg-pink {
    background-color: rgba(255, 245, 236, 1)
}

.smudge {
    /*max-width: 1440px;*/
    margin: auto;
    left: 0;
    right: 0;    
}

.container-small {
    max-width: 1100px;
    margin: auto;
}

.contact-details {
    font-family: merriweather, serif;
    color: rgba(150, 63, 68, 1);
    font-size: 18px;
}
.contact-details a {
    color: rgba(150, 63, 68, 1);
    text-decoration: none;
}

.contact-form input, .contact-form textarea {
    border: 1px solid rgba(150, 63, 68, 1) !important;
    border-radius: 4px !important;
    padding: 8px !important;
    width: 100% !important;
    margin-bottom: 5px !important;
}

.wpcf7-submit {
    background: rgba(150, 63, 68, 1) !important;
    color: #fff !important;
}

.smudge-bottom {
    position: absolute;
    top: -10%;
    z-index: -1;
    width: 100%;
}
.smudge-bottom {
    /*max-width: 1440px;*/
    margin: auto;
    left: 0;
    right: 0;
}

.contact-wrapper {
    background-color: #fff;
    border-radius: 15px;
}
.btn-nav a {
    background: rgba(159, 69, 78, 1);
    border: 1px solid rgba(159, 69, 78, 1);
    padding: 8px 20px !important;
    border-radius: 100px;
    font-weight: 300;
    color: #fff !important;
}
nav ul#main-menu {
    align-items: center;
}
nav ul#main-menu li a {
    color: rgba(118, 86, 61, 1);
}

/* STICKY */
#main-nav {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1030; /* High enough to stay above everything */
    transition: all 0.3s ease-in-out;
}

/* Optional: Shrink the logo slightly when sticky */
#main-nav.sticky {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

#main-nav.sticky .navbar-brand img {
    height: 60px; /* Adjust based on your logo size */
    width: auto;
}
.bg-primary {
    background: #fff !important;
}
ul#footer-menu {
    list-style: none;
    align-items: center;
    justify-content: flex-end;
}
.text-white-desktop {
    color: #fff;
}
/* Target the offcanvas specifically for the 3/4 look */
#navbarNavOffcanvas.offcanvas-end {
    width: 75vw !important; /* 75% of the viewport width */
    max-width: 600px;       /* Optional: Cap it so it doesn't exceed 600px on ultra-wide screens */
    background-color: #ffffff;
    border-left: 2px solid rgba(157, 91, 91, 0.1); /* Subtle border using your theme color */
}

/* Optional: Soften the backdrop to make the 3/4 transition feel less jarring */
.offcanvas-backdrop.show {
    opacity: 0.3;
}
.rounded-10 {
    border-radius: 16px;
}
.gradient-shadow {
  position: relative;
  background: #fff;
  border-radius: 10px;
  padding: 20px;
}

.gradient-shadow::after {
  content: "";
  position: absolute;
  top: 10px;    /* Adjust for shadow offset */
  left: 10px;   /* Adjust for shadow offset */
  right: -5px;
  bottom: -5px;
  background: linear-gradient(45deg, #e7c3a7, #e18390);
  filter: blur(15px);
  opacity: 0.7;
  z-index: -1;  /* Places shadow behind the element */
  border-radius: 10px;
}
.wpcf7 form.sent .wpcf7-response-output {
    margin: auto;
    padding: 20px;
    border-radius: 10px;
    border: 2px solid #9f454e;
    color: #9f454e;
    background: #ffffff;
    text-align: center;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output {
    margin: auto;
    padding: 20px;
    border-radius: 10px;
    border: 2px solid #d9131e;
    color: #d9131e;
    background: #ffffff;
    text-align: center;
}
html {
	overflow-x: hidden;
}
@media screen and (min-width: 992px) {
    .border-right {
        border-right: 1px solid rgba(150, 63, 68, 0.2);    
    }
}

@media screen and (max-width: 991.98px) {
    h1.headline {
        font-size: 40px;
    }
    .smudge {
       display: none;
    }
     .btn-primary, .btn-ghost {
        font-size: 14px;
        padding: 8px 16px !important;
    }
     h2 {
        font-size: 32px;
    }
}

@media screen and (max-width: 767px) {
    .btn-nav a {
        padding: 8px 10px !important;
    }
    h1.headline {
        font-size: 32px;
    }
    .btn-primary, .btn-ghost {
        font-size: 16px;
        padding: 5px 10px !important;
    }
    .btn-ghost {
        background: #fff;
    }
    h2 {
        font-size: 28px;
    }   
    .fs-18 {
        font-size: 16px;
    } 
    .fs-24 {
        font-size: 18px;
    }
    .fs-32 {
        font-size: 20px;
    }
    .fs-40 {
        font-size: 24px;
    }
    .content-home-banner:after {
        background-image: linear-gradient(to right, rgba(255, 255, 255, 1) 12%, rgba(255, 255, 255, 0) 208%);
    }
    .content-home-banner {
        background: url(../images/banner.jpg) no-repeat;
        background-position: 70%;
    }
    .text-white-desktop {
        color: rgba(159, 69, 78, 1) !important;
    }

    h2.accordion-header button {
        font-size: 18px !important;
    }
    ul#footer-menu li {
        margin: 15px 0;
        padding: 0;
    }
    ul#footer-menu .btn-nav {
        margin: 0;
    }
    ul#footer-menu .btn-nav a {
        margin: 0;
        padding: 0 !important;
        background: none;
        border: none;
        color: rgba(118, 86, 61, 1) !important;
        font-weight: 400;
    }
}

@media (max-width: 767px) {
  [data-aos] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
div#wrapper-footer {
    position: relative;
    z-index: 1;

}
@media screen and (min-width: 1441px) {
    .smudge.view-mac, .smudge-bottom.view-mac {
       display: none;
    }
    .smudge.view-desktop, .smudge-bottom.view-desktop {
        display: block;
	}
}

@media screen and (width: 1440px) {
    .smudge.view-desktop, .smudge-bottom.view-desktop {
        display: none;
    }
    .smudge.view-mac, .smudge-bottom.view-mac {
       display: block;
    }
}
@media screen and (max-width: 1339px) {
   .view-desktop, .view-desktop {
        display: none;
    }
    .view-mac, .view-mac {
       display: none;
    }
}
