/*
Theme Name:   Newspaper Child
Theme URI:    https://lifesciwave.com/
Description:  Child theme pentru Newspaper
Author:       Transiris
Author URI:   https://lifesciwave.com/
Template:     Newspaper
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  newspaper-child
*/

/* ============================================
   SECTIUNEA 1: STILURI PENTRU ECRANE LARGI (Desktop)
   ============================================ */

@media screen and (min-width: 992px) {
    /* Container principal */
    .td-container {
        max-width: 1192px;
        width: 100%;
    }
    /* Rand personalizat pentru pagina principala */
    .vc_row.custom_row_home {
        max-width: 1972px;
        margin: 0 auto 50px !important;
    }
    /* Adjustari margini pentru randuri WPBakery */
    #tdi_80 .wpb_row {
        margin-left: -10px !important;
        margin-right: -10px !important;
    }
    /* Stiluri pentru header-ul sticky */
    .td-header-template-wrap .tdc-row.stretch_row_1200.td-stretch-content {
        max-width: 1212px;
        padding: 0 !important;
    }
    .td-header-template-wrap .tdc-row-content-vert-center {
        margin: 0 !important;
    }
    .td-header-template-wrap .tdb_header_logo {
        padding-left: 0px !important;
        padding-right: 0px !important;
        margin: 0 !important;
    }
    .td-header-template-wrap .td-header-desktop-sticky-wrap .tdc-zone {
        max-width: 1212px !important;
        padding: 0 !important;
        margin: 0 auto !important;
        display: table !important;
        width: 100%;
    }
    .td-header-template-wrap .td-header-desktop-sticky-wrap .td-pb-row {
        margin: 0 !important;
    }
    .td-header-template-wrap .td-header-desktop-sticky-wrap .td-pb-row .vc_column_container {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
    /* Stiluri pentru pagina principala (home) */
    .home .last_row_home .td-module-meta-info .entry-title {
        min-height: 54px;
    }
    /* Stiluri pentru paginile de categorii */
    .category .tdc-row:nth-of-type(3) .vc_column:nth-child(2) .td-image-container {
        max-height: 440px;
        overflow: hidden;
    }
    .category .tdc-row:nth-of-type(3) .vc_column:nth-child(3) .entry-title {
        min-height: 54px;
    }
    .category .tdc-row:nth-of-type(3) .vc_column:nth-child(3) .td_module_flex {
        min-height: 290px;
        margin: 0;
    }
    .category .tdc-row:nth-of-type(3) .vc_column:nth-child(3) .td-image-container {
        max-height: 150px;
        overflow: hidden;
    }
    .category .tdc-row:nth-of-type(5) .td_module_wrap .entry-title,
    .category .tdc-row:nth-of-type(5) .entry-title {
        min-height: 75px;
        font-size: 18px;
    }
    /* Stiluri pentru paginile de articole single */
    .single-post .tdc-row:nth-of-type(3) {
        max-width: 1192px;
        width: 100%;
    }
    .subscribe-template-main .td-ss-main-content {
        display: flex;
        gap: 30px;
        justify-content: space-between;
    }
    .subscribe-template-main .td-ss-main-content .col-md-6 {
        width: 50%;
    }
    #nf-form-2-cont {
        margin: 0;
        padding: 30px 30px 0;
        border: 1px solid rgba(0, 0, 0, 0.15);
    }
}

/* ============================================
   SECTIUNEA 2: STILURI PENTRU NINJA FORMS
   ============================================ */

/* Stil pentru campul email in Ninja Forms */
.nf-form-cont textarea::placeholder ,
.nf-form-cont input::-webkit-input-placeholder {
    font-size: 16px;
    line-height: 24px;
    color: #444;
}

.nf-form-cont textarea,
.nf-form-cont select,
.nf-form-cont input[type="text"],
.nf-form-cont input[type="email"] {
    padding: 9px;
    font-size: 16px;
    line-height: 24px;
    color: #000;
}

.nf-field-element select {
    color: #444;
    border: 1px solid #e1e1e1;
    width: 100%;
    max-width: 100%;
    border-radius: 0 !important;
}

.checkbox-container .checkbox-wrap {
    align-items: flex-start;
    gap: 5px;
}

.checkbox-container .nf-field-label {
    padding: 0 !important;
}

/* Containerul principal al formularului Ninja Forms */

.nf-form-cont {
    max-width: 600px;
}

/* Ascundem continutul dinaintea formularului */

.nf-before-form-content {
    display: none !important;
}

/* Stiluri generale pentru campurile de input si select */

.nf-field-element select {
    padding: 10px;
}

.nf-field-element select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    font-family: inherit;
    background-color: #ffffff;
    border: 1px solid #d1d5db;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 16px;
    cursor: pointer;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.nf-field-element select:hover {
    border-color: #9ca3af;
}

.nf-field-element select:focus {
    outline: none;
    border-color: #000;
    box-shadow: none;
}

/* Opțiuni stilizate */

.nf-field-element select option {
    padding: 8px;
    background-color: #ffffff;
    color: #1f2937;
}

.nf-field-element select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.nf-field-element select::-ms-expand {
    display: none;
}

.nf-form-cont .nf-field-element textarea {
    max-height: 100px;
    min-height: 0;
}

/* Stil pentru butonul de submit */

