/* Forum: ascunde "Propuneti un subiect" in interiorul unui topic (ramane in listare) */
body.wpft-post a.cp-propune {
    display: none !important;
}

/* Forum: ascunde navigarea interna wpForo (tab-uri) si breadcrumb */
#wpforo #wpforo-wrap #wpforo-menu,
#wpforo #wpforo-wrap .wpf-menu,
#wpforo #wpforo-wrap .wpf-breadcrumb {
    display: none !important;
}

/* Forum: ascunde indicatorul de tag (P) din bara editorului TinyMCE */
#wpforo #wpforo-wrap .mce-path {
    display: none !important;
}

/* Forum: ascunde bannerul wpForo "Discuții generale" + butonul "Add topic" */
#wpforo #wpforo-wrap .wpf-head-bar,
.wpf-head-bar {
    display: none !important;
}

/* Forum: stilizează butonul "Propuneți un subiect" la fel ca pe live (.primary-button) */
/* Specificitate mărită pentru a depăși reset-ul wpForo (#wpforo #wpforo-wrap a) */
#wpforo #wpforo-wrap a.cp-propune,
a.cp-propune {
    display: inline-block;
    background-color: #652d92;
    border: 1px solid #652d92;
    color: #f5f5f5;
    border-radius: 6px;
    padding: 6px 12px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    text-decoration: none;
    cursor: pointer;
    transition: background-color .2s ease;
}
#wpforo #wpforo-wrap a.cp-propune:hover,
#wpforo #wpforo-wrap a.cp-propune:focus,
a.cp-propune:hover,
a.cp-propune:focus {
    background-color: #54257a;
    border-color: #54257a;
    color: #ffffff;
}


/* ===== Forum listare subiecte (cp-card) - stilizare ca pe live ===== */
#wpforo #wpforo-wrap .cp-card,
.cp-card {
    display: flex;
    align-items: stretch;
    gap: 0;
    margin-bottom: 30px;
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
}

/* Coloana stanga: imagine + badge + titlu */
#wpforo #wpforo-wrap .cp-card-left,
.cp-card-left {
    position: relative;
    flex: 0 0 50%;
    max-width: 50%;
    display: block;
    text-decoration: none;
    line-height: 0;
}
#wpforo #wpforo-wrap .cp-card-imgtag,
.cp-card-imgtag {
    width: 100%;
    height: 100%;
    min-height: 220px;
    object-fit: cover;
    display: block;
}

/* Badge "N mesaje" - coltul stanga sus */
#wpforo #wpforo-wrap .cp-card-badge,
.cp-card-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background: #652d92;
    color: #ffffff;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    padding: 5px 10px;
    border-radius: 4px;
    z-index: 2;
}

/* Banda cu titlul - peste imagine, jos */
#wpforo #wpforo-wrap .cp-card-titleband,
.cp-card-titleband {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(101,45,146,0.92);
    color: #ffffff;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.3;
    padding: 15px 15px;
    z-index: 2;
}

/* Coloana dreapta: Recent + comentarii */
#wpforo #wpforo-wrap .cp-card-right,
.cp-card-right {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 18px 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}
#wpforo #wpforo-wrap .cp-recent-h,
.cp-recent-h {
    font-size: 26px;
    font-weight: 400;
    color: #212529;
    margin: 0 0 12px 0;
}

/* Lista de comentarii recente */
#wpforo #wpforo-wrap .cp-recent-list,
.cp-recent-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
#wpforo #wpforo-wrap .cp-recent-item,
.cp-recent-item {
    display: block;
}

/* Rand de sus: avatar + nume + timp */
#wpforo #wpforo-wrap .cp-recent-top,
.cp-recent-top {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
}

/* Avatar rotund mov 52px - FARA initiale (numele e afisat in dreapta) */
#wpforo #wpforo-wrap .cp-av,
.cp-av {
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #652d92;
    display: inline-block;
    font-size: 0;
    color: transparent;
    overflow: hidden;
    text-indent: -9999px;
}

