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

body{
    font-family:Arial, sans-serif;
    background:#050505;
    color:white;
    overflow-x:hidden;
}

/* HERO */

.contact-hero{

    position:relative;

    height:55vh;

    background:
    url('../images/homepage/banner.png')
    center/cover no-repeat;

    display:flex;

    align-items:center;
    justify-content:center;

    text-align:center;
}

.contact-overlay{

    position:absolute;
    inset:0;

    background:rgba(0,0,0,0.72);
}

.contact-hero-content{

    position:relative;
    z-index:2;
}

.contact-hero-content span{

    color:#e0b84c;

    letter-spacing:4px;

    font-size:13px;

    font-weight:bold;
}

.contact-hero-content h1{

    font-size:64px;

    margin:20px 0;
}

.contact-hero-content p{

    color:rgba(255,255,255,0.72);
}

/* CONTACT */

.contact-section{

    padding:80px 20px;
}

.contact-container{

    max-width:1400px;

    margin:auto;

    display:grid;

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

    gap:30px;
}

/* CARD */

.contact-card{

    background:
    linear-gradient(
        145deg,
        #07152e,
        #09111d
    );

    border-radius:28px;

    padding:34px;

    border:1px solid
    rgba(224,184,76,0.12);

    transition:0.3s ease;
}

.contact-card:hover{

    border-color:
    rgba(224,184,76,0.45);
}

/* BADGE */

.branch-badge{

    display:inline-flex;

    padding:8px 16px;

    border-radius:999px;

    background:#e0b84c;

    color:#111;

    font-size:13px;

    font-weight:bold;

    margin-bottom:22px;
}

/* TITLE */

.contact-card h2{

    font-size:2.2rem;

    margin-bottom:16px;
}

.contact-address{

    color:rgba(255,255,255,0.72);

    line-height:1.8;

    margin-bottom:30px;
}

/* INFO */

.contact-info{

    display:flex;

    flex-direction:column;

    gap:20px;

    margin-bottom:30px;
}

.info-item{

    display:flex;

    align-items:flex-start;

    gap:14px;
}

.info-item span{

    font-size:1.2rem;
}

.info-item a{

    color:white;

    text-decoration:none;
}

.info-item p{

    color:rgba(255,255,255,0.72);

    line-height:1.6;
}

/* BUTTONS */

.contact-buttons{

    display:flex;

    gap:16px;

    margin-bottom:30px;
}

.primary-btn,
.secondary-btn{

    flex:1;

    display:flex;

    align-items:center;
    justify-content:center;

    padding:16px;

    border-radius:999px;

    text-decoration:none;

    font-weight:bold;

    transition:0.3s ease;
}

.primary-btn{

    background:#e0b84c;

    color:#111;
}

.primary-btn:hover{

    background:#ffd76c;

    transform:translateY(-2px);
}

.secondary-btn{

    border:1px solid
    rgba(224,184,76,0.4);

    color:#e0b84c;
}

.secondary-btn:hover{

    background:#e0b84c;

    color:#111;
}

/* MAP */

iframe{

    border-radius:20px;
}

/* MOBILE */

@media(max-width:992px){

    .contact-container{

        grid-template-columns:1fr;
    }

}

@media(max-width:768px){

    .contact-hero{

        height:40vh;
    }

    .contact-hero-content h1{

        font-size:42px;
    }

    .contact-card{

        padding:24px;
    }

    .contact-card h2{

        font-size:1.7rem;
    }

    .contact-buttons{

        flex-direction:column;
    }

}

/* INTRO */

.contact-intro{

    position:relative;

    min-height:50vh;

    display:flex;

    align-items:center;

    justify-content:center;

    overflow:hidden;

    text-align:center;

    padding:
    140px 20px 100px;

    background:
    linear-gradient(
        rgba(0,0,0,0.58),
        rgba(0,0,0,0.72)
    ),
    url('../images/homepage/homepage 4.1.png');

    background-size:cover;

    background-position:center center;

    background-repeat:no-repeat;

}


.contact-intro-container{

    max-width:900px;

    margin:auto;

    text-align:center;
    
}

.section-tag{

    display:inline-flex;

    padding:8px 18px;

    border-radius:999px;

    background:#e0b84c;

    color:#111;

    font-size:13px;

    font-weight:bold;

    margin-bottom:24px;
}

.contact-intro h2{

    font-size:54px;

    margin-bottom:28px;

    line-height:1.2;
}

.contact-intro p{

    color:rgba(255,255,255,0.72);

    line-height:2;

    font-size:1.08rem;
}

/* WHY */

.why-section{

    padding:20px 20px 100px;
}

.why-container{

    max-width:1400px;

    margin:auto;

    display:grid;

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

    gap:24px;
}

.why-card{

    background:
    linear-gradient(
        145deg,
        #07152e,
        #09111d
    );

    border-radius:28px;

    padding:40px;

    border:1px solid
    rgba(224,184,76,0.12);

    transition:0.3s ease;
}

.why-card:hover{

    transform:translateY(-6px);

    border-color:
    rgba(224,184,76,0.45);
}

.why-icon{

    font-size:2.5rem;

    margin-bottom:24px;
}

.why-card h3{

    font-size:1.5rem;

    margin-bottom:18px;
}

.why-card p{

    color:rgba(255,255,255,0.72);

    line-height:1.8;
}

/* RESERVATION */

.reservation-section{

    padding:40px 20px 100px;
}

.reservation-container{

    max-width:1200px;

    margin:auto;

    background:
    linear-gradient(
        145deg,
        #07152e,
        #09111d
    );

    border-radius:32px;

    padding:60px;

    border:1px solid
    rgba(224,184,76,0.12);

    text-align:center;
}

.reservation-content h2{

    font-size:48px;

    margin-bottom:24px;
}

.reservation-content p{

    max-width:760px;

    margin:auto;

    color:rgba(255,255,255,0.72);

    line-height:2;

    margin-bottom:40px;
}

.reservation-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;
}

/* MOBILE */

@media(max-width:768px){

    .contact-intro h2{

        font-size:38px;
    }

    .why-container{

        grid-template-columns:1fr;
    }

    .reservation-container{

        padding:40px 24px;
    }

    .reservation-content h2{

        font-size:34px;
    }

    .reservation-buttons{

        flex-direction:column;
    }

}