/*KONTÉNER  */
@media (min-width: 1400px) { .container { max-width: 1320px !important; } .py-20 { padding-top: 120px !important; padding-bottom: 120px !important; } }
@media (min-width: 1920px) { .container { max-width: 1600px !important; } .py-20 { padding-top: 150px !important; padding-bottom: 150px !important; } }

/*CÍMEK*/
.section-title-rust { font-family: 'Libre Baskerville', serif; color: #8f4933; font-size: 2.5rem; }
.section-title-rust em { font-style: italic; color: #99ab6f; }
@media (min-width: 1400px) { .section-title-rust { font-size: 3.2rem !important; } }
@media (min-width: 1920px) { .section-title-rust { font-size: 4rem !important; } }

/*TESTIMONIAL*/
.testimonial-title { font-family: 'Libre Baskerville', serif; color: #8f4933; }
.testimonial-author { font-family: 'Poppins', sans-serif; font-weight: 700; color: #99ab6f; text-transform: uppercase; letter-spacing: 2px; }
.testimonial-text { font-family: 'Libre Baskerville', serif; font-size: 1.25rem; font-style: italic; line-height: 1.8; color: #555; max-width: 900px; margin: 0 auto 30px; }
.testimonial-profil { width: 120px !important; height: 120px !important; border-radius: 50%; object-fit: cover; border: 3px solid #fdfaf8; box-shadow: 0 10px 25px rgba(143, 73, 51, 0.1); margin-bottom: 20px; }
@media (max-width: 767.98px) { .testimonial-container { padding: 0 15px !important; } .testimonial-text { max-width: 100% !important; font-size: 1.05rem !important; } }
@media (min-width: 1400px) { .testimonial-title { font-size: 3.5rem !important; } .testimonial-text { font-size: 1.4rem !important; } .testimonial-profil { width: 150px !important; height: 150px !important; } }
@media (min-width: 1920px) { .testimonial-title { font-size: 4.5rem !important; } .testimonial-text { font-size: 1.6rem !important; max-width: 1100px; } .testimonial-author { font-size: 1.2rem !important; } .testimonial-profil { width: 180px !important; height: 180px !important; } }

/*ÁLTALÁNOS SZÖVEGMÉRET*/
@media (min-width: 1400px) { .welcome-text p, .contact-intro, .service-text, .about-text { font-size: 1.2rem !important; line-height: 1.9; } .contact-label, .info-label { font-size: 1.1rem !important; } }
@media (min-width: 1920px) { .welcome-text p, .contact-intro, .service-text, .about-text { font-size: 1.4rem !important; } .form-control { font-size: 1.2rem !important; padding: 1rem !important; } }

/*ÁRAK SZÖVEG*/
@media (max-width: 767.98px) { .price-item-modern p { text-align: left !important; } .important-text { text-align: left !important; } .important-text br { display: none; } }

/*ÁRAK GRID*/
.price-card-grid { display: grid; grid-template-columns: 1fr; gap: 25px; width: 100%; max-width: 1200px; margin: 0 auto; }
@media (min-width: 768px) { .price-card-grid { grid-template-columns: 1fr !important; gap: 30px !important; } }
@media (min-width: 992px) { .price-card-grid { gap: 40px !important; max-width: 1300px !important; } .price-item-modern { padding: 45px !important; min-height: 250px; } }
@media (min-width: 1920px) { .price-card-grid { gap: 60px !important; max-width: 1600px !important; } .price-item-modern { padding: 60px !important; } .price-header h3 { font-size: 2.2rem !important; } .price-item-modern p { font-size: 1.3rem !important; } }

/*ÁRAK KÁRTYÁK*/
.price-item-modern { background: #ffffff; border: 1px solid #e8c9bc; border-radius: 30px; transition: 0.4s ease; display: flex; flex-direction: column; justify-content: center; }
.price-item-modern:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(143, 73, 51, 0.08); border-color: #99ab6f; }

/*SZOLGÁLTATÁS KÁRTYÁK*/
@media (min-width: 1600px) { .section-services .col-md-6 { flex: 0 0 auto; width: 25% !important; } }

/*BODY TEXT*/
.section-body-text { font-family: 'Libre Baskerville', serif; color: #8f4933; font-size: 1.1rem; line-height: 1.8; opacity: 0.9; margin-bottom: 30px; }
@media (min-width: 1400px) { .section-body-text { font-size: 1.3rem !important; line-height: 1.9 !important; max-width: 90%; } .section-heading-sm { font-size: 1.8rem !important; margin-bottom: 25px !important; } }
@media (min-width: 1920px) { .section-body-text { font-size: 1.5rem !important; line-height: 2 !important; } .section-heading-sm { font-size: 2.2rem !important; } .section-link-green { font-size: 1.1rem !important; letter-spacing: 2px; } }

/*KAPCSOLAT INFO*/
.text-olive { font-family: 'Libre Baskerville', serif; color: #555; font-size: 1.1rem; line-height: 1.6; margin-bottom: 35px !important; }
.contact-info-label { font-family: 'Poppins', sans-serif; font-weight: 700; color: #8f4933; text-transform: uppercase; letter-spacing: 1.5px; font-size: 0.8rem; display: block; margin-bottom: 5px; }
.contact-info-value { font-family: 'Libre Baskerville', serif; color: #555; font-size: 1.1rem; margin-bottom: 25px; display: block; }
@media (min-width: 1400px) { .text-olive { font-size: 1.35rem !important; } .contact-info-label { font-size: 0.95rem !important; } .contact-info-value { font-size: 1.3rem !important; } .btn-contact { padding: 15px 35px !important; font-size: 0.9rem !important; } }
@media (min-width: 1920px) { .text-olive { font-size: 1.5rem !important; line-height: 1.8 !important; } .contact-info-label { font-size: 1.1rem !important; margin-bottom: 10px !important; } .contact-info-value { font-size: 1.5rem !important; margin-bottom: 35px !important; } .btn-contact { padding: 20px 45px !important; font-size: 1rem !important; letter-spacing: 2px !important; } }

/*STORY BLOKKOK*/
.story-block h2 { font-family: 'Libre Baskerville', serif; color: #8f4933; font-size: 2.2rem; margin-bottom: 25px; line-height: 1.3; }
.story-block h2 em { font-style: italic; color: #99ab6f; }
.story-subtitle { font-family: 'Poppins', sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: 2.5px; color: #8f4933; font-size: 0.9rem; margin-bottom: 15px; display: block; opacity: 0.8; }
@media (min-width: 1400px) { .story-block h2 { font-size: 3rem !important; } .story-subtitle { font-size: 1.05rem !important; letter-spacing: 3px !important; } .about-text { font-size: 1.25rem !important; line-height: 1.9 !important; } }
@media (min-width: 1920px) { .story-block h2 { font-size: 3.8rem !important; margin-bottom: 35px !important; } .story-subtitle { font-size: 1.2rem !important; letter-spacing: 4px !important; margin-bottom: 20px !important; } .about-text { font-size: 1.45rem !important; line-height: 2 !important; } .story-block { margin-bottom: 80px !important; } }

/*BLOKK KÉP OVERRIDE*/
.block-img { height: auto !important; object-fit: unset !important; aspect-ratio: unset !important; width: 100% !important; border-radius: 0 !important; }
@media (max-width: 991.98px) { .block-img-mobile-wrap { width: 80%; } }

/*LILLA WELCOME KEP – mobil/tablet fix*/
@media (max-width: 991.98px) {
    .lilla-welcome-img-wrapper { left: 0 !important; max-width: 280px !important; margin: 0 auto !important; height: auto !important; margin-bottom: 0 !important; }
    .lilla-welcome-img-wrapper .img-arc { position: relative !important; width: 100% !important; height: auto !important; left: 0 !important; top: auto !important; transform: none !important; }
}

/*KÉP MARGÓK*/
.about-img-wrapper { margin: 0 auto !important; width: 100% !important; padding-bottom: 0 !important; }
.about-img-wrapper .position-relative { margin-bottom: 0 !important; padding-bottom: 0 !important; }
.about-img-wrapper .img-pill { margin-bottom: 0 !important; max-width: 420px; border-radius: 0 !important; }
@media (max-width: 767.98px) { .about-img-wrapper { width: 80% !important; } .about-img-wrapper .img-pill { max-width: 100%; } }
@media (min-width: 768px) and (max-width: 991.98px) { .about-img-wrapper { width: 100% !important; } .about-img-wrapper .img-pill { max-width: 100%; } }

/*HERO SÁV*/
.hero-strip { width: 100%; min-height: 50px; height: 90px; overflow: hidden; display: block; position: relative; }
.hero-strip-img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (min-width: 768px) { .hero-strip { height: 110px; } }
@media (min-width: 1400px) { .hero-strip { height: 130px; } }
@media (min-width: 1920px) { .hero-strip { height: 150px; } }

/*FOGLALÁSI SÁV*/
.booking-message { font-family: 'Libre Baskerville', serif; font-size: 1.5rem !important; font-style: italic; color: #8f4933; line-height: 1.6; margin-bottom: 35px; text-align: center; }
@media (min-width: 1920px) { .booking-message { font-size: 1.7rem !important; } .btn-eden-prominent { padding: 18px 40px !important; font-size: 0.9rem !important; } .booking-cta-section { padding: 100px 0 !important; } .section-testimonials { padding: 120px 0 !important; } }

/*KAPCSOLAT OLDAL*/
@media (min-width: 992px) { .contact-page .container, .bio-teaser .container, .welcome-section .container { max-width: 1100px !important; } }
@media (min-width: 1920px) { .contact-page .container, .bio-teaser .container, .welcome-section .container { max-width: 1300px !important; } }

/*BIO-TEASER SZÖVEGES OSZLOP*/
@media (min-width: 992px) { .bio-teaser .col-lg-7 { padding-left: 120px !important; } .bio-teaser .bio-text { font-size: 1.2rem !important; } }
@media (min-width: 1920px) { .bio-teaser .col-lg-7 { padding-left: 180px !important; } .bio-teaser .bio-text { font-size: 1.4rem !important; } }

/*WELCOME FOOTER KEP*/
.welcome-section .dual-img-container { max-width: 100% !important; margin-bottom: 0 !important; display: block !important; width: 100%; }
.welcome-section [class*="col-md-5"]:first-child,
.welcome-section [class*="col-md-6"]:first-child { display: flex !important; align-items: center !important; align-self: stretch; }
@media (min-width: 768px) {
    .welcome-section [class*="col-md-7"]:last-child,
    .welcome-section [class*="col-md-6"]:last-child { padding-left: 1.5rem !important; }
}
@media (max-width: 767px) {
    .welcome-section [class*="col-md-5"]:first-child { display: block !important; text-align: center; }
    .welcome-section .dual-img-container { display: inline-block !important; width: 80% !important; max-width: 360px !important; margin-left: 15% !important; margin-right: 0 !important; }
}
@media (min-width: 992px) {
    .welcome-section .dual-img-container { padding: 0 0.5rem 0 0; margin-left: -1.5rem; }
    .welcome-section .img-base-arc { min-height: 520px; object-fit: cover; object-position: top left; }
    .welcome-section [class*="col-lg-7"]:last-child { padding-left: 1rem !important; }
}