#wpforo #wpforo-wrap .cp-rec-name,
.cp-rec-name {
    font-size: 14px;
    font-weight: 700;
    color: #000000;
    line-height: 1.3;
}
#wpforo #wpforo-wrap .cp-rec-time,
.cp-rec-time {
    font-size: 13px;
    color: #8a8a8a;
    margin-left: auto;
}

/* Textul comentariului */
#wpforo #wpforo-wrap .cp-rec-excerpt,
.cp-rec-excerpt {
    font-size: 16px;
    line-height: 24px;
    color: #212529;
    margin: 0;
}

/* Buton "Citeste mai mult" - ca pe live (.secondary-button) */
#wpforo #wpforo-wrap .cp-readmore,
.cp-readmore,
#wpforo #wpforo-wrap .cp-card-right a[href]:last-child {
    display: inline-block;
    background-color: #ffffff;
    color: #652d92;
    border: 1px solid #652d92;
    border-radius: 6px;
    padding: 6px 12px;
    font-size: 14px;
    font-weight: 600;
    line-height: 28px;
    text-decoration: none;
    text-align: center;
    margin-top: 14px;
    align-self: flex-start;
    transition: all .2s ease;
    cursor: pointer;
}
#wpforo #wpforo-wrap .cp-readmore:hover,
#wpforo #wpforo-wrap .cp-readmore:focus,
.cp-readmore:hover,
.cp-readmore:focus,
#wpforo #wpforo-wrap .cp-card-right a[href]:last-child:hover,
#wpforo #wpforo-wrap .cp-card-right a[href]:last-child:focus {
    background-color: #652d92;
    color: #ffffff;
    text-decoration: none;
}

/* Responsive: pe mobil cardurile devin pe coloana */
@media (max-width: 768px) {
    #wpforo #wpforo-wrap .cp-card,
    .cp-card { flex-direction: column; }
    #wpforo #wpforo-wrap .cp-card-left,
    .cp-card-left,
    #wpforo #wpforo-wrap .cp-card-right,
    .cp-card-right { flex: 0 0 100%; max-width: 100%; }
}

/* ===== Pagina Servicii la domiciliu: carduri (rcorners) ca pe live ===== */
.cp-services-grid .row.row-spacing {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
}
.cp-services-grid .col-md-6.col-spacing {
    width: 50%;
    box-sizing: border-box;
    padding: 0 15px;
    margin-bottom: 0;
    float: none;
}
.cp-services-grid .widget-container {
    height: 100%;
}
.cp-services-grid p.rcorners {
    background-color: transparent;
    border: 2px solid #442578;
    border-radius: 25px;
    padding: 20px;
    margin: 0 0 30px 0;
    text-align: center;
    height: calc(100% - 30px);
    box-sizing: border-box;
}
.cp-services-grid .rcorners-box-title {
    display: block;
    font-size: 30px;
    font-weight: 700;
    line-height: 45px;
    color: #442578;
}
.cp-services-grid .rcorners-box-content {
    font-size: 25px;
    line-height: 37.5px;
    color: #56b078;
}
.cp-services-grid .rcorners-box-content strong {
    color: #56b078;
}
.cp-services-grid a {
    text-decoration: none;
}
.cp-services-grid .rcorners-box-button {
    background-color: #56b078;
    color: #ffffff;
    border: none;
    border-radius: 35px;
    padding: 20px;
    font-size: 23px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: background-color .2s ease;
}
.cp-services-grid .rcorners-box-button:hover {
    background-color: #46945f;
}
@media (max-width: 767px) {
    .cp-services-grid .col-md-6.col-spacing { width: 100%; }
}

