/*==================================================
        TRAITEUR ALAKHAWIN ZIADI
        Premium Luxury Website
====================================================*/

/* Google Fonts */

@import url('https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;600;700&family=Cormorant+Garamond:wght@400;500;600;700&display=swap');

/*==================================================
                    VARIABLES
====================================================*/

:root{

    /* Brand Colors */

    --gold:#C8A046;
    --gold-light:#E4C36A;
    --gold-dark:#9E7424;

    --purple:#342146;
    --purple-light:#4A3064;
    --purple-dark:#1C1327;

    --cream:#FAF7F2;
    --white:#FFFFFF;
    --black:#181818;

    --text:#555555;
    --text-light:#777777;

    /* Glass */

    --glass:rgba(30,20,40,.45);
    --glass-border:rgba(255,255,255,.08);

    /* Radius */

    --radius-sm:12px;
    --radius:20px;
    --radius-lg:30px;
    --radius-full:999px;

    /* Shadows */

    --shadow-sm:0 8px 20px rgba(0,0,0,.08);

    --shadow:
    0 20px 50px rgba(0,0,0,.12);

    --shadow-lg:
    0 30px 70px rgba(0,0,0,.18);

    /* Transition */

    --transition:.4s ease;

    /* Width */

    --container:1300px;

}

/*==================================================
                    RESET
====================================================*/

*,
*::before,
*::after{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Jost',sans-serif;

    background:var(--cream);

    color:var(--black);

    overflow-x:hidden;

    line-height:1.7;

}

img{

    display:block;

    width:100%;

}

a{

    text-decoration:none;

    color:inherit;

}

ul{

    list-style:none;

}

button,
input,
textarea{

    border:none;

    outline:none;

    font-family:inherit;

}

::selection{

    background:var(--gold);

    color:#fff;

}

/*==================================================
                SCROLLBAR
====================================================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#ececec;

}

::-webkit-scrollbar-thumb{

    background:linear-gradient(
        var(--gold),
        var(--gold-dark)
    );

    border-radius:20px;

}

/*==================================================
                CONTAINER
====================================================*/

.container{

    width:min(var(--container),92%);

    margin:auto;

}

/*==================================================
                SECTION
====================================================*/

section{

    position:relative;

    padding:120px 0;

}

section:nth-child(even){

    background:#fff;

}

/*==================================================
                TITLES
====================================================*/

.section-title{

    max-width:750px;

    margin:0 auto 80px;

    text-align:center;

}

.section-title span{

    display:inline-block;

    color:var(--gold);

    font-size:14px;

    letter-spacing:4px;

    font-weight:600;

    text-transform:uppercase;

    margin-bottom:18px;

}

.section-title h2{

    font-family:'Cormorant Garamond',serif;

    font-size:64px;

    line-height:1.1;

    margin-bottom:25px;

    color:var(--purple-dark);

}

.section-title p{

    color:var(--text);

    font-size:18px;

    line-height:1.9;

}

/*==================================================
                BUTTONS
====================================================*/

.btn{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    gap:10px;

    min-width:220px;

    height:58px;

    padding:0 35px;

    border-radius:var(--radius-full);

    background:linear-gradient(
        135deg,
        var(--gold),
        var(--gold-dark)
    );

    color:#fff;

    font-weight:600;

    transition:var(--transition);

    box-shadow:
    0 15px 35px rgba(200,160,70,.35);

}

.btn:hover{

    transform:translateY(-6px);

    box-shadow:
    0 25px 45px rgba(200,160,70,.45);

}

.btn-outline{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    min-width:220px;

    height:58px;

    padding:0 35px;

    border-radius:var(--radius-full);

    border:2px solid rgba(255,255,255,.45);

    color:#fff;

    transition:var(--transition);

}

.btn-outline:hover{

    background:#fff;

    color:var(--purple-dark);

}

/*==================================================
                UTILITIES
====================================================*/

.text-center{

    text-align:center;

}

.mt-40{

    margin-top:40px;

}

.mb-40{

    margin-bottom:40px;

}

.rounded{

    border-radius:var(--radius);

}

.shadow{

    box-shadow:var(--shadow);

}

/*==================================================
                RESPONSIVE
====================================================*/

@media(max-width:992px){

    section{

        padding:100px 0;

    }

    .section-title h2{

        font-size:50px;

    }

}

@media(max-width:768px){

    .section-title{

        margin-bottom:60px;

    }

    .section-title h2{

        font-size:40px;

    }

    .section-title p{

        font-size:16px;

    }

    .btn,
    .btn-outline{

        width:100%;

        min-width:100%;

    }

}

@media(max-width:576px){

    section{

        padding:80px 0;

    }

    .section-title h2{

        font-size:34px;

    }

}



/*==================================================
                LOGO
====================================================*/

.logo{

    display:flex;

    align-items:center;

    gap:16px;

    flex-shrink:0;

}

.logo img{

    width:62px;

    height:62px;

    object-fit:contain;

    transition:.4s;

}

.logo:hover img{

    transform:rotate(-6deg) scale(1.05);

}

.logo-text{

    display:flex;

    flex-direction:column;

}

.logo h2{

    font-family:'Cormorant Garamond',serif;

    color:var(--gold);

    font-size:34px;

    line-height:1;

    font-weight:700;

}

.logo span{

    margin-top:6px;

    font-size:11px;

    letter-spacing:5px;

    color:#dddddd;

    text-transform:uppercase;

}

/*==================================================
                    MENU
====================================================*/

.menu{

    display:flex;

    align-items:center;

    gap:10px;

}

.menu li{

    position:relative;

}

.menu a{

    display:flex;

    align-items:center;

    justify-content:center;

    height:48px;

    padding:0 22px;

    border-radius:50px;

    color:#f3f3f3;

    font-size:15px;

    font-weight:500;

    transition:.35s;

    position:relative;

}

/* Hover */

.menu a:hover{

    color:var(--gold);

    background:rgba(255,255,255,.05);

}

/* Active Link */

.menu a.active{

    background:linear-gradient(

        135deg,

        rgba(200,160,70,.25),

        rgba(158,116,36,.25)

    );

    color:var(--gold-light);

}

/* Gold underline */

.menu a::after{

    content:"";

    position:absolute;

    bottom:8px;

    left:50%;

    transform:translateX(-50%);

    width:0;

    height:2px;

    border-radius:10px;

    background:var(--gold);

    transition:.35s;

}

.menu a:hover::after,

.menu a.active::after{

    width:24px;

}

/*==================================================
                RESERVE BUTTON
====================================================*/

nav .btn{

    min-width:165px;

    height:52px;

    font-size:15px;

}

/*==================================================
            MOBILE BUTTON
====================================================*/

.menu-toggle{

    display:none;

    width:42px;

    cursor:pointer;

    z-index:10000;

     background:#c89b3c;

}

.menu-toggle span{

    display:block;

    width:100%;

    height:3px;

    margin:8px 0;

    border-radius:20px;
    
    background:#fff;

    transition:.35s;

}

.menu-toggle.active span:nth-child(1){

    transform:translateY(11px) rotate(45deg);

}

.menu-toggle.active span:nth-child(2){

    opacity:0;

}

.menu-toggle.active span:nth-child(3){

    transform:translateY(-11px) rotate(-45deg);

}

/*==================================================
    NAV BUTTON
==================================================*/

nav .btn{

    padding:14px 28px;

}


/*==================================================
    HAMBURGER
==================================================*/

.menu-toggle{

    display:none;

    width:46px;

    height:46px;

    border-radius:50%;

    align-items:center;

    justify-content:center;

    flex-direction:column;

    cursor:pointer;

    background:#f3f3f3;

    transition:.3s;

    z-index:10002;

}

.menu-toggle span{

    width:22px;

    height:2px;

    margin:3px 0;

    background:#c89b3c;

    transition:.35s;

}

.menu-toggle.active span:nth-child(1){

    transform:translateY(8px) rotate(45deg);

}

.menu-toggle.active span:nth-child(2){

    opacity:0;

}

.menu-toggle.active span:nth-child(3){

    transform:translateY(-8px) rotate(-45deg);

}


/*==================================================
    MOBILE
==================================================*/

@media (max-width:992px){

    header{

        top:10px;

        width:95%;

    }

    nav{

        padding:14px 18px;

        border-radius:22px;

    }

    nav .btn{

        display:none;

    }

    .menu-toggle{

        display:flex;

    }

.menu{
    position:fixed;
    top:0;
    right:-100%;
    width:320px;
    max-width:90%;
    height:100vh;
    padding:120px 30px;

    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:18px;

    background:#ffffff;
    border-left:6px solid #d4af37; /* Gold border */
    box-shadow:-15px 0 40px rgba(212,175,55,.25);

    transition:right .35s ease;
    z-index:10001;
}

    .menu.active{

        right:0;

    }

    .menu li{

        width:100%;

    }

    .menu a{
    width:100%;
    padding:18px 20px;

    color:#222;
    font-size:18px;
    font-weight:600;

    border-radius:12px;
    transition:.3s;
}
.menu a:hover,
.menu a.active{
    background:#d4af37;
    color:#fff;
}


    .logo img{

        width:52px;

        height:52px;

    }

    .logo h2{

        font-size:28px;

    }

    .logo span{

        font-size:10px;

        letter-spacing:2px;

    }

}

/*==================================================
    LOCK BODY
==================================================*/

body.menu-open{

    overflow:hidden;

}
/*==================================================*
*HEADER — NAVIGATION*
*==================================================*/

header{
    position:fixed;
    top:22px;
    left:50%;
    transform:translateX(-50%);
    width:min(1400px,94%);
    z-index:9999;
    transition:.4s ease;
}

header.sticky{
    top:10px;
}

/*==================================================*
*NAVBAR*
*==================================================*/

nav{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:16px 32px;
    border-radius:100px;

    background:rgba(28,19,39,.55); /* var(--purple-dark) glass */
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);

    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        0 15px 40px rgba(0,0,0,.30),
        inset 0 1px 0 rgba(255,255,255,.05);

    transition:.4s ease;
}

header.sticky nav{
    padding:13px 30px;
    background:rgba(20,15,27,.82);
}

/*==================================================*
*LOGO*
*==================================================*/

.logo{
    display:flex;
    align-items:center;
    gap:15px;
    flex-shrink:0;
}

.logo img{
    width:62px;
    height:62px;
    object-fit:contain;
    transition:.4s;
}

.logo:hover img{
    transform:rotate(-6deg) scale(1.05);
}

.logo-text{
    display:flex;
    flex-direction:column;
}

.logo h2{
    font-family:var(--font-title,'Cormorant Garamond',serif);
    font-size:32px;
    line-height:1;
    color:var(--gold);
}

.logo span{
    display:block;
    margin-top:4px;
    font-size:11px;
    letter-spacing:4px;
    text-transform:uppercase;
    color:#d6d6d6;
}

/*==================================================*
*DESKTOP MENU*
*==================================================*/

