/* =========================================================
   GOOGLE FONTS
========================================================= */

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


/* =========================================================
   RESET
========================================================= */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Poppins', sans-serif;
    background:#fdf8f3;
    overflow-x:hidden;
}


/* =========================================================
   CONTAINER
========================================================= */

.container{
    width:90%;
    max-width:1300px;
    margin:auto;
}


/* =========================================================
   HERO SECTION
========================================================= */

.hero-section{
    min-height:100vh;

    background:
    
    url('../images/hero-bg.jpg');

    background-size:cover;
    background-position:center -50px;
    background-repeat:no-repeat;

    position:relative;
}


/* =========================================================
   HEADER
========================================================= */

.header{
    width:100%;
    padding:18px 0;

    position:fixed;
    top:0;
    left:0;

    z-index:9999;

    background:rgba(255,255,255,0.96);
    backdrop-filter:blur(10px);

    box-shadow:0 4px 20px rgba(0,0,0,0.05);

    transform:translateY(-100%);
    opacity:0;

    transition:all 0.4s ease;
}


/* SHOW HEADER */

.show-header{
    transform:translateY(0);
    opacity:1;
}


/* =========================================================
   NAVBAR
========================================================= */

.navbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
}


/* =========================================================
   LOGO
========================================================= */

.logo img{
    height:75px;
    object-fit:contain;
}


/* =========================================================
   NAVIGATION MENU
========================================================= */

.nav-menu ul{
    display:flex;
    align-items:center;
    gap:40px;

    list-style:none;
}

.nav-menu ul li a{
    text-decoration:none;

    color:#4a2a14;

    font-size:14px;
    font-weight:500;

    letter-spacing:0.5px;

    transition:0.3s ease;
}

.nav-menu ul li a:hover{
    color:#b57a2d;
}


/* =========================================================
   CALL BUTTON
========================================================= */

.header-btn a{
    text-decoration:none;

    background:#5b2d0d;
    color:#fff;

    padding:12px 24px;

    border-radius:40px;

    font-size:14px;
    font-weight:500;

    display:inline-flex;
    align-items:center;
    gap:8px;

    transition:0.3s ease;
}

.header-btn a:hover{
    background:#8a4b17;
}


/* =========================================================
   MOBILE TOGGLE
========================================================= */

.menu-toggle{
    width:35px;
    height:25px;

    display:none;
    flex-direction:column;
    justify-content:space-between;

    cursor:pointer;
}

.menu-toggle span{
    width:100%;
    height:3px;

    background:#4a2a14;

    border-radius:5px;
}


/* =========================================================
   HERO CONTENT
========================================================= */

.hero-content{
    min-height:110vh;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:50px;
}


/* =========================================================
   LEFT HERO
========================================================= */

.hero-left{
    flex:1;
    max-width:580px;
}


/* =========================================================
   BRAND LOGO
========================================================= */

.hero-brand img{
    width:580px;
    max-width:100%;

    margin-bottom:10px;
}


/* =========================================================
   BRAND LINE
========================================================= */

.brand-line{
    display:flex;
    align-items:center;
    gap:75px;

    margin-bottom:35px;
}

.brand-line span{
    width:80px;
    height:1px;

    background:#c8a26a;
}

.brand-line p{
    color:#b57a2d;

    letter-spacing:4px;

    font-size:18px;

    font-family:'Cormorant Garamond', serif;
}


/* =========================================================
   HERO HEADING
========================================================= */

.hero-left h1{
    font-size:72px;
    line-height:1.1;

    color:#3b1d0f;

    font-family:'Cormorant Garamond', serif;

    font-weight:700;

    margin-bottom:25px;
}


/* =========================================================
   HERO TEXT
========================================================= */

.hero-text{
    font-size:17px;
    line-height:1.8;

    color:#5f5146;

    margin-bottom:40px;

    max-width:520px;
}


/* =========================================================
   HERO BUTTON
========================================================= */

