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

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

/*==================================================
                ROOT VARIABLES
==================================================*/

:root{

    --primary:#c8905f;
    --primary-dark:#9b6740;
    --dark:#171717;
    --white:#ffffff;
    --text:#d8d8d8;
    --heading:#172033;
    --section:#fbfaf8;

    --transition:.35s ease;
    --shadow:0 20px 45px rgba(0,0,0,.12);

}

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

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

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Inter',sans-serif;

    background:#111;

    color:#fff;

    overflow-x:hidden;

}

img{

    display:block;
    width:100%;
    max-width:100%;

}

a{

    text-decoration:none;

}

ul{

    list-style:none;

}

section{

    position:relative;

}

/*==================================================
            CUSTOM SCROLLBAR
==================================================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#171717;

}

::-webkit-scrollbar-thumb{

    background:var(--primary);

    border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

    background:#d8a46d;

}

::selection{

    background:var(--primary);

    color:white;

}

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

header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:1000;
    transition:0.4s ease;
    padding:0;
}

/* Navbar after scrolling */

header.scrolled{
    background:#111;
    box-shadow:0 8px 30px rgba(0,0,0,.25);
    backdrop-filter:blur(12px);
}

header.scrolled nav{
    height:80px;
}

header.scrolled .book-btn{
    background:#c8905f;
    color:#fff;
}

header.scrolled .book-btn:hover{
    background:#e0a76d;
}

.navbar{
    width:100%;
    padding:18px 0;
    transition:.4s;
}

.navbar.scrolled{
    background:rgba(15,15,15,.82);
    backdrop-filter:blur(18px);
    box-shadow:0 10px 35px rgba(0,0,0,.35);
}

