:root {
    --bloom-cream: #fbf7f0;
    --bloom-cream-deep: #f3eadf;
    --bloom-champagne: #e6d4b5;
    --bloom-champagne-deep: #b99763;
    --bloom-blush: #f1d8d5;
    --bloom-blush-deep: #bf817b;
    --bloom-brown: #4b362f;
    --bloom-muted-brown: #7d6a60;
    --bloom-border: #e7d9cb;
    --bloom-shadow: 0 16px 40px rgba(95, 67, 52, 0.1);

    --bs-primary: var(--bloom-blush-deep);
    --bs-primary-rgb: 191, 129, 123;
    --bs-primary-hover: var(--bloom-blush);
    --bs-btn-active: var(--bloom-champagne);
    --bs-btn-disabled: var(--bloom-cream-deep);
    --bs-link-color: var(--bloom-brown);
    --bs-link-hover-color: var(--bloom-blush-deep);
}

html {
    scroll-behavior: smooth;
}

body {
    color: var(--bloom-brown) !important;
    background: var(--bloom-cream);
    font-family: "Poppins", "Helvetica Neue", Arial, sans-serif;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body p,
body strong,
body .text-muted {
    color: var(--bloom-brown) !important;
}

a {
    color: var(--bloom-brown);
}

a:hover,
a:focus {
    color: var(--bloom-blush-deep);
}

section {
    background-color: var(--bloom-cream);
}

.bloom-intro-section,
.bloom-gallery-section,
.bloom-testimonial-section {
    background-color: var(--bloom-cream);
}

.bloom-feature-section {
    background: linear-gradient(180deg, var(--bloom-cream-deep) 0%, var(--bloom-cream) 100%);
}

#web-top {
    background: var(--bloom-cream-deep);
    border-bottom: 1px solid rgba(185, 151, 99, 0.18);
    color: var(--bloom-brown);
}

#web-top .text-primary,
#web-top .text-primary:hover,
#web-top .bi {
    color: var(--bloom-blush-deep) !important;
}

#web-nav {
    background: var(--bloom-cream);
    border-bottom: 1px solid var(--bloom-border);
}

#web-title {
    color: var(--bloom-brown) !important;
    letter-spacing: 0.08em;
}

.nav-link,
.navbar-light .navbar-nav .nav-link {
    color: var(--bloom-brown);
}

.nav-item .active,
.nav-item > .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
    color: var(--bloom-blush-deep) !important;
}

.navbar-toggler {
    border-color: var(--bloom-champagne);
}

.carousel-content {
    background: linear-gradient(90deg, rgba(55, 35, 27, 0.64), rgba(55, 35, 27, 0.18));
}

.con-sub-title {
    color: var(--bloom-champagne) !important;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.con-title {
    color: #fffaf5 !important;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.con-d {
    color: #fffaf5 !important;
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
}

.book-btn,
.btn-primary {
    color: var(--bloom-brown) !important;
    background: linear-gradient(135deg, var(--bloom-champagne) 0%, var(--bloom-blush) 100%) !important;
    border: 1px solid rgba(185, 151, 99, 0.48) !important;
    box-shadow: 0 8px 18px rgba(191, 129, 123, 0.16);
}

.book-btn:hover,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    color: var(--bloom-brown) !important;
    background: linear-gradient(135deg, var(--bloom-blush) 0%, var(--bloom-champagne) 100%) !important;
    border-color: var(--bloom-blush-deep) !important;
}

.btn-outline-primary {
    color: var(--bloom-blush-deep) !important;
    border-color: var(--bloom-blush-deep) !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    color: var(--bloom-brown) !important;
    background: var(--bloom-blush) !important;
    border-color: var(--bloom-blush-deep) !important;
}

.text-primary,
.text-success {
    color: var(--bloom-blush-deep) !important;
}

.text-white {
    color: #fffaf5 !important;
}

