/* Aboscare – stiluri portate din site-ul HTML original + clase pentru conținutul Elementor */
:root{
    --abos-green:#2d4337;
    --abos-gold:#CE9F43;
    --abos-yellow:#FACB6E;
    --abos-sand:#edddb3;
    --abos-cream:#faf9f0;
    --bg:#faf9f6;
    --ink:#1b1d22;
    --ink-soft:rgba(27,29,34,.6);
    --accent:#2d4337;
    --line:rgba(27,29,34,.12);
    --loader-fade:260ms;
    --crem:#faf9f0;
}
body{
    font-family:"Plus Jakarta Sans",sans-serif;
}
p{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-weight:400;
}
.abos-plain{
    padding-top:60px;
    padding-bottom:60px;
}


img.logo{
    padding-left: 20px;
}
/* ---------- Top bar / navigație ---------- */
.top_bar{
    background:#faf9f0;
    padding-top:10px;
    padding-bottom:10px;
    font-family:"Plus Jakarta Sans",sans-serif;
    color:#625a53;
    font-size: 14px;
    padding-left: 20px;
}
.top_bar span.address{
    padding-right:30px;
    font-size: 14px;
}
.top_bar span.address i{
    margin-right:6px;
}
.top_bar span.phone{
    background:#9ddbf4;
    padding:22px 50px;
    color:#2d4337;
}
.top_bar span.phone a{
    color:#2d4337;
    text-decoration:none;
    font-family:"Plus Jakarta Sans",sans-serif;
    font-weight:600;
}
.top_bar .text-align{
    text-align:right;
}
.navbar{
    padding-bottom:0;
}

.navbar-nav{
    padding-top: 37px;
    padding-bottom: 25px;
}

.navbar ul{
    padding-left:0;
}
.navbar .nav-item a.nav-link{
    padding:30px 10px;
    font-family:"Plus Jakarta Sans",sans-serif;
    font-size:16px;
    font-weight:600;
    transition:all .1s ease-in-out;
    color:#000;
    letter-spacing:1px;
    border-bottom:3px solid transparent;
	white-space: nowrap;
}
.navbar .nav-item a.nav-link:hover{
    border-bottom:3px solid #921A22;
    color:#921A22;
}
.navbar .nav-item a.active{
    border-bottom:3px solid #921A22;
}
.dropdown-menu{
    background-color:#fffdf7;
    color:#000;
    font-family:"Plus Jakarta Sans",sans-serif;
}
.dropdown-item{
    color:#000;
    font-family:"Plus Jakarta Sans",sans-serif;
    transition:all .5s ease-in-out;
    padding:14px 25px 15px;
}
.dropdown-item:hover,.dropdown-item.active,.dropdown-item:active{
    background:transparent!important;
    color:#921A22;
}
.fixed{
    transition:all .5s linear;
    position:sticky;
    top:0;
    width:100%;
    z-index:9999;
}
body.admin-bar .fixed{
    top:32px;
}


.crem{
    color: #ffe7a3!important;
}

.slogan{
    font-size: 13px;
    text-align: left;
    color: #6b6a5a;
    padding-left: 20px;
}

/* ---------- Butoane ---------- */
.rezerva,.abos-btn .elementor-button{
    background:#9ddbf4!important;
    color:#2d4337!important;
    border:1px solid #9ddbf4;
    padding:10px 40px;
    font-weight:600;
    font-family:"Plus Jakarta Sans",sans-serif;
    border-radius:var(--bs-btn-border-radius,.375rem);
    transition:all .3s ease-in-out;
    text-decoration:none;
    line-height:1.5;
    margin-right: 20px;
}
.rezerva:hover,.abos-btn .elementor-button:hover{
    background:#921A22!important;
    color:#FFF!important;
    border-color:#921A22;
}

