*,
*::before,
*::after {
    box-sizing: border-box;
}

:root {
    --bs-breakpoint-xs: 0;
    --bs-breakpoint-sm: 576px;
    --bs-breakpoint-md: 768px;
    --bs-breakpoint-lg: 992px;
    --bs-breakpoint-xl: 1200px;
    --bs-breakpoint-xxl: 1400px;
    --bs-purple: #b41e8e;
}

body {
    margin: 0;
    -webkit-text-size-adjust: 100%;
    color: #000;
    background: white;
}

html {
    scroll-behavior: smooth;
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
    --bs-gutter-x: 20px;
    --bs-gutter-y: 0;

    width: 100%;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
    .container-sm, .container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .container-md, .container-sm, .container {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .container-lg, .container-md, .container-sm, .container {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {
    .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 1320px;
    }
}

@media (min-width: 1600px) {
    .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 1500px;
    }
}

@media (min-width: 2000px) {
    .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 70%;
    }
}


.row {
    --bs-gutter-x: 20px;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(-1 * var(--bs-gutter-y));
    margin-right: calc(-0.5 * var(--bs-gutter-x));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
}

.row > * {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-top: var(--bs-gutter-y);
}

.col-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
}

.col-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
}

.col-3 {
    flex: 0 0 auto;
    width: 25%;
}

.col-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
}

.col-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
}

.col-6 {
    flex: 0 0 auto;
    width: 50%;
}

.col-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
}

.col-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
}

.col-9 {
    flex: 0 0 auto;
    width: 75%;
}

.col-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
}

.col-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
}

.col-12 {
    flex: 0 0 auto;
    width: 100%;
}

@media (min-width: 576px) {
    .col-sm-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-sm-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-sm-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-sm-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-sm-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-sm-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-sm-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-sm-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-sm-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-sm-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-sm-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-sm-12 {
        flex: 0 0 auto;
        width: 100%;
    }
}

@media (min-width: 768px) {
    .col-md-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-md-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-md-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-md-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-md-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-md-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-md-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-md-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-md-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-md-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-md-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-md-12 {
        flex: 0 0 auto;
        width: 100%;
    }
}

@media (min-width: 992px) {
    .col-lg-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-lg-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-lg-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-lg-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-lg-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-lg-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-lg-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-lg-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-lg-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-lg-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-lg-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-lg-12 {
        flex: 0 0 auto;
        width: 100%;
    }
}

@media (min-width: 1200px) {
    .col-xl-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xl-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xl-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xl-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xl-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xl-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xl-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xl-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xl-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xl-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xl-12 {
        flex: 0 0 auto;
        width: 100%;
    }
}

@media (min-width: 1400px) {
    .col-xxl-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xxl-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xxl-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xxl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xxl-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xxl-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xxl-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xxl-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xxl-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xxl-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xxl-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xxl-12 {
        flex: 0 0 auto;
        width: 100%;
    }
}


h1, h2, h3, h4, h5, h6 {
    margin: 0;
    font-family: "Yanone Kaffeesatz" ,  serif;
    font-weight: 300;
}

.img-fluid {
    max-width: 100%;
}

p {
    margin-bottom: 0;
    margin-top: 0;
}

a {
    text-decoration: none;
}

.no-padding {
    padding: 0;
}

.position-relative {
    position: relative;
}

.align-items-center {
    align-items: center;
}

.text-center {
    text-align: center;
}

.row-space{
    margin-bottom: 40px;
}
body {
    font-family: "Open Sans", serif; 
}

.header-bar{
    display: flex;
    justify-content: space-around;
    position: absolute;
    top: 10px;
    right: 0;
    left: 0;
    align-items: center;
    z-index: 100;
}
.mobile-toggle img {
    width: 30px;
    filter: invert(1);
}
.main-logo {
    max-width: 250px;
    margin-top: 10px;
    filter: brightness(0) invert(1);
}

.mobile-toggle{
    display: none;
}
#welcome {
    height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
}
#welcome video{
    width: 100%;
    height: 100vh;
    object-fit: cover;
}
.video-overlay{
    position : absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    background: #0000009e;
}
.hero-title {
    FONT-WEIGHT: 300;
    font-size: 90px;
}