.menu{
    display:flex;
    align-items:center;
    gap:8px;
}

.menu li{
    list-style:none;
}

.menu a{
    display:flex;
    align-items:center;
    justify-content:center;
    height:46px;
    padding:0 22px;
    border-radius:40px;
    color:#f3f3f3;
    font-size:15px;
    font-weight:500;
    transition:.35s;
}

.menu a:hover{
    color:var(--gold-light);
    background:rgba(200,160,70,.12);
}

.menu a.active{
    color:#fff;
    background:linear-gradient(135deg,var(--gold),var(--gold-dark));
    box-shadow:0 10px 25px rgba(200,160,70,.30);
}

/*==================================================*
*NAV BUTTON (RESERVE / CONTACT)*
*==================================================*/

nav .btn{
    min-width:auto;
    height:48px;
    padding:0 28px;
    font-size:15px;
}

/*==================================================*
*HAMBURGER TOGGLE*
*==================================================*/

.menu-toggle{
    display:none;
    width:46px;
    height:46px;
    border-radius:50%;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    cursor:pointer;
    background:rgba(255,255,255,.08);
    transition:.3s;
    z-index:10002;
}

.menu-toggle span{
    width:22px;
    height:2px;
    margin:3px 0;
    background:#fff;
    border-radius:20px;
    transition:.35s;
}

.menu-toggle.active span:nth-child(1){
    transform:translateY(8px) rotate(45deg);
}

.menu-toggle.active span:nth-child(2){
    opacity:0;
}

.menu-toggle.active span:nth-child(3){
    transform:translateY(-8px) rotate(-45deg);
}

/*==================================================*
*MOBILE RESPONSIVE*
*==================================================*/

@media (max-width:992px){

    header{
        top:10px;
        width:95%;
    }

    nav{
        padding:13px 18px;
        border-radius:22px;
    }

    nav .btn{
        display:none;
    }

    .menu-toggle{
        display:flex;
    }

    .menu{
        position:fixed;
        top:0;
        right:-100%;
        width:320px;
        max-width:90%;
        height:100vh;
        padding:120px 30px;

        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:14px;

        background:linear-gradient(180deg,var(--purple-dark),#120b19);
        border-left:1px solid rgba(255,255,255,.08);
        box-shadow:-15px 0 40px rgba(0,0,0,.35);

        transition:right .35s ease;
        z-index:10001;
    }

    .menu.active{
        right:0;
    }

    .menu li{
        width:100%;
    }

    .menu a{
        width:100%;
        justify-content:flex-start;
        padding:16px 20px;
        height:auto;
        font-size:18px;
        border-radius:12px;
        color:#f1f1f1;
    }

    .menu a:hover,
    .menu a.active{
        background:linear-gradient(135deg,var(--gold),var(--gold-dark));
        color:#fff;
    }

    .menu .btn{
        display:inline-flex;
        width:100%;
        margin-top:10px;
    }

    .logo img{
        width:52px;
        height:52px;
    }

    .logo h2{
        font-size:26px;
    }

    .logo span{
        font-size:10px;
        letter-spacing:2px;
    }
}

/*==================================================*
*LOCK BODY WHEN MENU OPEN*
*==================================================*/

body.menu-open{
    overflow:hidden;
}
/*==================================================
                HERO SECTION
==================================================*/

.hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:url("../images/hero/hero-traiteur-ziadi.png") center center/cover no-repeat;
}

.hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            rgba(20,18,28,.65),
            rgba(20,18,28,.78)
        );
    z-index:1;
}

.hero::after{
    content:"";
    position:absolute;
    width:700px;
    height:700px;
    right:-200px;
    top:-200px;
    border-radius:50%;
    background:
        radial-gradient(
            rgba(184,147,63,.28),
            transparent 70%
        );
    filter:blur(20px);
    animation:goldGlow 10s ease-in-out infinite;
    z-index:1;
}

@keyframes goldGlow{

    0%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(40px);
    }

    100%{
        transform:translateY(0);
    }

}

.hero .container{
    position:relative;
    z-index:5;
}

.hero-content{
    max-width:760px;
    color:#fff;
    animation:heroFade 1.1s ease;
}

.subtitle{

    display:inline-flex;
    align-items:center;
    gap:12px;

    margin-bottom:24px;

    color:var(--gold-light);

    text-transform:uppercase;

    letter-spacing:5px;

    font-size:13px;

    font-weight:600;

}

.subtitle::before{

    content:"";

    width:55px;
    height:2px;

    background:var(--gold);

}

.hero h1{

    font-family:'Cormorant Garamond',serif;

    font-size:84px;

    line-height:1.05;

    margin-bottom:30px;

    color:#fff;

}

.hero h1 span{

    color:var(--gold);

}

.hero p{

    max-width:620px;

    font-size:20px;

    line-height:1.9;

    color:#ececec;

    margin-bottom:45px;

}

.hero-buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

}

.hero-buttons .btn{

    min-width:220px;

}

.hero-buttons .btn-outline{

    color:#fff;

    border-color:rgba(255,255,255,.45);

}

.hero-buttons .btn-outline:hover{

    background:#fff;

    color:#111;

}

.hero-card{

    position:absolute;

    right:0;

    bottom:60px;

    width:260px;

    padding:30px;

    border-radius:22px;

    backdrop-filter:blur(20px);

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.12);

    box-shadow:0 20px 50px rgba(0,0,0,.25);

}

.hero-card h3{

    color:var(--gold);

    font-size:46px;

    font-family:'Cormorant Garamond',serif;

}

.hero-card span{

    display:block;

    margin-top:8px;

    color:#eee;

    line-height:1.7;

}

.scroll-indicator{

    position:absolute;

    left:50%;

    bottom:35px;

    transform:translateX(-50%);

    display:flex;

    flex-direction:column;

    align-items:center;

    z-index:10;

}

.scroll-indicator span{

    color:#fff;

    letter-spacing:5px;

    font-size:11px;

    margin-bottom:10px;

}

.scroll-indicator i{

    color:var(--gold);

    font-size:28px;

    animation:scrollDown 2s infinite;

}

@keyframes scrollDown{

    0%,100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(10px);

    }

}

@keyframes heroFade{

    from{

        opacity:0;

        transform:translateY(50px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

@media(max-width:992px){

    .hero{

        text-align:center;

    }

    .hero-content{

        margin:auto;

    }

    .hero p{

        margin:auto auto 40px;

    }

    .hero-buttons{

        justify-content:center;

    }

    .hero-card{

        display:none;

    }

}

@media(max-width:768px){

    .hero{

        min-height:90vh;

    }

    .hero h1{

        font-size:54px;

    }

    .hero p{

        font-size:17px;

    }

    .subtitle{

        justify-content:center;

    }

}

@media(max-width:576px){

    .hero h1{

        font-size:42px;

    }

    .hero-buttons{

        flex-direction:column;

    }

    .hero-buttons .btn,
    .hero-buttons .btn-outline{

        width:100%;

    }

}



/*==================================================
                ABOUT IMAGE
==================================================*/


.about-image{

    position:relative;

    padding-right:40px;

}


.about-image img{

    height:650px;

    object-fit:cover;

    border-radius:30px;

    box-shadow:

    0 30px 70px rgba(0,0,0,.18);

}


/* GOLD DECORATION */

.about-image::before{

    content:"";

    position:absolute;

    width:220px;

    height:220px;

    left:-40px;

    top:-40px;

    border:

    2px solid var(--gold);

    border-radius:30px;

    z-index:0;

}



.about-image::after{

    content:"";

    position:absolute;

    width:180px;

    height:180px;

    right:0;

    bottom:20px;

    background:

    radial-gradient(
        var(--gold),
        transparent 70%
    );

    opacity:.25;

    filter:blur(20px);

}


/* EXPERIENCE CARD */

.about-card{

    position:absolute;

    right:0;

    bottom:50px;

    width:220px;

    padding:35px 25px;

    text-align:center;

    background:

    rgba(255,255,255,.9);

    backdrop-filter:blur(15px);

    border-radius:25px;

    box-shadow:

    0 25px 60px rgba(0,0,0,.15);

    z-index:3;

}



.about-card h3{

    font-family:'Cormorant Garamond',serif;

    font-size:70px;

    color:var(--gold-dark);

    line-height:1;

}



.about-card span{

    display:block;

    margin-top:10px;

    color:var(--text);

    font-size:15px;

}




/*==================================================
                ABOUT CONTENT
==================================================*/


.about-content h2{

    font-family:'Cormorant Garamond',serif;

    font-size:52px;

    line-height:1.15;

    color:var(--purple-dark);

    margin-bottom:25px;

}



.about-content>p{

    color:var(--text);

    font-size:18px;

    line-height:1.9;

    margin-bottom:40px;

}



/* FEATURES */


.about-features{

    display:grid;

    grid-template-columns:

    1fr 1fr;

    gap:25px;

    margin-bottom:45px;

}



.feature{

    display:flex;

    gap:18px;

    align-items:flex-start;

}



.feature-icon{

    flex-shrink:0;

    width:45px;

    height:45px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:

    linear-gradient(
        135deg,
        var(--gold),
        var(--gold-dark)
    );

    color:white;

}



.feature h4{

    font-size:18px;

    color:var(--purple-dark);

    margin-bottom:5px;

}



.feature p{

    font-size:14px;

    color:var(--text-light);

    line-height:1.6;

}



/*==================================================
                STATISTICS
==================================================*/


.about-stats{

    margin-top:100px;

    display:grid;

    grid-template-columns:

    repeat(4,1fr);

    gap:25px;

}



.stat{

    text-align:center;

    padding:40px 20px;

    background:#fff;

    border-radius:25px;

    box-shadow:

    0 20px 50px rgba(0,0,0,.08);

    transition:.4s;

    border:

    1px solid rgba(200,160,70,.15);

}



.stat:hover{

    transform:translateY(-12px);

    box-shadow:

    0 30px 70px rgba(0,0,0,.15);

}



.stat h2{

    font-family:'Cormorant Garamond',serif;

    font-size:60px;

    color:var(--gold-dark);

    line-height:1;

}



.stat span{

    display:block;

    margin-top:12px;

    color:var(--text);

    text-transform:uppercase;

    letter-spacing:2px;

    font-size:13px;

}





/*==================================================
                SERVICES SECTION
==================================================*/


.services{

    background:

    #fff;

}



.services-grid{

    display:grid;

    grid-template-columns:

    repeat(3,1fr);

    gap:35px;

}



/* SERVICE CARD */


.service-card{

    background:#fff;

    border-radius:30px;

    overflow:hidden;

    box-shadow:

    0 20px 50px rgba(0,0,0,.10);

    transition:.45s;

    border:

    1px solid rgba(200,160,70,.12);

}



.service-card:hover{

    transform:translateY(-15px);

    box-shadow:

    0 35px 80px rgba(0,0,0,.18);

}



/* IMAGE */


.service-image{

    height:280px;

    overflow:hidden;

}



.service-image img{

    height:100%;

    object-fit:cover;

    transition:.6s;

}



.service-card:hover img{

    transform:scale(1.1);

}




/* CONTENT */


.service-content{

    padding:35px;

}



.service-content span{

    font-size:45px;

    font-family:'Cormorant Garamond',serif;

    color:

    rgba(200,160,70,.35);

}



.service-content h3{

    font-family:'Cormorant Garamond',serif;

    font-size:35px;

    color:var(--purple-dark);

    margin:10px 0;

}



.service-content p{

    color:var(--text);

    line-height:1.8;

    margin-bottom:25px;

}



.service-content a{

    color:var(--gold-dark);

    font-weight:600;

    position:relative;

}



.service-content a::after{

    content:"";

    width:40px;

    height:2px;

    background:var(--gold);

    position:absolute;

    right:-55px;

    top:50%;

}




/*==================================================
                RESPONSIVE ABOUT
==================================================*/


@media(max-width:1100px){


    .about-grid{

        gap:50px;

    }


    .services-grid{

        grid-template-columns:

        repeat(2,1fr);

    }


}



@media(max-width:992px){


    .about-grid{

        grid-template-columns:1fr;

    }


    .about-image{

        max-width:600px;

        margin:auto;

    }


    .about-content{

        text-align:center;

    }


    .about-features{

        text-align:left;

    }


    .about-stats{

        grid-template-columns:

        repeat(2,1fr);

    }


}



@media(max-width:768px){


    .about-image img{

        height:500px;

    }


    .about-content h2{

        font-size:40px;

    }


    .about-features{

        grid-template-columns:1fr;

    }


    .services-grid{

        grid-template-columns:1fr;

    }


}



@media(max-width:576px){


    .about-card{

        width:170px;

        padding:25px 15px;

        bottom:20px;

    }


    .about-card h3{

        font-size:50px;

    }


    .about-stats{

        grid-template-columns:1fr;

    }


    .stat h2{

        font-size:50px;

    }


}

/*==================================================
                PART 6
                LUXURY GALLERY SECTION
==================================================*/


.gallery{

    background:

    linear-gradient(
        180deg,
        #ffffff,
        var(--cream)
    );

    overflow:hidden;

}


/*==================================================
                GALLERY GRID
==================================================*/


.gallery-grid{

    display:grid;

    grid-template-columns:

    repeat(4,1fr);

    grid-auto-rows:260px;

    gap:25px;

}



/*==================================================
                GALLERY ITEM
==================================================*/


.gallery-item{

    position:relative;

    overflow:hidden;

    border-radius:30px;

    background:

    linear-gradient(
        135deg,
        var(--purple),
        var(--purple-dark)
    );

    box-shadow:

    0 20px 50px rgba(0,0,0,.12);

    transition:.5s;

}



.gallery-item:hover{

    transform:translateY(-10px);

    box-shadow:

    0 35px 80px rgba(0,0,0,.20);

}


/* IMAGE READY */

.gallery-item img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.7s;

}



.gallery-item:hover img{

    transform:scale(1.12);

}




/*==================================================
            PLACEHOLDER DESIGN
==================================================*/


.gallery-placeholder{

    width:100%;

    height:100%;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    color:white;

    position:relative;

    padding:30px;

}



.gallery-placeholder::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    radial-gradient(

    circle,

    rgba(200,160,70,.35),

    transparent 65%

    );

}



.gallery-placeholder span,
.gallery-placeholder h3,
.gallery-placeholder p{

    position:relative;

    z-index:2;

}



.gallery-placeholder span{

    color:var(--gold-light);

    letter-spacing:4px;

    text-transform:uppercase;

    font-size:12px;

    margin-bottom:15px;

}



.gallery-placeholder h3{

    font-family:'Cormorant Garamond',serif;

    font-size:42px;

    line-height:1;

    margin-bottom:10px;

}



.gallery-placeholder p{

    color:#eee;

    font-size:16px;

}




/*==================================================
                MASONRY EFFECT
==================================================*/


.gallery-item.large{

    grid-column:

    span 2;

    grid-row:

    span 2;

}



.gallery-item.tall{

    grid-row:

    span 2;

}



.gallery-item.wide{

    grid-column:

    span 2;

}



/*==================================================
                GALLERY OVERLAY
==================================================*/


.gallery-item::after{

    content:"";

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        to top,

        rgba(20,18,28,.75),

        transparent 60%

    );

    opacity:.6;

    transition:.4s;

}



