/* PERFORMANCE OPTIMIZED: Load only needed font weights and use font-display:swap */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,700;1,400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,400;0,600;0,700;0,900&display=swap');

/* General Style */

*,
*::before,
*::after {
    box-sizing: border-box;
}

* {
    margin: 0;
    padding: 0;
    font: inherit;
}

:root {
    --red: #b9220b;
    --light-red: #e62f2f;
    --yellow: #fea702;
    --almost-black: #2b2b2b;
    --green: #56bd82;
    --beige: #fffaee;
    --grey: #d3d3d3;
}


/* Typography and fonts */
/* IBMPlexSans - LOCAL FONTS DISABLED TO PREVENT 404 ERRORS */
/*
@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-Thin.ttf") format("truetype");
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-ThinItalic.ttf") format("truetype");
    font-weight: 100;
    font-style: italic;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-ExtraLight.ttf") format("truetype");
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-ExtraLightItalic.ttf") format("truetype");
    font-weight: 200;
    font-style: italic;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-LightItalic.ttf") format("truetype");
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-Italic.ttf") format("truetype");
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-MediumItalic.ttf") format("truetype");
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-SemiBoldItalic.ttf") format("truetype");
    font-weight: 600;
    font-style: italic;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: "IBMPlexSans";
    src: url("assets/fonts/IBM_Plex_Sans/IBMPlexSans-BoldItalic.ttf") format("truetype");
    font-weight: 700;
    font-style: italic;
}

/* Poppins */
@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-Thin.ttf") format("truetype");
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-ThinItalic.ttf") format("truetype");
    font-weight: 100;
    font-style: italic;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-ExtraLight.ttf") format("truetype");
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-ExtraLightItalic.ttf") format("truetype");
    font-weight: 200;
    font-style: italic;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-LightItalic.ttf") format("truetype");
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-Italic.ttf") format("truetype");
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-MediumItalic.ttf") format("truetype");
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-SemiBoldItalic.ttf") format("truetype");
    font-weight: 600;
    font-style: italic;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-BoldItalic.ttf") format("truetype");
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-ExtraBold.ttf") format("truetype");
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-ExtraBoldItalic.ttf") format("truetype");
    font-weight: 800;
    font-style: italic;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-Black.ttf") format("truetype");
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: "Poppins";
    src: url("assets/fonts/Poppins/Poppins-BlackItalic.ttf") format("truetype");
    font-weight: 900;
    font-style: italic;
}

*/
/* END COMMENTED LOCAL FONTS */

/* BrushScriptMT */
@font-face {
    font-family: "BrushScriptMT";
    src: url("assets/fonts/BrushScriptMT/brush-script-mt-kursiv.ttf") format("truetype");
    font-style: normal;
}

@font-face {
    font-family: "BrushScriptMT";
    src: url("assets/fonts/BrushScriptMT/brush-script-mt.ttf") format("truetype");
    font-style: italic;
}

.light-bg {
    background: #F5F5F5;
}

body {
    background: #F5F5F5 !important;
}

.image-container {
    position: relative;
    width: 100%;
}

.image-text {
    width: 90%;
    font-family: Poppins;
    font-size: 32px;
    font-weight: 900;
    line-height: 40px;
    letter-spacing: 0em;
    text-align: center;
    position: absolute;
    top: 80%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    /* Adjust text color as needed */
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);
    /* Adjust shadow properties as needed */

}

.footer address a,
.footer .adress-complete,
.footer .footer-menu ul li a,
.footer address .contact-item,
.footer h3 span,
.footer p,
.footer .fa-phone-alt,
.footer .copyright .copy_content a {
    color: #2B0808 !important;
}


.footer {
    border-top: 0px;
}

.footer .main-footer {
    padding: 50px 0 50px;
    background: #F7F7F7;
}

.copyright {
    background: #F7F7F7 !important;
}


#info-text {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    border: 0px;
    background: url(https://dev2.new-devpubapp.roweb.ro/wp-content/themes/understrap-child-master/images/bg_v2.png) center/cover no-repeat, #ffffff !important;
}

h1 {
    color: var(--almost-black);
    font-family: Poppins;
    font-size: 40px;
    font-weight: 900;
    line-height: 48px;
}