.gradiant-text {
    background: linear-gradient(90deg, #b145a1, #5d096a);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.hero-subtitle {
    margin-top: 15px;
    font-weight: 300;
    font-size: 26px;
}

.social-items a img{
    max-width: 15px;
    margin-right: 8px;
    filter: invert(1);
}
.social-items a {
    color: #b2b2b3;
    display: flex;
    align-items: center;
}

.social-items {
    position: absolute;
    left: 40px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.menu-items a.active {
    color: var(--bs-purple)
}

.menu-items a.active::after {
    background: var(--bs-purple);
}

.menu-items a::after {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    vertical-align: middle;
    background: #b2b2b3;
    content: '';
    display: inline-block;
    margin-left: 5px;
}

.menu-items a {
    color: #b2b2b3;
}

.menu-items {
    position: fixed;
    right: 20px;
    display: flex;
    flex-direction: column;
    top: 50%;
    transform: translateY(-50%);
    gap: 5px;
    text-align: right;
}
#features {
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}


.section-title {
    font-size: 100px;
    font-weight: 300;
    margin-bottom: 20px;
    min-height: 74px;
}

.section-subtitle {
    margin-top: 5px;
    font-weight: 300;
    font-size: 26px;
    font-family: "Yanone Kaffeesatz" ,  serif;
}

.we-are-desc {
    max-width: 550px;
    margin: 50px auto;
    font-size: 14px;
}

.counters {
    display: flex;
    justify-content: center;
    gap: 60px;
    margin: 20px 0;
}

.counter-item {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.counter-number {
    font-family: Clearly Gothic , serif;
    font-size: 40px;
}

.counter-desc {
    max-width: 120px;
}


#services {
    background: url("../img/service-background.png") center / cover no-repeat fixed;
    position: relative;
    display: flex;
    align-items: center;
    overflow: hidden;
    min-height: 100vh;
}

.service-items{
    display: flex;
    flex-direction: column;
    gap: 40px;
    max-width: 70%;
    margin: auto;
    position: relative;
}
.service-item{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 50px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    left: 0;
    margin: auto;
}
.service-item img{
    height: 100px;
    max-width: 100%;
}
.service-item a {
    color: white;
    border: 1px solid white;
    padding: 3px 10px;
    border-radius: 25px;
    margin-top: 5px;
}
.service-item p {
    color: white;
    font-size: 50px;
    font-family: "Yanone Kaffeesatz", serif;
    font-weight: 100;
}




.slider-single {
    position: relative;
    width: 100%;
}

.slider-single .item {
    position: relative;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    overflow: hidden;
}


.slider-single .item img {
    width: 60%;
    max-width: 600px;
    border-radius: 10px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.5);
}
.item-info{
    position: absolute;
    bottom: 10px;
    max-width: 90%;
    margin: auto;
    display: flex;
    width: 100%;
    right: 0;
    left: 0;
    justify-content: space-between;
    color: white;
}

/* CSS */
#works {
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    background: black;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
#works .section-title {
    color: white;
    margin-bottom: 0;
}
#works .item {
    min-width: 100vw;
    margin: 0;
    box-sizing: border-box;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 15px;
}
#works .item img {
    height: calc(100vh - 200px);
    width: auto;
    border-radius: 12px;
}
#works .title {
    font-size: 24px;
    color: white;
}
#works .desc {
    font-size: 16px;
    color: white;
}
.work-item-wrapper{
    position: relative;
}
.word-item-info{
    position: absolute;
    background: linear-gradient(180deg, #ffffff00, 85%, var(--bs-purple));
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    display: flex;
    align-items: self-end;
    justify-content: space-between;
    padding: 15px;
    border-radius: 12px;
}
.gallery-carousel-inner {
    display: flex;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}



.map-section {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}
.map-section svg{
    max-width: 100%;
    max-height: 60vh;
}

#world-map {
    width: 100%;
    height: 100%;
}

.country-dot {
    transform-origin: center;
    opacity: 0;
    fill: var(--bs-purple);

}
.country-name-wrapper{
    display: flex;
    justify-content: center;
    gap: 20px;
    font-size: 16px;
}

#globally{
display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
    height: 100vh;
    padding-top: 15px;
    padding-bottom: 15px;
}
#globally .section-title{
    margin-bottom: 0;
}
.global-map {
    position: relative;
    width: 100%;
    text-align: center;
    opacity: 0.5;
}

#partners {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.image-grid {
    position: relative;
    width: 100%;
    height: 65vh;
}
.partner-half {
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: space-between;
    width: 80%;
    opacity: 0;
    flex-wrap: wrap;
}
.partner-half img {
    width: 30%;
    object-fit: contain;
}
.partner-bottom-line{
    margin-top: 20px;
    font-size: 32px;
}