.gallery-item:hover::after{

    opacity:.9;

}



/*==================================================
                IMAGE ZOOM ICON
==================================================*/


.gallery-item::before{

    content:"\f00e";

    font-family:"Font Awesome 6 Free";

    font-weight:900;

    position:absolute;

    top:50%;

    left:50%;

    transform:

    translate(-50%,-50%)

    scale(0);

    width:65px;

    height:65px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:

    rgba(255,255,255,.95);

    color:var(--gold-dark);

    font-size:22px;

    z-index:5;

    transition:.45s;

}



.gallery-item:hover::before{

    transform:

    translate(-50%,-50%)

    scale(1);

}




/*==================================================
                GALLERY CATEGORY FILTER
==================================================*/


.gallery-filter{

    display:flex;

    justify-content:center;

    gap:15px;

    margin-bottom:60px;

    flex-wrap:wrap;

}



.gallery-filter button{

    height:45px;

    padding:0 30px;

    border-radius:50px;

    background:white;

    border:

    1px solid rgba(200,160,70,.25);

    color:var(--purple-dark);

    cursor:pointer;

    transition:.35s;

    font-weight:500;

}



.gallery-filter button:hover,
.gallery-filter button.active{


    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    color:white;


    box-shadow:

    0 15px 35px rgba(200,160,70,.35);


}





/*==================================================
                LIGHTBOX PREPARATION
==================================================*/


.lightbox{


    position:fixed;

    inset:0;

    background:

    rgba(0,0,0,.85);

    display:flex;

    align-items:center;

    justify-content:center;

    opacity:0;

    visibility:hidden;

    transition:.4s;

    z-index:99999;

}



.lightbox.active{

    opacity:1;

    visibility:visible;

}



.lightbox img{

    max-width:90%;

    max-height:85vh;

    border-radius:20px;

    box-shadow:

    0 30px 80px rgba(0,0,0,.5);

}



.lightbox-close{

    position:absolute;

    top:40px;

    right:50px;

    width:50px;

    height:50px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:white;

    color:var(--purple-dark);

    font-size:25px;

    cursor:pointer;

}





/*==================================================
                GALLERY RESPONSIVE
==================================================*/


@media(max-width:1200px){


    .gallery-grid{

        grid-template-columns:

        repeat(3,1fr);

    }


}



@media(max-width:992px){


    .gallery-grid{

        grid-template-columns:

        repeat(2,1fr);

        grid-auto-rows:230px;

    }


    .gallery-item.large,
    .gallery-item.wide{

        grid-column:

        span 2;

    }


}



@media(max-width:768px){


    .gallery-grid{

        grid-template-columns:1fr;

        grid-auto-rows:260px;

    }


    .gallery-item.large,
    .gallery-item.wide,
    .gallery-item.tall{

        grid-column:span 1;

        grid-row:span 1;

    }


    .gallery-placeholder h3{

        font-size:34px;

    }


}



@media(max-width:576px){


    .gallery-filter button{

        width:100%;

    }


    .gallery-item{

        border-radius:20px;

    }


}

/*==================================================
                PART 7
                PREMIUM TESTIMONIALS SECTION
==================================================*/


.testimonials{

    background:

    linear-gradient(
        135deg,
        var(--purple-dark),
        var(--purple)
    );

    position:relative;

    overflow:hidden;

}


/* GOLD BACKGROUND EFFECT */


.testimonials::before{

    content:"";

    position:absolute;

    width:600px;

    height:600px;

    right:-250px;

    top:-250px;

    border-radius:50%;

    background:

    radial-gradient(

        rgba(200,160,70,.35),

        transparent 70%

    );

    filter:blur(30px);

}



.testimonials::after{

    content:"";

    position:absolute;

    width:400px;

    height:400px;

    left:-150px;

    bottom:-150px;

    border-radius:50%;

    background:

    radial-gradient(

        rgba(255,255,255,.12),

        transparent 70%

    );

    filter:blur(40px);

}



/*==================================================
                WHITE TITLE MODE
==================================================*/


.testimonials .section-title{

    position:relative;

    z-index:2;

}



.testimonials .section-title span{

    color:var(--gold-light);

}



.testimonials .section-title h2{

    color:white;

}



.testimonials .section-title p{

    color:#ddd;

}





/*==================================================
                TESTIMONIAL GRID
==================================================*/


.testimonials-grid{

    position:relative;

    z-index:3;

    display:grid;

    grid-template-columns:

    repeat(3,1fr);

    gap:30px;

}





/*==================================================
                TESTIMONIAL CARD
==================================================*/


.testimonial-card{

    position:relative;

    padding:45px 35px;

    border-radius:30px;

    background:

    rgba(255,255,255,.08);

    backdrop-filter:blur(20px);

    -webkit-backdrop-filter:blur(20px);


    border:

    1px solid rgba(255,255,255,.12);


    transition:.45s;


}



.testimonial-card:hover{

    transform:

    translateY(-15px);


    background:

    rgba(255,255,255,.12);


    box-shadow:

    0 30px 70px rgba(0,0,0,.35);

}





/*==================================================
                QUOTE ICON
==================================================*/


.quote{

    width:65px;

    height:65px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    margin-bottom:30px;


}



.quote i{

    color:white;

    font-size:25px;

}





/*==================================================
                REVIEW TEXT
==================================================*/


.testimonial-card>p{

    color:#f1f1f1;

    font-size:17px;

    line-height:1.9;

    min-height:100px;

    margin-bottom:25px;

    font-style:italic;

}





/*==================================================
                STARS
==================================================*/


.stars{

    color:

    var(--gold-light);

    font-size:22px;

    letter-spacing:5px;

    margin-bottom:30px;

}





/*==================================================
                CLIENT INFO
==================================================*/


.client{

    display:flex;

    align-items:center;

    gap:18px;

    padding-top:25px;

    border-top:

    1px solid rgba(255,255,255,.15);

}



.client img{

    width:65px;

    height:65px;

    border-radius:50%;

    object-fit:cover;

    border:

    3px solid var(--gold);

}



.client h4{

    color:white;

    font-size:18px;

    margin-bottom:5px;

}



.client span{

    color:

    var(--gold-light);

    font-size:14px;

}





/*==================================================
                GOOGLE REVIEW BADGE
==================================================*/


.review-badge{

    margin:70px auto 0;

    position:relative;

    z-index:3;

    max-width:350px;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:15px;

    padding:20px 30px;

    border-radius:50px;


    background:

    rgba(255,255,255,.1);


    backdrop-filter:blur(15px);


    border:

    1px solid rgba(255,255,255,.15);


}