.hero-btn{
    display:inline-block;

    background:#5b2d0d;
    color:#fff;

    text-decoration:none;

    padding:18px 34px;

    border-radius:10px;

    font-size:15px;
    font-weight:500;

    transition:0.3s ease;
}

.hero-btn:hover{
    background:#8a4b17;

    transform:translateY(-3px);
}


/* =========================================================
   RIGHT HERO IMAGE
========================================================= */

.hero-right{
    flex:1;

    text-align:right;

    position:relative;
}

.hero-right img{
    width:100%;
    max-width:750px;

    object-fit:contain;
}


/* =========================================================
   FEATURES SECTION
========================================================= */

.features-section{
    margin-top:-70px;

    position:relative;
    z-index:5;

    padding-bottom:80px;
}


/* =========================================================
   FEATURES WRAPPER
========================================================= */

.features-wrapper{
    background:#fff;

    border-radius:22px;

    box-shadow:0 10px 35px rgba(0,0,0,0.08);

    display:grid;
    grid-template-columns:repeat(5,1fr);

    overflow:hidden;
}


/* =========================================================
   FEATURE CARD
========================================================= */

.feature-card{
    padding:45px 28px;

    text-align:center;

    border-right:1px solid #eee;

    background:#fff;

    transition:0.4s ease;
}

.feature-card:last-child{
    border-right:none;
}

.feature-card:hover{
    transform:translateY(-10px);

    background:#fffaf5;
}


/* =========================================================
   FEATURE ICON
========================================================= */

.feature-icon{
    margin-bottom:20px;
}

.feature-icon img{
    width:55px;
    height:55px;

    object-fit:contain;
}


/* =========================================================
   FEATURE TITLE
========================================================= */

.feature-card h3{
    font-size:15px;
    font-weight:600;

    color:#4a2a14;

    margin-bottom:15px;

    letter-spacing:0.5px;
}


/* =========================================================
   FEATURE TEXT
========================================================= */

.feature-card p{
    font-size:14px;
    line-height:1.8;

    color:#6b625c;
}


/* =========================================================
   TABLET RESPONSIVE
========================================================= */

@media(max-width:1100px){

    .features-wrapper{
        grid-template-columns:repeat(2,1fr);
    }

    .feature-card{
        border-bottom:1px solid #eee;
    }

    .feature-card:nth-child(2n){
        border-right:none;
    }

}


/* =========================================================
   MOBILE RESPONSIVE
========================================================= */