/* COMUNITATI-LINK-FIX: match live link colors */
a:hover, a:focus, a:active { color: #0056B3; }
.wpcf7-acceptance a, .wpcf7 .wpcf7-list-item-label a { color: #EA5455 !important; }
.wpcf7-acceptance a:hover, .wpcf7-acceptance a:focus, .wpcf7 .wpcf7-list-item-label a:hover, .wpcf7 .wpcf7-list-item-label a:focus { color: #0056B3 !important; }

/* CP: carduri domiciliu - buton aliniat jos + spatiu (Part1) */
.cp-services-grid p.rcorners{display:flex !important;flex-direction:column !important;}
.cp-services-grid p.rcorners br{display:none !important;}
.cp-services-grid .rcorners-box-title{display:block;}
.cp-services-grid .rcorners-box-content{display:block;margin-bottom:24px;}
.cp-services-grid p.rcorners a{margin-top:auto !important;display:block;}


/* CP: pagini servicii domiciliu - boxe telefon + lista (Part2) */
.elementor .cp-srv-lead{margin:0 0 8px;font-size:16px;color:#212529;}
.elementor .cp-srv-note{margin:6px 0 18px;font-size:14px;color:#6c757d;}
.elementor .cp-srv-pill{border:1px solid #652D92;border-radius:10px;padding:14px 18px;text-align:center;margin:0 0 8px;background:#fff;}
.elementor .cp-srv-pill a{color:#007bff;font-size:20px;font-weight:400;text-decoration:none;}
.elementor .cp-srv-pill a[href^='#']{color:#007bff;}
.elementor ul.cp-srv-list{list-style:disc;padding-left:22px;margin:18px 0 0;columns:1;}
.elementor ul.cp-srv-list li{font-size:16px;line-height:1.7;color:#212529;}


/* CP: pagini servicii - retus back-link + banda CTA (Part2b) */
.elementor .cp-srv-back,.elementor .cp-srv-back a,.elementor .cp-srv-back p{color:#ffffff !important;}
.elementor .cp-srv-cta-icon img{max-width:95px !important;max-height:95px !important;width:95px !important;height:auto !important;}
.elementor .cp-srv-cta-text{max-width:990px !important;width:100% !important;flex:1 1 auto !important;}


/* CP: banda CTA coloane (iconita mica + text lat) */
.elementor .cp-srv-cta-iconcol{flex:0 0 auto !important;width:auto !important;max-width:150px !important;}
.elementor .cp-srv-cta-textcol{flex:1 1 auto !important;width:auto !important;}


/* CP: banda CTA recoltare (by id, model) */
.elementor .elementor-element-bd30215{flex:0 0 auto !important;width:auto !important;max-width:150px !important;}
.elementor .elementor-element-c0258a1{flex:1 1 auto !important;width:auto !important;}


/* CP: CTA cols propagate 1465 */
.elementor .elementor-element-477d904{flex:0 0 auto !important;width:auto !important;max-width:150px !important;}
.elementor .elementor-element-c7c6b04{flex:1 1 auto !important;width:auto !important;}


/* CP: pagini servicii - ascunde titlul temei duplicat (page-header) ca pe live */
.page-id-1438 .page-header,
.page-id-1439 .page-header,
.page-id-1441 .page-header,
.page-id-1443 .page-header,
.page-id-1445 .page-header,
.page-id-1446 .page-header,
.page-id-1448 .page-header,
.page-id-1449 .page-header,
.page-id-1451 .page-header,
.page-id-1452 .page-header,
.page-id-1454 .page-header,
.page-id-1456 .page-header,
.page-id-1458 .page-header,
.page-id-1460 .page-header,
.page-id-1461 .page-header,
.page-id-1463 .page-header,
.page-id-1465 .page-header,
.page-id-1467 .page-header,
.page-id-1469 .page-header,
.page-id-1471 .page-header,
.page-id-1473 .page-header,
.page-id-1475 .page-header,
.page-id-1476 .page-header,
.page-id-1477 .page-header{display:none !important;}


/* CP: banda CTA - poza (pt paginile care o au pe live) */
.elementor .cp-srv-cta-photo{flex:0 0 auto !important;width:auto !important;max-width:none !important;margin-left:24px;align-self:center;}
.elementor .cp-srv-cta-photo img{width:285px !important;height:190px !important;object-fit:cover !important;border-radius:6px;display:block;max-width:none !important;}
@media(max-width:767px){.elementor .cp-srv-cta-photo{margin-left:0;margin-top:16px;align-self:flex-start;} .elementor .cp-srv-cta-photo img{width:100% !important;height:auto !important;}}


/* CP: articol fii-prietenul-inimii-tale (479) - imagine promo float stanga ca pe live */
.postid-479 .media-widget-container{float:left;width:48%;margin:0 30px 14px 0;}
.postid-479 .media-widget-container img,.postid-479 .article-share-image{width:100%;height:auto;display:block;}
.postid-479 .text-widget-container p{text-align:justify;}
@media(max-width:767px){.postid-479 .media-widget-container{float:none;width:100%;margin:0 0 18px 0;}}


/* CP: ingrijirea-stomelor (1454) - fix coloane banda CTA (text lat) */
.elementor .elementor-element-59e198c{flex:0 0 auto !important;width:auto !important;max-width:150px !important;}
.elementor .elementor-element-c736eed{flex:1 1 auto !important;width:auto !important;}


/* CP: analize-depistare-diabet (1439) - fix coloane banda CTA */
.elementor .elementor-element-3f855fe{flex:0 0 auto !important;width:auto !important;max-width:150px !important;}
.elementor .elementor-element-7dc897b{flex:1 1 auto !important;width:auto !important;}


/* ===== Grila corp articol (.cp-article-grid) ===== */
.cp-article-grid .row-spacing,
.cp-article-grid .row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
}
.cp-article-grid .col-spacing {
    box-sizing: border-box;
    padding: 0 15px;
    margin-bottom: 0;
    float: none;
}
.cp-article-grid .col-md-12 { width: 100%; }
.cp-article-grid .col-md-6  { width: 50%; }
.cp-article-grid .col-md-4  { width: 33.3333%; }
.cp-article-grid img { max-width: 100%; height: auto; }

@media (max-width: 767px) {
    .cp-article-grid .col-md-12,
    .cp-article-grid .col-md-6,
    .cp-article-grid .col-md-4 { width: 100%; }
}

/* ===== Stiluri corp articol importat de pe .org (.cp-article-grid) ===== */
/* Layout utilities the .org markup relies on. Without them the flex columns
   shrink to their content instead of filling the row, which is why the buttons
   (style="width:100%") came out far too narrow. */
.cp-article-grid .container { width: 100%; margin: 0 auto; padding: 0 15px; box-sizing: border-box; }
.cp-article-grid .col,
.cp-article-grid .col-12 { flex: 0 0 100%; max-width: 100%; box-sizing: border-box; padding: 0 15px; }
.cp-article-grid .w-100 { width: 100%; }
.cp-article-grid .full-width { width: 100%; }
.cp-article-grid .w-fit-content { width: fit-content; }
.cp-article-grid .mx-auto { margin-left: auto; margin-right: auto; }
.cp-article-grid .pl-0 { padding-left: 0; }
.cp-article-grid .pr-0 { padding-right: 0; }

/* Article title: more breathing room above and below than the theme's default
   0 / 27px. Applies to every single article, not just this one. */
body.single-post .page-header .entry-title {
    margin-top: 32px;
    margin-bottom: 32px;
}

/* Vertical rhythm, measured off live. */
.cp-article-grid .row-spacing { margin-bottom: 70px; padding: 4px 0; }
.cp-article-grid .button-widget { margin-top: 20px; margin-bottom: 20px; }
.cp-article-grid .media-widget { margin-top: 15px; margin-bottom: 15px; }
/* Bootstrap's reboot sets this; without it the baseline gap adds ~7px under
   every image. */
.cp-article-grid img { vertical-align: middle; }

/* Bootstrap columns cap their basis as well as their width - but only from the
   md breakpoint up. Below it live stacks every column full width, so these must
   stay inside the media query or the phone layout ends up with 123px columns. */
@media (min-width: 768px) {
    .cp-article-grid .col-md-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
    .cp-article-grid .col-md-6 { flex: 0 0 50%; max-width: 50%; }
    .cp-article-grid .col-md-12 { flex: 0 0 100%; max-width: 100%; }
}
@media (max-width: 767px) {
    .cp-article-grid .col-md-4,
    .cp-article-grid .col-md-6,
    .cp-article-grid .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%;
        width: 100%;
    }
    /* Live runs the body edge to edge on a phone: images touch the screen and
       text is inset only by the 15px the columns carry. The theme adds 10px of
       its own on main.site-main, so cancel that for the body (not the title). */
    .cp-article-grid {
        margin-left: -10px;
        margin-right: -10px;
        width: calc(100% + 20px);
    }
}
.cp-article-grid p { margin-top: 0; margin-bottom: 15px; }
.cp-article-grid h1,
.cp-article-grid h2,
.cp-article-grid h3,
.cp-article-grid h4,
.cp-article-grid h5,
.cp-article-grid h6 { margin-top: 0; margin-bottom: 8px; }

/* The platform strips link underlines inside article bodies, hover included -
   the theme would otherwise underline the service titles and their icons. */
.cp-article-grid a,
.cp-article-grid a:hover,
.cp-article-grid a:focus { text-decoration: none; }

/* Live grows the whole service block on hover instead of underlining it. */
.cp-article-grid .preview { transition: transform 0.2s ease-in-out; }
.cp-article-grid .preview:hover { transform: scale(1.2); }

/* Alignment helpers from Bootstrap and from the Quill editor .org uses. */
.cp-article-grid .text-center { text-align: center; }
.cp-article-grid .text-right { text-align: right; }
.cp-article-grid .text-left { text-align: left; }
.cp-article-grid .ql-align-center { text-align: center; }
.cp-article-grid .ql-align-justify { text-align: justify; }
.cp-article-grid .ql-align-right { text-align: right; }
.cp-article-grid .ql-align-left { text-align: left; }

/* Live renders <strong> at 700; this theme uses 600. */
.cp-article-grid strong,
.cp-article-grid b { font-weight: 700; }

/* The theme paints every heading purple. Live keeps them dark, and blue when
   the heading sits inside a link. */
.cp-article-grid h1,
.cp-article-grid h2,
.cp-article-grid h3,
.cp-article-grid h4,
.cp-article-grid h5,
.cp-article-grid h6 { color: #212529; }
.cp-article-grid a h1,
.cp-article-grid a h2,
.cp-article-grid a h3,
.cp-article-grid a h4,
.cp-article-grid a h5,
.cp-article-grid a h6 { color: #007bff; }

/* Platform buttons. Width comes from an inline style="width:100%" in the
   markup, which only takes effect once the anchor stops being inline. */
.cp-article-grid .btn {
    display: inline-block;
    box-sizing: border-box;
    padding: 6px 12px;
    /* Live keeps buttons on Bootstrap's native stack and uppercases the label;
       inheriting the theme font made them ~20% narrower and mixed-case. */
    /* !important because the theme's global font rule outranks this one:
       text-transform from this same block lands, font-family alone does not. */
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', 'Liberation Sans', sans-serif !important;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    text-align: center;
    text-decoration: none;
    border: 1px solid transparent;
    border-radius: 4px;
    transition: background-color 0.2s ease-in-out;
}
/* Anchors written by the platform sometimes have no href. Those need a
   higher-specificity selector, otherwise the text keeps the inherited body
   colour while the background does come through. */
.cp-article-grid a.btn-success,
.cp-article-grid a.btn-success:visited {
    background-color: #0D47A1;
    color: #ffffff;
    text-decoration: none;
}
/* Hover: lighter blue, label stays white (Emanuel's choice, not live's).
   The colour needs !important: the theme's own 'body a:hover' rule otherwise
   repaints the label, same conflict as the base button colour. */
.cp-article-grid a.btn-success:hover,
.cp-article-grid a.btn-success:focus,
.cp-article-grid a.btn-success:active {
    background-color: #0064ff !important;
    color: #ffffff !important;
    text-decoration: none;
}
.cp-article-grid .btn-rounded { border-radius: 30px; }

/* Teaser links in the side column: grey, block, not the theme's blue. */
.cp-article-grid .link-title {
    display: block;
    padding: 7px 0;
    color: #b6b6b6;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', 'Liberation Sans', sans-serif !important;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    text-decoration: none;
}
.cp-article-grid .link-title:hover { color: #b6b6b6; }

/* Icon blocks above each service title. */
.cp-article-grid .preview .fas,
.cp-article-grid .preview .far,
.cp-article-grid .preview .fab {
    display: block;
    font-size: 45px;
    color: #007bff;
    line-height: 45px;
}
/* ===== end corp articol ===== */