.review-badge i{

    color:#4285F4;

    font-size:35px;

}



.review-badge strong{

    color:white;

    font-size:22px;

}



.review-badge span{

    display:block;

    color:#ddd;

    font-size:13px;

}





/*==================================================
                TESTIMONIAL ANIMATION
==================================================*/


.testimonial-card{

    animation:

    testimonialFade .8s ease forwards;

}



@keyframes testimonialFade{


    from{

        opacity:0;

        transform:translateY(50px);

    }


    to{

        opacity:1;

        transform:translateY(0);

    }


}





/*==================================================
                TRUST SECTION
==================================================*/


.trust-items{

    display:flex;

    justify-content:center;

    gap:40px;

    margin-top:80px;

    flex-wrap:wrap;

    position:relative;

    z-index:3;

}



.trust-item{

    display:flex;

    align-items:center;

    gap:12px;

    color:white;

}



.trust-item i{

    color:var(--gold-light);

    font-size:25px;

}



.trust-item span{

    font-size:15px;

}





/*==================================================
                RESPONSIVE
==================================================*/


@media(max-width:1100px){


    .testimonials-grid{

        grid-template-columns:

        repeat(2,1fr);

    }


}



@media(max-width:768px){


    .testimonials-grid{

        grid-template-columns:1fr;

    }


    .testimonial-card{

        padding:35px 25px;

    }


    .testimonial-card>p{

        min-height:auto;

    }


}



@media(max-width:576px){


    .quote{

        width:55px;

        height:55px;

    }


    .stars{

        font-size:18px;

    }


    .client img{

        width:55px;

        height:55px;

    }


}

/*==================================================
                PART 8
                PREMIUM CONTACT SECTION
==================================================*/


.contact{

    background:

    var(--cream);

    overflow:hidden;

}



/*==================================================
                CONTACT WRAPPER
==================================================*/


.contact-wrapper{

    display:grid;

    grid-template-columns:

    .9fr 1.1fr;

    gap:50px;

    align-items:start;

}



/*==================================================
                CONTACT INFO
==================================================*/


.contact-info{

    display:flex;

    flex-direction:column;

    gap:25px;

}




.contact-box{

    display:flex;

    align-items:center;

    gap:25px;

    padding:35px;

    border-radius:25px;


    background:#fff;


    border:

    1px solid rgba(200,160,70,.15);


    box-shadow:

    0 20px 50px rgba(0,0,0,.08);


    transition:.4s;

}



.contact-box:hover{

    transform:translateX(10px);

    box-shadow:

    0 30px 70px rgba(0,0,0,.15);

}





.contact-box i{

    width:65px;

    height:65px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;


    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    color:white;

    font-size:25px;

}





.contact-box h3{

    font-family:'Cormorant Garamond',serif;

    font-size:28px;

    color:var(--purple-dark);

    margin-bottom:5px;

}



.contact-box p{

    color:var(--text);

    line-height:1.7;

}





/*==================================================
                CONTACT FORM
==================================================*/


.contact-form{

    padding:45px;

    background:#fff;

    border-radius:35px;


    box-shadow:

    0 25px 70px rgba(0,0,0,.12);


    border:

    1px solid rgba(200,160,70,.15);

}



.contact-form form{

    display:grid;

    grid-template-columns:

    1fr 1fr;

    gap:20px;

}




.contact-form input,
.contact-form textarea{


    width:100%;

    padding:18px 22px;

    border-radius:15px;


    background:

    #fafafa;


    border:

    1px solid #eeeeee;


    color:var(--black);


    font-size:15px;


    transition:.35s;


}




.contact-form textarea{

    resize:none;

    grid-column:

    span 2;

}



.contact-form input:focus,
.contact-form textarea:focus{


    border-color:var(--gold);

    background:white;


    box-shadow:

    0 0 0 4px rgba(200,160,70,.12);


}




.contact-form button{

    cursor:pointer;

    grid-column:

    span 2;

}





/*==================================================
                WHATSAPP CTA
==================================================*/


.whatsapp-box{

    margin-top:40px;

    padding:25px 30px;

    border-radius:25px;


    display:flex;

    align-items:center;

    justify-content:space-between;


    background:

    linear-gradient(

        135deg,

        #128C7E,

        #075E54

    );


    color:white;


}



.whatsapp-box i{

    font-size:45px;

}



.whatsapp-box h3{

    font-size:22px;

    margin-bottom:5px;

}



.whatsapp-box p{

    color:#e8ffff;

}




.whatsapp-box a{

    padding:14px 30px;

    border-radius:50px;

    background:white;

    color:#075E54;

    font-weight:600;

}





/*==================================================
                GOOGLE MAP
==================================================*/


.map{

    margin-top:70px;

    height:450px;

    border-radius:35px;

    overflow:hidden;


    box-shadow:

    0 30px 70px rgba(0,0,0,.15);

}



.map iframe{

    width:100%;

    height:100%;

    border:0;

}



/*==================================================
                FLOATING WHATSAPP
==================================================*/


.whatsapp{


    position:fixed;


    right:35px;

    bottom:35px;


    width:65px;

    height:65px;


    display:flex;

    justify-content:center;

    align-items:center;


    border-radius:50%;


    background:

    #25D366;


    color:white;


    font-size:32px;


    z-index:999;


    box-shadow:

    0 15px 40px rgba(37,211,102,.45);


    animation:

    whatsappPulse 2s infinite;


}




@keyframes whatsappPulse{


    0%{

        box-shadow:

        0 0 0 0 rgba(37,211,102,.5);

    }


    70%{

        box-shadow:

        0 0 0 20px rgba(37,211,102,0);

    }


    100%{

        box-shadow:

        0 0 0 0 rgba(37,211,102,0);

    }


}





/*==================================================
                BACK TO TOP
==================================================*/


.to-top{

    position:fixed;

    right:35px;

    bottom:120px;


    width:50px;

    height:50px;


    display:flex;

    align-items:center;

    justify-content:center;


    border-radius:50%;


    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    color:white;


    font-size:18px;


    cursor:pointer;


    opacity:0;

    visibility:hidden;


    transition:.4s;


    z-index:998;

}




.to-top.show{

    opacity:1;

    visibility:visible;

}





.to-top:hover{

    transform:translateY(-8px);

}





/*==================================================
                CONTACT RESPONSIVE
==================================================*/


@media(max-width:1100px){


    .contact-wrapper{

        grid-template-columns:1fr;

    }


}



@media(max-width:768px){


    .contact-form{

        padding:30px 20px;

    }


    .contact-form form{

        grid-template-columns:1fr;

    }


    .contact-form textarea,
    .contact-form button{

        grid-column:

        span 1;

    }



    .contact-box{

        padding:25px;

    }


    .contact-box i{

        width:55px;

        height:55px;

        font-size:20px;

    }



    .whatsapp-box{

        flex-direction:column;

        text-align:center;

        gap:20px;

    }


}



@media(max-width:576px){


    .map{

        height:320px;

        border-radius:20px;

    }


    .whatsapp{

        right:20px;

        bottom:20px;

        width:58px;

        height:58px;

        font-size:28px;

    }


    .to-top{

        right:20px;

        bottom:95px;

    }


}

/*==================================================
                FOOTER SECTION
==================================================*/

.footer{

    position:relative;

    background:
    linear-gradient(
        135deg,
        var(--purple-dark),
        #120b19
    );

    color:#fff;

    padding:90px 0 30px;

    overflow:hidden;

}


/* GOLD LIGHT EFFECT */

.footer::before{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    right:-200px;

    top:-200px;

    border-radius:50%;

    background:
    radial-gradient(
        rgba(200,160,70,.25),
        transparent 70%
    );

    filter:blur(30px);

}



.footer-grid{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:
    2fr 1fr 1fr;

    gap:60px;

}



/* FOOTER BRAND */

.footer h2{

    font-family:'Cormorant Garamond',serif;

    font-size:45px;

    color:#fff;

    margin-bottom:15px;

}



.footer h2 span{

    display:block;

    color:var(--gold);

    font-size:32px;

}



.footer p{

    color:#ddd;

    max-width:350px;

    line-height:1.8;

}



/* FOOTER TITLES */

.footer h3{

    font-size:20px;

    margin-bottom:25px;

    color:var(--gold-light);

    font-weight:600;

}



.footer ul li{

    margin-bottom:12px;

}



.footer ul a{

    color:#ddd;

    transition:.35s;

}



.footer ul a:hover{

    color:var(--gold);

    padding-left:8px;

}



/* SOCIAL ICONS */

.social-icons{

    display:flex;

    gap:15px;

}



.social-icons a{

    width:48px;

    height:48px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:

    rgba(255,255,255,.08);


    border:

    1px solid rgba(255,255,255,.12);


    color:#fff;

    font-size:20px;

    transition:.35s;

}



.social-icons a:hover{

    background:var(--gold);

    transform:translateY(-8px);

}



/* FOOTER BOTTOM */

.footer-bottom{

    position:relative;

    z-index:2;

    margin-top:60px;

    padding-top:25px;

    border-top:

    1px solid rgba(255,255,255,.15);

    text-align:center;

}



.footer-bottom p{

    max-width:none;

    font-size:14px;

    color:#aaa;

}



/*==================================================
            FLOATING WHATSAPP BUTTON
==================================================*/


.whatsapp{

    position:fixed;

    right:30px;

    bottom:30px;

    width:65px;

    height:65px;

    border-radius:50%;


    display:flex;

    align-items:center;

    justify-content:center;


    background:#25D366;

    color:#fff;

    font-size:34px;


    z-index:999;


    box-shadow:

    0 15px 40px rgba(37,211,102,.45);


    animation:

    whatsappPulse 2s infinite;


}



.whatsapp:hover{

    transform:scale(1.1);

}



@keyframes whatsappPulse{


    0%{

        box-shadow:

        0 0 0 0 rgba(37,211,102,.5);

    }


    70%{

        box-shadow:

        0 0 0 25px rgba(37,211,102,0);

    }


    100%{

        box-shadow:

        0 0 0 0 rgba(37,211,102,0);

    }

}



/*==================================================
                BACK TO TOP
==================================================*/


.to-top{

    position:fixed;

    right:35px;

    bottom:110px;

    width:45px;

    height:45px;


    border-radius:50%;


    background:

    linear-gradient(
        135deg,
        var(--gold),
        var(--gold-dark)
    );


    color:#fff;


    display:flex;

    align-items:center;

    justify-content:center;


    cursor:pointer;


    opacity:0;

    visibility:hidden;


    transform:translateY(20px);


    transition:.4s;


    z-index:998;

}



.to-top.active{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

}



/*==================================================
                LOADING SCREEN
==================================================*/


.loader{

    position:fixed;

    inset:0;

    background:

    var(--purple-dark);


    display:flex;

    align-items:center;

    justify-content:center;


    z-index:99999;


    animation:

    loaderHide 1s ease forwards;

    animation-delay:2s;

}