h2 {
    color: var(--almost-black);
    font-family: Poppins;
    font-size: 32px;
    font-weight: 900;
    line-height: 40px;
}

h3 {
    color: var(--almost-black);
    font-family: Poppins;
    font-size: 24px;
    font-weight: 900;
    line-height: 32px;
    margin-bottom: 24px;
}

h3.text-center {
    margin-bottom: 43px;
    font-size: 32px;
}

p {
    color: rgba(43, 43, 43, 0.64);
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 26px;
}

@media (max-width: 425px) {
    h1 {
        font-size: 24px;
        line-height: 32px;
    }

    h2 {
        font-size: 24px;
        line-height: 32px;
    }

    h3 {
        font-size: 18px;
        font-weight: 900;
        line-height: 24px;
    }

    p {
        font-size: 14px;
        line-height: 20px;
    }
}

/* General classes */
.wrapper {
    max-width: 1172px;
    margin: 0 auto;
    padding: 10px 20px;
}

.page-template-rezervariv2>.container {
    padding: 40px 20px;
}

.text-light * {
    color: #ffffff;
}

.text-red {
    color: var(--red);
}

.text-center {
    text-align: center;
}

.buttons_card {
    display: inline-flex;
}

.button-wrapper {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

button {
    border-radius: 8px;
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    border: none;
    padding: 12px 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    width: fit-content;
}

.button-wrapper a {
    text-decoration: none;
}

.wpcf7-submit {
    background: var(--red);
    color: #fff;
}

button.red-button {
    background: var(--theme-main-color, var(--red));
    color: #fff;
}

button.light-red-button {
    background: var(--red);
    color: #fff;
}

.menu-primary-menu-container li:last-child {
    /* background: #FFFFFF;
    border-radius: 8px;
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    border: none;
    padding: 12px 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    width: fit-content; */
}

.header-type-simple ul#main-menu li:last-child a {
    background-color: #fff;
    color: #000;
    padding: 12px 13px;
    border-radius: 10px;
}

.menu-primary-menu-container li {
    padding-top: 12px;
}

button.yellow-button {
    background: #FFFFFF;
    color: black;
}

button.white-button {
    background: #ffffff;
    color: var(--red);
}

button.green-button {
    background: var(--green);
    color: #ffffff;
}

button.transparent-button {
    border-radius: 8px;
    border: 1px solid #000;
    color: var(--almost-black);
    background: transparent;
}

@media (max-width: 620px) {
    .image-text {
        font-size: 20px;
        width: 80%;
        line-height: 25px;
        top: 75%;
    }

    .button-wrapper {
        display: flex;
        justify-content: center;
        text-align: center;
        align-items: center;
        flex-wrap: wrap;
        gap: 16px;
    }
}

@media (max-width: 425px) {
    .wpcf7-submit {
        width: 100%;
        margin: 10px auto;
    }

    .button-wrapper.full-width-mobile {
        display: block;
    }

    .button-wrapper.full-width-mobile button {
        width: 100%;
        margin: 10px auto;
    }
}

/* Slider dots */
.slick-dots {
    display: flex;
    justify-content: center;

    margin: 0;
    padding: 1rem 0;

    list-style-type: none;
}

.slick-dots li {
    margin: 0 0.25rem;
}

.slick-dots button {
    display: block;
    width: 1rem;
    height: 1rem;
    padding: 0;

    border: none;
    border-radius: 100%;
    background-color: var(--grey);

    text-indent: -9999px;
}

.slick-dots li.slick-active button {
    background-color: var(--theme-main-color, var(--red));
}