nav{
    width:90%;
    max-width:1400px;
    margin:auto;

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

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

.logo{
    display:flex;
    align-items:center;
    gap:12px;

    text-decoration:none;

    color:#fff;
}

.logo i{
    font-size:32px;
    color:#d9a066;
}

.logo span{
    font-size:38px;
    font-family:'Cormorant Garamond',serif;
    font-style:italic;
    font-weight:600;
    color:#fff;
}

/* ===========================
        CENTER MENU
=========================== */

.nav-links{
    display:flex;
    align-items:center;
    gap:50px;

    list-style:none;
}

.nav-links li{
    list-style:none;
}

.nav-links a{

    color:#fff;
    text-decoration:none;

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

    letter-spacing:1px;

    transition:.35s;

    position:relative;
}

.nav-links a::after{

    content:"";

    position:absolute;

    left:0;
    bottom:-8px;

    width:0;
    height:2px;

    background:#d9a066;

    transition:.35s;
}

.nav-links a:hover{

    color:#d9a066;

}

.nav-links a:hover::after{

    width:100%;

}

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

.book-btn{

    padding:14px 34px;

    background:#d9a066;

    color:#fff;

    border-radius:50px;

    text-decoration:none;

    font-weight:600;

    transition:.35s;
}

.book-btn:hover{

    background:#fff;

    color:#111;

}

/* ===========================
        HAMBURGER
=========================== */

.menu-toggle{

    display:none;

    font-size:30px;

    color:#fff;

    cursor:pointer;
}

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

@media(max-width:992px){

.menu-toggle{
    display:block;
}

.book-btn{
    display:none;
}

.nav-links{

    position:absolute;

    top:82px;
    left:0;

    width:100%;

    background:#161616;

    display:none;

    flex-direction:column;

    padding:35px;

    gap:30px;

    box-shadow:0 15px 30px rgba(0,0,0,.35);

}

.nav-links.active{

    display:flex;

}

}

@media(max-width:600px){

.logo span{

    font-size:28px;

}

.logo i{

    font-size:24px;

}

nav{

    width:92%;

}

}

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

.book-btn{

    padding:15px 34px;

    border-radius:50px;

    background:white;

    color:#111;

    font-weight:600;

    transition:.35s;

}

.book-btn:hover{

    background:var(--primary);

    color:white;

    transform:translateY(-3px);

}

/*==================================================
            MOBILE MENU
==================================================*/

.menu-toggle{

    display:none;

    color:white;

    font-size:28px;

    cursor:pointer;

}

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

.hero{

    height:100vh;

    min-height:780px;

    position:relative;

    overflow:hidden;

    background:

    linear-gradient(rgba(0,0,0,.55),rgba(0,0,0,.55)),

    url("inside 1.jpg") center/cover no-repeat;

}

.hero-content{

    width:min(95%,1200px);

    height:100%;

    margin:auto;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

}

.location{

    color:var(--primary);

    letter-spacing:8px;

    font-size:14px;

    font-weight:600;

    margin-bottom:28px;

}

.hero h1{

      font-size:clamp(2.5rem,9vw,6rem);
    line-height:1.1;
        
    
    letter-spacing: -0.025em;

    font-weight:200;
font-family: Inter, system-ui, sans-serif !important;
    

}

.hero h2{

font-family: "Playfair Display", serif !important;
display: inline-block;

font-weight: 400;
letter-spacing: -2px;


  font-size:clamp(2.7rem,10vw,6rem);
    line-height:1;
   

    font-style:italic;
    
   
   
  
    color:#d7a06a;
}

.description{

    max-width:720px;

    margin-top:35px;

    color:#ddd;

    line-height:1.9;

    font-size:20px;

}

/*==================================================
                BUTTONS
==================================================*/

.buttons{

    display:flex;

    gap:20px;

    margin-top:50px;

}

.primary-btn{

    background:var(--primary-dark);

    color:white;

    padding:20px 42px;

    border-radius:50px;

    font-weight:600;

    letter-spacing:1px;

    text-transform:uppercase;

    transition:.35s;

}

.primary-btn:hover{

    background:var(--primary);

    transform:translateY(-5px);

    box-shadow:0 20px 40px rgba(0,0,0,.25);

}

.secondary-btn{

    border:1px solid rgba(255,255,255,.4);

    color:white;

    backdrop-filter:blur(10px);

    padding:20px 42px;

    border-radius:50px;

    transition:.35s;

}

.secondary-btn:hover{

    background:white;

    color:#111;

}

/*==================================================
            SCROLL ANIMATION
==================================================*/

.hidden{

    opacity:0;

    transform:translateY(70px);

    transition:all .9s ease;

}

.show{

    opacity:1;

    transform:translateY(0);

}

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

@media(max-width:992px){

.menu-toggle{

display:block;

}

.nav-links{

position:absolute;

top:90px;

left:0;

width:100%;

background:#171717;

display:none;

flex-direction:column;

padding:35px 0;

gap:30px;

}

.nav-links.active{

display:flex;

}

.book-btn{

display:none;

}

.hero{

min-height:700px;

}

.description{

font-size:18px;

}

}

@media(max-width:600px){

.hero{

min-height:640px;

}

.location{

letter-spacing:4px;

font-size:12px;

}

.description{

font-size:16px;

}

.buttons{

flex-direction:column;

width:100%;

max-width:320px;

}

.primary-btn,
.secondary-btn{

text-align:center;

}

.logo span{

font-size:30px;

}

}












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

.about-section{

    padding:120px 8%;

    background:#f8f3ee;

}

.about-container{

    max-width:1400px;

    margin:auto;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:90px;

}

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

.about-image{

    width:48%;

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

}

/* Decorative Border */

.frame{

    position:absolute;

    width:82%;

    height:88%;

    border:3px solid #d8cabd;

    border-radius:22px;

    top:-28px;

    left:18px;

    z-index:1;

}

/* IMPORTANT:
   Renamed from .menu-card
   to .about-menu-card
*/

.about-menu-card{

    width:560px;

    background:#fff;

    border-radius:20px;

    overflow:hidden;

    box-shadow:0 25px 60px rgba(0,0,0,.15);

    position:relative;

    z-index:2;

}

.about-menu-card img{

    width:100%;

    display:block;

}

/* Accent Box */

.accent-box{

    position:absolute;

    width:240px;

    height:240px;

    background:#c8905f;

    border-radius:22px;

    bottom:-30px;

    right:-25px;

    z-index:0;

}

/*==================================================
                RIGHT SIDE
==================================================*/

.about-content{

    width:50%;

}

.about-content h2{

    font-size:clamp(40px,5vw,60px);
    font-family: Inter, system-ui, sans-serif !important;

    font-weight:40;

    color:#172033;

    line-height:1.1;

    margin-bottom:25px;

}

.about-content h2 span{

    display:block;

    color:#c8905f;

   font-family: "Playfair Display", serif !important;

    font-style:italic;

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

}

.about-text{

    color:#55606f;

    font-size:19px;

    line-height:1.9;

    margin-bottom:55px;

}

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

.features{

    display:grid;

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

    gap:32px;

}

.feature{

    display:flex;

    align-items:flex-start;

    gap:18px;

}

.icon{

    width:62px;

    height:62px;

    background:#efe4d8;

    border-radius:16px;

    display:flex;

    justify-content:center;

    align-items:center;

    flex-shrink:0;

    font-size:28px;

    color:#80593d;

    transition:.35s;

}

.feature:hover .icon{

    background:#c8905f;

    color:#fff;

    transform:translateY(-4px);

}

.feature h4{

    font-size:20px;

    color:#172033;

    margin-bottom:8px;

    font-weight:600;

}

.feature p{

    color:#666;

    line-height:1.8;

    font-size:15px;

}

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

@media(max-width:1100px){

.about-container{

    flex-direction:column;

    gap:70px;

}

.about-image,

.about-content{

    width:100%;

}

.about-menu-card{

    width:100%;

    max-width:560px;

}

.frame{

    width:85%;

    left:10px;

}

}

@media(max-width:768px){

.about-section{

    padding:90px 6%;

}

.about-content h2{

    text-align:center;

}

.about-text{

    text-align:center;

    font-size:17px;

}

.features{

    grid-template-columns:1fr;

    gap:25px;

}

.feature{

    align-items:center;

}

}

@media(max-width:500px){

.about-section{

    padding:80px 5%;

}

.frame{

    display:none;

}

.accent-box{

    width:160px;

    height:160px;

    right:-10px;

    bottom:-15px;

}

.about-content h2{

    font-size:38px;

}

.about-text{

    font-size:16px;

}

.icon{

    width:55px;

    height:55px;

    font-size:22px;

}

.feature h4{

    font-size:20px;

}

.feature p{

    font-size:15px;

}

}





/*==================================================
                MENU SECTION
==================================================*/

.menu-section{

    padding:120px 8%;

    background:#fbfaf8;

}

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

.section-heading{

    text-align:center;

    max-width:800px;

    margin:0 auto 80px;

}

.section-heading h2{

    font-size:clamp(42px,6vw,72px);

    font-weight:300;

    color:#172033;

    line-height:1.1;

}

.section-heading h2 span{

    
font-family: "Playfair Display", serif !important;
    font-style:italic;

    color:#c8905f;

    font-weight:500;

}

.section-heading p{

    margin-top:18px;

    color:#777;

    letter-spacing:4px;

    text-transform:uppercase;

    font-size:14px;

    font-weight:600;

}

/*==================================================
                MENU WRAPPER
==================================================*/

.menu-wrapper{

    max-width:1350px;

    margin:auto;

    display:grid;

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

    gap:40px;

}

/*==================================================
                MENU CARD
==================================================*/

.menu-card{

    background:#f8f1ea;

    border:1px solid #ead9ca;

    border-radius:26px;

    padding:45px;

    transition:.35s ease;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

}

.menu-card:hover{

    transform:translateY(-8px);

    box-shadow:0 25px 55px rgba(0,0,0,.12);

}

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

.menu-card h3{

    font-family: Inter, system-ui, sans-serif !important;

    font-weight: 300;
    
    

font-size: 1.5rem;
    line-height: 2rem;
    

    color:#6d4b33;

    margin-bottom:22px;

}

/*==================================================
                DIVIDER
==================================================*/

.divider{

    width:100%;

    height:1px;

    background:#dfcdbc;

    margin-bottom:35px;

}

/*==================================================
                MENU ITEM
==================================================*/

.menu-item{

    display:flex;

    justify-content:space-between;

    align-items:flex-start;

    gap:25px;

    margin-bottom:35px;

}

.menu-item:last-child{

    margin-bottom:0;

}

/*==================================================
                LEFT CONTENT
==================================================*/

.item-info{

    flex:1;

}

.title-row{

    display:flex;

    align-items:center;

    flex-wrap:wrap;

    gap:12px;

}

.title-row h4{

   
   
    font-size:28px;

    color:#172033;

font-size: 1.125rem;
    line-height: 1.75rem;

    font-weight:500;

  align-items: center;

}

.item-info p{

    margin-top:10px;

    color:#5c6675;

        line-height: 1.625;


    font-family: Inter, system-ui, sans-serif !important;

    font-size: 0.875rem;

}

/*==================================================
                PRICE
==================================================*/

.price{

    font-family: Inter, system-ui, sans-serif !important;
    
    font-size:18px;

    font-weight:700;

    color:#8a5d37;

    white-space:nowrap;

}

/*==================================================
                BADGE
==================================================*/

.badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    background:#c8905f;

    color:#fff;

    padding:7px 15px;

    border-radius:30px;

    font-size:11px;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

}

