*{
margin:0;
padding:0;
box-sizing: border-box;
}

html{scroll-behavior: smooth;}

body{font-family: Arial, sans-serif;}

.top-bar{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:45px;
    background: #4a4646;
    display:flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

.top-bar a{
    color: white;
    text-decoration: none;
    font-size: 17px;
    font-weight: bold;
}

.top-bar a:hover{color:#f1d17e;}

.hero{
    height: 100vh;
    background-image: url("obrazky/restauracia3.jpeg");
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
 .overlay{
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.45);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: white;
    text-align: center;
 }

 .welcome{
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 22px;
    letter-spacing: 4px;
    margin-bottom: 20px;
 }

 .welcome span{
    width: 90px;
    height: 2px;
    background: white;
 }

 .subtitle{
    font-size: 22px;
    letter-spacing: 3px;
 }

 h1{
    font-family: "Cormorant Garamond", serif;
    font-size: 110px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 20px;
 }

 @media(max-width:768px){
    h1{font-size: 50px;}
 }

 .alacarte{
    background: #161616;
    color: white;
    padding: 100px 12%;
    text-align: center;
 }

 .decor-title{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
    margin: 25px 0;
 }

 .line{
    width: 90px;
    height: 2px;
    background: #f1d17e;
 }

 .decor-title span{
    width: 90px;
    height: 1px;
    background: #f1d17e;
 }

 .decor-title p{
    margin: 0;
    color: #f1d17e;
    letter-spacing: 4px;
    text-transform: uppercase;
 }

 .alacarte h2{
    font-family: "Cormorant Garamond", serif;
    font-size: 85px;
    margin: 30px 0;
 }

 .category{
    max-width: 100%;
    margin: 60px auto;
    text-align: left;
 }

 .category h3{
    font-size: 28px;
    color: white;
 }

 .orange-line{
    width: 500px;
    height: 3px;
    background: #f1d17e;
    margin: 15px 0 30px;
 }

 .food{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 1px solid #4a4646;
    padding: 18px 0;
 }

 .food h4{
    font-size: 22px;
    color: white;
    margin-bottom: 6px;
 }

 .food p{
    color: #aaa;
    font-size: 15px;
 }

 .food strong{
    color: #f1d17e;
    font-size: 20px;
 }

 .price{
    color: #f1d17e;
    font-size: 24px;
    font-weight: bold;
    white-space: nowrap;
    margin-left: 30px;
 }

 .menu-grid{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 70px;
    max-width: 1200px;
    margin: 0 auto;
 }

 .category{
    text-align: left;
 }

 @media (max-width: 768px){
    .menu-grid{grid-template-columns: 1fr;
    gap: 40px;}
 }

 .pizzamenu{
    padding-top: 70px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #161616;
 }

 .decor{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
 }

 .decor span{
    width: 120px;
    height: 2px;
    background: #f1d17e;
 }

 .decor small,
 .decor p{
    color: #f1d17e;
    text-transform: uppercase;
    letter-spacing: 3px;
 }

 .pizzamenu h1{
    font-size: 60px;
    color: white;
    margin: 25px 0;
    font-family: "Cormorant Garamond", serif;
    letter-spacing: 4px;
    text-align: center;

 }

 .menu{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
 }

 .menu-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
 }

 .left-column,
 .right-column{
    display: flex;
    flex-direction: column;
    }

    .podmenu{
        display: flex;
        justify-content: center;
        gap: 60px;
        padding: 25px 0;
        background: #161616;
    }

    .podmenu a{
        text-decoration: none;
        color: #f1d17e;
        font-size: 25px;
        font-weight: bold;
        transition: 0.3s;
        position: relative;
        
    }

    .podmenu a::after{
      content: "";
      position: absolute;
      left: 0;
      bottom: -8px;
      width: 0;
      height: 3px;
      background: #f1d17e;
      transition: 0,3s;
    }

    .podmenu a:hover{
      color: #f1d17e;
    }
    .podmenu a:hover::after{
      width: 100%;
    }

    *{
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    .nadpis-onas{
      padding: 60px 15%;
      text-align: center;
      background: #161616;
 }
   
   .nazov{
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 20px;
      margin-bottom: 20px;
   }
    .nadpis-onas h1{
      font-family: "Cormorant Garamond", serif;
      margin-bottom: 30px;
      color: white;
      font-size: 60px;

    }
    .nadpis-onas p{
      font-size: 20px;
      line-height: 1.8;
      max-width: 900px;
      margin: 0 auto;
      color: white;
    }

    .ciarka{
      width: 120px;
      height: 2px;
      background: #f1d17e;
    }
    .nazov h2{
      color: #f1d17e;
      font-size: 28px;
      font-weight: 400;
      margin: 0;
    }

    .kontakt{
      background: #161616;
      padding: 60px 15%;
      text-align: center;
    }
    .kontakt h1{
      color: white;
      font-size: 60px;
      margin-bottom: 40px;
    }
    .kontakt-info h3{
      color: #f1d17e;
      margin-top: 25px;
      margin-bottom: 10px;
    }
    .kontakt-info p{
      color: white;
      font-size: 20px;
      margin-bottom: 20px;
    }
    .mapa{
      margin-top: 40px;
      border-radius: 15px;
      overflow: hidden;
    }

    .podmenu{
      position: fixed;
      top: 45px;
      left: 0;
      width: 100%;
      z-index: 999;
    }

    .galeria{
      width: 100%;
      padding: 80px 0;
      background: #161616;
      text-align: center;
    }
    .galeria h2{
      font-size: 45px;
      color: #f1d17e;
      margin-bottom: 40px;
    }
    .slider{
      width: 100%;
      max-width: 1100px;
      margin: auto;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 20px;
    }
    .slider img{
      width: 100%;
      max-width: 900px;
      height: 550px;
      object-fit: contain;
      border-radius: 15px;
      box-shadow: 0 8px 25px rgba(0,0,0.3);
    }

    .slider button{
      width: 55px;
      height: 55px;
      border: none;
      border-radius: 50%;
      background: #161616;
      color: white;
      font-size: 28px;
      cursor: pointer;
      transition: .3s;
    }

    .slider button:hover{
      background: #4a4646;
    }

    .facebook{
      position: fixed;
      right: 20px;
      bottom: 20px;
      width: 50px;
      height: 50px;
      background: #1877F2;
      color: white;
      border-radius: 50%;
      display: flex;
      justify-content: center;
      align-items: center;
      text-decoration: none;
      font-size: 26px;
      transition: 0.3s;
    }
    .facebook:hover{
      transform: scale(1.1);
      background: #145dbf;
    }
 

    @media (max-width:768px){

    h1{
        font-size:50px;
    }

    .alacarte h2,
    .kontakt h1,
    .nadpis-onas h1,
    .pizzamenu h1{
        font-size:40px;
    }

    .welcome{
        flex-direction:column;
        gap:10px;
        font-size:18px;
        letter-spacing:2px;
    }

    .welcome span{
        width:60px;
    }

    .subtitle{
        font-size:18px;
    }

    .decor span,
    .ciarka,
    .line{
        width:60px;
    }

    .menu-grid{
        grid-template-columns:1fr;
        gap:40px;
    }

    .menu{
        grid-template-columns:1fr;
        gap:40px;
    }

    .food{
        flex-direction:column;
        gap:10px;
    }

    .price{
        margin-left:0;
        font-size:22px;
    }

    .orange-line{
        width:100%;
    }

    .podmenu{
        flex-wrap:wrap;
        gap:15px;
        padding:15px;
    }

    .podmenu a{
        font-size:18px;
    }

    .slider{
        gap:10px;
    }

    .slider img{
        width:100%;
        height:250px;
    }

    .slider button{
        width:40px;
        height:40px;
        font-size:20px;
    }

    .nadpis-onas,
    .kontakt,
    .alacarte,
    .pizzamenu{
        padding:60px 8%;
    }

    .nadpis-onas p,
    .kontakt-info p{
        font-size:17px;
    }

    iframe{
        width:100%;
        height:300px;
    }

    .facebook{
        width:45px;
        height:45px;
        font-size:22px;
        right:15px;
        bottom:15px;
    }

}

@media(max-width:480px){

    body{
        overflow-x:hidden;
    }

    /* horný panel */
    .top-bar{
        height:40px;
    }

    .top-bar a{
        font-size:14px;
    }


    /* hlavná stránka */
    .hero{
        height:100vh;
        background-position:center;
    }

    .overlay{
        padding:20px;
    }

    h1{
        font-size:42px;
        letter-spacing:1px;
    }

    .welcome{
        font-size:15px;
        letter-spacing:2px;
    }

    .welcome span{
        width:45px;
    }

    .subtitle{
        font-size:16px;
        letter-spacing:2px;
    }


    /* menu */
    .alacarte{
        padding:50px 5%;
    }

    .alacarte h2{
        font-size:38px;
    }

    .decor-title{
        gap:10px;
    }

    .decor-title p{
        font-size:13px;
        letter-spacing:2px;
    }

    .line,
    .decor-title span{
        width:50px;
    }


    .category{
        margin:35px auto;
    }

    .category h3{
        font-size:24px;
    }


    .food h4{
        font-size:18px;
    }

    .food p{
        font-size:14px;
    }

    .price{
        font-size:20px;
    }


    /* pizza menu */
    .pizzamenu{
        padding:50px 5%;
    }

    .pizzamenu h1{
        font-size:38px;
    }

    .decor span{
        width:50px;
    }


    /* podmenu */
    .podmenu{
        top:40px;
        gap:10px;
        padding:12px 5px;
    }

    .podmenu a{
        font-size:15px;
    }


    /* O nás */
    .nadpis-onas{
        padding:50px 5%;
    }

    .nadpis-onas h1{
        font-size:38px;
    }

    .nadpis-onas p{
        font-size:16px;
        line-height:1.6;
    }

    .nazov{
        gap:10px;
    }

    .nazov h2{
        font-size:22px;
    }

    .ciarka{
        width:50px;
    }


    /* kontakt */
    .kontakt{
        padding:50px 5%;
    }

    .kontakt h1{
        font-size:38px;
    }

    .kontakt-info p{
        font-size:16px;
    }


    /* galéria */
    .galeria{
        padding:50px 5%;
    }

    .galeria h2{
        font-size:35px;
    }

    .slider{
        gap:5px;
    }

    .slider img{
        height:220px;
        border-radius:10px;
    }

    .slider button{
        width:35px;
        height:35px;
        font-size:18px;
    }


    /* facebook ikonka */
    .facebook{
        width:40px;
        height:40px;
        font-size:20px;
        right:10px;
        bottom:10px;
    }

}

@media(max-width:480px){
    .podmenu{
        position:static;
    }
}

h6{
    color: white;
    font-size: 28px;
    font-family: "Cormorant Garamond", serif;
    display: flex;
    padding-top: 30px;


}