/* Navigation */
.navigation-section {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.nav-actions ul {
    list-style: none;
    display: flex;
    gap: 40px;
    margin-bottom: 0px;
}

.nav-actions {
    gap: 48px;
    align-items: center;
    height: 30px;
    display: inline-block;
    margin-top: 0px;
    z-index: 99;
}

.nav-actions ul>li a {
    color: #fff;
    text-decoration: none;
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
}

.nav-toggle {
    display: none;
    cursor: pointer;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.nav-toggle span {
    display: block;
    background: #ffffff;
    height: 2px;
    width: 20px;
    border-radius: 2px;
    position: relative;
}

.nav-toggle span::before,
.nav-toggle span::after {
    content: "";
    height: 2px;
    width: 20px;
    border-radius: 2px;
    position: absolute;
    background: #ffffff;
}

.nav-toggle span::before {
    bottom: 7px;
}

.nav-toggle span::after {
    top: 7px;
}

@media (max-width: 1120px) {
    .navigation-section img.logo {
        width: 48.927px;
        height: 50.427px;
    }

    /* Raise wrapper above .header-two-cards (z-index: 2) so dropdown isn't covered */
    /* .header .wrapper {
        z-index: 3;
    } */

    .nav-actions {
        display: flex;
        align-items: center;
        height: auto;
        position: relative;
    }

    .nav-actions nav,
    .nav-actions .button-wrapper {
        display: none;
    }

    /* Show nav when menu-open class is toggled via JS */
    .nav-actions.menu-open nav {
        display: block;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: auto;
        z-index: 9999;
        width: 80vw;
        max-width: 360px;
        background: #fff;
        box-shadow: -5px 0 20px rgba(0, 0, 0, 0.15);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        padding-top: 20px;
    }

    .nav-actions.menu-open nav ul {
        display: block;
        background-color: #fff;
        padding: 0;
        box-shadow: none;
        border-radius: 0;
        gap: 0;
    }

    .nav-actions.menu-open nav ul>li {
        padding: 0;
        border-bottom: 1px solid #eee;
    }

    .nav-actions.menu-open nav ul>li:last-child {
        border-bottom: none;
        /* Reset button-like styling on mobile */
        background: transparent;
        border-radius: 0;
        display: block;
        width: 100%;
    }

    .nav-actions.menu-open nav ul>li a {
        color: #2b2b2b;
        padding: 14px 20px;
        display: block;
        width: 100%;
        font-size: 16px;
        font-weight: 600;
    }

    /* Mobile submenu: hidden by default, inline in flow when toggled */
    .nav-actions.menu-open .sub-menu {
        display: none;
        list-style: none;
        position: static;
        background: #f9f9f9;
        box-shadow: none;
        padding: 0;
        margin: 0;
        min-width: unset;
    }

    .nav-actions.menu-open .sub-menu.submenu-open {
        display: block;
    }

    .nav-actions.menu-open .sub-menu>li {
        border-bottom: 1px solid #eee;
    }

    .nav-actions.menu-open .sub-menu>li:last-child {
        border-bottom: none;
    }

    .nav-actions.menu-open .sub-menu>li a {
        font-size: 15px;
        font-weight: 400;
        padding: 12px 20px 12px 40px;
        color: #555;
    }

    /* Arrow toggle for parent items with children */
    .nav-actions.menu-open .menu-item-has-children {
        position: relative;
    }

    .nav-actions.menu-open .menu-item-has-children>.submenu-toggle {
        position: absolute;
        right: 10px;
        top: 0;
        width: 44px;
        height: 48px;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 1;
    }

    .nav-actions.menu-open .menu-item-has-children>.submenu-toggle::after {
        content: "";
        border: solid #333;
        border-width: 0 2px 2px 0;
        display: inline-block;
        padding: 3px;
        transform: rotate(45deg);
        transition: transform 0.2s ease;
    }

    .nav-actions.menu-open .menu-item-has-children>.submenu-toggle.open::after {
        transform: rotate(-135deg);
    }

    .nav-toggle {
        display: flex;
    }
}

/* Mobile menu overlay backdrop + close button + body scroll lock */
.menu-overlay {
    display: none;
}

body.menu-overlay-open {
    overflow: hidden;
}

@media (max-width: 1120px) {
    .menu-overlay {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.4);
        z-index: 11;
    }

    .menu-close-btn {
        position: absolute;
        top: 10px;
        right: 10px;
        width: 44px;
        height: 44px;
        background: none;
        border: none;
        font-size: 28px;
        line-height: 1;
        color: #333;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        border-radius: 0;
        z-index: 10;
    }
}

/* Hide submenu toggle arrow on desktop */
.submenu-toggle {
    display: none;
}

/* Desktop submenu - hover dropdown (only above 1120px) */
@media (min-width: 1121px) {
    .nav-actions ul>li.menu-item-has-children {
        position: relative;
    }

    .nav-actions ul .sub-menu {
        display: none;
        list-style: none;
        position: absolute;
        top: 100%;
        left: 0;
        background: #fff;
        padding: 15px 20px;
        min-width: 220px;
        box-shadow: 2px 5px 15px 0 rgb(0 0 0 / 12%);
        border-radius: 4px;
        z-index: 999;
        margin: 0;
    }

    .nav-actions ul>li.menu-item-has-children:hover>.sub-menu {
        display: block;
    }

    .nav-actions ul .sub-menu>li {
        padding: 8px 0;
        border-bottom: 1px solid #eee;
    }

    .nav-actions ul .sub-menu>li:last-child {
        border-bottom: none;
    }

    .nav-actions ul .sub-menu>li a {
        color: #333 !important;
        font-size: 16px;
        font-weight: 600;
        white-space: nowrap;
    }

    .nav-actions ul .sub-menu>li a:hover {
        color: var(--red, #e74c3c) !important;
    }
}

/* Header */
.header {
    position: relative;
    z-index: 22;
}

header.landing-active::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    background: var(--theme-intro-bg-image) center/cover no-repeat, var(--theme-main-color, var(--red));
}

.header-type-simple.landing-active~#header-simple h1.text-light.text-center {
    color: #000 !important;
}