.loader-logo{

    font-family:'Cormorant Garamond',serif;

    font-size:70px;

    color:#fff;

    text-align:center;

    animation:

    logoReveal 1.5s ease;

}



.loader-logo span{

    display:block;

    margin-top:10px;

    font-family:'Jost',sans-serif;

    font-size:14px;

    letter-spacing:8px;

    color:var(--gold);

}



/* LOADER ANIMATION */


@keyframes logoReveal{


    from{

        opacity:0;

        transform:scale(.7);

    }


    to{

        opacity:1;

        transform:scale(1);

    }

}



@keyframes loaderHide{


    to{

        opacity:0;

        visibility:hidden;

    }

}



/*==================================================
            SCROLL REVEAL ANIMATION
==================================================*/


.reveal{

    opacity:0;

    transform:translateY(60px);

    transition:

    1s ease;

}



.reveal.active{

    opacity:1;

    transform:translateY(0);

}



/* LEFT */

.reveal-left{

    opacity:0;

    transform:translateX(-70px);

    transition:1s ease;

}



.reveal-left.active{

    opacity:1;

    transform:translateX(0);

}



/* RIGHT */


.reveal-right{

    opacity:0;

    transform:translateX(70px);

    transition:1s ease;

}



.reveal-right.active{

    opacity:1;

    transform:translateX(0);

}



/*==================================================
                RESPONSIVE FOOTER
==================================================*/


@media(max-width:992px){


    .footer-grid{

        grid-template-columns:1fr 1fr;

        gap:40px;

    }


}



@media(max-width:768px){


    .footer{

        text-align:center;

    }


    .footer-grid{

        grid-template-columns:1fr;

    }


    .footer p{

        margin:auto;

    }


    .social-icons{

        justify-content:center;

    }


    .whatsapp{

        width:58px;

        height:58px;

        right:20px;

        bottom:20px;

    }


    .to-top{

        right:20px;

        bottom:90px;

    }


}



@media(max-width:576px){


    .loader-logo{

        font-size:50px;

    }


    .footer h2{

        font-size:38px;

    }


}

/*==================================================
            SERVICES SECTION
==================================================*/


.services{

    position:relative;

    background:

    linear-gradient(
        180deg,
        #fff,
        var(--cream)
    );

}



/*==================================================
            SERVICES GRID
==================================================*/


.services-grid{

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:35px;

}



/*==================================================
            SERVICE CARD
==================================================*/


.service-card{

    position:relative;

    overflow:hidden;

    background:#fff;

    border-radius:30px;

    box-shadow:

    0 20px 50px rgba(0,0,0,.08);

    transition:.5s ease;

    border:

    1px solid rgba(200,160,70,.12);

}



.service-card:hover{

    transform:translateY(-15px);

    box-shadow:

    0 35px 70px rgba(0,0,0,.15);

}





/*==================================================
            SERVICE IMAGE
==================================================*/


.service-image{

    position:relative;

    height:280px;

    overflow:hidden;

}



.service-image::after{

    content:"";

    position:absolute;

    inset:0;

    background:

    linear-gradient(
        transparent,
        rgba(0,0,0,.45)
    );

}



.service-image img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.7s ease;

}



.service-card:hover .service-image img{

    transform:scale(1.12);

}





/*==================================================
            SERVICE CONTENT
==================================================*/


.service-content{

    position:relative;

    padding:35px;

}



.service-content > span{

    position:absolute;

    top:-35px;

    right:30px;


    width:70px;

    height:70px;


    display:flex;

    align-items:center;

    justify-content:center;


    border-radius:50%;


    background:

    linear-gradient(
        135deg,
        var(--gold),
        var(--gold-dark)
    );


    color:#fff;


    font-family:'Cormorant Garamond',serif;

    font-size:34px;

    font-weight:700;


    box-shadow:

    0 15px 35px rgba(200,160,70,.35);

}




.service-content h3{

    font-family:'Cormorant Garamond',serif;

    font-size:38px;

    color:

    var(--purple-dark);

    margin-bottom:15px;

}



.service-content p{

    color:var(--text);

    font-size:16px;

    line-height:1.8;

    margin-bottom:25px;

}




.service-content a{

    display:inline-flex;

    align-items:center;

    gap:10px;


    color:var(--gold-dark);


    font-weight:600;


    transition:.35s;

}



.service-content a::after{

    content:"→";

    transition:.35s;

}



.service-content a:hover{

    color:var(--gold);

}



.service-content a:hover::after{

    transform:translateX(8px);

}





/*==================================================
        SERVICE CARD GOLD EFFECT
==================================================*/


.service-card::before{

    content:"";

    position:absolute;

    width:180px;

    height:180px;

    right:-90px;

    top:-90px;


    border-radius:50%;


    background:

    radial-gradient(

        rgba(200,160,70,.25),

        transparent 70%

    );


    opacity:0;

    transition:.5s;

}



.service-card:hover::before{

    opacity:1;

}





/*==================================================
        IMAGE HOVER OVERLAY
==================================================*/


.service-image::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        135deg,

        rgba(200,160,70,.35),

        transparent

    );


    opacity:0;

    transition:.5s;

    z-index:2;

}



.service-card:hover .service-image::before{

    opacity:1;

}





/*==================================================
            SERVICES ANIMATION
==================================================*/


.service-card:nth-child(1){

    transition-delay:.1s;

}


.service-card:nth-child(2){

    transition-delay:.2s;

}


.service-card:nth-child(3){

    transition-delay:.3s;

}


.service-card:nth-child(4){

    transition-delay:.4s;

}


.service-card:nth-child(5){

    transition-delay:.5s;

}


.service-card:nth-child(6){

    transition-delay:.6s;

}





/*==================================================
            RESPONSIVE SERVICES
==================================================*/


@media(max-width:1100px){


    .services-grid{

        grid-template-columns:

        repeat(2,1fr);

    }


}




@media(max-width:768px){


    .services-grid{

        grid-template-columns:1fr;

    }


    .service-image{

        height:250px;

    }


    .service-content{

        padding:30px;

    }


    .service-content h3{

        font-size:34px;

    }


}

/*==================================================
        PART 11
        ABOUT SECTION
        Luxury Layout + Overlapping Images
        Statistics Cards + Animations
==================================================*/


/*==================================================
                ABOUT SECTION
==================================================*/

.about{

    background:
    linear-gradient(
        180deg,
        #fff,
        var(--cream)
    );

    overflow:hidden;

}


/*==================================================
                ABOUT GRID
==================================================*/


.about-grid{

    display:grid;

    grid-template-columns:

    1fr 1fr;

    gap:80px;

    align-items:center;

}



/*==================================================
                IMAGE AREA
==================================================*/


.about-image{

    position:relative;

    width:100%;

    max-width:560px;

}



.about-image::before{

    content:"";

    position:absolute;

    width:320px;

    height:320px;

    left:-80px;

    top:-80px;

    background:

    radial-gradient(
        circle,
        rgba(200,160,70,.25),
        transparent 70%
    );

    z-index:0;

    animation:

    aboutGlow 8s infinite ease-in-out;

}



@keyframes aboutGlow{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(35px);

    }

    100%{

        transform:translateY(0);

    }

}



.about-image img{

    position:relative;

    z-index:2;

    height:650px;

    object-fit:cover;

    border-radius:30px;

    box-shadow:

    0 35px 80px rgba(0,0,0,.18);

}



/* GOLD FRAME */

.about-image::after{

    content:"";

    position:absolute;

    width:100%;

    height:100%;

    border:2px solid var(--gold);

    border-radius:30px;

    top:35px;

    left:35px;

    z-index:1;

    transition:.5s;

}



.about-image:hover::after{

    top:20px;

    left:20px;

}



/*==================================================
                EXPERIENCE CARD
==================================================*/


.about-card{

    position:absolute;

    right:-40px;

    bottom:50px;

    width:230px;

    padding:35px 25px;

    text-align:center;

    border-radius:25px;

    background:

    rgba(255,255,255,.92);

    backdrop-filter:blur(15px);

    box-shadow:

    0 25px 60px rgba(0,0,0,.15);

    z-index:5;

    animation:

    floatingCard 5s infinite ease-in-out;

}



@keyframes floatingCard{


    0%{

        transform:translateY(0);

    }


    50%{

        transform:translateY(-15px);

    }


    100%{

        transform:translateY(0);

    }

}



.about-card h3{

    font-family:

    'Cormorant Garamond',
    serif;

    font-size:70px;

    line-height:1;

    color:var(--gold);

}



.about-card span{

    display:block;

    margin-top:10px;

    color:var(--text);

    font-size:15px;

}



/*==================================================
                ABOUT CONTENT
==================================================*/


.about-content{

    padding-left:30px;

}



.about-content h2{

    font-family:

    'Cormorant Garamond',
    serif;

    font-size:55px;

    line-height:1.15;

    color:

    var(--purple-dark);

    margin-bottom:25px;

}



.about-content > p{

    font-size:18px;

    line-height:1.9;

    color:var(--text);

    margin-bottom:45px;

}



/*==================================================
                FEATURES
==================================================*/


.about-features{

    display:grid;

    grid-template-columns:

    1fr 1fr;

    gap:25px;

    margin-bottom:45px;

}



.feature{

    display:flex;

    align-items:flex-start;

    gap:18px;

    padding:20px;

    border-radius:20px;

    background:#fff;

    box-shadow:

    0 15px 40px rgba(0,0,0,.06);

    transition:.4s ease;

}



.feature:hover{

    transform:translateY(-8px);

    box-shadow:

    0 25px 50px rgba(0,0,0,.12);

}



.feature-icon{

    width:45px;

    height:45px;

    min-width:45px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;


    background:

    linear-gradient(

    135deg,

    var(--gold),

    var(--gold-dark)

    );


    color:#fff;

}



.feature h4{

    font-size:18px;

    color:

    var(--purple-dark);

    margin-bottom:5px;

}



.feature p{

    font-size:14px;

    line-height:1.6;

    color:var(--text-light);

}



/*==================================================
                STATISTICS
==================================================*/


.about-stats{

    margin-top:100px;

    display:grid;

    grid-template-columns:

    repeat(4,1fr);

    gap:25px;

}



.stat{

    position:relative;

    padding:45px 25px;

    text-align:center;

    background:#fff;

    border-radius:25px;

    overflow:hidden;

    box-shadow:

    0 20px 50px rgba(0,0,0,.08);

    transition:.4s ease;

}



.stat::before{

    content:"";

    position:absolute;

    width:120px;

    height:120px;

    right:-40px;

    top:-40px;

    border-radius:50%;

    background:

    rgba(200,160,70,.12);

}



.stat:hover{

    transform:

    translateY(-12px);

    box-shadow:

    0 35px 70px rgba(0,0,0,.15);

}



.stat h2{

    position:relative;

    font-family:

    'Cormorant Garamond',
    serif;

    font-size:65px;

    line-height:1;

    color:var(--gold);

}