#testimonials{
    background: black;
    height: 100vh;
}
#testimonials .section-subtitle{
    color: white;
}
#testimonials .section-title{
    color : white;
    margin-bottom: 0;
    padding-top: 30px;
}
.testimonial-slider {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 80vh;
}
.testimonial-slider .item{
    position: absolute;
    top: 50%;
    display: flex;
    flex-direction: column;
    gap: 30px;
    align-items: center;
    transform: translateY(-50%);
    text-align: center;
}
.testimonial-slider .item video{
    max-width: 50%;
    border-radius: 15px;
}
.testimonial-slider .item .testimonial-info{
    flex: 1; /* بقیه فضا را بگیرد */
}

.testimonial-slider video{
    height: 50vh;
}
.testimonial-title{
    font-size: 40px;
    color: white;
    font-family: "Yanone Kaffeesatz", serif;
}
.testimonial-desc {
    color: white;
    font-size: 16px;
    margin-top: 20px;
    line-height: 2em;
}


#team{
    padding-top: 70px;
    padding-bottom: 70px;
}

.teams-member{
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 25px;
}
.team-member{
    flex : 1 0 18%;
    position: relative;
    border-radius: 15px;
    overflow: hidden;
}
.person-info{
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    padding: 10px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    background: linear-gradient(180deg, #ffffff00, #000000);
    color: white;
    text-align: center;
}

#contact{
    padding-top: 70px;
    padding-bottom: 70px;
}
#contact .section-subtitle{
    margin-bottom: 20px;
}
.map-branch{
    display: flex;
}
.branch-box{
    background: #121212;
    color : white;
    text-align: center;
    padding: 6px 0;
    font-size: 14px;
    border-bottom: 1px solid #474747;
}
.branch-box:last-child{
    border-bottom: 0;
}
.branch-name{
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 10px 0;
}
.branch-address{
    color : white;
    margin-bottom: 10px;
}
.branch-phone a{
    color: white;
    font-weight: bold;
}
.branch-mail a{
    color :  white
}
#contact iframe{
    margin-top: 20px;
}


.floating-buttons {
    position: fixed;
    bottom: 20px;
    left: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    z-index: 9999;
    opacity: 0;
    pointer-events: none;
}


.floating-buttons a:last-child{
    background: var(--bs-purple);
}
.floating-buttons a:first-child{
    background: #25D366;
    border: 0;
}
.floating-buttons a  {
    color: white;
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    padding: 5px 15px;
    border-radius: 10px;
}
.floating-buttons a img {
    width: 20px;
    height: auto;
    transition: transform 0.2s;
}