.home .header::after {
    bottom: 20%;
}

.header h1 {
    margin: 20px auto;
    max-width: 600px;
}

.header .subheader {
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 32px;
    letter-spacing: 0em;
    text-align: center;
    max-width: 600px;
    margin: auto;
}

.home .header {
    overflow: visible;
}

.header-two-cards {
    max-width: 1130px;
    display: flex;
    gap: 32px;
    margin: 40px auto;
    flex-wrap: wrap;
    /* Schimbat de la nowrap la wrap */
    justify-content: center;
    top: 70px;
}

.card {
    flex: 0 0 calc(50% - 16px);
    /* Lățimea pentru fiecare card */
    /* -16px este jumătate din gap pentru a compensa spațiul */
}

.header-two-cards .card {
    display: flex;
    flex-direction: column;
    border-radius: 10px;
    background: #fff;
    gap: 16px;
    box-shadow: 0px 15px 35px 0px rgba(0, 0, 0, 0.1);
    padding: 40px;
    justify-content: space-between;

}

/* Header with two cols */
.header-two-cards .card h3 {
    margin-bottom: 0;
    max-width: 480px;
}

.header-two-cards .card .location-wrapper {
    display: flex;
    gap: 24px;
    align-items: center;
}

.header-two-cards .card .address {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
}

.header-two-cards .card .red-label {
    border-radius: 4px;
    background: rgba(185, 34, 11, 0.16);
    padding: 2px 12px;
    width: fit-content;
}

.header-two-cards .card .red-label p {
    color: var(--red);
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 32px;
}

@media all and (max-width: 990px) {

    .complex-landing-layout header.header.clear.header-type-full.landing-active~.wrapper {
        padding-top: 150px;
    }

    body.complex-landing-layout .landing-hero {
        padding-top: 200px !important;
    }

    header.header.header-type-simple.landing-active.light-bg.has-video-bg .wrapper.landing-hero {
        padding-top: 50px !important;
    }

    header.header.clear.header-type-full.landing-active .row.align-items-center.justify-content-between {
        display: none;
    }

    .complex-landing-layout video.header-video-bg,
    .video-overlay {
        height: 60vh !important;
    }

    div#woocommerce-wrapper {
        padding: 0;
    }

    .col-md-12 {
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }

    .col-md-6 {
        width: 50%;
        padding-left: 15px;
        padding-right: 15px;
    }
}


@media (max-width: 768px) {
    .header-two-cards {
        grid-template-columns: 1fr;
    }

    .header-two-cards .card .red-label p {
        font-size: 16px;
        font-weight: 700;
        line-height: 24px;
    }
}

@media (max-width: 620px) {
    .header-two-cards .button-wrapper:has(p) {
        flex-direction: column;
    }
}

/* Header one col */
.header-one-cards {
    background: #fff;
    box-shadow: 0px 15px 35px 0px rgba(0, 0, 0, 0.1);
    padding: 33px;
    margin: 40px auto;
    border-radius: 10px;
    max-width: 771px;
}

