/* =============================================
   LEGAL PAGES – SHARED STYLES  v1.3.0
   body.ft-legal-page + .pc-page
   ============================================= */

body.ft-legal-page {
    background-color: #fff !important;
}

body.ft-legal-page .page-wrap {
    background-color: #fff !important;
}

/* --- Header: mereu gradient --- */
body.ft-legal-page .main-header {
    background: linear-gradient(to right, rgba(242, 51, 79, 0.9) 0, rgba(244, 87, 199, 0.9) 100%) !important;
}

body.ft-legal-page .main-header.header-sticky {
    background: linear-gradient(to right, rgba(242, 51, 79, 0.9) 0, rgba(244, 87, 199, 0.9) 100%) !important;
}

body.ft-legal-page #meniuSus ul ul.sub-menu li a {
    color: #fff;
    background: linear-gradient(to right, rgba(242, 51, 79, 0.9) 0, rgba(244, 87, 199, 0.9) 100%);
}

body.ft-legal-page #meniuSus ul ul.sub-menu li.dropdown > a::before,
body.ft-legal-page #meniuSus ul ul.sub-menu li.dropdown > a::after,
body.ft-legal-page #meniuSus ul ul.sub-menu li.menu-item-has-children > a::before,
body.ft-legal-page #meniuSus ul ul.sub-menu li.menu-item-has-children > a::after {
    background: #000;
}

body.ft-legal-page #meniuSus ul ul.sub-menu li:hover > a {
    color: #000;
    background: linear-gradient(to right, rgba(244, 87, 199, 0.9) 0, rgba(242, 51, 79, 0.9) 100%);
}

body.ft-legal-page #rsp-menu.mm-menu_theme-custom .mm-iconbar {
    background: #f2334f;
}

body.ft-legal-page #rsp-menu.mm-menu_theme-custom .mm-navbars_top,
body.ft-legal-page #rsp-menu.mm-menu_theme-custom .mm-navbars_bottom,
body.ft-legal-page #rsp-menu.mm-menu_theme-custom .mm-panels {
    background: linear-gradient(to right, #f2334f 0, #f457c7 100%);
}

/* --- Footer --- */
body.ft-legal-page .main-footer {
    background-color: #000 !important;
    color: #fff !important;
}

