* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


body {

    font-family: Arial, sans-serif;
    background: #ffffff;
    color: #333;
    line-height: 1.6;

}



/* FEJLÉC */

header {

    width:100%;
    padding:20px 8%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    background:white;
    border-bottom:1px solid #eee;
    position:sticky;
    top:0;
    z-index:1000;

}



.logo img {

    width:150px;
    height:auto;

}



nav {

    display:flex;
    gap:25px;

}



nav a {

    text-decoration:none;
    color:#333;
    font-size:15px;

}



nav a:hover {

    color:#7A1F35;

}



#languageBtn {

    background:#7A1F35;
    color:white;
    border:none;
    padding:10px 20px;
    border-radius:30px;
    cursor:pointer;

}





/* HERO */

.hero {

    min-height:90vh;
    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;

    background:

    linear-gradient(
    rgba(255,255,255,0.9),
    rgba(255,255,255,0.9)
    ),

    url("images/beauty.jpg");

    background-size:cover;
    background-position:center;

}



.hero-content {

    max-width:750px;
    padding:40px;

}



.small-title {

    color:#7A1F35;
    text-transform:uppercase;
    letter-spacing:4px;
    font-size:14px;
    margin-bottom:20px;

}



.hero h1 {

    font-family:Georgia, serif;
    color:#7A1F35;
    font-size:80px;
    letter-spacing:5px;

}



.hero h2 {

    font-family:Georgia, serif;
    font-weight:normal;
    font-size:32px;
    margin:20px 0;

}



.hero p {

    font-size:18px;
    margin-bottom:30px;

}





/* GOMB */

.button {

    display:inline-block;
    background:#7A1F35;
    color:white;
    padding:14px 35px;
    border-radius:30px;
    text-decoration:none;

}



.button:hover {

    background:#5d1729;

}





/* SZEKCIÓK */


section {

    padding:80px 10%;
    text-align:center;

}



section h2 {

    font-family:Georgia, serif;
    color:#7A1F35;
    font-size:38px;
    margin-bottom:30px;

}



.section-subtitle {

    color:#7A1F35;
    letter-spacing:4px;
    text-transform:uppercase;
    font-size:14px;
    margin-bottom:15px;

}





/* RÓLAM */


.about-text {

    max-width:800px;
    margin:auto;
    text-align:left;

}



.about-text p {

    margin-bottom:20px;
    color:#555;
    font-size:17px;

}



.about-text strong {

    color:#7A1F35;

}





/* KEZELÉSEK */


.cards {

    display:flex;
    justify-content:center;
    gap:30px;
    flex-wrap:wrap;

}



.card {

    width:320px;
    padding:40px 30px;
    background:white;
    border-radius:25px;

    box-shadow:
    0 15px 40px rgba(0,0,0,0.08);

}



.card h3 {

    color:#7A1F35;
    font-family:Georgia,serif;
    font-size:26px;
    margin-bottom:15px;

}



.card p {

    color:#555;

}






/* ÁRLISTA - BAL SZÖVEG JOBB ÁR */


.price-list {

    max-width:950px;
    margin:40px auto;

}



.price-line {

    display:grid;
    grid-template-columns: 1fr 150px;

    align-items:center;

    padding:35px 0;

    border-bottom:1px solid #ddd;

}



.price-line div {

    text-align:left;

}



.price-line h3 {

    color:#7A1F35;
    font-family:Georgia,serif;
    font-size:23px;
    margin-bottom:10px;

}



.price-line p {

    color:#666;
    max-width:600px;

}



.price-line strong {

    text-align:right;
    color:#7A1F35;
    font-family:Georgia,serif;
    font-size:30px;

}




.price-note {

    max-width:950px;
    margin:30px auto;

    padding:25px;

    background:#faf5f6;

    border-left:5px solid #7A1F35;

    text-align:left;

}





/* GALÉRIA */


.gallery {

    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;

}



.gallery img {

    width:100%;
    height:300px;
    object-fit:cover;
    border-radius:20px;

}