.header-one-cards .two-cols:has(.contact-info) {
    gap: 20px;
}

.header-one-cards .contact-info {
    display: grid;
    grid-template-columns: 20px 1fr;
    gap: 20px;
}

.header-one-cards .contact-info p.text-emphasize {
    color: var(--almost-black);
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
    margin-bottom: 0px;
}

.header-one-cards .contact-info a {
    color: var(--red);
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    text-decoration: none;
}

.contact-info p {
    margin-bottom: 5px;
}

.custom-blog-article .entry-meta,
#single-wrapper .entry-meta,
.comments-link {
    display: none !important;
}

.contact-info .call_action {
    margin-bottom: 15px !important;
}

.header-one-cards .two-cols {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

#archive-wrapper {
    max-width: 695px;
    margin: 0 auto 30px;
    width: 100%;
    background: #FFFFFF;
    -webkit-box-shadow: 0px 0px 25px rgb(0, 0, 0, .05);
    box-shadow: 0px 0px 25px rgb(0, 0, 0, .05);
    border-radius: 10px;
    padding: 30px;
}

@media (max-width: 768px) {
    .header-one-cards .two-cols {
        grid-template-columns: 1fr;
        gap: 0px;
    }
}

/* Form style */
form .form-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 20px 0 0 0;
}

form label,
form p {
    color: #2b2b2b;
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
}

form.wpcf7-form label,
form.wpcf7-form p {
    width: 100% !important;
}

form input {
    border-radius: 8px;
    border: 1px solid #333;
    background: #fff;
    padding: 10px;
    opacity: 0.8;
    font-family: 'IBM Plex Sans', sans-serif;
    padding: 16px 10px;
    padding-right: 20px;
    font-weight: normal;
}

form textarea {
    font-family: 'IBM Plex Sans', sans-serif;
    width: 100%;
    height: 150px;
    padding: 12px 0px;
    box-sizing: border-box;
    border-radius: 8px;
    border: 1px solid #333;
    border-radius: 4px;
    color: rgba(43, 43, 43, 0.64);
    background-color: #fff;
    font-size: 16px;
    resize: none;
    padding-left: 10px;
    font-weight: normal;
}

form select {
    border-radius: 8px;
    border: 1px solid #333;
    padding: 16px 10px;
    background: #fff;
    color: rgba(43, 43, 43, 0.64);
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
    width: 100%;
}

form.wpcf7-form {
    margin-top: 30px;
}

form.wpcf7-form input:not([type="submit"]),
form.wpcf7-form textarea {
    width: 100%;
    font-size: 14px;
    line-height: 20px !important;
    margin-top: 5px;
    border: 1px solid rgba(51, 51, 51, 0.15) !important;
    min-height: 48px;
    padding: 8px 12px;
    border-radius: 10px;
    transition: border-color 0.3s ease;
}

form.wpcf7-form input:not([type="submit"])::placeholder,
form.wpcf7-form textarea::placeholder {
    color: #c2c2c2;
}

.wpcf7-file {
    width: 100%;
}

.wpcf7-submit {
    border-radius: 8px;
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    border: none;
    padding: 12px 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    width: fit-content;
}

form .button-wrapper {
    margin-top: 30px;
    justify-content: right;
}

::placeholder {
    color: var(--almost-black);
}

.custum-file-upload {
    height: 72px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: space-between;
    gap: 20px;
    cursor: pointer;
    justify-content: center;
    border: 2px dashed #cacaca;
    background-color: rgba(255, 255, 255, 1);
    padding: 1.5rem;
    border-radius: 10px;
    box-shadow: 0px 48px 35px -48px rgba(0, 0, 0, 0.1);
    margin: 0 auto 20px auto;
}

.custum-file-upload input {
    display: none;
}