.floating-buttons a img:hover {
    transform: scale(1.1);
}
.footer-title-menu iframe{
    border-radius: 10px;
}
.footer-title-menu{
    display: flex;
    justify-content: space-between;
    margin-bottom: 25px;
}
#footer .section-title{
    font-size: 70px;
}
#footer .section-title,#footer .section-subtitle{
    color: white;
    margin-bottom: 0;
}
#footer{
    background: black;
    padding-top: 100px;
    padding-bottom: 100px;
}
#footer ul li a{
    color: white;
}
#footer ul{
    padding: 0;
    list-style: none;
}
.footer-bar p{
    color: white;
}
.footer-socials img{
    filter: brightness(1) invert(1);
    width: 20px;
    height: auto;
}
.footer-socials{
    display: flex;
    gap: 25px;
    align-items: center;
}
.footer-bar{
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
}
.header-wrapper{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.main-menu a{
    color : #b2b2b3;
}
.main-menu{
    display: flex;
    gap: 20px;
}
.beauty-logo img{
    max-height: 65px;
    padding: 10px 0;
}
.main-socials img{
    max-height: 15px;
}
.main-socials ,.main-socials a{
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    color : #b2b2b3;
}
.main-socials a{
    gap: 3px;
}

footer{
    background: #4d4d4d;
    text-align: center;
    padding: 30px 0 15px 0;
}
.footer-logo{
    filter: brightness(0) invert(1);
    max-height: 60px;
    margin-bottom: 30px;
}
.footer-text{
    font-size: 14px;
    color: #d2d2d2;
    font-weight: 600;
}
.footer-subtext{
    max-width: 900px;
    margin: auto;
    color: #d2d2d2;
    font-size: 13px;
    font-weight: 100;
    margin-top: 8px;
}
.footer-services img{
    filter: brightness(0) invert(1);
    height: 20px;
}
.footer-services{
    display: flex;
    gap: 30px;
    justify-content: center;
    margin: 30px 0;
}
.footer-subsection{
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #5f5f5f;
}
.footer-menu a{
    font-size: 13px;
    color : #d2d2d2;
}
.footer-menu{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
    margin-bottom: 15px;
}
.footer-copyright{
    color: #d2d2d2;
    font-size: 13px;
}
/*About*/
#banner-slider img{
    width: 100%;
}
#about-desc{
    display: flex;
    align-items: center;
    min-height: 100vh;
    justify-content: center;
    flex-direction: column;
}
#about-desc .about-content-sec:first-child{
    margin-bottom: 30px;
}
#about-cta img{
    width: 100%;
}
#choose-us{
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 100px;
}
.why-item{
    display: flex;
    gap: 10px;
    padding: 15px;
    margin-bottom: 10px;
    border-top: 1px solid #b2b2b3; /* keep top border solid */
    border-right: 1px solid transparent;
    border-left: 1px solid transparent;
    border-bottom: none; /* remove bottom border */

    border-image: linear-gradient(to bottom, #b2b2b3, white) 1 100%;
    border-image-slice: 1;

}
.why-number span:first-child{
    font-size: 40px;
}
.why-number{
    display: flex;
    align-items: center;
    gap: 20px;
    padding-right: 40px;
    border-right: 1px solid #b2b2b3;
    width: 220px;
    flex: 1 0 220px;
}
.why-desc{
    font-size: 14px;
    padding-left: 40px;
    display: flex;
    align-items: center;
}
.award-wrapper{
    border-top: 1px solid #b2b2b3;
    border-right: 1px solid transparent;
    border-left: 1px solid transparent;
    border-bottom: none;
    border-image: linear-gradient(to bottom, #b2b2b3, white) 1 100%;
    border-image-slice: 1;
    text-align: center;
    padding: 20px;
    margin: 0 10px;
}
.award-info .title{
    font-size: 13px;
    margin-top: 10px;
    color: gray;
}
.award-wrapper img{
    max-height: 100px;
    margin: auto;
}
.award-info .desc{
    display: flex;
    flex-direction: column;
    margin-top: 20px;
    font-size: 14px;
    font-weight: 700;
    color : white;
}
#certificate img{
    width: 100%;
}
#awarded{
    display: flex;
    min-height: 100vh;
    justify-content: center;
    flex-direction: column;
    background: black;
    gap: 100px;
}
#awarded .section-title{
    color: white;
}
.slider.awards{
    display: flex;
    justify-content: center;
}

#portfolio-gallery{
    min-height: 100vh;
}
.portfolio-content{
    display: none;
}
.portfolio-content.all{
    display: block;
}
.portfolio-gallery img{
    width: 50%;
    padding: 10px;
}
.portfolio-gallery{
    display: flex;
    flex-wrap: wrap;
}