/* KAPCSOLAT */


#contact p {

    font-size:18px;
    color:#555;

}





/* FOOTER */


footer {

    background:#7A1F35;
    color:white;
    text-align:center;
    padding:25px;

}





/* MOBIL */


@media(max-width:900px){


header {

    flex-direction:column;
    gap:20px;

}


nav {

    flex-wrap:wrap;
    justify-content:center;

}



.hero h1 {

    font-size:45px;

}



.hero h2 {

    font-size:24px;

}



.gallery {

    grid-template-columns:repeat(2,1fr);

}


.price-line {

    grid-template-columns:1fr;
    gap:20px;

}



.price-line strong {

    text-align:left;

}


}



@media(max-width:500px){


.gallery {

    grid-template-columns:1fr;

}


}/* KONTAKT */

.contact-box {

    max-width:1100px;
    margin:40px auto;

    display:grid;
    grid-template-columns:1fr 1fr;

    gap:40px;

    align-items:center;

}


.contact-info {

    text-align:left;

    padding:35px;

    background:#faf5f6;

    border-radius:25px;

}



.contact-info h3 {

    color:#7A1F35;

    font-family:Georgia,serif;

    font-size:32px;

    margin-bottom:15px;

}



.contact-info p {

    margin-bottom:15px;

    color:#555;

}



.contact-info a {

    color:#7A1F35;

    text-decoration:none;

}



.instagram-button {

    display:inline-block;

    background:#7A1F35;

    color:white !important;

    padding:12px 25px;

    border-radius:30px;

    margin-top:10px;

}



.map-box {

    overflow:hidden;

    border-radius:25px;

    box-shadow:
    0 15px 40px rgba(0,0,0,0.1);

}



@media(max-width:800px){


.contact-box {

    grid-template-columns:1fr;

}


}/* GALERIE PREMIUM */


.gallery {

    max-width:1100px;

    margin:40px auto;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}



.gallery-item {

    overflow:hidden;

    border-radius:25px;

    background:white;

    box-shadow:
    0 15px 40px rgba(0,0,0,0.08);

}



.gallery-item img {

    width:100%;

    height:350px;

    object-fit:cover;

    display:block;

    transition:0.4s;

}



.gallery-item:hover img {

    transform:scale(1.08);

}



@media(max-width:900px){


.gallery {

    grid-template-columns:repeat(2,1fr);

}


}



@media(max-width:500px){


.gallery {

    grid-template-columns:1fr;

}


.gallery-item img {

    height:400px;

}


}/* TERMIN PREMIUM */


.booking-list {

    max-width:900px;
    margin:40px auto;

    display:flex;
    justify-content:center;
    gap:30px;

    flex-wrap:wrap;

}



.booking-day {

    width:260px;

    padding:30px;

    background:white;

    border-radius:25px;

    box-shadow:
    0 15px 40px rgba(0,0,0,0.08);

}



.booking-day h3 {

    color:#7A1F35;

    font-family:Georgia,serif;

    font-size:25px;

    margin-bottom:20px;

}



.booking-day button {

    width:100%;

    margin:8px 0;

    padding:12px;

    border:none;

    border-radius:25px;

    background:#7A1F35;

    color:white;

    cursor:pointer;

    transition:0.3s;

}



.booking-day button:hover {

    background:#5d1729;

    transform:translateY(-3px);

}




@media(max-width:700px){


.booking-list {

    flex-direction:column;

    align-items:center;

}


}/* LIPPE KÁRTYA JAVÍTÁS */

.card h3 {
    min-height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
}


.card p {
    text-align: center;
}/* GALÉRIA KÉPEK KÖZÉPRE ÉS NAGYOBBRA */

.gallery {

    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
    flex-wrap: wrap;

}


.gallery-item {

    width: 380px;

}


.gallery img {

    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 25px;

}


@media(max-width:700px){

    .gallery-item {

        width: 90%;

    }


    .gallery img {

        height: 400px;

    }

}