.custum-file-upload .upload-section {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.custum-file-upload .upload-section .group {
    display: flex;
    gap: 10px;
    align-items: center;
}

.custum-file-upload .upload-section .upload-button {
    color: var(--red);
    font-family: 'IBM Plex Sans', sans-serif;
    background: transparent;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
    border: 2px solid var(--red);
    border-radius: 10px;
    padding: 10px;
}

.custom-footer {
    z-index: 99999999;
}


@media (max-width: 768px) {
    .custum-file-upload .upload-section {
        gap: 20px;
        flex-direction: column;
    }

    .custum-file-upload .upload-section .upload-button {
        width: 100%;
    }

    .custum-file-upload {
        height: 150px;
    }
}

/* Products slider */
.prod-slider {
    width: 100%;
}


/*About us*/
.about-us {
    position: relative;
    z-index: 1;
}

.about-us h1 {
    color: #fff;
    font-family: BrushScriptMT;
    font-size: 58px;
    font-style: italic;
    font-weight: 400;
    line-height: normal;
    margin: 20px auto;
}

.about-us img {
    width: 100%;
    height: auto;
    flex: 0 0 45%;
    max-width: 600px;
}

.about-us::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 10%;
    left: 0;
    right: 0;
    bottom: 10%;
    background: var(--theme-about-bg-image) center/cover no-repeat, var(--theme-second-color, var(--yellow));
}

.about-us .wrapper {
    display: flex;
    gap: 40px;
    justify-content: space-between;
    align-items: center;
    padding: 40px 30px;
}

@media (max-width: 1120px) {
    .about-us::after {
        bottom: 0;
    }

    .about-us .wrapper {
        flex-direction: column;
    }

    .about-us h1 {
        font-size: 40px;
        font-style: italic;
        font-weight: 400;
        line-height: normal;
    }
}

/* Food gallery */
.food-gallery {
    padding: 60px 0 60px 0;
}

.food-gallery div.slick-slide {
    position: relative;
    overflow: hidden;
    display: block;
    padding: 20px;
}

.food-gallery .images-wrapper img {
    width: 100%;
    height: 360px;
    border-radius: 10px;
    object-fit: cover;
    display: block;
    overflow: hidden;
}

/* Footer */
.footer {
    background: #2b2b2b;
}

.footer p {
    color: rgba(255, 255, 255, 0.6);
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    margin: 10px 0;
}

.footer p.text-emphasize {
    color: #fff;
    font-family: Poppins;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    margin-bottom: 20px;
}

.footer .wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.footer .social-media {
    display: flex;
    gap: 16px;
    align-items: center;
    margin-top: 30px;
}

.footer .social-media img {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    padding: 8px;
}

.footer .links ul {
    list-style-type: none;
}

.footer .links ul>li a {
    color: rgba(255, 255, 255, 0.6);
    text-decoration: none;
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 40px;
}

.footer .contact a {
    color: rgba(255, 255, 255, 0.6);
    text-decoration: none !important;

}

.copyright {
    background: #252525;
    text-align: center;
    padding: 20px 0;
}

.copyright p {
    color: rgba(255, 255, 255, 0.48);
}

.wpcf7-response-output {
    /* display: none; */
}

.screen-reader-response {
    margin-top: 20px;
    text-align: center;
}

.screen-reader-response p {
    color: #000;
    font-weight: bold;
}

.solutie_horeka img {
    position: relative;
    bottom: 0;
    max-width: 130px;
    height: auto;
    margin-left: 15px;
    vertical-align: middle;
}

@media (max-width: 768px) {
    .footer .wrapper {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    form input {
        width: 100%;
    }
}

.screen-reader-response ul {
    display: none !important;
}

.wpcf7-not-valid {
    background: rgb(255 65 65 / 20%) !important;
    border: 1px solid rgb(255 65 65 / 20%) !important;
}

.screen-reader-response {
    margin-top: 5px !important;
    text-align: center;
}

.termscontact {
    display: flex;
    justify-content: flex-end;
}

.termscontact input {
    margin-right: 5px;
}

.termeni ul {
    color: rgba(43, 43, 43, 0.64);
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 26px;
    margin-left: 20px;
}

.black_theme .main-footer {
    background: #2b2b2b !important;
}

.black_theme address a,
.black_theme .adress-complete,
.black_theme .footer-menu ul li a,
.black_theme h3 span,
.black_theme p,
.black_theme .fa-phone-alt,
.black_theme,
.black_theme strong,
.black_theme .copyright .copy_content a {
    color: #fff !important;
}

.black_theme .copyright {
    background: #2b2b2b !important;
}

@media (max-width: 1120px) {
    .header::after {
        bottom: 20%;
    }

    .header-two-cards .card {
        min-width: 90%;
    }

    .image-container {
        position: relative;
        width: auto;
    }

    .menu-primary-menu-container li:last-child {
        padding: 0 !important;
        background: transparent !important;
        border-radius: 0 !important;
        display: block !important;
        width: 100% !important;
        border: none !important;
    }

    .menu-primary-menu-container li {
        padding-top: 0;
    }
}


#despre-section .inner-content h2 {
    color: #000;
}

