*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial,sans-serif;
}

body{
background:#000;
overflow-x:hidden;
}

/* NAVBAR */

.navbar{

position:fixed;

top:0;
left:0;

width:100%;

height:110px;

display:flex;

justify-content:space-between;

align-items:center;

padding:0 80px;

background:rgba(0,0,0,.88);

backdrop-filter:blur(10px);

z-index:999;
}

.logo{

display:flex;

align-items:center;

gap:18px;
}

.logo img{

width:80px;

height:80px;

object-fit:contain;
}

.logo h2{

color:#d8b136;

font-size:28px;

font-weight:700;
}

.nav-links{

display:flex;

list-style:none;

gap:50px;
}

.nav-links a{

color:white;

text-decoration:none;

font-size:18px;

font-weight:600;

transition:.3s;
}

.nav-links a:hover{

color:#d8b136;
}


/* HERO */

.hero{

width:100%;

height:100vh;

display:flex;

justify-content:center;

align-items:center;

text-align:center;

position:relative;

overflow:hidden;

padding-top:110px;

/* IMAGE */

background:
linear-gradient(
rgba(0,0,0,.38),
rgba(0,0,0,.55)
),
url("../images/hero.png");

background-size:cover;

background-position:center center;

background-repeat:no-repeat;
}


/* CONTENT */

.hero-content{

width:100%;

max-width:900px;

padding:20px;

transform:translateY(-35px);
}

.hero-content h1{

font-size:88px;

line-height:1.05;

margin-bottom:20px;

color:#d8b136;

text-shadow:
0 0 30px rgba(216,177,54,.55);
}

.hero-content h2{

font-size:62px;

line-height:1.15;

color:#fff;

margin-bottom:25px;
}

.hero-content p{

font-size:20px;

color:#fff;

margin-bottom:50px;
}


/* BUTTON */

.btn-gold{

display:inline-block;

padding:24px 65px;

background:#d8b136;

color:#000;

text-decoration:none;

font-size:20px;

font-weight:800;

border-radius:80px;

box-shadow:
0 0 45px rgba(216,177,54,.85);

transition:.3s;
}

.btn-gold:hover{

transform:translateY(-4px);

box-shadow:
0 0 60px rgba(216,177,54,1);
}


/* MOBILE */

@media(max-width:768px){

.navbar{

height:auto;

padding:20px;

flex-direction:column;

gap:20px;
}

.nav-links{

gap:20px;

flex-wrap:wrap;

justify-content:center;
}

.logo h2{

font-size:20px;
}

.hero{

height:100vh;

padding-top:140px;
}

.hero-content{

width:100%;

max-width:900px;

padding:20px;

transform:translateY(-80px);
}

.hero{

background-position:right center;
}
.hero-content h1{

font-size:50px;
}

.hero-content h2{

font-size:34px;
}

.hero-content p{

font-size:18px;
}

.btn-gold{

padding:18px 40px;

font-size:18px;
}

}
/* SERVICES */

.services{

padding:100px 40px;

background:#000;

text-align:center;

}

.services h2{

font-size:60px;

color:#d8b136;

margin-bottom:60px;

}

.service-grid{

display:flex;

justify-content:center;

align-items:center;

gap:35px;

flex-wrap:wrap;

}

.service-card{

width:320px;

background:#111;

padding:45px 30px;

border-radius:30px;

color:white;

transition:.4s;

box-shadow:
0 0 20px rgba(216,177,54,.12);

}

.service-card:hover{

transform:
translateY(-10px);

box-shadow:
0 0 40px rgba(216,177,54,.35);

}

.service-card{

font-size:60px;

}

.service-card h3{

margin-top:18px;

font-size:32px;

color:#d8b136;

}

.service-card p{

margin-top:14px;

font-size:18px;

color:#ddd;

line-height:1.7;

}

@media(max-width:768px){

.services h2{

font-size:40px;

}

.service-card{

width:100%;
}

}
/* GALLERY */

.gallery{

padding:100px 40px;

background:#050505;

text-align:center;

}

.gallery h2{

font-size:60px;

color:#d8b136;

margin-bottom:60px;

}

.gallery-grid{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:30px;

max-width:1200px;

margin:auto;

}

.gallery-grid img{

width:100%;

height: 450px;


object-fit:cover;

border-radius:25px;


transition:.4s;

}

.gallery-grid img:hover{

transform:scale(1.03);

}

@media(max-width:768px){

.gallery-grid{

grid-template-columns:1fr;

}

}
/* GALLERY */

/* ================= GALLERY FINAL ================= */

.gallery{

padding:100px 8%;

background:#000;

text-align:center;

}

.gallery h2{

font-size:60px;

color:#d8b136;

margin-bottom:60px;

}

.gallery-grid{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:35px;

max-width:1400px;

margin:auto;

}

.gallery-item{

text-align:center;

}

.gallery-item img{

width:100%;

height:420px;

/* IMAGE CUT NA HO */

object-fit:contain;

background:#111;

padding:10px;

border-radius:30px;

display:block;

box-shadow:
0 0 30px rgba(216,177,54,.20);

transition:.35s;

}