/* ---------- Titluri generice (widget Heading) ---------- */
.abos-eyebrow .elementor-heading-title{
    font-size:16px;
    font-family:"Plus Jakarta Sans",sans-serif;
    text-transform:uppercase;
    font-weight:400;
    color:inherit;
}
.abos-title .elementor-heading-title{
    font-family:"Lora",serif;
    font-size:40px;
    font-weight:400;
    line-height:1.2;
    margin:20px 0 60px;
    color:inherit;
}
.abos-title-left .elementor-heading-title{
    margin-bottom:30px;
}

/* ---------- Hero slider ---------- */
.abos-hero.e-con,.abos-hero{
    padding:0!important;
}
.carousel-caption{
    bottom:20%;
    text-align:left;
    color:#FFF;
}
.carousel-caption p{
    font-size:20px;
}

/* ---------- Servicii (carduri rotunde) ---------- */
.abos-services{
    text-align:center;
}
.abos-service-card{
    background:#f4f6ff;
    border:1px solid #f4f6ff;
    border-radius:10px;
    padding:50px 20px;
    transition:.5s linear;
}
.abos-service-card:hover{
    background:#faf9f0;
    transform:scale(.95);
}
.abos-service-card .elementor-image-box-img img{
    border-radius:50%;
    max-width:280px;
    width:100%;
    margin:0 auto;
}
.abos-service-card .elementor-image-box-title,.abos-service-card .elementor-image-box-title a{
    font-family:"Lora",serif;
    font-weight:400;
    font-style:italic;
    font-size:36px;
    color:#000;
    text-decoration:none;
}

/* ---------- Misiune ---------- */
.abos-mission{
    background:#edddb3;
}
.abos-mission img{
    width:100%;
}
.abos-mission .abos-title .elementor-heading-title{
    margin-bottom:40px;
}

/* ---------- De ce noi ---------- */
.abos-offer-card{
    background:#faf9f0;
    color:#2d4337;
    border:1px solid #faf9f0;
    padding:60px 15px;
    text-align:center;
    transform:scale(.95);
    transition:.5s linear;
    min-height: 200px!important;
    font-family:"Plus Jakarta Sans",sans-serif!important;
}
.abos-offer-card:hover{
    transform:scale(1);
}
.abos-offer-card .elementor-icon{
    font-size:45px;
    color:#2d4337;
}
.abos-offer-card .elementor-icon i{
    font-size:45px;
}
.abos-offer-card .elementor-icon-box-title{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-size:1.25rem;
    font-weight:500;
    color:#2d4337;
}

/* ---------- Testimoniale ---------- */
.abos-testimonials{
    background:#edddb3;
}
.abos-testi-carousel .carousel-control-prev,.abos-testi-carousel .carousel-control-next{
    filter:invert(1);
}
.abos-testi-carousel .card{
    background:#faf9f0;
    color:#2d4337;
    border:1px solid #faf9f0;
    transform:scale(.95);
    transition:.5s linear;
}
.abos-testi-carousel .card:hover{
    transform:scale(1);
}
.abos-testi-carousel .card-body{
    text-align:center;
    padding:60px 50px;
}
.abos-testi-carousel .card-title{
    font-family:"Plus Jakarta Sans",sans-serif;
}
.abos-testi-carousel p{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-size:17px;
    line-height:27px;
}
.abos-stars{
    padding-bottom:20px;
    color:#CE9F43;
    font-size:18px;
    letter-spacing:2px;
}
.abos-stars .off{
    color:#d9d3c3;
}

/* ---------- Pagini serviciu ---------- */
.abos-breadcrumb{
    background-size:cover;
    background-position:center;
    padding-top: 50px;
    padding-bottom: 50px;
}
.abos-breadcrumb ol.breadcrumb{
    background:#3d3d3d36;
    color:#FFF;
    margin-bottom:0;
}
.breadcrumb-chevron{
    --bs-breadcrumb-divider:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%236c757d'%3E%3Cpath fill-rule='evenodd' d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
    gap:.5rem;
}
.breadcrumb-chevron .breadcrumb-item{
    display:flex;
    gap:inherit;
    align-items:center;
    padding-left:0;
    line-height:1;
    color:#FFF;
}
.breadcrumb-chevron .breadcrumb-item::before{
    gap:inherit;
    float:none;
    width:1rem;
    height:1rem;
}
.breadcrumb-chevron .breadcrumb-item a,.fa-house{
    color:#FFF;
}