.stat span{

    display:block;

    margin-top:12px;

    font-size:15px;

    color:var(--text);

    text-transform:uppercase;

    letter-spacing:2px;

}



/*==================================================
                SCROLL REVEAL
==================================================*/


.about-image,
.about-content,
.stat,
.feature{

    animation:

    revealAbout .9s ease forwards;

}



@keyframes revealAbout{

    from{

        opacity:0;

        transform:

        translateY(50px);

    }


    to{

        opacity:1;

        transform:

        translateY(0);

    }

}



/*==================================================
                RESPONSIVE
==================================================*/


@media(max-width:1100px){


    .about-grid{

        gap:50px;

    }


    .about-content h2{

        font-size:45px;

    }


    .about-stats{

        grid-template-columns:

        repeat(2,1fr);

    }


}



@media(max-width:992px){


    .about-grid{

        grid-template-columns:1fr;

    }


    .about-image{

        margin:auto;

    }


    .about-content{

        padding-left:0;

        text-align:center;

    }


    .about-features{

        text-align:left;

    }


}



@media(max-width:768px){


    .about-image img{

        height:500px;

    }


    .about-card{

        right:10px;

        bottom:20px;

        width:190px;

    }


    .about-card h3{

        font-size:55px;

    }


    .about-features{

        grid-template-columns:1fr;

    }


    .about-content h2{

        font-size:38px;

    }


}



@media(max-width:576px){


    .about-image img{

        height:420px;

    }


    .about-image::after{

        top:20px;

        left:20px;

    }


    .about-card{

        position:relative;

        right:auto;

        bottom:auto;

        margin:25px auto 0;

    }


    .about-stats{

        grid-template-columns:1fr;

    }


    .stat h2{

        font-size:55px;

    }


}

/*==================================================
        PART 12
        GALLERY SECTION
        Luxury Masonry Layout
        Image Overlay
        Hover Effects
        SEO Optimized Images
==================================================*/


/*==================================================
                GALLERY SECTION
==================================================*/

.gallery{

    background:

    linear-gradient(
        180deg,
        var(--cream),
        #ffffff
    );

    overflow:hidden;

}



/*==================================================
                GALLERY GRID
==================================================*/


.gallery-grid{

    display:grid;

    grid-template-columns:

    repeat(4,1fr);

    grid-auto-rows:260px;

    gap:25px;

}



/*==================================================
                GALLERY ITEM
==================================================*/


.gallery-item{

    position:relative;

    overflow:hidden;

    border-radius:25px;

    cursor:pointer;

    box-shadow:

    0 20px 45px rgba(0,0,0,.12);

    transition:.5s ease;

}



/* MASONRY SIZES */


.gallery-item.large{

    grid-column:

    span 2;

    grid-row:

    span 2;

}



.gallery-item.wide{

    grid-column:

    span 2;

}



.gallery-item.tall{

    grid-row:

    span 2;

}



/*==================================================
                PLACEHOLDER DESIGN
==================================================*/


.gallery-placeholder{

    width:100%;

    height:100%;

    display:flex;

    flex-direction:column;

    justify-content:flex-end;

    padding:40px;

    position:relative;

    background:

    linear-gradient(

        135deg,

        var(--purple),

        var(--purple-dark)

    );

    color:white;

    transition:.5s;

}



/*
 Replace later with:

 <img>
 with SEO alt attribute

 Example:

 alt="Mariage marocain de luxe organisé par Traiteur Alakhawin Ziadi Tanger"

*/


.gallery-placeholder span{

    color:var(--gold-light);

    font-size:12px;

    letter-spacing:4px;

    text-transform:uppercase;

    margin-bottom:12px;

}



.gallery-placeholder h3{

    font-family:

    'Cormorant Garamond',
    serif;

    font-size:40px;

    line-height:1;

    margin-bottom:10px;

}



.gallery-placeholder p{

    color:#eee;

    font-size:15px;

}



/*==================================================
                IMAGE OVERLAY
==================================================*/


.gallery-item::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        180deg,

        transparent 30%,

        rgba(0,0,0,.75)

    );

    z-index:2;

    opacity:.8;

    transition:.5s;

}



.gallery-item::after{

    content:"";

    position:absolute;

    width:70px;

    height:70px;

    border-radius:50%;

    left:50%;

    top:50%;

    transform:

    translate(-50%,-50%)

    scale(0);


    background:

    rgba(255,255,255,.15);


    backdrop-filter:blur(10px);


    border:

    1px solid rgba(255,255,255,.4);


    z-index:4;

    transition:.5s;

}



/*==================================================
                HOVER EFFECT
==================================================*/


.gallery-item:hover{

    transform:

    translateY(-12px);

    box-shadow:

    0 35px 70px rgba(0,0,0,.22);

}



.gallery-item:hover .gallery-placeholder{

    transform:

    scale(1.08);

}



.gallery-item:hover::before{

    opacity:1;

}



.gallery-item:hover::after{

    transform:

    translate(-50%,-50%)

    scale(1);

}



/*==================================================
                ZOOM ICON
==================================================*/


.gallery-item:hover::after{

    content:"\f002";

    font-family:

    "Font Awesome 6 Free";

    font-weight:900;

    display:flex;

    justify-content:center;

    align-items:center;

    color:white;

    font-size:22px;

}



/*==================================================
                REAL IMAGE SUPPORT
==================================================*/


.gallery-item img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:

    transform .7s ease;

}



.gallery-item:hover img{

    transform:

    scale(1.12);

}



/*==================================================
                GOLD CORNER EFFECT
==================================================*/


.gallery-item .gallery-placeholder::after{

    content:"";

    position:absolute;

    width:80px;

    height:80px;

    right:0;

    top:0;

    border-top:

    2px solid var(--gold);

    border-right:

    2px solid var(--gold);

    opacity:0;

    transition:.4s;

}



.gallery-item:hover 
.gallery-placeholder::after{

    opacity:1;

}



/*==================================================
                GALLERY FILTER ANIMATION
==================================================*/


.gallery-item{

    animation:

    galleryReveal .8s ease forwards;

}



@keyframes galleryReveal{


    from{

        opacity:0;

        transform:

        translateY(50px);

    }


    to{

        opacity:1;

        transform:

        translateY(0);

    }

}



/*==================================================
                SEO IMAGE OPTIMIZATION STYLE
==================================================*/


.gallery img{

    aspect-ratio:

    4 / 3;

}



/*
HTML IMAGE EXAMPLE:

<img 
src="assets/images/gallery/mariage-luxe-tanger.webp"
alt="Mariage marocain luxe organisé par Traiteur Alakhawin Ziadi à Tanger"
loading="lazy">

*/


/*==================================================
                RESPONSIVE
==================================================*/


@media(max-width:1100px){


    .gallery-grid{

        grid-template-columns:

        repeat(3,1fr);

    }


}



@media(max-width:992px){


    .gallery-grid{

        grid-template-columns:

        repeat(2,1fr);

        grid-auto-rows:230px;

    }


}



@media(max-width:768px){


    .gallery-grid{

        grid-template-columns:

        1fr;

        grid-auto-rows:350px;

    }


    .gallery-item.large,
    .gallery-item.wide,
    .gallery-item.tall{

        grid-column:

        span 1;

        grid-row:

        span 1;

    }



    .gallery-placeholder{

        padding:30px;

    }



    .gallery-placeholder h3{

        font-size:34px;

    }


}



@media(max-width:576px){


    .gallery-grid{

        grid-auto-rows:300px;

    }


}

/*==================================================
        PART 13
        TESTIMONIALS SECTION
        Luxury Client Reviews
        Glass Cards + Stars Animation
        Trust Design
==================================================*/


/*==================================================
                TESTIMONIALS
==================================================*/


.testimonials{

    position:relative;

    background:

    linear-gradient(
        180deg,
        #ffffff,
        var(--cream)
    );

    overflow:hidden;

}



/* Decorative Gold Glow */

.testimonials::before{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    left:-250px;

    top:100px;

    border-radius:50%;

    background:

    radial-gradient(

        circle,

        rgba(200,160,70,.18),

        transparent 70%

    );

    filter:blur(20px);

}



/*==================================================
                TESTIMONIAL GRID
==================================================*/


.testimonials-grid{

    display:grid;

    grid-template-columns:

    repeat(3,1fr);

    gap:30px;

}



/*==================================================
                TESTIMONIAL CARD
==================================================*/


.testimonial-card{

    position:relative;

    padding:45px 35px;

    border-radius:30px;

    background:

    rgba(255,255,255,.75);

    backdrop-filter:

    blur(15px);

    border:

    1px solid rgba(200,160,70,.15);


    box-shadow:

    0 20px 50px rgba(0,0,0,.08);


    transition:

    .45s ease;


    overflow:hidden;

}



.testimonial-card::before{

    content:"";

    position:absolute;

    width:100px;

    height:100px;

    right:-30px;

    top:-30px;

    border-radius:50%;

    background:

    rgba(200,160,70,.12);

}



.testimonial-card:hover{

    transform:

    translateY(-12px);


    box-shadow:

    0 35px 70px rgba(0,0,0,.15);

}



/*==================================================
                QUOTE ICON
==================================================*/


.quote{

    width:60px;

    height:60px;

    display:flex;

    align-items:center;

    justify-content:center;


    border-radius:50%;


    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    color:#fff;


    font-size:25px;


    margin-bottom:25px;


    box-shadow:

    0 15px 30px rgba(200,160,70,.35);

}



.quote i{

    transition:.4s;

}


.testimonial-card:hover .quote i{

    transform:

    rotate(15deg);

}



/*==================================================
                REVIEW TEXT
==================================================*/


.testimonial-card p{

    font-size:17px;

    line-height:1.9;

    color:

    var(--text);

    margin-bottom:25px;

    font-style:italic;

}



/*==================================================
                STARS
==================================================*/


.stars{

    color:

    var(--gold);


    font-size:22px;


    letter-spacing:5px;


    margin-bottom:30px;


    animation:

    starsGlow 3s infinite ease-in-out;

}



@keyframes starsGlow{


    0%{

        opacity:.7;

    }


    50%{

        opacity:1;

    }


    100%{

        opacity:.7;

    }

}



/*==================================================
                CLIENT INFO
==================================================*/


.client{

    display:flex;

    align-items:center;

    gap:18px;

    padding-top:25px;

    border-top:

    1px solid rgba(0,0,0,.08);

}



.client img{

    width:65px;

    height:65px;

    border-radius:50%;

    object-fit:cover;

    border:

    3px solid var(--gold);

}



.client h4{

    font-family:

    'Cormorant Garamond',

    serif;


    font-size:25px;


    color:

    var(--purple-dark);


    line-height:1;

}



.client span{

    display:block;

    margin-top:6px;

    font-size:14px;

    color:

    var(--text-light);

}



/*==================================================
                TRUST BADGE
==================================================*/