.gallery-item img:hover{

transform:scale(1.03);

box-shadow:
0 0 50px rgba(216,177,54,.6);

}

.gallery-item p{

margin-top:18px;

font-size:26px;

font-weight:700;

color:#d8b136;

}

/* MOBILE */

@media(max-width:768px){

.gallery{

padding:70px 20px;

}

.gallery h2{

font-size:60px;

color:#d8b136;

text-align:center;

margin-bottom:50px;

}

.gallery-item img{

height:320px;

}

.gallery-item p{

font-size:22px;

}
.gallery-grid{
grid-template-columns:1fr 1fr;
gap:15px;
padding:20px;
}

.gallery-item img{
width:100%;
height:220px;
object-fit:cover;
border-radius:20px;
}

}
/* REVIEWS */

.reviews{

padding:100px 8%;

background:#080808;

text-align:center;

}

.reviews h2{

font-size:55px;

color:#d8b136;

margin-bottom:60px;

}

.review-grid{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:30px;

}

.review-card{

background:#111;

padding:40px;

border-radius:30px;

color:white;

font-size:22px;

box-shadow:
0 0 30px rgba(216,177,54,.15);

transition:.3s;

}

.review-card:hover{

transform:translateY(-10px);

}

.review-card p{

margin:20px 0;

line-height:1.8;

}

.review-card h4{

color:#d8b136;

}

@media(max-width:768px){

.review-grid{

grid-template-columns:1fr;

}

}
.review-card{

background:linear-gradient(
180deg,
#111,
#0a0a0a
);

padding:55px 35px;

border-radius:35px;

min-height:320px;

display:flex;

flex-direction:column;

justify-content:center;

align-items:center;

box-shadow:
0 0 35px rgba(216,177,54,.18);

transition:.4s;

}

.review-card:hover{

transform:
translateY(-12px);

box-shadow:
0 0 60px rgba(216,177,54,.45);

}

.review-card p{

font-size:18px;

line-height:1.9;

margin:25px 0;

}

.review-card h4{

font-size:34px;

color:#d8b136;

}

.reviews h2{

font-size:68px;

letter-spacing:1px;

}
.contact-strip{

padding:120px 20px;

text-align:center;

background:
linear-gradient(
180deg,
#000,
#111,
#000
);

}

.contact-strip h2{

font-size:62px;

color:#d8b136;

margin-bottom:20px;

}

.contact-strip p{

font-size:24px;

color:white;

margin-bottom:40px;

}

@media(max-width:768px){

.contact-strip h2{

font-size:40px;

}

.contact-strip p{

font-size:18px;

}

}
/* BOOK SECTION */

.booking{

padding:120px 20px;

text-align:center;

background:#050505;

}

.booking h2{

font-size:58px;

color:#d8b136;

margin-bottom:20px;

}

.booking p{

color:white;

font-size:24px;

margin-bottom:45px;

}

.btn-book{

display:inline-block;

padding:22px 65px;

background:#d8b136;

color:#000;

font-size:22px;

font-weight:700;

text-decoration:none;

border-radius:60px;

transition:.3s;

box-shadow:
0 0 40px rgba(216,177,54,.5);

}

.btn-book:hover{

transform:translateY(-6px);

box-shadow:
0 0 60px rgba(216,177,54,.9);

}

@media(max-width:768px){

.booking h2{

font-size:38px;

}

.booking p{

font-size:18px;

}

}
.footer{

padding:50px 20px;

background:#000;

text-align:center;

border-top:1px solid rgba(216,177,54,.25);

}

.footer h2{

color:#d8b136;

font-size:34px;

margin-bottom:25px;

}

.footer p{

color:#ddd;

font-size:18px;

margin-bottom:12px;

}
.footer a{
color:#d8b136;
text-decoration:none;
font-weight:600;
}

.footer a:hover{
color:#fff;
}

.contact-strip{
padding:120px 20px;
text-align:center;
}

.contact-strip h2{
font-size:70px;
color:#d8b136;
margin-bottom:25px;
}

.contact-strip p{
font-size:20px;
color:white;
margin-bottom:30px;
}

.btn-gold{
display:inline-block;
padding:18px 60px;
background:#d8b136;
color:black;
border-radius:50px;
font-size:28px;
font-weight:700;
text-decoration:none;
box-shadow:0 0 40px rgba(216,177,54,.7);
}

.btn-gold:hover{
transform:scale(1.05);
}
.contact-page{
min-height:100vh;
background:#000;
color:white;

display:flex;
flex-direction:column;
align-items:center;
justify-content:center;

text-align:center;
padding:80px 20px;
}

.contact-page h1{
font-size:60px;
color:#d8b136;
margin-bottom:20px;
}
/* CONTACT PAGE FINAL */

.contact-page div{
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
margin-bottom:40px;
}

.map{
margin-top:30px;
}