.abos-camin{
    align-items:flex-start;
}
.abos-side{
    background:#faf9f0;
    padding:20px;
    position:sticky;
    top:150px;
    align-self:flex-start;
}
.abos-side .elementor-heading-title{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-weight:400;
    font-size:25px;
    padding-left:10px;
}
.abos-side-menu .elementor-icon-list-items{
    display:flex;
    flex-direction:column;
}
.abos-side-menu .elementor-icon-list-item{
    width:100%;
}
.abos-side-menu .elementor-icon-list-item a{
    display:flex;
    width:100%;
    justify-content:space-between;
    flex-direction:row-reverse;
    align-items:center;
    text-align:left;
    color:#2d4337;
    font-family:"Plus Jakarta Sans",sans-serif;
    font-size:17px;
    padding:10px;
    text-decoration:none;
}
.abos-side-menu .elementor-icon-list-item a:hover,.abos-side-menu .elementor-icon-list-item a.active{
    color:#CE9F43;
}
.abos-side-menu .elementor-icon-list-icon i{
    color:#CE9F43;
    font-size:23px;
}
.abos-side-menu .elementor-icon-list-text{
    padding-left:0!important;
}
.abos-content h3{
    font-family:"Lora",serif;
    margin:20px 0 40px;
    font-size:30px;
    font-weight:400;
    text-align:center;
}
.abos-content p,.abos-content li{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-weight:400;
    font-size:17px;
}
.abos-content ul{
    margin-bottom:1rem;
}

.abos-gallery-sec .abos-title .elementor-heading-title{
    font-size:30px;
    margin:20px 0 40px;
}
.galerie{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
    gap:10px;
}
.galerie img{
    width:100%;
    height:200px;
    object-fit:cover;
    border-radius:6px;
    cursor:pointer;
}

.abos-faq .abos-title .elementor-heading-title{
    font-size:30px;
    margin:20px 0 40px;
}
.abos-faq .elementor-accordion .elementor-accordion-item{
    border:1px solid #dee2e6;
}
.abos-faq .elementor-accordion .elementor-tab-title{
    background:#FACB6E;
    color:#2d4337;
    padding:1rem 1.25rem;
    margin:0;
}
.abos-faq .elementor-accordion .elementor-tab-title a{
    font-family:"Lora",serif;
    color:#2d4337;
    font-size:1rem;
    font-weight:400;
}
.abos-faq .elementor-accordion .elementor-tab-title:hover,.abos-faq .elementor-accordion .elementor-tab-title.elementor-active{
    background:#2d4337;
}
.abos-faq .elementor-accordion .elementor-tab-title:hover a,.abos-faq .elementor-accordion .elementor-tab-title.elementor-active a{
    color:#FACB6E;
}
.abos-faq .elementor-accordion .elementor-accordion-icon{
    color:#2d4337;
}
.abos-faq .elementor-accordion .elementor-tab-title:hover .elementor-accordion-icon,.abos-faq .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon{
    color:#FACB6E;
}
.abos-faq .elementor-accordion .elementor-tab-content{
    border-top:1px solid #dee2e6;
    padding:1rem 1.25rem;
    font-family:"Plus Jakarta Sans",sans-serif;
}