#other-bkg {
    background-image: linear-gradient(rgba(75, 54, 47, 0.52), rgba(75, 54, 47, 0.52)), url('/assets/images/other-bkg.jpg') !important;
}

#other-bkg h2 {
    color: #fffaf5 !important;
    letter-spacing: 0.12em;
}

.carousel-control-div {
    background-color: rgba(75, 54, 47, 0.72) !important;
}

.carousel-control-div:hover {
    background: var(--bloom-blush-deep) !important;
}

.home-sub-title {
    color: var(--bloom-blush-deep) !important;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.home-title {
    color: var(--bloom-brown) !important;
    letter-spacing: 0.04em;
}

.decorate > div:nth-child(1),
.decorate > div:nth-child(3) {
    background-color: var(--bloom-champagne-deep) !important;
}

.decorate img {
    filter: sepia(0.28) saturate(0.72);
}

.bloom-intro-section img,
.bloom-feature-section img,
.bloom-gallery-section img,
.contact-img {
    border: 1px solid var(--bloom-border);
    box-shadow: var(--bloom-shadow);
}

.hot-card-content,
.tc-testimonial-card {
    background: #fffaf5 !important;
    border-color: var(--bloom-border) !important;
    box-shadow: var(--bloom-shadow) !important;
}

.hot-price-section {
    background: rgba(241, 216, 213, 0.42) !important;
}

.hot-current-price,
.hot-vip-badge,
.tc-quote-icon {
    color: var(--bloom-blush-deep) !important;
}

.hot-original-price,
.hot-service-subtitle,
.tc-testimonial-date,
.tc-client-details p {
    color: var(--bloom-muted-brown) !important;
}

.hot-service-subtitle,
.hot-original-price {
    color: var(--bloom-muted-brown) !important;
}

.tc-section-header h2,
.tc-testimonial-card::before {
    background: linear-gradient(135deg, var(--bloom-blush-deep), var(--bloom-champagne-deep)) !important;
}

.tc-testimonial-card::before {
    background-clip: border-box !important;
}

.tc-testimonial-text,
.tc-client-details h5,
.tc-section-header p {
    color: var(--bloom-brown) !important;
}

.tc-client-avatar {
    border-color: var(--bloom-champagne) !important;
    box-shadow: 0 4px 12px rgba(185, 151, 99, 0.2) !important;
}

#hb-footer {
    background: var(--bloom-cream-deep) !important;
    border-top: 1px solid var(--bloom-border);
}

#hb-footer .hb-col h3,
#hb-footer .hb-col h2,
#hb-footer .hb-logo h2 {
    color: var(--bloom-brown) !important;
}

#hb-footer .hb-timeandday,
#hb-footer .footer-link-item {
    color: var(--bloom-muted-brown) !important;
}

#hb-footer .list-unstyled button {
    color: var(--bloom-brown);
    background: var(--bloom-champagne);
}

.hb-footerbar {
    background: var(--bloom-champagne) !important;
    color: var(--bloom-brown) !important;
}

.hb-footerbar .text-primary {
    color: var(--bloom-brown) !important;
}

.form-control,
select,
input,
textarea {
    border-color: var(--bloom-border) !important;
    background-color: #fffaf5 !important;
    color: var(--bloom-brown) !important;
}

.form-control:focus,
select:focus,
input:focus,
textarea:focus {
    border-color: var(--bloom-blush-deep) !important;
    box-shadow: 0 0 0 0.2rem rgba(191, 129, 123, 0.14) !important;
}

#web-to-top {
    background: var(--bloom-blush-deep) !important;
    color: #fffaf5 !important;
}

@media (max-width: 768px) {
    .con-title {
        font-size: 28px !important;
    }

    .con-d {
        padding: 0 24px;
        font-size: 14px;
        line-height: 1.7;
    }
}

html,
body {
    max-width: 100%;
    overflow-x: hidden;
}
