/* ==========================
   Tschibaklawak Restaurant
   ========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:Arial,Helvetica,sans-serif;
    background:#f6f6f6;
    color:#222;
    line-height:1.6;
}

/* ===== Header ===== */

header{

    position:sticky;
    top:0;
    z-index:1000;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:18px 40px;

    background:#ffd400;

    box-shadow:0 3px 15px rgba(0,0,0,.2);

}

.logoBox{

    display:flex;
    align-items:center;
    gap:18px;

}

.logoBox h1{

    font-size:34px;

}

#subtitle{

    color:#444;

}

nav{

    display:flex;
    gap:30px;

}

nav a{

    text-decoration:none;

    color:#222;

    font-weight:bold;

    transition:.3s;

}

nav a:hover{

    color:white;

}

/* ===== Hero ===== */

.hero{

    height:70vh;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

    background:linear-gradient(135deg,#ffe95e,#ffc107);

}

.heroContent{

    animation:fadeIn 1.2s;

}

.hero h2{

    font-size:55px;

    margin-bottom:20px;

}

.hero p{

    font-size:22px;

    margin-bottom:35px;

}

.hero button{

    padding:16px 32px;

    border:none;

    border-radius:12px;

    background:#222;

    color:white;

    cursor:pointer;

    font-size:20px;

    transition:.3s;

}

.hero button:hover{

    background:white;

    color:#222;

}

/* ===== Bereiche ===== */

section{

    padding:70px 12%;

}

section h2{

    text-align:center;

    margin-bottom:35px;

    font-size:38px;

}

/* ===== Suche ===== */

#search{

    width:100%;

    padding:15px;

    font-size:18px;

    border-radius:12px;

    border:2px solid #ffd400;

    margin-bottom:35px;

}

/* ===== Karten ===== */

#menuContainer{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

    gap:25px;

}

.card{

    background:white;

    border-radius:18px;

    padding:25px;

    box-shadow:0 8px 18px rgba(0,0,0,.15);

    transition:.3s;

}

.card:hover{

    transform:translateY(-8px);

}

.card h3{

    margin-bottom:15px;

    color:#d49b00;

}

.card ul{

    padding-left:20px;

}

.card li{

    margin-bottom:10px;

}

/* ===== Kontakt ===== */

#contact{

    background:#fff6d0;

}

/* ===== Footer ===== */

footer{

    background:#222;

    color:white;

    text-align:center;

    padding:30px;

}

/* ===== Animation ===== */

@keyframes fadeIn{

    from{

        opacity:0;
        transform:translateY(40px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}

/* ===== Handy ===== */

@media(max-width:800px){

header{

    flex-direction:column;

    gap:20px;

}

nav{

    flex-wrap:wrap;

    justify-content:center;

}

.hero h2{

    font-size:36px;

}

.hero p{

    font-size:18px;

}

.logoBox{

    flex-direction:column;

    text-align:center;

}

}

/* Animation */

.card{

opacity:0;
transform:translateY(40px);

}

.card.show{

opacity:1;
transform:translateY(0);

transition:.8s;

}

/* Sprachleiste */

#languageBar{

margin-left:auto;

}

#languageBar button{

margin:4px;
padding:8px 10px;
font-size:18px;
border:none;
border-radius:8px;
cursor:pointer;
background:white;

}

#languageBar button:hover{

background:#222;
color:white;

}

/* Dunkelmodus */

.dark{

background:#222;
color:white;

}

.dark .card{

background:#333;
color:white;

}

.dark header{

background:#caa100;

}