/* ---------- Despre noi / Despre tine / Contact ---------- */
.abos-about-text{
    background:#2d4337;
    color:#FFF;
    padding-left:30px;
    padding-right:30px;
}
.abos-about-text h3,.abos-about-text .abos-kicker .elementor-heading-title{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-weight:400;
    font-size:20px;
    color:#FFF;
    margin-bottom:40px;
}
.abos-about-text h1,.abos-about-text .abos-h1 .elementor-heading-title{
    font-family:"Lora",serif;
    font-size:50px;
    color:#FFF;
    padding-bottom:40px;
}
.abos-about-text p{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-weight:400;
    font-size:19px;
    color:#FFF;
}
.abos-about-hero img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.abos-about-block{
    padding-top:100px;
    padding-bottom:50px;
    align-items:center;
}
.abos-about-block .elementor-widget-text-editor p,.abos-about-block li{
    font-size:16px;
}
.abos-about-block img{
    border-radius:10px;
}
.abos-about-block .abos-block-title .elementor-heading-title{
    font-family:"Lora",serif;
    font-weight:400;
    font-size:50px;
    margin-bottom:40px;
    color:#2d4337;
}
.abos-healthy{
    background:#edddb3;
    color:#2d4337;
}
.abos-healthy .abos-block-title .elementor-heading-title{
    font-family:"Lora",serif;
    font-weight:400;
    font-size:50px;
    margin-bottom:40px;
    text-align:center;
    color:inherit;
}
.abos-healthy .abos-center-text{
    text-align:center;
}
.abos-step-card{
    background:#FACB6E;
    padding:20px;
    border:1px solid #edddb3;
    border-radius:6px;
    transition:all .3s linear;
}
.abos-step-card:hover{
    background:#2d4337;
    border-color:#2d4337;
    color:#FACB6E;
}
.abos-step-card .elementor-heading-title,.abos-step-card p{
    color:inherit;
}
.abos-step-card .elementor-heading-title{
    font-family:"Lora",serif;
    font-weight:400;
    font-size:29px;
}
.abos-contact-details h3,.abos-contact-details h5{
    font-family:"Lora",serif;
    font-weight:400;
    padding-bottom:20px;
}
.abos-contact-details a{
    text-decoration:none;
    color:#2d4337;
    font-weight:600;
    font-family:"Plus Jakarta Sans",sans-serif;
}
.abos-contact-details p{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-weight:400;
}
.abos-contact-form textarea.form-control{
    min-height:200px;
}
.abos-contact-form .rezerva{
    margin-top:10px;
    cursor:pointer;
}
.abos-hide-lg{
    display:block;
}
@media (max-width:991px){
    .abos-hide-lg{
        display:none!important;
    }
    .abos-about-text{
        padding-left:10px!important;
        padding-right:10px!important;
    }
    .abos-title .elementor-heading-title,.abos-about-block .abos-block-title .elementor-heading-title,.abos-healthy .abos-block-title .elementor-heading-title{
        font-size:32px;
    }
    .abos-side{
        position:static;
    }
}

/* ---------- Footer ---------- */
section.contact-footer{
    background:#2d4337;
    padding:60px 0;
    color:#FFF;
}
section.contact-footer h3{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-weight:400;
    font-size:25px;
}
section.contact-footer .rezerva{
    max-width:200px;
    border:1px solid #9ddbf4;
    float:right;
}
section.contact-footer .rezerva:hover{
    border: 1px solid #921a22!important;
}
section.contact-footer .title-contact-footer{
    display:flex;
    justify-content:center;
    align-items:center;
}
section.footer{
    background:#faf9f0;
    padding-top:40px;
    text-align:center;
}
section.footer p{
    font-family:"Plus Jakarta Sans",sans-serif;
    font-weight:400;
    font-size:17px;
}
section.footer a{
    color:#2d4337;
    text-decoration:none;
    transition:all .5s linear;
}
section.footer a:hover{
    color:#000;
}
section.footer img.logo-footer{
    padding-top:80px;
    max-width:100%;
    height:auto;
}
section.footer h3{
    font-family:"Lora",serif;
    margin:20px 0 40px;
    font-size:30px;
    font-weight:400;
    text-align:center;
}
section.footer .footer-bottom{
    padding:20px 0;
    border-top:1px solid #edddb3;
    margin-top:40px;
}
section.footer .footer-bottom .copyright{
    text-align:left;
}
section.footer .footer-bottom .powered{
    text-align:right;
}
section.footer .footer-bottom .powered a{
    font-weight:bold;
    color:#2d4337;
}
@media (max-width:767px){
    section.footer .footer-bottom .copyright,section.footer .footer-bottom .powered{
        text-align:center;
    }
    section.contact-footer .rezerva{
        float:none;
        margin-top:20px;
    }
}

