/*
Theme Name: soledad
Theme URI: https://pencidesign.net/
Description: A Multipurpose, Newspaper, Blog & WooCommerce WordPress Theme
Author: PenciDesign
Author URI: https://pencidesign.net/
Version: 8.7.1
Requires PHP: 7.4
License: GNU General Public License version 3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Tags: black, green, white, light, one-column, two-columns, three-columns, right-sidebar, left-sidebar, fluid-layout, responsive-layout, custom-header, custom-menu, featured-images, post-formats, translation-ready
Text Domain: soledad
Domain Path: /languages
*/
/*
 * Silence is gold
 */
/* The main css file is located in "themes/soledad/main.css" */


/* testing */
/* =========================================
   CLEAN OILAUTOPLUS TOC
========================================= */

.custom-toc{
    border:1px solid #388e3c !important;
    border-radius:12px !important;
    margin:30px 0 !important;
    background:#e8f5e9 !important;
    overflow:hidden !important;
}

/* HEADER */

.custom-toc .toc-header{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    padding:16px 20px !important;
    cursor:pointer !important;
    border-bottom:1px solid #eadfce !important;
}

.custom-toc .toc-title{
    font-size:28px !important;
    font-weight:600 !important;
    color:#222 !important;
    margin:0 !important;
    line-height:1.2 !important;
}

/* BUTTON */

.custom-toc .toc-toggle{
    width:28px !important;
    height:28px !important;
    border:none !important;
    border-radius:50% !important;
    background:#4caf50 !important;
    color:#fff !important;
    font-size:18px !important;
    line-height:1 !important;
    cursor:pointer !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
}

/* BODY */

.custom-toc .toc-body{
    max-height:0 !important;
    overflow:hidden !important;

    padding:0 20px !important;

    transition:
        max-height 0.4s ease,
        padding 0.3s ease !important;
}

/* ACTIVE */

.custom-toc.active .toc-body{
    max-height:1000px !important;

    padding:14px 20px 18px !important;
}

/* LIST */

.custom-toc ul{
    list-style:none !important;
    margin:0 !important;
    padding:0 !important;
}

.custom-toc li{
    list-style:none !important;

    margin-bottom:14px !important;

    line-height:1.6 !important;

    position:relative !important;

    padding-left:24px !important;

    font-family: inherit !important;
}

/* NICE GREEN BULLET */

.custom-toc li::before{
    content:"" !important;

    width:8px !important;

    height:8px !important;

    border-radius:50% !important;

    background:#4caf50 !important;

    position:absolute !important;

    left:0 !important;

    top:11px !important;
}

/* SUB HEADING */

.custom-toc li.h3{
    padding-left:40px !important;
}

.custom-toc li.h3::before{
    left:16px !important;
}

/* LINK */

.custom-toc a{
    text-decoration:none !important;

    color:#222 !important;

    font-size:16px !important;

    font-weight:500 !important;

    font-family: inherit !important;

    line-height:1.6 !important;

    transition:0.3s ease !important;
}

.custom-toc a:hover{
    color:#4caf50 !important;
}

html{
    scroll-behavior:smooth !important;
}

/* MOBILE */

@media(max-width:768px){

    .custom-toc .toc-header{
        padding:14px 16px !important;
    }

    .custom-toc .toc-title{
        font-size:18px !important;
    }

}

/* faq */

/* =========================================
   FAQ SECTION
========================================= */

.custom-faq-wrapper{
    margin-top: 30px !important;
}

/* FAQ CARD */

.faq-item{
    margin-bottom:10px !important;

    border-radius:12px !important;

    overflow: hidden !important;

    background: #fff !important;

    border: 1px solid #ececec !important;

    box-shadow:none !important;

    transition: all 0.3s ease !important;
}

.faq-item:hover{
    transform: translateY(-2px) !important;

    box-shadow: 0 12px 30px rgba(0,0,0,0.08) !important;
}

/* QUESTION */