/*==================================================
                MENU IMAGE
==================================================*/

.menu-image{

    margin-top:80px;

    display:flex;

    justify-content:center;

}

.menu-image img{

    width:100%;

    max-width:1100px;

    border-radius:22px;

    box-shadow:0 20px 45px rgba(0,0,0,.12);

}

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

.menu-button{

    text-align:center;

    margin-top:70px;

}

.menu-button a{

    display:inline-block;

    color:#7d5335;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    padding-bottom:8px;

    border-bottom:2px solid #7d5335;

    transition:.35s;

}

.menu-button a:hover{

    color:#c8905f;

    border-color:#c8905f;

}

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

@media(max-width:1200px){

.menu-wrapper{

grid-template-columns:1fr;

}

}

@media(max-width:768px){

.menu-section{

padding:90px 6%;

}

.section-heading{

margin-bottom:60px;

}

.menu-card{

padding:30px;

}

.menu-card h3{

font-size:30px;

}

.title-row h4{

font-size:22px;

}

.item-info p{

font-size:16px;

}

.price{

font-size:22px;

}

.menu-item{

flex-direction:column;

gap:10px;

}

.price{

align-self:flex-end;

}

.menu-image{

margin-top:60px;

}

}

@media(max-width:500px){

.menu-section{

padding:80px 5%;

}

.section-heading h2{

font-size:36px;

}

.section-heading p{

font-size:12px;

letter-spacing:2px;

}

.menu-card{

padding:22px;

border-radius:18px;

}

.menu-card h3{

font-size:26px;

}

.title-row h4{

font-size:20px;

}

.item-info p{

font-size:15px;

}

.badge{

font-size:10px;

padding:6px 12px;

}

.price{

font-size:20px;

}

.menu-button{

margin-top:50px;

}

}








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