.testimonials::after{

    content:

    "★★★★★  Clients satisfaits";


    position:absolute;


    bottom:40px;


    right:60px;


    padding:15px 30px;


    border-radius:50px;


    background:

    rgba(255,255,255,.8);


    backdrop-filter:

    blur(15px);


    color:

    var(--gold-dark);


    font-size:14px;


    letter-spacing:2px;


    box-shadow:

    0 15px 40px rgba(0,0,0,.08);

}



/*==================================================
                SCROLL ANIMATION
==================================================*/


.testimonial-card{

    animation:

    testimonialReveal .8s ease forwards;

}



@keyframes testimonialReveal{


    from{

        opacity:0;

        transform:

        translateY(60px);

    }


    to{

        opacity:1;

        transform:

        translateY(0);

    }

}



/*==================================================
                RESPONSIVE
==================================================*/


@media(max-width:1100px){


    .testimonials-grid{

        grid-template-columns:

        repeat(2,1fr);

    }


}



@media(max-width:992px){


    .testimonial-card{

        padding:35px 25px;

    }


}



@media(max-width:768px){


    .testimonials-grid{

        grid-template-columns:

        1fr;

    }



    .testimonials::after{

        display:none;

    }



    .testimonial-card p{

        font-size:16px;

    }


}



@media(max-width:576px){


    .quote{

        width:50px;

        height:50px;

        font-size:20px;

    }



    .client img{

        width:55px;

        height:55px;

    }


}

/*==================================================
        PART 14
        CONTACT SECTION
        Luxury Contact Layout
        Premium Form
        Google Maps
        WhatsApp CTA
==================================================*/


/*==================================================
                CONTACT SECTION
==================================================*/


.contact{

    position:relative;

    background:

    linear-gradient(

        180deg,

        var(--cream),

        #ffffff

    );

    overflow:hidden;

}



/* GOLD BACKGROUND EFFECT */

.contact::before{

    content:"";

    position:absolute;

    width:600px;

    height:600px;

    right:-250px;

    top:100px;

    border-radius:50%;

    background:

    radial-gradient(

        circle,

        rgba(200,160,70,.18),

        transparent 70%

    );

    filter:blur(20px);

}



/*==================================================
                CONTACT WRAPPER
==================================================*/


.contact-wrapper{

    display:grid;

    grid-template-columns:

    .8fr 1.2fr;

    gap:50px;

    align-items:start;

}



/*==================================================
                CONTACT INFO
==================================================*/


.contact-info{

    display:flex;

    flex-direction:column;

    gap:25px;

}



/*==================================================
                CONTACT BOX
==================================================*/


.contact-box{

    display:flex;

    align-items:flex-start;

    gap:25px;

    padding:30px;

    border-radius:25px;


    background:

    rgba(255,255,255,.8);


    backdrop-filter:

    blur(15px);


    border:

    1px solid rgba(200,160,70,.15);


    box-shadow:

    0 20px 45px rgba(0,0,0,.08);


    transition:.4s ease;

}



.contact-box:hover{

    transform:

    translateX(10px);


    box-shadow:

    0 30px 60px rgba(0,0,0,.12);

}



/* ICON */


.contact-box i{

    width:60px;

    height:60px;

    min-width:60px;


    display:flex;

    align-items:center;

    justify-content:center;


    border-radius:50%;


    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    color:#fff;


    font-size:22px;


    box-shadow:

    0 15px 35px rgba(200,160,70,.35);

}



.contact-box h3{

    font-family:

    'Cormorant Garamond',

    serif;


    font-size:28px;


    color:

    var(--purple-dark);


    margin-bottom:8px;

}



.contact-box p{

    color:

    var(--text);


    line-height:1.8;

}



/*==================================================
                CONTACT FORM
==================================================*/


.contact-form{

    padding:45px;


    border-radius:35px;


    background:

    rgba(255,255,255,.85);


    backdrop-filter:

    blur(20px);


    border:

    1px solid rgba(200,160,70,.18);


    box-shadow:

    0 30px 70px rgba(0,0,0,.12);

}



.contact-form form{

    display:grid;

    grid-template-columns:

    repeat(2,1fr);

    gap:20px;

}



/* INPUTS */


.contact-form input,
.contact-form textarea{


    width:100%;


    padding:18px 22px;


    border-radius:15px;


    background:#fafafa;


    border:

    1px solid rgba(0,0,0,.08);


    color:

    var(--black);


    font-size:15px;


    transition:.35s;

}



.contact-form textarea{

    grid-column:

    span 2;


    resize:none;

}



.contact-form input:focus,
.contact-form textarea:focus{


    border-color:

    var(--gold);


    background:#fff;


    box-shadow:

    0 0 0 4px rgba(200,160,70,.12);

}



/* BUTTON */


.contact-form .btn{

    grid-column:

    span 2;


    cursor:pointer;

    margin-top:10px;

}



/*==================================================
                GOOGLE MAP
==================================================*/


.map{

    margin-top:70px;


    height:450px;


    border-radius:35px;


    overflow:hidden;


    box-shadow:

    0 30px 70px rgba(0,0,0,.15);


    border:

    4px solid #fff;

}



.map iframe{

    width:100%;

    height:100%;

    border:0;

    filter:

    grayscale(20%)

    contrast(1.05);

}



/*==================================================
                WHATSAPP FLOATING BUTTON
==================================================*/


.whatsapp{

    position:fixed;


    right:30px;


    bottom:30px;


    width:70px;


    height:70px;


    display:flex;


    align-items:center;


    justify-content:center;


    border-radius:50%;


    background:#25D366;


    color:#fff;


    font-size:35px;


    z-index:999;


    box-shadow:

    0 20px 45px rgba(37,211,102,.45);


    animation:

    whatsappPulse 2s infinite;

}



.whatsapp:hover{

    transform:

    translateY(-8px)

    scale(1.05);

}



@keyframes whatsappPulse{


    0%{

        box-shadow:

        0 0 0 0 rgba(37,211,102,.45);

    }


    70%{

        box-shadow:

        0 0 0 25px rgba(37,211,102,0);

    }


    100%{

        box-shadow:

        0 0 0 0 rgba(37,211,102,0);

    }

}



/*==================================================
                BACK TO TOP BUTTON
==================================================*/


.to-top{


    position:fixed;


    right:35px;


    bottom:120px;


    width:55px;


    height:55px;


    display:flex;


    align-items:center;


    justify-content:center;


    border-radius:50%;


    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    color:#fff;


    cursor:pointer;


    opacity:0;


    visibility:hidden;


    transition:.4s;


    z-index:999;


}



.to-top.active{


    opacity:1;

    visibility:visible;

}



.to-top:hover{

    transform:

    translateY(-8px);

}



/*==================================================
                RESPONSIVE
==================================================*/


@media(max-width:1100px){


    .contact-wrapper{

        grid-template-columns:

        1fr;

    }



    .contact-info{

        display:grid;

        grid-template-columns:

        repeat(3,1fr);

    }


}



@media(max-width:992px){


    .contact-info{

        grid-template-columns:

        1fr;

    }



    .contact-form{

        padding:35px;

    }


}



@media(max-width:768px){


    .contact-form form{

        grid-template-columns:

        1fr;

    }



    .contact-form textarea,
    .contact-form .btn{

        grid-column:

        span 1;

    }



    .contact-box{

        padding:25px;

    }



    .map{

        height:350px;

    }



    .whatsapp{

        width:60px;

        height:60px;

        font-size:30px;

        right:20px;

        bottom:20px;

    }


}



@media(max-width:576px){


    .contact-form{

        padding:25px;

        border-radius:25px;

    }



    .contact-box i{

        width:50px;

        height:50px;

        min-width:50px;

    }



    .contact-box h3{

        font-size:24px;

    }


}

/*==================================================
            TESTIMONIALS SECTION
==================================================*/


.testimonials{

    background:
    linear-gradient(
        135deg,
        #fff,
        #f8f3eb
    );

}



/*==================================================
            TESTIMONIAL GRID
==================================================*/


.testimonials-grid{

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:35px;

}



/*==================================================
            TESTIMONIAL CARD
==================================================*/


.testimonial-card{

    position:relative;

    padding:45px 35px;

    background:#fff;

    border-radius:30px;

    box-shadow:
    0 20px 60px rgba(0,0,0,.08);

    border:
    1px solid rgba(200,160,70,.15);

    transition:.45s ease;

    overflow:hidden;

}



/* GOLD BACKGROUND EFFECT */


.testimonial-card::before{

    content:"";

    position:absolute;

    width:150px;

    height:150px;

    right:-50px;

    top:-50px;

    border-radius:50%;

    background:

    radial-gradient(

        rgba(200,160,70,.25),

        transparent 70%

    );

    transition:.5s;

}



.testimonial-card:hover::before{

    transform:scale(1.5);

}




.testimonial-card:hover{

    transform:translateY(-12px);

    box-shadow:

    0 35px 80px rgba(0,0,0,.15);

}



/*==================================================
                QUOTE ICON
==================================================*/


.quote{

    width:60px;

    height:60px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;


    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    color:#fff;

    font-size:25px;

    margin-bottom:25px;


}



/*==================================================
                TEXT
==================================================*/


.testimonial-card p{

    font-size:17px;

    line-height:1.9;

    color:var(--text);

    margin-bottom:25px;

    position:relative;

    z-index:2;

}



/*==================================================
                STARS
==================================================*/


.stars{

    color:var(--gold);

    font-size:22px;

    letter-spacing:5px;

    margin-bottom:30px;

    animation:

    starsGlow 3s infinite;

}



@keyframes starsGlow{


    0%{

        opacity:.7;

    }


    50%{

        opacity:1;

        transform:scale(1.05);

    }


    100%{

        opacity:.7;

    }


}




/*==================================================
                CLIENT INFO
==================================================*/


.client{

    display:flex;

    align-items:center;

    gap:18px;

}



.client img{

    width:65px;

    height:65px;

    border-radius:50%;

    object-fit:cover;

    border:

    3px solid var(--gold);

}



.client h4{

    font-size:18px;

    color:var(--purple-dark);

    font-weight:600;

}



.client span{

    display:block;

    margin-top:4px;

    font-size:14px;

    color:var(--text-light);

}




/*==================================================
        TESTIMONIAL DECORATION
==================================================*/


.testimonials::before{

    content:"";

    position:absolute;

    left:-150px;

    bottom:100px;

    width:350px;

    height:350px;

    border-radius:50%;


    background:

    radial-gradient(

        rgba(200,160,70,.15),

        transparent 70%

    );


}



/*==================================================
                SCROLL ANIMATION
==================================================*/


.testimonial-card{

    opacity:0;

    transform:translateY(50px);

    animation:

    testimonialReveal .8s forwards;

}



.testimonial-card:nth-child(1){

    animation-delay:.2s;

}


.testimonial-card:nth-child(2){

    animation-delay:.4s;

}


.testimonial-card:nth-child(3){

    animation-delay:.6s;

}