@media(max-width:991px){

    .hero-content{
        flex-direction:column;

        text-align:center;

        padding:140px 0 80px;
    }

    .hero-left{
        max-width:100%;
    }

    .hero-left h1{
        font-size:52px;
    }

    .hero-text{
        margin:auto;
        margin-bottom:40px;
    }

    .brand-line{
        justify-content:center;
    }

    .hero-right{
        text-align:center;
    }

    .hero-right img{
        max-width:550px;
    }


    /* MOBILE MENU */

    .nav-menu{
        position:fixed;

        top:90px;
        left:-100%;

        width:280px;
        height:100vh;

        background:#fff;

        padding:40px 30px;

        transition:0.4s ease;
    }

    .nav-menu.active{
        left:0;
    }

    .nav-menu ul{
        flex-direction:column;

        align-items:flex-start;

        gap:25px;
    }

    .menu-toggle{
        display:flex;
    }

    .header-btn{
        display:none;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:600px){

    .hero-left h1{
        font-size:40px;
    }

    .hero-brand img{
        width:240px;
    }

    .brand-line{
        gap:15px;
    }

    .brand-line span{
        width:40px;
    }

    .brand-line p{
        font-size:14px;
        letter-spacing:2px;
    }

    .hero-text{
        font-size:15px;
    }

    .hero-btn{
        padding:15px 28px;
    }

    .features-wrapper{
        grid-template-columns:1fr;
    }

    .feature-card{
        border-right:none;
    }

    .features-section{
        margin-top:0;
        padding-top:40px;
    }

}
/* =========================================================
   ABOUT SECTION
========================================================= */

.about-section{
    padding:120px 0;
    background:#fffaf5;
}


/* =========================================================
   ABOUT WRAPPER
========================================================= */

.about-wrapper{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:80px;
}


/* =========================================================
   LEFT SIDE IMAGES
========================================================= */

.about-images{
    flex:1;
    position:relative;
}


/* MAIN IMAGE */

.about-main-image img{
    width:100%;
    border-radius:25px;
    display:block;
}


/* SMALL FLOATING IMAGE */

.about-small-image{
    position:absolute;
    bottom:-40px;
    right:-40px;

    width:240px;

    border-radius:20px;

    overflow:hidden;

    border:8px solid #fff;

    box-shadow:0 10px 30px rgba(0,0,0,0.1);
}

.about-small-image img{
    width:100%;
    display:block;
}


/* EXPERIENCE BADGE */

.experience-badge{
    position:absolute;

    top:40px;
    left:-40px;

    width:160px;
    height:160px;

    background:#5b2d0d;
    color:#fff;

    border-radius:50%;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    text-align:center;

    box-shadow:0 10px 30px rgba(0,0,0,0.15);
}

.experience-badge h3{
    font-size:42px;
    font-family:'Cormorant Garamond', serif;
    margin-bottom:5px;
}

.experience-badge p{
    font-size:15px;
    line-height:1.5;
}


/* =========================================================
   ABOUT CONTENT
========================================================= */

.about-content{
    flex:1;
}


/* SUBTITLE */

.section-subtitle{
    color:#b57a2d;

    letter-spacing:3px;

    font-size:16px;
    font-weight:600;

    margin-bottom:20px;

    display:inline-block;
}


/* TITLE */

.about-content h2{
    font-size:60px;
    line-height:1.15;

    color:#3b1d0f;

    font-family:'Cormorant Garamond', serif;

    margin-bottom:30px;
}


/* TEXT */

.about-content p{
    font-size:16px;
    line-height:1.9;

    color:#6b625c;

    margin-bottom:20px;
}


/* =========================================================
   FEATURES LIST
========================================================= */

.about-features{
    display:grid;
    grid-template-columns:repeat(2,1fr);

    gap:18px;

    margin:40px 0;
}

.about-feature-item{
    font-size:15px;
    color:#4a2a14;
    font-weight:500;
}


/* =========================================================
   BUTTON
========================================================= */

.about-btn{
    display:inline-block;

    background:#5b2d0d;
    color:#fff;

    text-decoration:none;

    padding:18px 34px;

    border-radius:10px;

    font-size:15px;
    font-weight:500;

    transition:0.3s ease;
}

.about-btn:hover{
    background:#8a4b17;
    transform:translateY(-3px);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:991px){

    .about-wrapper{
        flex-direction:column;
    }

    .about-content{
        text-align:center;
    }

    .about-content h2{
        font-size:46px;
    }

    .about-features{
        grid-template-columns:1fr;
    }

    .about-small-image{
        right:0;
    }

    .experience-badge{
        left:0;
    }

}


@media(max-width:600px){

    .about-section{
        padding:80px 0;
    }

    .about-content h2{
        font-size:38px;
    }

    .about-small-image{
        width:160px;
        bottom:-20px;
    }

    .experience-badge{
        width:120px;
        height:120px;
    }

    .experience-badge h3{
        font-size:30px;
    }

    .experience-badge p{
        font-size:12px;
    }

}
/* =========================================================
   COMMON SECTION HEADING
========================================================= */

.section-heading{
    margin-bottom:60px;
}

.section-heading.center{
    text-align:center;
}

.section-heading h2{
    font-size:56px;
    line-height:1.2;
    color:#3b1d0f;
    font-family:'Cormorant Garamond', serif;
}


/* =========================================================
   SERVICES
========================================================= */

.services-section{
    padding:120px 0;
    background:#fff;
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.service-card{
    border-radius:25px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    transition:0.4s;
}

.service-card:hover{
    transform:translateY(-10px);
}

.service-card img{
    width:100%;
    height:250px;
    object-fit:cover;
}

.service-content{
    padding:30px;
}

.service-content h3{
    font-size:28px;
    margin-bottom:15px;
    color:#3b1d0f;
    font-family:'Cormorant Garamond', serif;
}


/* =========================================================
   BRANDS
========================================================= */

.brands-section{
    padding:100px 0;
    background:#fffaf5;
}

.brands-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.brand-box{
    background:#fff;
    padding:40px;
    border-radius:20px;
    text-align:center;
}

.brand-box img{
    width:100%;
    max-width:140px;
}


/* =========================================================
   GALLERY
========================================================= */

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

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}

.gallery-grid img{
    width:100%;
    height:320px;
    object-fit:cover;
    border-radius:20px;
    transition:0.4s;
}

.gallery-grid img:hover{
    transform:scale(1.03);
}


/* =========================================================
   TESTIMONIALS
========================================================= */

.testimonial-section{
    padding:120px 0;
    background:#fffaf5;
}

.testimonial-wrapper{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
}

.testimonial-card{
    background:#fff;
    padding:50px;
    border-radius:25px;
    box-shadow:0 10px 30px rgba(0,0,0,0.05);
}

.testimonial-card p{
    font-size:18px;
    line-height:1.8;
    margin-bottom:25px;
}

.testimonial-card h4{
    color:#b57a2d;
}


/* =========================================================
   CTA
========================================================= */

.cta-section{
    padding:100px 0;
}

.cta-box{
    background:#5b2d0d;
    color:#fff;
    padding:80px;
    border-radius:30px;
    text-align:center;
}

.cta-box h2{
    font-size:58px;
    font-family:'Cormorant Garamond', serif;
    margin-bottom:20px;
}


/* =========================================================
   FOOTER
========================================================= */

.footer-section{
    background:#2a1207;
    color:#fff;
    padding:100px 0 30px;
}

.footer-wrapper{
    display:grid;
    grid-template-columns:2fr 1fr 1fr;
    gap:50px;
}

.footer-logo{
    width:220px;
    margin-bottom:20px;
}

.footer-col h3{
    margin-bottom:20px;
}

.footer-col ul{
    list-style:none;
}

.footer-col ul li{
    margin-bottom:12px;
}

.footer-col ul li a{
    color:#ddd;
    text-decoration:none;
}

.footer-bottom{
    margin-top:60px;
    padding-top:25px;
    border-top:1px solid rgba(255,255,255,0.1);
    text-align:center;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:991px){

    .services-grid,
    .brands-grid,
    .gallery-grid,
    .testimonial-wrapper,
    .footer-wrapper{
        grid-template-columns:1fr;
    }

    .section-heading h2{
        font-size:42px;
    }

    .cta-box{
        padding:50px 30px;
    }

    .cta-box h2{
        font-size:40px;
    }

}
/* =========================================================
   SCROLL DOWN INDICATOR
========================================================= */

.scroll-down{
    position:absolute;

    left:50%;
    bottom:40px;

    transform:translateX(-50%);

    width:34px;
    height:55px;

    border:2px solid #5b2d0d;

    border-radius:30px;

    display:flex;
    align-items:flex-start;
    justify-content:center;

    padding-top:10px;

    z-index:10;
}


/* INNER DOT */

.scroll-down span{
    width:8px;
    height:8px;

    background:#5b2d0d;

    border-radius:50%;

    animation:scrollBounce 1.8s infinite;
}


/* BOUNCE ANIMATION */

@keyframes scrollBounce{

    0%{
        transform:translateY(0);
        opacity:1;
    }

    50%{
        transform:translateY(18px);
        opacity:0.4;
    }

    100%{
        transform:translateY(0);
        opacity:1;
    }

}