

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Montserrat:wght@300;400;500;600&display=swap');


*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}


:root{

    --gold:#c6a15b;
    --cream:#fffaf4;
    --maroon:#5a1620;
    --dark:#1c1515;
    --white:#ffffff;

}


body{

    font-family:'Montserrat',sans-serif;
    background:var(--cream);
    color:var(--dark);
    line-height:1.7;

}



h1,h2,h3{

    font-family:'Cormorant Garamond',serif;
    font-weight:600;

}



h2{

    font-size:55px;
    margin-bottom:25px;

}



p{

    font-size:17px;

}


/* HEADER */

header{

    position:absolute;
    width:100%;
    top:0;
    left:0;
    z-index:1000;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:30px 8%;

    color:white;

}


.logo{

    font-family:'Cormorant Garamond',serif;
    font-size:35px;
    letter-spacing:1px;

}



nav a{

    color:white;
    text-decoration:none;
    margin-left:30px;
    font-size:15px;

    transition:.3s;

}



nav a:hover{

    color:var(--gold);

}


/* MOBILE MENU */

.menu-toggle{

    display:none;
    font-size:30px;
    cursor:pointer;

}



/* HERO */


.hero{

    height:100vh;

    background-size:cover;
    background-position:center 25%;

    display:flex;
    align-items:center;
    justify-content:center;

    text-align:center;

    color:white;

    position:relative;

}


.hero:before{

    content:"";

    position:absolute;
    inset:0;

    background:rgba(0,0,0,.30);

}



.hero-content{

    position:relative;
    max-width:1000px;
    padding:20px;

}



.hero h1{

    font-size:80px;
    line-height:1.1;

}



.hero p{

    font-size:22px;
    margin:30px auto;

}



/* BUTTONS */


.btn{

    display:inline-block;

    padding:16px 40px;

    background:var(--gold);

    color:white;

    text-decoration:none;

    border-radius:2px;

    margin:10px;

    transition:.4s;

}



.btn:hover{

    background:white;
    color:var(--maroon);

}



.secondary{

    background:transparent;
    border:1px solid white;

}



/* SECTIONS */


.intro{

    padding:100px 10%;

    text-align:center;

}



.services{

    display:flex;

    gap:35px;

    padding:70px 8%;

}



.card{

    background:white;

    padding:40px;

    flex:1;

    text-align:center;

    box-shadow:0 15px 40px rgba(0,0,0,.08);

    transition:.5s;

}



.card:hover{

    transform:translateY(-12px);

}



.card img{

    width:100%;

}




/* PROCESS */


.process{

    padding:100px 8%;

    text-align:center;

}



.steps{

    display:flex;

    justify-content:center;

    gap:25px;

    margin-top:40px;

}



.steps div{

    background:white;

    padding:30px;

    min-width:150px;

}




/* CTA */


.cta{

    background:var(--maroon);

    color:white;

    padding:100px 10%;

    text-align:center;

}



/* CONTACT FORM */


.contact-form{

    padding:60px 10%;

}



form{

    max-width:700px;

    margin:auto;

}



input,
textarea,
select{

    width:100%;

    padding:15px;

    margin:12px 0;

    border:1px solid #ddd;

    font-family:'Montserrat';

}


textarea{

    height:150px;

}



/* FOOTER */


footer{

    background:#111;

    color:white;

    text-align:center;

    padding:30px;

}



/* WHATSAPP */


.whatsapp{

    position:fixed;

    bottom:25px;

    right:25px;

    background:#25D366;

    color:white;

    padding:15px 25px;

    border-radius:50px;

    text-decoration:none;

    z-index:2000;

}



/* ANIMATION */


.hero-content,
.card,
.intro,
.cta{

    animation:fadeUp 1s ease;

}



@keyframes fadeUp{

from{

opacity:0;

transform:translateY(40px);

}

to{

opacity:1;

transform:translateY(0);

}

}





/* MOBILE */


@media(max-width:768px){


header{

padding:25px;

}



.logo{

font-size:28px;

}



.menu-toggle{

display:block;

}



nav{

display:none;

flex-direction:column;

background:#5a1620;

position:absolute;

top:80px;

right:20px;

padding:20px;

}



nav.active{

display:flex;

}



nav a{

margin:15px;

}



.hero h1{

font-size:45px;

}



.hero p{

font-size:18px;

}



.services,
.steps{

flex-direction:column;

}



h2{

font-size:40px;

}


}

/* Luxury image styling */

.intro img{

box-shadow:0 25px 60px rgba(0,0,0,.2);

}


.hero-content h1{

text-shadow:0 5px 20px rgba(0,0,0,.5);

}


.card h3{

font-size:32px;

color:#5a1620;

}


.card p{

color:#555;

}

.hero{
    background-attachment:scroll;
}


.card img,
.intro img{

    object-fit:cover;

    transition:.5s;

}


.card:hover img{

    transform:scale(1.04);

}

/* =========================
NEW CONTACT PAGE DESIGN
========================= */


.contact-container{

    display:flex;

    gap:50px;

    padding:80px 8%;

    align-items:flex-start;

}



.contact-form-box,
.contact-details-box{

    background:white;

    padding:50px;

    flex:1;

    box-shadow:0 20px 50px rgba(0,0,0,.08);

}



.contact-form-box h2,
.contact-details-box h2{

    color:var(--maroon);

    font-size:45px;

}



.contact-form-box h2:after,
.contact-details-box h2:after{

    content:"";

    display:block;

    width:70px;

    height:2px;

    background:var(--gold);

    margin-top:15px;

}




/* FORM IMPROVEMENT */


.contact-form-box input,
.contact-form-box textarea,
.contact-form-box select{


    border:none;

    border-bottom:1px solid #ddd;

    background:#fffaf4;

    padding:18px;

    outline:none;

}



.contact-form-box input:focus,
.contact-form-box textarea:focus,
.contact-form-box select:focus{

    border-bottom:2px solid var(--gold);

}






/* CONTACT CARDS */


.contact-card{

    background:var(--cream);

    padding:25px;

    margin:25px 0;

    border-left:4px solid var(--gold);

}



.contact-card h3{

    color:var(--maroon);

    font-size:30px;

}



.contact-card p{

    color:#555;

}






/* MAKE BUTTON MORE PREMIUM */


.contact-form-box .btn{

    border:none;

    cursor:pointer;

    font-family:'Montserrat';

    font-size:16px;

}





/* CONTACT PAGE MOBILE */


@media(max-width:768px){


.contact-container{

    flex-direction:column;

    padding:40px 5%;

}



.contact-form-box,
.contact-details-box{

    padding:30px;

    width:100%;

}



.contact-form-box h2,
.contact-details-box h2{

    font-size:35px;

}


}