body.ft-legal-page .main-footer a { color: #fff; }

body.ft-legal-page .main-footer .cta-contact {
    color: #DD1B68;
    background-color: #000;
}

body.ft-legal-page .main-footer .cta-contact .heading-box { color: #fff; }
body.ft-legal-page .main-footer .cta-contact .heading-box .ante { color: #DD1B68; }

body.ft-legal-page .main-footer .drepturi {
    background: linear-gradient(to right, #f457c7 0%, #f2334f 100%);
}

/* =============================================
   PAGE CONTENT
   ============================================= */

.pc-page {
    background: #f7f7f8;
    padding: 140px 0 96px;
}

.pc-page .pc-hero { margin-bottom: 42px; }

.pc-page .pc-kicker {
    display: inline-block;
    margin-bottom: 14px;
    text-transform: uppercase;
    letter-spacing: .14em;
    font-size: 12px;
    font-weight: 700;
    opacity: .75;
    color: #000;
}

.pc-page .pc-hero h1 {
    margin: 0 0 18px;
    font-size: 56px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: -0.03em;
    color: #000;
}

.pc-page .pc-lead {
    max-width: 900px;
    margin-bottom: 22px;
    font-size: 22px;
    line-height: 1.6;
    color: rgba(0, 0, 0, .72);
}

.pc-page .pc-hero-chips { display: flex; flex-wrap: wrap; gap: 12px; }

.pc-page .pc-hero-chips span {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 18px;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 999px;
    background: #fff;
    color: #000;
    font-size: 14px;
}

.pc-page .pc-meta-grid { display: grid; gap: 16px; }

.pc-page .pc-meta-card {
    padding: 22px 24px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 20px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .05);
}

.pc-page .pc-meta-card span {
    display: block;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: .12em;
    font-size: 12px;
    color: rgba(0, 0, 0, .55);
}

.pc-page .pc-meta-card strong {
    display: block;
    font-size: 20px;
    line-height: 0.8;
    color: #000;
}

/* --- Sidebar --- */
.pc-page .pc-layout > .row {
    align-items: flex-start !important;
}

.pc-page .pc-layout > .row > aside {
    align-self: flex-start !important;
}

.pc-page .pc-sidebar {
    padding: 28px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 24px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .05);
    /* sticky se face din JS — nu mai depindem de CSS */
}

.pc-page .pc-sidebar h3 {
    margin: 0 0 18px;
    font-size: 26px;
    font-weight: 800;
    color: #000;
}

.pc-page .pc-nav { display: flex; flex-direction: column; gap: 8px; }

.pc-page .pc-nav a {
    display: block;
    padding: 12px 14px;
    border-radius: 14px;
    color: #000;
    text-decoration: none;
    font-size: 15px;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.pc-page .pc-nav a:hover,
.pc-page .pc-nav a:focus {
    background: rgba(0, 0, 0, .04);
    transform: translateX(2px);
}

.pc-page .pc-nav a.active {
    background: rgba(242, 51, 79, .08);
    color: #f2334f;
    font-weight: 600;
}

.pc-page .pc-content { min-width: 0; }

.pc-page .pc-section {
    margin-bottom: 28px;
    padding: 28px 30px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 24px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .05);
    scroll-margin-top: 140px;
}

.pc-page .pc-section:last-child { margin-bottom: 0; }

.pc-page .pc-section h2 {
    margin: 0 0 18px;
    font-size: 42px;
    line-height: 1.08;
    letter-spacing: -0.03em;
    color: #000;
}

.pc-page .pc-section h3 {
    margin: 0 0 12px;
    font-size: 22px;
    font-weight: 700;
    color: #000;
}

.pc-page .pc-section p,
.pc-page .pc-section li,
.pc-page .pc-table th,
.pc-page .pc-table td {
    font-size: 19px;
    line-height: 1.8;
    color: rgba(0, 0, 0, .8);
}

.pc-page .pc-section ul { padding-left: 22px; margin-bottom: 0; }

.pc-page .pc-section a {
    color: #f2334f;
    text-decoration: underline;
    text-decoration-color: rgba(242, 51, 79, .3);
    text-underline-offset: 3px;
    transition: text-decoration-color .2s ease;
}

.pc-page .pc-section a:hover { text-decoration-color: #f2334f; }

.pc-page .pc-note {
    margin-top: 22px;
    padding: 18px 20px;
    background: #f4f7fb;
    border: 1px solid rgba(0, 0, 0, .06);
    border-radius: 18px;
    color: rgba(0, 0, 0, .72);
    font-size: 16px;
    line-height: 1.7;
}

.pc-page .pc-table { margin-bottom: 0; }
.pc-page .pc-table th { border-top: 0; border-bottom-width: 1px; font-weight: 800; }
.pc-page .pc-table td { vertical-align: top; }

/* =============================================
   RESPONSIVE
   ============================================= */

@media (max-width: 1199.98px) {
    .pc-page .pc-hero h1 { font-size: 48px; }
    .pc-page .pc-section h2 { font-size: 34px; }
    .pc-page .pc-meta-card strong { font-size: 26px; }
}

@media (max-width: 991.98px) {
    .pc-page { padding: 120px 0 72px; }
    .pc-page .pc-hero { margin-bottom: 28px; }
    .pc-page .pc-meta-grid { margin-top: 24px; }
    .pc-page .pc-sidebar { margin-bottom: 24px; }
}

@media (max-width: 767.98px) {
    .pc-page { padding: 104px 0 56px; }
    .pc-page .pc-hero h1 { font-size: 38px; }
    .pc-page .pc-lead,
    .pc-page .pc-section p,
    .pc-page .pc-section li,
    .pc-page .pc-table th,
    .pc-page .pc-table td { font-size: 16px; line-height: 1.7; }
    .pc-page .pc-section,
    .pc-page .pc-sidebar,
    .pc-page .pc-meta-card { padding: 22px 20px; border-radius: 18px; }
    .pc-page .pc-section h2 { font-size: 30px; }
}