.gallery-section{
    padding:120px 8%;
    background:#1b1b1b;
}

.gallery-heading{
    text-align:center;
    margin-bottom:70px;
}

.gallery-heading h2{
    
    font-size: 3rem;
        line-height: 1;
   font-family: Inter, system-ui, sans-serif !important;

   
    font-weight:300;
    color:#fff;
  
}

.gallery-heading h2 span{
    display:block;
   font-family: "Playfair Display", serif !important;
    font-style:italic;
    color:#c8905f;
}

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

.gallery-item{
    position:relative;
    overflow:hidden;
    border-radius:18px;
    cursor:pointer;
}

.gallery-item img{
    width:100%;
    height:380px;
    object-fit:cover;
    transition:.6s;
    display:block;
}

.gallery-item:hover img{
    transform:scale(1.08);
}

.gallery-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.45);
    display:flex;
    justify-content:center;
    align-items:center;
    opacity:0;
    transition:.4s;
}

.gallery-overlay i{
    width:70px;
    height:70px;
    border-radius:50%;
    background:#fff;
    color:#222;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:24px;
    transform:scale(.6);
    transition:.4s;
}

.gallery-item:hover .gallery-overlay{
    opacity:1;
}

.gallery-item:hover .gallery-overlay i{
    transform:scale(1);
}

/*=========================================
            LIGHTBOX
=========================================*/

.lightbox{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.94);
    display:none;
    justify-content:center;
    align-items:center;
    z-index:99999;
}

.lightbox.active{
    display:flex;
}

.lightbox-img{
    max-width:90%;
    max-height:85vh;
    border-radius:18px;
}

.close-btn{
    position:absolute;
    top:25px;
    right:35px;
    color:#fff;
    font-size:45px;
    cursor:pointer;
    transition:.3s;
}

.close-btn:hover{
    color:#c8905f;
}

.prev,
.next{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    color:#fff;
    font-size:55px;
    cursor:pointer;
    transition:.3s;
    user-select:none;
}

.prev{
    left:40px;
}