#myBtn{
    display:none;
    position:fixed;
    bottom:20px;
    right:30px;
    z-index:99;
    border:none;
    outline:none;
    background-color:#921A22;
    color:#fff;
    cursor:pointer;
    padding:15px;
    border-radius:10px;
    font-size:18px;
    transition:all .3s linear;
}
#myBtn:hover{
    background-color:#9ddbf4;
    color:#2d4337;
}

/* ---------- Loader ---------- */
.page-loader{
    position:fixed;
    inset:0;
    z-index:99999;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:14px;
    background:var(--crem);
    opacity:1;
    transition:opacity var(--loader-fade) ease,visibility 0s linear 0s;
}
.page-loader.is-hidden{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity var(--loader-fade) ease,visibility 0s linear var(--loader-fade);
}
.page-loader__spinner{
    width:100px;
    height:100px;
    border-radius:50%;
    border:3px solid var(--line);
    border-top-color:var(--accent);
    animation:page-loader-spin .7s linear infinite;
}
.page-loader__label{
    margin:0;
    font-size:12.5px;
    letter-spacing:.03em;
    color:var(--ink-soft);
}
@keyframes page-loader-spin{
    to{
        transform:rotate(360deg);
    }
}
@media (prefers-reduced-motion:reduce){
    .page-loader__spinner{
        animation:none;
    }
}


.follow_menu{
    position: sticky!important;
    top:200px;
}


/* Butoane sub elementele din meniu (clasa CSS "abos-btn-sub" pe elementul de meniu) */
.navbar .nav-item.has-nav-btn{
    position:relative;
}
.navbar .abos-nav-btn{
    display:inline-block;
    background:#9ddbf4;
    color:#2d4337;
    font-family:"Plus Jakarta Sans",sans-serif;
    font-size:12px;
    font-weight:600;
    line-height:1;
    padding:6px 14px;
    border-radius:4px;
    text-decoration:none;
    white-space:nowrap;
    transition:all .3s ease-in-out;
}
.navbar .abos-nav-btn:hover{
    background:#921A22;
    color:#FACB6E;
}
@media (min-width:992px){
    .navbar .nav-item.has-nav-btn .abos-nav-btn{
        position:absolute;
        left:50%;
        bottom:8px;
        transform:translateX(-50%);
    }
}
@media (max-width:991px){
    .navbar .nav-item.has-nav-btn .abos-nav-btn{
        margin:0 0 12px 20px;
    }

    .navbar .nav-item a.nav-link{
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .abos-about-block{
        padding-top: 30px!important;
        padding-bottom: 30px!important;
    }

    .e-con-inner{
        padding-top: 0!important;
    }


}

@media (max-width: 505px){
    .abos-parallax .abos-ph__features li{
        border-left: none!important;
        padding-left: 0!important;
    }
}

.cmplz-show{
    display: none;
}

/* Bara cu butoane jos, doar pe mobil */
.abos-mobile-bar{
    display:none;
}
@media (max-width:767px){
    .abos-mobile-bar{
        display:flex;
        position:fixed;
        left:0;
        right:0;
        bottom:0;
        z-index:9998;
        gap:8px;
        padding:10px 10px calc(10px + env(safe-area-inset-bottom));
        background:#2d4337;
        box-shadow:0 -2px 10px rgba(0,0,0,.2);
    }
    .abos-mobile-bar a{
        flex:1;
        text-align:center;
        background:rgb(146,26,34);
        color:#FFF;
        font-family:"Plus Jakarta Sans",sans-serif;
        font-weight:600;
        font-size:14px;
        line-height:1.2;
        padding:14px 8px;
        border-radius:6px;
        text-decoration:none;
    }
    .abos-mobile-bar a:active{
        background:#fff;
    }
    body{
        padding-bottom:70px;
    }
    #myBtn{
        bottom:80px;
    }
}