.faq-question{
    width: 100% !important;
    border: none !important;
    background: #fff !important;

    padding:14px 18px !important;

    font-size:15px !important;
    font-weight:600 !important;

    text-align: left !important;
    color: #111 !important;

    cursor: pointer !important;

    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 20px !important;

    text-transform: none !important;   /* Remove ALL CAPS */
    letter-spacing: 0 !important;      /* Remove extra spacing */

    line-height:1.4 !important;

    transition: all 0.3s ease !important;
}

/* ACTIVE STATE */

.faq-item.active .faq-question{
    background: #f9fafb !important;
}

/* ICON */

.faq-question span{
    width: 32px !important;

    height: 32px !important;

    min-width: 32px !important;

    border-radius: 50% !important;

    background: #4caf50 !important;

    color: #fff !important;

    font-size: 20px !important;

    font-weight: 600 !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    flex-shrink: 0 !important;

    line-height: 1 !important;

    transition: all 0.35s ease !important;
}

/* ROTATE ICON */

.faq-item.active .faq-question span{
    transform: rotate(180deg) !important;
}

/* ANSWER */

.faq-answer{
    max-height: 0 !important;

    overflow: hidden !important;

    padding:0 18px !important;

    background: #fff !important;

    line-height: 1.7 !important;

    font-size:15px !important;

    color: #555 !important;

    transition:
        max-height 0.45s ease,
        padding 0.35s ease !important;
}

/* OPEN ANSWER */

.faq-answer.active{
    max-height: 600px !important;

    padding: 0 18px 18px !important;
}

/* PARAGRAPH */

.faq-answer p:last-child{
    margin-bottom: 0 !important;
}

/* LINKS */

.faq-answer a{
    color: #4caf50 !important;

    text-decoration: none !important;
}

.faq-answer a:hover{
    text-decoration: underline !important;
}

/* BLOG SPACING */

.blog-content h2{
    margin-bottom: 18px !important;
}

/* MOBILE */

@media(max-width:768px){

    .faq-question{
        font-size: 18px !important;

        padding: 20px !important;
    }

    .faq-answer{
        font-size: 16px !important;

        line-height: 1.8 !important;
    }

    .faq-question span{
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;

        font-size: 22px !important;
    }

    .faq-answer.active{
        padding: 0 20px 20px !important;
    }

}

/* =========================================
   MINI HEALTH CTA - VITOLOGY PREMIUM
========================================= */