.next{
    right:40px;
}

.prev:hover,
.next:hover{
    color:#c8905f;
}

/*=========================================
            SCROLL ANIMATION
=========================================*/

.hidden{
    opacity:0;
    transform:translateY(80px);
    transition:all .9s ease;
}

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

/*=========================================
            TESTIMONIAL
=========================================*/

.testimonial-section{
    background:#fbf4ee;
    padding:120px 8%;
}

.testimonial-heading{
    text-align:center;
    margin-bottom:70px;
}

.stars{
    margin-bottom:20px;
}

.stars i{
    color:#c8905f;
   
    font-size: 4;
        line-height: 1;
    
}



.testimonial-heading h2{
   
    font-weight:300;
    color:#172033;

    font-size: 3rem;
        line-height: 1;
}

.testimonial-heading h2 span{
    display:block;
   font-family: "Playfair Display", serif !important;
    color:#c8905f;
    font-style:italic;
}

.testimonial-heading p{
    color:#666;
    margin-top:20px;
    font-size:18px;
}

.testimonial-container{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:35px;
    max-width:1400px;
    margin:auto;
}

.testimonial-card{
    background:#fff;
    padding:45px;
    border-radius:22px;
    box-shadow:0 20px 50px rgba(0,0,0,.08);
    transition:.4s;
    position:relative;
}

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

.quote{
    position:absolute;
    right:25px;
    top:25px;
}

.quote i{
    font-size:55px;
    color:#ecd7c6;
}

.review{
    margin:40px 0;
   font-family: Inter, system-ui, sans-serif !important;
    line-height: 1.625;
    color:#444;
    font-style:italic;
    font-size:16px;
}

.reviewer h3{
    font-family: Inter, system-ui, sans-serif !important;
    font-size:15px;
    color:#172033;
    margin-bottom:6px;
    font-weight: 700;
}

.reviewer span{
    color:#c8905f;
    font-size:13px;
    letter-spacing:2px;
}

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

@media(max-width:1100px){

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

.testimonial-container{
grid-template-columns:1fr;
}

}

@media(max-width:768px){

.gallery-heading h2,
.testimonial-heading h2{
font-size:48px;
}

.gallery-grid{
grid-template-columns:1fr;
}

.gallery-item img{
height:300px;
}

.prev{
left:20px;
}

.next{
right:20px;
}

}

@media(max-width:500px){

.gallery-heading h2,
.testimonial-heading h2{
font-size:38px;
}

.review{
font-size:16px;
}

.testimonial-card{
padding:30px;
}

}


/*=========================================
            CONTACT SECTION
=========================================*/

.contact-section{
    padding:120px 8%;
    background:#ffffff;
}

.contact-container{
    max-width:1400px;
    margin:auto;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:flex-start;
}

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

.contact-info h2{
    
    font-size: 3rem;
        line-height: 1;
    
   
    font-weight:300;
   margin-bottom: 2rem;
    color:#172033;
   
}

.contact-info h2 span{
    display:block;
   font-family: "Playfair Display", serif !important;
    font-style:italic;
    color:#c8905f;
    font-weight:500;
}

.contact-description{
    font-family: Inter, system-ui, sans-serif !important;
font-size: 1.125rem;
    line-height: 1.75rem;
    color:#5c6776;
    margin-bottom: 3rem;
    max-width:560px;
}

/*=========================================
            CONTACT INFO BOX
=========================================*/

.info-box{
    display:flex;
    gap:22px;
    align-items:flex-start;
    margin-bottom:35px;
}

.info-icon{
    width:60px;
    height:60px;
    border-radius:50%;
    background:#c8905f;
    display:flex;
    justify-content:center;
    align-items:center;
    flex-shrink:0;
}

.info-icon i{
    color:#fff;
    font-size:22px;
}

.info-box h4{
    letter-spacing: 0.1em;
    
   text-transform: uppercase;
font-size: 0.75rem;
    line-height: 1rem;

    color:#172033;
    margin-bottom:8px;
}

.info-box p{
    font-family: Inter, system-ui, sans-serif !important;
    color:#5c6776;
    line-height:1.8;
    font-size:16px;
}

/*=========================================
                MAP
=========================================*/