.address{
color:#d8b136;
font-size:24px;
text-align:center;
margin-top:20px;
font-weight:600;
line-height:1.6;
}

.contact-page p{
font-size:24px;
margin-bottom:30px;
}

.contact-btn{
display:inline-block;

padding:18px 40px;

margin:12px;

background:#d8b136;

color:black !important;

text-decoration:none;

border-radius:50px;

font-size:22px;

font-weight:700;
}

.map iframe{
width:900px;
max-width:95%;

height:420px;

border-radius:25px;

border:none;

margin-top:40px;
}
.map p{
font-size:16px;
color:#d8b136;

text-align:center;

max-width:900px;

margin:20px auto;

line-height:1.7;
}
/* ACADEMY PAGE */

.academy-page{
min-height:100vh;
background:#000;
color:white;

display:flex;
flex-direction:column;

align-items:center;

padding:100px 20px;

text-align:center;
}

.academy-page h1{
font-size:70px;
color:#d8b136;

margin-bottom:20px;
}

.academy-text{
font-size:28px;

margin-bottom:60px;
}

.academy-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(300px,1fr));

gap:40px;

width:100%;

max-width:1200px;
}

.academy-card{

background:#111;

padding:40px;

border-radius:30px;

box-shadow:
0 0 30px rgba(216,177,54,.25);

}

.academy-card h2{

color:#d8b136;

margin-top:20px;

margin-bottom:20px;
}

.academy-card p{

color:#ddd;

font-size:20px;

}

.academy-page .btn-gold{

margin-top:60px;

padding:20px 60px;

display:inline-block;

}
/* SERVICES PAGE */

.services-page{

background:#000;

min-height:100vh;

padding:100px 30px;

text-align:center;

color:white;

}

.services-page h1{

font-size:70px;

color:#d8b136;

margin-bottom:20px;

}

.service-sub{

font-size:28px;

color:white;

margin-bottom:60px;

}

.services-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(300px,1fr));

gap:30px;

max-width:1100px;

margin:auto;

}

.service-box{

background:#111;

padding:40px;

border-radius:30px;

text-align:center;

box-shadow:
0 0 30px rgba(216,177,54,.2);

}

.service-box h2{

color:#d8b136;

font-size:32px;

margin-bottom:20px;

}

.service-box p{

color:#ddd;

font-size:20px;

line-height:1.7;

}

.service-box:hover{

transform:
translateY(-10px);

transition:.3s;

box-shadow:
0 0 50px rgba(216,177,54,.5);

}

.services-page .btn-gold{

display:inline-block;

margin-top:60px;

padding:20px 60px;

}
.services-page{

padding:80px 20px;

}

.services-page h1{

font-size:72px;

margin-bottom:25px;

}

.service-sub{

font-size:18px;

margin-bottom:60px;

}

.services-grid{

max-width:1200px;

}

@media(max-width:1024px){

.services-page h1{
font-size:56px;
}

}

@media(max-width:768px){

.services-page h1{
font-size:42px;
}

.services-grid{
grid-template-columns:1fr;
}

.service-box{
padding:30px;
}

}
.appointment-form{

display:flex;

flex-direction:column;

gap:20px;

width:100%;

max-width:700px;

}

.appointment-form input,
.appointment-form select,
.appointment-form textarea{

padding:20px;

border-radius:15px;

border:none;

font-size:18px;

}

.appointment-form textarea{

height:150px;

}
/* MOBILE RESPONSIVE */
@media (max-width:768px){

.appointment-page{
padding:90px 20px 40px;
}

.appointment-page h1{
font-size:42px;
margin-bottom:10px;
}

.appointment-page p{
font-size:16px;
margin-bottom:25px;
}

.appointment-form{
gap:18px;
}

.appointment-form input,
.appointment-form select,
.appointment-form textarea{
padding:18px;
font-size:16px;
}

.appointment-form textarea{
height:80px;
}

.appointment-form .btn-gold{
padding:14px;
font-size:16px;
}

}
@media (max-width:768px){

.navbar{
padding:15px 20px;
height:auto;
flex-wrap:wrap;
}

.logo-text{
font-size:18px;
}

.nav-links{
display:flex;
gap:15px;
flex-wrap:wrap;
justify-content:center;
}
.hero{
padding-top:120px;
padding-left:20px;
padding-right:20px;
}

.hero-content{
max-width:100%;
}
.nav-links{
gap:10px;
}

.nav-links a{
font-size:12px;
}

.hero h1{
font-size:34px;
line-height:1.1;
}

.hero h2{
font-size:18px;
line-height:1.3;
}

.hero p{
font-size:11px;
}

.btn-gold{
padding:14px 32px;
font-size:18px;
}

}
.footer{
margin-top:80px;
padding:30px;
text-align:center;

color:#ffffff;

background:#050505;

font-size:18px;

border-top:1px solid #222;
}
.home-gallery img{

width:100%;

height:500px;

object-fit:cover;
object-position:center top;

border-radius:25px;
transition:.4s;

}