.portfolio-tabs{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    padding-bottom: 20px;
}
.portfolio-tabs p{
    border-bottom: 2px solid transparent;
    padding-bottom: 5px;
    cursor: pointer;
}
.portfolio-tabs p.active{
    color: var(--bs-purple);
    border-bottom: 2px solid var(--bs-purple);
    padding-bottom: 5px;
}
.filter{
    display: flex;
    margin-bottom: 10px;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.portfolio-content .filter p{
    font-size: 13px;
    padding: 3px 10px;
    border: 1px solid #b2b2b3;
    border-radius: 50px;
}


.portfolio-socials img{
    max-height: 20px;
}
.portfolio-socials{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    margin-top: 50px;
}
.portfolio-social-text{
    text-align: center;
    font-size: 14px;
}
#featured-posts{
    min-height: 100vh;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 100px;
    display: flex;
}
.slider.featured-posts{
    display: flex;
}
.featured-posts-wrapper{
    border-top: 1px solid #b2b2b3;
    border-right: 1px solid transparent;
    border-left: 1px solid transparent;
    border-bottom: none;
    border-image: linear-gradient(to bottom, #b2b2b3, white) 1 100%;
    border-image-slice: 1;
    text-align: center;
    padding: 20px;
    margin: 0 10px;
}
.featured-posts-wrapper img{
    width: 100%;
}

.featured-post-info .title{
    margin-top: 10px;
}

.featured-post-info .desc{
    display: flex;
    flex-direction: column;
    margin-top: 15px;
    font-size: 12px;
    font-weight: 700;
}


.blog-card{
    display: flex
;
    border-top: 1px solid #b2b2b3;
    border-right: 1px solid transparent;
    border-left: 1px solid transparent;
    border-bottom: none;
    border-image: linear-gradient(to bottom, #b2b2b3, white) 1 100%;
    border-image-slice: 1;
    padding: 15px;
}
.card-title .date{
    font-size: 14px;
    font-weight: 100;
}
.card-excerpt a{
    font-size: 14px;
    color: black;
    font-weight: 100;
}
.card-excerpt p{
    font-size: 14px;
    line-height: 1.8em;
}
.card-excerpt{
    flex: 1;
    display: flex
;
    flex-direction: column;
    justify-content: space-between;
    padding: 0 30px;
}
.card-title .title{
    font-size: 40px;
    padding-right: 30px;
}
.card-title{
    flex: 1;
    display: flex
;
    flex-direction: column;
    justify-content: space-between;
    border-right: 1px solid #b2b2b3;
}

#service-cards{
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    align-items: center;
    justify-content: center;
    gap: 30px;
}
#service-desc{
min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
#service-cta img{
    width: 100%;
}
.service-card .desc{
    font-size: 14px;
    padding-left: 14px;
}
.service-card .title{
    min-width: 200px;
    border-right: 1px solid #b2b2b3;
}
.service-card{
    display: flex
;
    border-top: 1px solid #b2b2b3;
    border-right: 1px solid transparent;
    border-left: 1px solid transparent;
    border-bottom: none;
    border-image: linear-gradient(to bottom, #b2b2b3, white) 1 100%;
    border-image-slice: 1;
    padding: 15px;
}

#steps{
    display: flex;
    align-items: center;
    flex-direction: column;
    min-height: 100vh;
    justify-content: center;
}
.steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    max-width: 1200px;
    margin: 0 auto;
}
.step {
    text-align: center;
    border-radius: 10px;
    display: flex;
    border-top: 1px solid #b2b2b3;
    border-right: 1px solid transparent;
    border-left: 1px solid transparent;
    border-bottom: none;
    border-image: linear-gradient(to bottom, #b2b2b3, white) 1 100%;
    border-image-slice: 1;
    padding: 15px;
}
.step .title {
    display: flex;
    align-items: center;
    font-size: 24px;
    margin-left: 10px;
    font-weight: 100;
}
.step .number {
    display: inline-block;
    font-size: 40px;
    font-weight: 100;
}

#calendar{
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100vh;
}