.map-box{
    margin-top:45px;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.map-box iframe{
    width:100%;
    height:280px;
    border:none;
}

/*=========================================
            CONTACT FORM
=========================================*/

.contact-form-box{
    background:#fdf6ef;
    padding:50px;
    border-radius:24px;
    border:1px solid #edd9ca;
    box-shadow:0 20px 45px rgba(0,0,0,.08);
}

.contact-form-box h3{
    font-size: 1.5rem;
    line-height: 2rem;

   
    font-weight:300;
    color:#172033;
    margin-bottom:35px;
}

.input-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
}

.input-group{
    margin-bottom:25px;
}

.input-group label{
    display:block;
    margin-bottom:10px;
    color:#5f6877;
   
   text-transform: uppercase;
   letter-spacing: 0.1em;
font-size: 0.75rem;
    line-height: 1rem;
    font-weight:700;
}

.input-group input,
.input-group textarea{
    width:100%;
    padding:18px;
    border:1px solid #ddd;
    border-radius:14px;
    background:#fff;
    font-size:17px;
    font-family:'Inter',sans-serif;
    transition:.3s;
    outline:none;
}

.input-group textarea{
    resize:none;
    min-height:170px;
}

.input-group input:focus,
.input-group textarea:focus{
    border-color:#c8905f;
    box-shadow:0 0 0 4px rgba(200,144,95,.15);
}

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

.contact-form-box button{
    width:100%;
    padding:20px;
    border:none;
    border-radius:14px;
    background:#80593d;
    color:#fff;
    font-size:17px;
    font-weight:700;
    letter-spacing:2px;
    cursor:pointer;
    transition:.35s;
}

.contact-form-box button:hover{
    background:#c8905f;
    transform:translateY(-3px);
    box-shadow:0 18px 35px rgba(0,0,0,.15);
}

.contact-form-box button:disabled{
    opacity:.7;
    cursor:not-allowed;
}

/*=========================================
            INPUT STATES
=========================================*/

.contact-form-box input,
.contact-form-box textarea{
    transition:.3s;
}

.contact-form-box small{
    display:block;
    margin-top:8px;
    color:#888;
    font-size:13px;
}

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

@media(max-width:1100px){

.contact-container{
    grid-template-columns:1fr;
}

.contact-info{
    order:2;
}

.contact-form-box{
    order:1;
}

}

@media(max-width:768px){

.contact-section{
    padding:90px 6%;
}

.contact-info h2{
    font-size:50px;
}

.contact-form-box{
    padding:35px;
}

.contact-form-box h3{
    font-size:34px;
}

.contact-description{
    font-size:18px;
}

.input-row{
    grid-template-columns:1fr;
}

.info-box p{
    font-size:16px;
}

.map-box iframe{
    height:240px;
}

}

@media(max-width:500px){

.contact-info h2{
    font-size:38px;
}

.contact-form-box{
    padding:25px;
    border-radius:18px;
}

.contact-form-box h3{
    font-size:28px;
}

.info-icon{
    width:52px;
    height:52px;
}

.info-icon i{
    font-size:18px;
}

.contact-form-box button{
    font-size:16px;
}

.input-group input,
.input-group textarea{
    padding:15px;
}

}



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

footer{
    background:#1f1d1b;
    padding:100px 8% 30px;
}

.footer-container{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1fr;
    gap:60px;
    align-items:flex-start;
}

.footer-col h3{
    color:#fff;
    margin-bottom:25px;
    font-size:24px;
}

.footer-col p,
.footer-col a{
    color:#cfcfcf;
    text-decoration:none;
    line-height:2;
    transition:.3s;
}