.single-post .entry-content .mini-health-cta{

    position:relative !important;
    overflow:hidden !important;

  padding:42px 40px !important;
margin:40px auto !important;
max-width:920px !important;

    border-radius:24px !important;

    background:linear-gradient(135deg,#f8fcf8 0%,#eef8ef 100%) !important;

    border:1px solid #dbead9 !important;

    box-shadow:0 18px 45px rgba(20,83,45,.08) !important;

    text-align:center !important;
}

/* Floating Background */

.single-post .entry-content .mini-health-cta::before{

    content:"";

    position:absolute;

    width:220px;
    height:220px;

    background:#8ddf95;

    border-radius:50%;

    top:-80px;
    left:-70px;

    opacity:.18;

    filter:blur(35px);

    animation:vitologyFloat1 10s ease-in-out infinite;
}

.single-post .entry-content .mini-health-cta::after{

    content:"";

    position:absolute;

    width:260px;
    height:260px;

    background:#4CAF50;

    border-radius:50%;

    bottom:-110px;
    right:-90px;

    opacity:.12;

    filter:blur(40px);

    animation:vitologyFloat2 12s ease-in-out infinite;
}

@keyframes vitologyFloat1{

    0%,100%{
        transform:translate(0,0);
    }

    50%{
        transform:translate(35px,18px);
    }

}

@keyframes vitologyFloat2{

    0%,100%{
        transform:translate(0,0);
    }

    50%{
        transform:translate(-30px,-20px);
    }

}

/* Content */

.single-post .entry-content .mini-health-cta .mini-cta-content{

    position:relative !important;

    z-index:2 !important;

    display:flex !important;

    flex-direction:column !important;

    align-items:center !important;

    justify-content:center !important;

    gap:14px !important;
}

/* Heading */

.single-post .entry-content .mini-health-cta h3{

    font-family:'Jost',sans-serif !important;

    font-size:38px !important;

    font-weight:700 !important;

    line-height:1.25 !important;

    color:#0f172a !important;

    margin:0 !important;

    max-width:760px !important;
}

/* Description */

.single-post .entry-content .mini-health-cta p{

    font-family:'Poppins',sans-serif !important;

    font-size:18px !important;

    line-height:1.85 !important;

    color:#55615b !important;

    max-width:700px !important;

    margin:0 auto 8px !important;
}

/* Button Area */

.single-post .entry-content .mini-health-cta .mini-cta-right{

    display:flex !important;

    justify-content:center !important;

    align-items:center !important;

    gap:18px !important;

    flex-wrap:wrap !important;

    margin-top:12px !important;
}

/* Buttons */

.single-post .entry-content .mini-health-cta .call-btn,
.single-post .entry-content .mini-health-cta .small-link-btn{

    width:230px !important;
height:58px !important;
padding:0 28px !important;

border-radius:12px !important;
    display:inline-flex !important;

    align-items:center !important;

    justify-content:center !important;

    gap:10px !important;

    text-decoration:none !important;

    font-family:'Jost',sans-serif !important;

    font-size:18px !important;

    font-weight:700 !important;

    transition:all .30s ease !important;
}

/* Call Button */

.single-post .entry-content .mini-health-cta .call-btn{

    background:#4CAF50 !important;

    color:#fff !important;

    text-decoration:none !important;

    box-shadow:0 12px 28px rgba(76,175,80,.28) !important;
}

.single-post .entry-content .mini-health-cta .call-btn:hover{

    background:#14532d !important;

    color:#fff !important;

    text-decoration:none !important;

    transform:translateY(-3px) !important;
}

/* Contact Button */

.single-post .entry-content .mini-health-cta .small-link-btn{

    background:#fff !important;

    color:#4CAF50 !important;

    border:1px solid #dbe8db !important;

    box-shadow:0 8px 20px rgba(0,0,0,.05) !important;

    text-decoration:none !important;
}

/* Contact Button */

.single-post .entry-content .mini-health-cta .small-link-btn:hover{

    background:#14532d !important;

    color:#fff !important;

    border-color:#14532d !important;

    transform:translateY(-3px) !important;

    text-decoration:none !important;
}

/* Emoji */

.single-post .entry-content .mini-health-cta .call-btn img{

    width:20px !important;

    height:20px !important;
}

/* Mobile */

@media(max-width:768px){

    .single-post .entry-content .mini-health-cta{

        padding:36px 24px !important;

        margin:40px 0 !important;
    }

    .single-post .entry-content .mini-health-cta h3{

        font-size:30px !important;
    }

    .single-post .entry-content .mini-health-cta p{

        font-size:16px !important;

        line-height:1.8 !important;
    }

    .single-post .entry-content .mini-health-cta .mini-cta-right{

        flex-direction:column !important;

        width:100% !important;
    }

    .single-post .entry-content .mini-health-cta .call-btn,
    .single-post .entry-content .mini-health-cta .small-link-btn{

        width:100% !important;

        max-width:320px !important;
    }

}

@media(prefers-reduced-motion:reduce){

    .single-post .entry-content .mini-health-cta::before,
    .single-post .entry-content .mini-health-cta::after{

        animation:none !important;
    }

}

/* =========================================
   Featured Image Size Fix
========================================= */

.post-image {
    overflow: hidden !important;
}

.post-image img {
    width: 100% !important;
    height: 360px !important;
    object-fit: cover !important;
    display: block !important;
    border-radius: 0 !important;
}

/* =========================================
   Mobile Height
========================================= */

@media only screen and (max-width: 768px) {

    .post-image img {
        height: 200px !important;
    }

}

/* =========================================
   Disable Hover Link + Image Path
========================================= */

.post-image a,
.post-image img {
    pointer-events: none !important;
    cursor: default !important;
}




/* =========================================
   BLOG TYPOGRAPHY OPTIMIZATION - HET v2
   Only affects Single Blog Posts
========================================= */

/* Main Content */

.single-post .entry-content{
    color:#333 !important;
    font-size:18px !important;
    line-height:1.9 !important;
}

/* H1 */

.single-post .entry-content h1{
    font-size:42px !important;
    font-weight:700 !important;
    line-height:1.25 !important;
    margin-top:0 !important;
    margin-bottom:28px !important;
    color:#111 !important;
}

/* H2 */

.single-post .entry-content h2{
    font-size:34px !important;
    font-weight:700 !important;
    line-height:1.3 !important;
    margin-top:56px !important;
    margin-bottom:20px !important;
    color:#111 !important;
}

/* H3 */

.single-post .entry-content h3{
    font-size:28px !important;
    font-weight:600 !important;
    line-height:1.35 !important;
    margin-top:42px !important;
    margin-bottom:16px !important;
    color:#111 !important;
}

/* H4 */

.single-post .entry-content h4{
    font-size:24px !important;
    font-weight:600 !important;
    line-height:1.4 !important;
    margin-top:34px !important;
    margin-bottom:14px !important;
    color:#111 !important;
}

/* H5 */

.single-post .entry-content h5{
    font-size:20px !important;
    font-weight:600 !important;
    line-height:1.45 !important;
    margin-top:28px !important;
    margin-bottom:12px !important;
    color:#111 !important;
}

/* H6 */

.single-post .entry-content h6{
    font-size:18px !important;
    font-weight:600 !important;
    line-height:1.5 !important;
    margin-top:24px !important;
    margin-bottom:10px !important;
    color:#111 !important;
}

/* Paragraph */

.single-post .entry-content p{
    font-size:18px !important;
    font-weight:400 !important;
    line-height:1.9 !important;
    margin-top:0 !important;
    margin-bottom:22px !important;
    color:#444 !important;
}

/* Bold */

.single-post .entry-content strong{
    font-weight:700 !important;
    color:#111 !important;
}

/* Italic */

.single-post .entry-content em{
    font-style:italic !important;
}

/* Links */

.single-post .entry-content a{
    text-decoration:underline !important;
    text-underline-offset:3px !important;
}

/* Lists */

.single-post .entry-content ul,
.single-post .entry-content ol{
    margin-top:20px !important;
    margin-bottom:26px !important;
    padding-left:28px !important;
}

/* List Items */

.single-post .entry-content li{
    font-size:18px !important;
    line-height:1.85 !important;
    margin-bottom:12px !important;
    color:#444 !important;
    padding-left:4px !important;
}

/* Nested Lists */

.single-post .entry-content li ul,
.single-post .entry-content li ol{
    margin-top:12px !important;
    margin-bottom:12px !important;
}

/* Bullet Marker */

.single-post .entry-content ul li::marker{
    font-size:1.1em !important;
}

/* Number Marker */

.single-post .entry-content ol li::marker{
    font-weight:600 !important;
}

/* Blockquote */

.single-post .entry-content blockquote{
    margin:36px 0 !important;
    padding:18px 24px !important;
    border-left:4px solid #4CAF50 !important;
    background:#f8faf8 !important;
    font-style:italic !important;
    line-height:1.8 !important;
}

/* Images */

.single-post .entry-content img{
    margin:30px 0 !important;
    border-radius:12px !important;
}

/* Figure */

.single-post .entry-content figure{
    margin:32px 0 !important;
}

/* Horizontal Line */

.single-post .entry-content hr{
    margin:42px 0 !important;
}

/* Tables */

.single-post .entry-content table{
    margin:30px 0 !important;
}

/* About Clinic Box */

.about-clinic{
    margin-top:45px !important;
    background:#f8faf8 !important;
    border:1px solid #dbe8db !important;
    border-radius:20px !important;
    padding:30px !important;
}

/* Featured Image */

.post-image img{
    height:420px !important;
    object-fit:cover !important;
}

/* Mobile */

@media (max-width:768px){

    .single-post .entry-content{
        font-size:17px !important;
    }

    .single-post .entry-content h1{
        font-size:34px !important;
    }

    .single-post .entry-content h2{
        font-size:28px !important;
        margin-top:44px !important;
    }

    .single-post .entry-content h3{
        font-size:24px !important;
        margin-top:34px !important;
    }

    .single-post .entry-content h4{
        font-size:21px !important;
    }

    .single-post .entry-content h5{
        font-size:19px !important;
    }

    .single-post .entry-content h6{
        font-size:18px !important;
    }

    .single-post .entry-content p,
    .single-post .entry-content li{
        font-size:17px !important;
        line-height:1.85 !important;
    }

    .single-post .entry-content ul,
    .single-post .entry-content ol{
        padding-left:24px !important;
    }

    .post-image img{
        height:240px !important;
    }

}
/* =========================================
   AUTO STEP / NUMBERED HEADING SUPPORT
   Works with JavaScript Snippet
========================================= */

/* Paragraph automatically detected after
   Step 1, 1., Method 1, Benefit 1, etc. */

.single-post .entry-content .step-paragraph{
    padding-left:18px !important;
    margin-top:10px !important;
}

/* Better spacing when paragraph is followed by a list */

.single-post .entry-content .step-paragraph + ul,
.single-post .entry-content .step-paragraph + ol{
    margin-top:16px !important;
}

/* Mobile */

@media (max-width:768px){

    .single-post .entry-content .step-paragraph{
        padding-left:14px !important;
    }

}

/* =========================================
   Vitology Sticky Bottom Bar
========================================= */

.vitology-sticky-bottom-bar {
    position: fixed;
    left: 0;
    bottom: 0;

    width: 100%;
    height: 60px;

    background: #4CAF50;

    z-index: 99999;

    display: flex;
    align-items: center;
    justify-content: center;

    box-shadow: 0 -3px 15px rgba(0, 0, 0, 0.15);
}


/* Phone + Social Icons Group */

.vitology-bottom-inner {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 30px;

    width: auto;
    margin: 0 auto;
}


/* Phone */

.vitology-phone {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    color: #ffffff;
    text-decoration: none;

    font-size: 17px;
    font-weight: 600;

    white-space: nowrap;
}

.vitology-phone i {
    font-size: 17px;
}

.vitology-phone:hover,
.vitology-phone:focus {
    color: #ffffff;
    text-decoration: none;
}


/* Social Icons */

.vitology-social-icons {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 12px;
}

.vitology-social-icons a {
    width: 36px;
    height: 36px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255, 255, 255, 0.7);
    border-radius: 50%;

    color: #ffffff;
    text-decoration: none;

    transition: all 0.3s ease;
}

.vitology-social-icons a:hover {
    background: #ffffff;
    color: #4CAF50;
}

.vitology-social-icons i {
    font-size: 15px;
}


/* Prevent content from hiding behind fixed bar */

body {
    padding-bottom: 60px;
}


/* FORCE VITOLOGY BOTTOM BAR ON MOBILE */
@media only screen and (max-width: 767px) {

    .vitology-sticky-bottom-bar {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;

        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;

        width: 100% !important;
        height: 60px !important;

        align-items: center !important;
        justify-content: center !important;

        background: #4CAF50 !important;
        z-index: 999999 !important;

        transform: none !important;
    }

    .vitology-bottom-inner {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 18px !important;

        width: 100% !important;
        height: 100% !important;
    }

    .vitology-phone {
        display: flex !important;
        align-items: center !important;
        gap: 7px !important;

        color: #fff !important;
        font-size: 14px !important;
        white-space: nowrap !important;
    }

    .vitology-social-icons {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }

    .vitology-social-icons a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 32px !important;
        height: 32px !important;

        color: #fff !important;
        border: 1px solid #fff !important;
        border-radius: 50% !important;
    }
}