@keyframes testimonialReveal{


    to{

        opacity:1;

        transform:translateY(0);

    }


}





/*==================================================
                RESPONSIVE
==================================================*/


@media(max-width:1100px){


    .testimonials-grid{

        grid-template-columns:

        repeat(2,1fr);

    }


}



@media(max-width:768px){


    .testimonials-grid{

        grid-template-columns:

        1fr;

    }


    .testimonial-card{

        padding:35px 25px;

    }


    .testimonial-card p{

        font-size:16px;

    }


}

/*==================================================
            CONTACT SECTION
==================================================*/


.contact{

    background:
    linear-gradient(
        135deg,
        #ffffff,
        #faf5ed
    );

}



/*==================================================
            CONTACT WRAPPER
==================================================*/


.contact-wrapper{

    display:grid;

    grid-template-columns:

    .9fr 1.1fr;

    gap:60px;

    align-items:start;

}



/*==================================================
            CONTACT INFO
==================================================*/


.contact-info{

    display:flex;

    flex-direction:column;

    gap:25px;

}



.contact-box{

    display:flex;

    align-items:center;

    gap:25px;

    padding:30px;

    background:#fff;

    border-radius:25px;


    border:

    1px solid rgba(200,160,70,.18);


    box-shadow:

    0 20px 50px rgba(0,0,0,.07);


    transition:.4s ease;

}



.contact-box:hover{

    transform:translateX(10px);

    box-shadow:

    0 30px 70px rgba(0,0,0,.12);

}




.contact-box i{

    width:65px;

    height:65px;


    display:flex;

    align-items:center;

    justify-content:center;


    border-radius:50%;


    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    color:white;

    font-size:25px;

    flex-shrink:0;

}



.contact-box h3{

    font-family:'Cormorant Garamond',serif;

    font-size:26px;

    color:var(--purple-dark);

    margin-bottom:5px;

}



.contact-box p{

    color:var(--text);

    line-height:1.8;

    font-size:15px;

}



/*==================================================
            CONTACT FORM
==================================================*/


.contact-form{


    background:#fff;


    padding:45px;


    border-radius:35px;


    border:

    1px solid rgba(200,160,70,.18);


    box-shadow:

    0 25px 70px rgba(0,0,0,.09);


    position:relative;

    overflow:hidden;

}




.contact-form::before{


    content:"";


    position:absolute;


    width:220px;


    height:220px;


    right:-100px;


    top:-100px;


    border-radius:50%;


    background:

    radial-gradient(

        rgba(200,160,70,.22),

        transparent 70%

    );


}





.contact-form form{


    display:grid;


    grid-template-columns:

    repeat(2,1fr);


    gap:22px;


    position:relative;


    z-index:2;


}





.contact-form input,
.contact-form textarea{


    width:100%;


    padding:18px 22px;


    border-radius:15px;


    background:#fafafa;


    border:

    1px solid #e8e1d6;


    color:#333;


    font-size:15px;


    transition:.35s;


}





.contact-form input:focus,
.contact-form textarea:focus{


    border-color:var(--gold);


    background:white;


    box-shadow:

    0 0 0 4px rgba(200,160,70,.12);


}



.contact-form textarea{


    resize:none;


    grid-column:

    span 2;


}





.contact-form button{


    grid-column:

    span 2;


    cursor:pointer;


}



/*==================================================
            GOOGLE MAP
==================================================*/


.map{


    margin-top:70px;


    width:100%;


    height:450px;


    border-radius:35px;


    overflow:hidden;


    box-shadow:

    0 25px 70px rgba(0,0,0,.15);


    border:

    5px solid white;


}




.map iframe{


    width:100%;


    height:100%;


    border:0;


}



/*==================================================
            WHATSAPP FLOAT BUTTON
==================================================*/


.whatsapp{


    position:fixed;


    right:30px;


    bottom:100px;


    width:65px;


    height:65px;


    display:flex;


    align-items:center;


    justify-content:center;


    border-radius:50%;


    background:#25D366;


    color:white;


    font-size:34px;


    z-index:999;


    box-shadow:

    0 15px 40px rgba(37,211,102,.45);


    animation:

    whatsappPulse 2s infinite;


    transition:.4s;


}




.whatsapp:hover{


    transform:

    translateY(-8px)

    scale(1.05);


}





@keyframes whatsappPulse{


    0%{


        box-shadow:

        0 0 0 0 rgba(37,211,102,.5);


    }



    70%{


        box-shadow:

        0 0 0 25px rgba(37,211,102,0);


    }



    100%{


        box-shadow:

        0 0 0 0 rgba(37,211,102,0);


    }


}




/*==================================================
            BACK TO TOP BUTTON
==================================================*/


.to-top{


    position:fixed;


    right:30px;


    bottom:30px;


    width:50px;


    height:50px;


    border-radius:50%;


    display:flex;


    align-items:center;


    justify-content:center;


    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    color:#fff;


    font-size:18px;


    cursor:pointer;


    opacity:0;


    visibility:hidden;


    transform:translateY(20px);


    transition:.4s;


    z-index:999;


}




.to-top.show{


    opacity:1;


    visibility:visible;


    transform:translateY(0);


}



.to-top:hover{


    transform:

    translateY(-5px);


}



/*==================================================
            LOCAL SEO CONTACT BADGE
==================================================*/


.contact::after{


    content:

    "Traiteur Alakhawin Ziadi • Traiteur Mariage Tanger • Événements Maroc";


    position:absolute;


    bottom:25px;


    left:50%;


    transform:translateX(-50%);


    font-size:12px;


    letter-spacing:2px;


    color:#aaa;


    text-transform:uppercase;


}





/*==================================================
            CONTACT RESPONSIVE
==================================================*/


@media(max-width:1100px){


    .contact-wrapper{


        grid-template-columns:1fr;


        gap:40px;


    }



}



@media(max-width:768px){


    .contact-form{


        padding:30px 20px;


    }



    .contact-form form{


        grid-template-columns:1fr;


    }



    .contact-form textarea,
    .contact-form button{


        grid-column:auto;


    }



    .contact-box{


        padding:25px;


    }



    .map{


        height:350px;


        border-radius:25px;


    }



    .whatsapp{


        width:58px;


        height:58px;


        right:20px;


        bottom:90px;


    }



    .to-top{


        right:20px;


    }



}

/*==================================================
                FOOTER SECTION
==================================================*/


.footer{

    position:relative;

    background:

    linear-gradient(

        135deg,

        var(--purple-dark),

        #120b1a

    );

    padding:90px 0 30px;

    color:#fff;

    overflow:hidden;

}




/* GOLD DECORATION */


.footer::before{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    right:-200px;

    top:-200px;

    border-radius:50%;


    background:

    radial-gradient(

        rgba(200,160,70,.22),

        transparent 70%

    );

    pointer-events:none;

}




.footer::after{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    left:-150px;

    bottom:-150px;

    border-radius:50%;


    background:

    radial-gradient(

        rgba(200,160,70,.12),

        transparent 70%

    );

}





/*==================================================
                FOOTER GRID
==================================================*/


.footer-grid{

    position:relative;

    z-index:2;


    display:grid;


    grid-template-columns:

    1.5fr 1fr 1fr;


    gap:60px;


    padding-bottom:60px;


    border-bottom:

    1px solid rgba(255,255,255,.12);

}




/*==================================================
                FOOTER BRAND
==================================================*/


.footer h2{

    font-family:

    'Cormorant Garamond',

    serif;


    font-size:45px;


    line-height:1;


    color:#fff;


    margin-bottom:20px;

}




.footer h2 span{

    display:block;


    margin-top:8px;


    font-family:'Jost',sans-serif;


    font-size:13px;


    letter-spacing:6px;


    text-transform:uppercase;


    color:var(--gold-light);

}




.footer p{

    color:

    rgba(255,255,255,.7);


    font-size:16px;


    line-height:1.9;


    max-width:380px;

}





/*==================================================
                FOOTER TITLES
==================================================*/


.footer h3{

    font-family:

    'Cormorant Garamond',

    serif;


    font-size:28px;


    margin-bottom:25px;


    color:var(--gold-light);

}





/*==================================================
                FOOTER LINKS
==================================================*/


.footer ul{

    display:flex;

    flex-direction:column;

    gap:14px;

}



.footer ul li a{


    color:

    rgba(255,255,255,.75);


    font-size:15px;


    transition:.35s;


    position:relative;


    padding-left:0;


}




.footer ul li a:hover{


    color:var(--gold-light);


    padding-left:10px;


}





.footer ul li a::before{


    content:"";


    position:absolute;


    left:-5px;


    top:50%;


    transform:translateY(-50%);


    width:0;


    height:2px;


    background:var(--gold);


    transition:.35s;


}




.footer ul li a:hover::before{


    width:6px;


}





/*==================================================
                SOCIAL ICONS
==================================================*/


.social-icons{


    display:flex;


    gap:15px;


}



.social-icons a{


    width:50px;


    height:50px;


    border-radius:50%;


    display:flex;


    align-items:center;


    justify-content:center;


    color:#fff;


    font-size:20px;


    background:

    rgba(255,255,255,.08);


    border:

    1px solid rgba(255,255,255,.15);


    transition:.4s;


}




.social-icons a:hover{


    background:

    linear-gradient(

        135deg,

        var(--gold),

        var(--gold-dark)

    );


    transform:

    translateY(-8px);


    box-shadow:

    0 15px 35px rgba(200,160,70,.35);


}





/*==================================================
                FOOTER BOTTOM
==================================================*/


.footer-bottom{


    position:relative;


    z-index:2;


    padding-top:30px;


    text-align:center;


}




.footer-bottom p{


    font-size:14px;


    color:

    rgba(255,255,255,.55);


}




.footer-bottom::before{


    content:"";


    display:block;


}





/*==================================================
                SEO FOOTER AREA
==================================================*/


.footer-seo{


    margin-top:25px;


    text-align:center;


}



.footer-seo span{


    display:inline-block;


    font-size:12px;


    letter-spacing:2px;


    text-transform:uppercase;


    color:

    rgba(255,255,255,.35);


}





/*==================================================
                FOOTER CTA
==================================================*/


.footer .btn{


    margin-top:25px;


    min-width:200px;


}





/*==================================================
                FOOTER RESPONSIVE
==================================================*/


@media(max-width:992px){


    .footer-grid{


        grid-template-columns:


        repeat(2,1fr);


        gap:40px;


    }



}



@media(max-width:768px){


    .footer{


        padding:70px 0 25px;


    }



    .footer-grid{


        grid-template-columns:1fr;


        text-align:center;


    }



    .footer p{


        margin:auto;


    }



    .footer ul{


        align-items:center;


    }



    .social-icons{


        justify-content:center;


    }



    .footer h2{


        font-size:38px;


    }



}



@media(max-width:576px){


    .footer h3{


        font-size:24px;


    }



    .social-icons a{


        width:45px;


        height:45px;


    }



}