.footer-links h4{
    margin-bottom:18px;
    color:#fff;
    font-size:1.05rem;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.footer-contact h4{
    margin-top:24px;
    margin-bottom:14px;
    color:#fff;
    font-size:1.05rem;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.footer-links ul{
    list-style:none;
    padding:0;
    margin:0;
}

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

.footer-links a,
.footer-contact a{
    color:#cfcfcf;
    text-decoration:none;
    font-size:1rem;
    letter-spacing:0.02em;
    transition:.3s;
}

.footer-contact{
    padding-left:16px;
}

.footer-contact p{
    margin-bottom:24px;
}

.footer-contact .contact-heading{
    margin-top:20px;
    margin-bottom:12px;
}

.footer-contact a{
    display:inline-block;
    margin-top:8px;
}

.footer-links a:hover,
.footer-contact a:hover{
    color:#c8905f;
}

.footer-col a:hover{
    color:#c8905f;
}

.footer-logo{
    font-size:36px;
    color:#fff;
    font-family:"Playfair Display", serif;
    margin-bottom:14px;
}

.footer-text{
    margin-top:14px;
    color:#cfcfcf;
    line-height:1.8;
    max-width:360px;
}

.footer-social{
    display:flex;
    gap:15px;
    margin-top:25px;
}

.footer-social a{
    width:45px;
    height:45px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:#2a2826;
    border-radius:50%;
    color:#fff;
    transition:.3s;
}

.footer-social a:hover{
    background:#c8905f;
}


.footer-bottom{
    border-top:1px solid rgba(255,255,255,.08);
    margin-top:70px;
    padding-top:30px;

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

.footer-bottom-links{
    display:flex;
    gap:25px;
}




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

header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:9999;
    transition:.4s ease;
}

header.scrolled{
    background:rgba(18,18,18,.95);
    backdrop-filter:blur(14px);
    box-shadow:0 10px 35px rgba(0,0,0,.15);
}

header.scrolled nav{
    height:78px;
}

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

.primary-btn,
.secondary-btn,
.book-btn{
    transition:.35s;
}

.primary-btn:hover,
.book-btn:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 30px rgba(0,0,0,.18);
}

.secondary-btn:hover{
    transform:translateY(-3px);
}

/*=========================================
        SMOOTH SCROLL
=========================================*/

html{
    scroll-behavior:smooth;
}

/*=========================================
        SCROLLBAR
=========================================*/

::-webkit-scrollbar{
    width:10px;
}

::-webkit-scrollbar-track{
    background:#181818;
}

::-webkit-scrollbar-thumb{
    background:#c8905f;
    border-radius:30px;
}

::-webkit-scrollbar-thumb:hover{
    background:#9d6d45;
}

/*=========================================
        SECTION SPACING
=========================================*/

section{
    position:relative;
}

/*=========================================
        IMAGE OPTIMIZATION
=========================================*/

img{
    max-width:100%;
    display:block;
}

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

@media(max-width:992px){

.footer-container{
    grid-template-columns:1fr;
    gap:50px;
}

.footer-bottom{
    flex-direction:column;
    text-align:center;
}

.footer-bottom-links{
    justify-content:center;
}

}

@media(max-width:768px){

.footer{
    padding:70px 6% 30px;
}

.footer-text{
    font-size:16px;
}

.footer-links a,
.footer-contact p{
    font-size:16px;
}

.logo-main{
    font-size:26px;
}

}

@media(max-width:500px){

.footer-social{
    flex-wrap:wrap;
}

.footer-social a{
    width:46px;
    height:46px;
}

.footer-bottom{
    gap:12px;
}

.footer-bottom p{
    font-size:13px;
}

.footer-bottom-links{
    gap:15px;
}

}





















@media (max-width:768px){

.about-container{
    flex-direction:column;
    gap:40px;
}

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

.about-content h2{
    font-size:2rem;
}

.about-content h2 span{
    font-size:2.3rem;
}

.about-text{
    font-size:16px;
}
}@media(max-width:768px){

.gallery-grid{
grid-template-columns:1fr;
gap:15px;
}

.gallery-item img{
height:240px;
}

}@media(max-width:768px){

.contact-container{
grid-template-columns:1fr;
gap:40px;
}

.contact-form-box{
padding:25px;
}

.contact-info h2{
font-size:2rem;
}


.footer-social{
    justify-content:center;
}

@media(max-width:768px){

.buttons{
    flex-direction:column;
    width:100%;
    align-items:center;
}

.primary-btn,
.secondary-btn{
    width:100%;
    max-width:300px;
    text-align:center;
}

}@media(max-width:992px){

.nav-links{

position:fixed;
top:80px;
left:-100%;
width:100%;
height:calc(100vh - 80px);

background:#111;

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

padding-top:50px;

transition:.4s;

}

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

}



@media (max-width:992px){

.menu-toggle{
    display:block;
}

.nav-links{
    position:fixed;
    top:80px;
    left:-100%;
    width:100%;
    height:calc(100vh - 80px);
    background:#111;
    display:flex;
    flex-direction:column;
    align-items:center;
    padding-top:40px;
    gap:30px;
    transition:.4s;
}

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

}