#despre-section .inner-content p {
    color: #000;
}

.rtb-booking-form {
    max-width: 100%;
}

.rezervariv2 .header-one-cards {
    padding: 0px;
}

.slick-slide img {
    display: block;
    border-radius: 10px;
}

.slick-slide a {
    display: block;
    padding-left: 17.5px;
    padding-right: 17.5px;
}

.text-light~h3,
.text-light~p {
    color: #ffffff;
}

/* ========================================
   DYNAMIC THEME COLORS - CSS Custom Properties
   Static rules moved from inline styles for better caching
   ======================================== */

/* Additional dynamic color applications */
.custom-footer #backtotop {
    background-color: var(--theme-main-color, var(--red));
}

button.yellow-button {
    color: var(--theme-main-color, var(--red));
}

.footer address .contact-item .social-icon i {
    color: var(--theme-main-color, var(--red));
}

div#despre-section {
    padding: 40px 20px;
}

/* Mobile active menu item color */
@media only screen and (max-width: 920px) {

    .current_page_item a,
    .current_page_item:focus a,
    .current_page_item:hover a {
        color: var(--theme-main-color, var(--red));
    }
}

/* Video Background Styles - Static (no dynamic colors) */
.header.has-video-bg {
    position: relative;
    background: transparent;
}

.header.has-video-bg::after,
.complex-landing-layout video.header-video-bg::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 45vh;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1;
}

.header.has-video-bg .header-two-cards {
    position: relative;
    z-index: 2;
}

.video-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
}

.complex-landing-layout video.header-video-bg,
.video-overlay {
    height: 50vh;
    min-height: 650px;
}

.header>.wrapper {
    position: relative;
    overflow: visible;
}

.header-video-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

.header>.wrapper:first-child {
    position: relative;
    z-index: 40 !important;
    /* cel mai sus */
}

.header .video-container {
    position: absolute;
    inset: 0;
    /* ocupă tot header-ul */
    z-index: 10;
    /* cel mai jos */
}

.header .wrapper.landing-hero {
    position: relative;
    z-index: 30 !important;
}

.header .header-two-cards {
    position: relative;
    z-index: 20;
}

.video-container {
    position: unset;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

body.complex-landing-layout .landing-hero {
    position: relative;
    padding-top: 100px;
}

header.header-type-full.landing-active~.wrapper.landing-hero h1 {
    color: #fff !important;
}

.header>div:not(.video-container) {
    /* position: relative;
	z-index: 2; */
}

h2#featured-products-heading,
h2#gallery-heading {
    font-size: 32px;
    margin-bottom: 45px;
    line-height: 40px;
    font-weight: 900;
}

section#produse-vedeta {
    padding: 70px 0 20px;
}

.header-type-full .main-header:not(.navbar-fixed-top) {
    /* background: none !important; */
}

header.header.clear.header-type-full.landing-active .main-header {
    display: block;
    position: relative;
    background: #1f2326;
}

header.header.clear.header-type-full.landing-active .main-header.navbar-fixed-top {
    background: #fff;
}

body.home header.header.clear.header-type-full.landing-active .main-header:not(.navbar-fixed-top),
header.header.clear.header-type-full.landing-active::after {
    background: transparent !important;
}

header.header-type-full.landing-active~.wrapper h1 {
    color: #1f2326 !important;
}

.woocommerce-checkout header.header.clear.header-type-full.landing-active .main-header .navigation ul li a {
    color: #fff;
}

.woocommerce-checkout header.header.clear.header-type-full.landing-active .main-header .header_action ul li i,
.woocommerce-checkout header.header.clear.header-type-full.landing-active .main-header .header_action ul li svg {
    color: #fff;
}

#header-full .wrapper {
    padding: 30px 0 60px;
    /*background: url('/wp-content/uploads/2021/04/rezervare-section.png');*/
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}