.nf-form-cont input[type=submit] {
    font-size: 16px;
    color: #fff;
    padding: 10px 30px;
    font-family: inherit;
    border: 0;
}

/* Container pentru fiecare camp din formular */

.nf-form-cont .nf-field-container {
    clear: both;
    margin-bottom: 15px;
}

/* Mesaj de raspuns dupa trimitere */

.nf-response-msg p strong {
    font-family: GeneralSans-Bold;
    font-weight: 600;
}

/* ============================================
   SECTIUNEA 3: STILURI PENTRU TITLURI È˜I ELEMENTE ASCUNSE
   ============================================ */

/* Stil pentru titlul categoriei */

.tdb_title.tdb-category-title {
    padding: 30px 0;
    margin: 0 !important;
}

.tdb_title.tdb-category-title h1 {
    line-height: 1 !important;
}

/* Ascundem diverse elemente pe paginile single si categorii */

#td-mobile-nav .td-menu-socials,
.single .tdb-author-box,
.tdb-author-photo,
.tdb_author_comments_count,
.tdb-author-img,
.tdb-author-descr,
.category .td_block_empty_space {
    display: none !important;
}

/* ============================================
   SECTIUNEA 4: STILURI PENTRU FOOTER
   ============================================ */

/* Coloanele din footer */

.footer_column {
    padding-top: 40px;
}

.footer_column ul {
    padding: 0;
    list-style: none;
    margin: 0;
}

.footer_column ul li {
    padding: 0;
    list-style: none;
    margin: 0 0 10px;
}

/* Link-uri din footer cu efect de hover */

.footer_column ul li a {
    transform: translateX(0px);
    transition: .5s all;
    display: flex;
}

.footer_column ul li a:hover {
    transform: translateX(5px);
    transition: .5s all;
}

/* Titluri in footer */

.footer_column h4 {
    font-weight: 800;
    font-family: Inter;
}

.footer_column h4 {
    font-family: GeneralSans-Bold;
    font-weight: 600;
}

/* Culori in footer */

.footer_column,
.footer_column a,
.footer_column h4 {
    color: #fff;
}

/* Logo in footer */

.logo_footer_column {
    margin: 0 0 30px !important;
}

.logo_footer_column p {
    margin: 0 !important;
}

/* Sectiunea social media in footer */

.social_media_footer br {
    display: none;
}

.social_media_footer p {
    display: flex;
    gap: 20px;
    width: 100px;
    align-items: center;
    justify-content: center;
}

.social_media_footer img {
    max-height: 20px;
}

.social_media_footer {
    filter: brightness(0) invert(1);
    padding-left: 0;
    display: flex;
    align-items: center;
}

/* ============================================
   SECTIUNEA 5: STILURI DIVERSE (Butoane, Pagini, Background)
   ============================================ */

/* Pozitionare buton */

.btn_pos {
    position: relative;
    float: right;
    margin-top: -31px;
    margin-bottom: 30px;
}

/* Stiluri pentru paginile template default */

.main-section h1,
.main-section h2,
.page-template-default .td-page-content h2 {
    margin: 0 0 15px;
}

.main-section h3,
.page-template-default .td-page-content h3 {
    margin: 0 0 15px;
}

.main-section li,
.main-section p,
.page-template-default .td-page-content li,
.page-template-default .td-page-content p {
    margin: 0 0 15px;
}

.page-template-default .td-pb-span8.td-main-content {
    width: 100%;
}

/* Background pentru elementele din header si footer */

.td-header-template-wrap .tdc-row .td-element-style .td-element-style-before,
.td-footer-template-wrap .tdc-row .td-element-style .td-element-style-before {
    background: #0d0b52 !important;
}
.custom-template-main,
.subscribe-template-main {
    padding-bottom: 30px;
}

.main-section h1 {
    margin: 0 0 20px;
    font-family: GeneralSans-Bold;
    font-weight: 600;
    ;
}

/* ============================================
   SECTIUNEA 6: MEDIA QUERIES - ECRANE MEDII (Tablete)
   ============================================ */

@media screen and (max-width: 991px) {
    #nf-form-2-cont {
        margin-top: 30px;
    }
    /* Buton read more */
    .read-more {
        padding: 5px 10px;
    }
    /* Rand personalizat pe mobil */
    .vc_row.custom_row_home {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .vc_row.custom_row_home .td-image-container {
        width: 100%;
    }
    .custom_row_home .td-category-pos-image {
        flex-direction: column-reverse !important;
    }
    .vc_row.custom_row_home .entry-title,
    .vc_row.custom_row_home .entry-title a {
        font-size: 24px !important;
        line-height: 1.2 !important;
    }
    .vc_row.custom_row_home .td-excerpt {
        display: inline-block;
        width: 100%;
        overflow-wrap: normal;
        word-break: inherit;
        column-count: 1;
    }
    .custom_row_home {
        margin-top: 0 !important;
    }
    .social_media_footer,
    .social_media_footer p {
        margin: 0 !important
    }
    .logo_footer_column {
        padding-top: 30px !important;
    }
    .footer_column {
        padding: 0;
        margin: 0 0 30px !important;
    }
}

/* ============================================
   SECTIUNEA 7: MEDIA QUERIES - ECRANE MICI (Mobile)
   ============================================ */

@media screen and (max-width: 767px) {
    /* Buton pozitionare pe mobil */
    .btn_pos {
        float: none;
        margin: 0;
    }
}