.enquire{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;
    margin-top: 25px;
}
.enquire .title{
    font-size: 40px;
    font-weight: bold;
}
.cta-btns a img{
    max-height: 25px;
}
.cta-btns a{
    display: flex;
    align-items: center;
    background: linear-gradient(90deg, #681152, var(--bs-purple), #681152);
    color: white;
    gap: 10px;
    font-size: 14px;
    padding: 3px 10px;
    border-radius: 50px;
    box-shadow: 0 1px 8px 1px #00000070;
}
.cta-btns{
    display: flex;
    gap : 10px;
}

.event-wrapper {
    display: flex;
    flex-wrap: wrap;
}

.event-item img{
    width: 100%;
    padding: 20px 20px 0 20px;
}
.event-item {
    flex: 0 0 25%;
    padding: 10px;
    text-align: center;
    font-size: 14px;
    font-weight: 500;
}
.featured-event-title{
    text-align: center;
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 10px;
}
.featured-event-desc{
    text-align: center;
    font-size: 14px;
}
.featured-event-excerpt{
    font-size: 14px;
    text-align: center;
    margin-top: 30px;
}
.featured-event-link{
    color: black;
    display: block;
    margin: 20px auto 0 auto;
    width: 100px;
    font-size: 14px;
    text-align: center;
    border-radius: 50px;
    padding: 5px;
    box-shadow: 0 1px 8px 1px #00000070;
}






/* Responsive adjustments */
@media (min-width: 2000px) {
    .section-title{
        font-size: 220px;
    }
    .section-subtitle {
        font-size: 45px;
    }
    .service-item img {
        height: 300px;
    }
    .service-item a {
        padding: 10px 60px;
    }
    #works .item img {
        height: 75vh;
    }
    #works .section-title{
        padding-top: 15px;
    }
    #globally{
        justify-content: center;
        gap: 50px;
    }
}
@media (min-width: 1400px) {
    .section-title{
        font-size: 170px;
    }
    .service-item img {
        height: 200px;
    }
    .service-item p {
        color: white;
        font-family: "Yanone Kaffeesatz", serif;
        font-size: 80px;
        font-weight: 100;
    }
    .service-item a {
        padding: 10px 60px;
    }
    #works .item img {
        height: 75vh;
    }
    #works .section-title{
        padding-top: 15px;
    }
    #about-desc .section-title{
        font-size: 85px;
    }
}
@media (max-width: 1400px) {
    .slider-single .slick-slide img {
        max-height: calc(100vh - 200px);
    }
    .item-info {
        max-width: 60%;
    }

}
@media (max-width: 1024px) {
    .image-grid img {
        width: calc(25% - 10px);
    }
    .card-excerpt{
        display: none;
    }
    .card-title .title {
        font-size: 34px;
    }
    .card-image img{
        max-height: 140px;
    }
}
@media (max-width: 768px) {
    .image-grid img {
        width: calc(33.33% - 10px);
    }
    .steps {
        grid-template-columns: repeat(2, 1fr);
    }
    .header-wrapper {
        flex-direction: row-reverse;
    }
    .main-socials{
        display: none;
    }
    .enquire{
        flex-direction: column;
        gap: 20px;
        margin: 30px 0;
    }
    .events-row{
        flex-direction: column-reverse;
    }
    .featured-event{
        margin-top: 30px;
    }
    .featured-event-link{
     margin-bottom: 30px;
    }
    .event-item {
        flex: 0 0 50%;
    }
}
@media (max-width: 576px) {
    .main-logo {
        max-width: 150px;
    }
    .slider-single .slick-prev{
        right: -35px;
    }
    .slider-single .slick-next{
        left: -35px;
    }
    .slider-single .slick-prev img, .slider-single .slick-next img{
        max-width: 18px;
    }

    .item-info {
        max-width: 90%;
        font-size: 10px;
    }
    .mobile-toggle{
        display: block;
    }
    .section-title {
        font-size: 30px;
    }
    .section-subtitle {
        font-size: 18px;
    }
    .slider-nav-wrapper{
        display: none;
    }
    .counters{
        flex-wrap: wrap;
        gap: 20px;

    }
    .counter-item {
        flex: 1 0 40%;
        align-items: center;
    }
    .team-member{
        flex: 1 0 45%;
    }

    .service-item{
        flex-direction: column;
        align-items: baseline;
    }
    .menu-items{
        display: none;
    }
    .menu-items.active{
        display: flex;
        background: var(--bs-purple);
        right: 0;
        padding: 20px;
        border-top-left-radius: 10px;
        border-bottom-left-radius: 20px;
    }
    .menu-items a.active {
        color: #ffffff;
    }
    .menu-items a{
        color: #ffa8e4;
    }
    .menu-items a::after{
        background: #ffa8e4;
    }
    .menu-items a.active::after{
        background: white;
    }
    .social-items{
        display: none;
    }
    .branch-box{
        margin-bottom: 20px;
    }
    .steps{
        grid-template-columns: repeat(1, 1fr);
    }

    .main-menu a{
        font-size: 11px;
    }
    .main-menu {
        gap: 6px;
    }
    .beauty-logo img {
        max-height: 50px;
    }
    .section-title{
        min-height: 37px;
    }
    .about-content-sec{
        margin-bottom: 20px;
    }
    .why-item{
        flex-direction: column;
    }
    .why-number{
        padding-right: 0;
        border-right: 0;
        width: auto;
        flex: auto;
    }
    .footer-services{
     flex-wrap: wrap;
    }
    .card-title .title {
        padding-right: 0;
        font-size: 24px;
        margin-bottom: 10px;
    }
    .card-title{
        border-right: 0;
    }
    .blog-card{
        flex-direction: column;
    }
    .card-excerpt {
        padding: 30px 0;
    }
    .card-excerpt{
        display: flex;
    }
    .card-image img{
        max-height: none;
    }
    .portfolio-tabs{
        gap: 10px;
        flex-wrap: wrap;
    }
    .portfolio-tabs p{
        font-size: 3px;
    }
    .filter{
        gap: 6px;
    }
    .portfolio-content .filter p {
        font-size: 11px;
        padding: 3px 6px;
    }

    .service-card{
        flex-direction: column;
    }
    .service-card .desc{
        padding-left: 0;
    }
    .service-card .title{
        border-right: 0;
        margin-bottom: 15px;
    }
}

