*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:Poppins, sans-serif;
background:#111;
color:white;
}

/* HEADER */
header{
position:fixed;
top:0;
width:100%;
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 8%;
background:black;
z-index:999;
}

.logo{
font-size:28px;
font-family:"Playfair Display", serif;
color:#d4af37;
}

nav{
display:flex;
gap:20px;
flex-wrap:wrap;
}

nav a{
color:white;
text-decoration:none;
font-size:14px;
}

/* HERO */
.hero{
height:100vh;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
padding:0 10%;
background:
linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6));
background-size:cover;
background-position:center;
}

.hero h1{
font-size:60px;
font-family:"Playfair Display", serif;
}

.hero p{
margin-top:15px;
font-size:18px;
color:#ddd;
}

/* BUTTONS */
.buttons{
margin-top:30px;
display:flex;
gap:15px;
justify-content:center;
flex-wrap:wrap;
}

.gold,.dark{
padding:14px 30px;
border-radius:40px;
text-decoration:none;
font-weight:600;
}

.gold{
background:#d4af37;
color:black;
}

.dark{
border:1px solid white;
color:white;
}

/* SECTIONS */
section{
padding:90px 10%;
}

h2{
text-align:center;
font-size:38px;
margin-bottom:40px;
font-family:"Playfair Display", serif;
}

/* SERVICES */
.cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:20px;
}

.card{
background:#1c1c1c;
padding:35px;
border-radius:18px;
text-align:center;
font-size:16px;
}

/* FORM */
form{
max-width:500px;
margin:auto;
display:flex;
flex-direction:column;
gap:15px;
}

input,select,button{
padding:16px;
border:none;
border-radius:12px;
font-size:15px;
}

button{
background:#d4af37;
cursor:pointer;
font-weight:600;
}

/* CONTACT */
.whatsapp{
display:inline-block;
margin-top:20px;
padding:14px 28px;
background:#25D366;
color:white;
text-decoration:none;
border-radius:30px;
}

/* MAP */
.map{
margin-top:40px;
}

.map iframe{
width:100%;
height:420px;
border:none;
border-radius:18px;
}

/* FLOATING BUTTON */
.floating{
position:fixed;
bottom:20px;
right:20px;
width:60px;
height:60px;
background:#25D366;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-size:26px;
text-decoration:none;
color:white;
}

/* FOOTER */
footer{
text-align:center;
padding:40px;
color:#aaa;
font-size:14px;
}

/* MOBILE */
@media(max-width:768px){

.hero h1{
font-size:40px;
}

nav{
justify-content:center;
}

section{
padding:70px 6%;
}
}
.map-btn{
display:inline-block;
margin-top:15px;
padding:14px 26px;
background:#4285F4;
color:white;
text-decoration:none;
border-radius:30px;
font-weight:600;
}

.map-btn:hover{
opacity:0.9;
}

.contact{
text-align:center;
line-height:1.8;
}

.logo-area{
display:flex;
align-items:center;
gap:12px;
}

.logo-img{
width:45px;
height:45px;
object-fit:contain;
border-radius:8px;
}

.gallery{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:15px;
}

.gallery img{
width:100%;
height:260px;
object-fit:cover;
border-radius:18px;
transition:0.3s;
}

.gallery img:hover{
transform:scale(1.03);
}
.hero-content{
text-align:center;
display:flex;
flex-direction:column;
align-items:center;
gap:10px;
}

.hero-logo{
width:180px;
height:180px;
object-fit:contain;
filter:drop-shadow(0 0 10px rgba(212,175,55,0.4));
opacity:0.95;
}

.hero h1{
font-size:65px;
font-family:"Playfair Display", serif;
color:#d4af37;
letter-spacing:2px;
}

.hero p{
font-size:18px;
color:#ddd;
}
/* hamburger icon */
.menu-toggle{
display:none;
font-size:30px;
color:white;
cursor:pointer;
}

/* desktop nav */
nav{
display:flex;
gap:20px;
}

/* mobile */
@media(max-width:768px){

.menu-toggle{
display:block;
}

nav{
position:absolute;
top:70px;
left:0;
width:100%;
background:black;
flex-direction:column;
align-items:center;
gap:15px;
padding:20px 0;

/* gizli başlar */
display:none;
}

nav.active{
display:flex;
}

nav a{
padding:10px;
}
}
@media(max-width:768px){

/* navbar üstte kalırken hero içerik aşağı itilsin */
.hero{
padding-top:120px;
}

/* hero logo küçült */
.hero-logo{
width:100px;
height:100px;
margin-top:10px;
}

/* başlık da biraz küçülsün */
.hero h1{
font-size:38px;
}

/* nav üstte taşmasın diye biraz sıkıştıralım */
header{
padding:15px 6%;
}
}