/* Reset & Base */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: "Inter", Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #333;
    background-color: hsl(35 30% 96%);
    overflow-x: hidden !important;
}

/* Typography */
:root {
    --primary: hsl(160 22% 16%);
    --secondary: hsl(220 20% 10%);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 500;
    margin-bottom: 10px;
    color: #111;
    font-family: "Playfair", serif;
}

p {
    margin-bottom: 10px;
}

/* Links */
a {
    text-decoration: none;
    color: inherit;
}

/* Navbar */
.nav-link {
    font-size: 16px;
    line-height: 1.25rem;
    color: #fff;
    font-weight: 400;
    padding: 0px 20px !important;
}

.nav-link:hover {
    color: #fff;
}

/* Buttons */
.text-primary {
    color: var(--primary) !important;
}

.bg-primary {
    background: var(--primary) !important;
}

.btn-primary {
    background: var(--primary);
    color: #fff;
    border: none;
}

.btn-primary:hover {
    background: hsl(160 84% 20%);
    color: #fff;
}

.btn-outline-light:hover {
    color: var(--secondary) !important;
}

.btn {
    padding: 10px 15px;
    border-radius: 8px;
    font-size: 15px;
}

.header_part {
    background: hsl(160 22% 16%);
}



/* Banner */
.banner_title {
    font-size: 60px;
}

.banner_content {
    padding: 200px 0px;
}

/* Icon Card */
.icon_card {
    width: 64px;
    height: 64px;
    background: hsl(140deg 15% 75% / 50%);
    transition: 0.3s;
}

/* Services */
.service_sec {
    background: hsl(35 25% 94%);
}

.service_card img {
    transition: all 1s;
}

.service_card:hover img {
    transform: scale(1.05);
}

/* Footer */
.footer_sec {
    background: hsl(160 22% 16%);
}

.footer_bottom {
    border-top: 1px solid #555;
    padding-top: 30px !important;
    margin-top: 30px !important;
}

/* Scroll Top Button */
#scrollTopBtn {
    width: 55px;
    height: 55px;
    position: fixed;
    bottom: 25px;
    right: 25px;
    display: none;
    z-index: 9999;
    border: none;
    background: #ffffff;
    color: var(--primary);
}

/* Footer Navigation */
.footer-nav-item {
    text-decoration: none;
    color: #a5aaa8;
    font-size: small;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
}

.footer-nav-item:hover {
    color: #fff;
    text-decoration: underline;
}

.calander_nav {
    background: hsl(35 20% 90%);
    border-radius: 50px;
}

.calander_nav li button {
    font-size: 15px;
    padding: 10px 20px !important;
    color: #000000 !important;
}

.calander_nav li button.active {
    color: #ffffff !important;
    background: var(--primary) !important;
}

td {
    background-color: #f8f5f2 !important;
    border-bottom: 1px solid #ece7e3;
}

thead th {
    background-color: #ebe6e0 !important;
    font-size: 14px;
    font-weight: 500 !important;
}