/**
 * Public CSS Stylesheet for News, Featured News, Newsletter & Paginated News
 *
 * @package KUADThemeDesigner
 */

/* Section Containers - Standard Spacing */
.ks-section-news,
.ks-section-news-featured,
.ks-section-news-paginated,
.ks-section-newsletter,
.ks-section-news-single-article,
.wp-block-group.alignfull.ks-section-news,
.wp-block-group.alignfull.ks-section-news-featured,
.wp-block-group.alignfull.ks-section-news-paginated,
.wp-block-group.alignfull.ks-section-newsletter,
.wp-block-group.alignfull.ks-section-news-single-article {
    padding: 80px 20px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    position: relative !important;
}

/* Base & Default Section Shading */
.ks-section-news,
.ks-section-news-featured,
.ks-section-news-paginated,
.ks-section-news-single-article,
.ks-section-testimonies,
.wp-block-group.alignfull.ks-section-news,
.wp-block-group.alignfull.ks-section-news-featured,
.wp-block-group.alignfull.ks-section-news-paginated,
.wp-block-group.alignfull.ks-section-news-single-article,
.wp-block-group.alignfull.ks-section-testimonies {
    background-color: var(--ks-block-bg-default, var(--ks-bg-color, #ffffff)) !important;
}

/* Alternate / Highlighted Section Shading (Visual Separation) */
.ks-section-newsletter,
.ks-section-alt-bg,
.wp-block-group.alignfull.ks-section-newsletter,
.wp-block-group.alignfull.ks-section-alt-bg {
    background-color: var(--ks-block-bg-alt, var(--ks-card-bg, #f7f5fb)) !important;
}

/* Inner Layout Containers */
.ks-news-inner-container,
.ks-news-featured-inner-container,
.ks-news-paginated-inner-container,
.ks-newsletter-inner-container {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Headers & Universal Centering */
.ks-news-section-header,
.ks-news-featured-section-header,
.ks-news-paginated-section-header,
.ks-newsletter-section-header,
.ks-section-news .ks-news-section-header,
.ks-section-news-featured .ks-news-featured-section-header,
.ks-section-news-paginated .ks-news-paginated-section-header,
.ks-section-newsletter .ks-newsletter-section-header {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
    width: 100% !important;
    max-width: 900px !important;
    margin-bottom: 45px !important;
}

.ks-section-news h2,
.ks-section-news-featured h2,
.ks-section-news-paginated h2,
.ks-section-newsletter h2,
.ks-section-news .ks-heading-primary,
.ks-section-news-featured .ks-heading-primary,
.ks-section-news-paginated .ks-heading-primary,
.ks-section-newsletter .ks-heading-primary,
.ks-section-news .wp-block-heading,
.ks-section-news-featured .wp-block-heading,
.ks-section-news-paginated .wp-block-heading,
.ks-section-newsletter .wp-block-heading,
.ks-news-section-header h2,
.ks-news-featured-section-header h2,
.ks-news-paginated-section-header h2,
.ks-newsletter-section-header h2,
.ks-section-hero-internal h1,
.ks-section-hero-internal .wp-block-heading,
.ks-heading-massive-center,
.has-text-align-center {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 12px !important;
}

.ks-news-section-header h2,
.ks-news-featured-section-header h2,
.ks-news-paginated-section-header h2,
.ks-newsletter-section-header h2,
.ks-section-news .ks-news-section-header h2 {
    font-family: var(--ks-heading-font, 'Poppins', sans-serif) !important;
    font-size: var(--ks-font-size-h2, clamp(1.6rem, 3.5vw, 2.3rem)) !important;
    color: var(--ks-heading-color, var(--ks-primary-color, #2D1A68)) !important;
    font-weight: 700 !important;
    margin: 0 auto 12px auto !important;
    line-height: 1.25 !important;
    text-align: center !important;
    width: 100% !important;
    display: block !important;
}

.ks-news-section-header p,
.ks-news-featured-section-header p,
.ks-news-paginated-section-header p,
.ks-newsletter-section-header p,
.ks-section-news p.ks-text-intro-center,
.ks-section-news-featured p.ks-text-intro-center,
.ks-section-news-paginated p.ks-text-intro-center,
.ks-section-newsletter p.ks-text-intro-center,
.ks-section-news .ks-news-section-header p,
.ks-text-intro-center {
    font-family: var(--ks-body-font, 'Poppins', sans-serif) !important;
    font-size: var(--ks-font-size-body, clamp(0.95rem, 1.3vw, 1.1rem)) !important;
    color: var(--ks-text-color, #666666) !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    line-height: 1.6 !important;
    text-align: center !important;
    width: 100% !important;
    display: block !important;
}

/* Title Dividers */
.ks-news-section-header .ks-title-divider,
.ks-news-featured-section-header .ks-title-divider,
.ks-news-paginated-section-header .ks-title-divider,
.ks-newsletter-section-header .ks-title-divider,
.ks-section-news .ks-title-divider,
.ks-title-divider {
    width: 60px !important;
    height: 3px !important;
    background: var(--ks-secondary-color, #C05A86) !important;
    margin: 18px auto 0 auto !important;
    border-radius: 4px !important;
    display: block !important;
}

/* Generous separation between subtitle and news content */
.ks-section-news p.ks-text-secondary,
.ks-section-news p.ks-text-intro-center,
.ks-section-news .ks-text-secondary {
    margin-bottom: clamp(36px, 5vw, 56px) !important;
}

/* Newsletter Specific Polish */
.ks-newsletter-content-wrap {
    max-width: 650px !important;
    margin: 0 auto !important;
}

/* ============================================================
   NEWS CONTENT WRAPPER & SLIDER (TOUCH UI)
   ============================================================ */
.ks-news-content-wrap,
.ks-section-news .ks-news-content-wrap,
.ks-section-news .ks-news-home-content-wrap,
.ks-section-news > .wp-block-group.alignwide {
    width: 100% !important;
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    position: relative !important;
    box-sizing: border-box !important;
}

.ks-news-thumbnail,
.ks-section-news .ks-news-thumbnail {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 clamp(16px, 3.5vw, 54px) !important;
    box-sizing: border-box !important;
}

.ks-news-thumbnail .slick-slider,
.ks-section-news .slick-slider,
.ks-news-thumbnail-slider-base {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    position: relative !important;
}

.ks-news-thumbnail .slick-list,
.ks-section-news .slick-list {
    overflow: hidden !important;
    margin: 0 -10px !important;
    padding: 16px 0 !important;
}

.ks-news-thumbnail .slick-track,
.ks-section-news .slick-track {
    display: flex !important;
    align-items: stretch !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* ============================================================
   NEWS CARDS (NEUMORPHIC SOFT UI DESIGN)
   ============================================================ */
.ks-section-news .ks-news-thumbnail-item,
.ks-news-thumbnail .ks-news-thumbnail-item,
.ks-news-thumbnail-item {
    height: auto !important;
    min-height: 420px !important;
    margin: 0 10px !important;
    background-color: var(--ks-block-card-bg, #FFFFFF) !important;
    border-radius: var(--ks-card-radius, 20px) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.07), inset 0 0 0 1px rgba(var(--ks-primary-rgb, 45, 26, 104), 0.08) !important;
    border: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    overflow: hidden !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease !important;
    float: left !important;
}

.ks-section-news .ks-news-thumbnail-item:hover,
.ks-news-thumbnail .ks-news-thumbnail-item:hover,
.ks-news-thumbnail-item:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12), inset 0 0 0 1px rgba(var(--ks-primary-rgb, 45, 26, 104), 0.14) !important;
}

.ks-news-thumbnail-item-thumb {
    width: 100% !important;
    height: 190px !important;
    overflow: hidden !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    background-color: rgba(var(--ks-primary-rgb, 45, 26, 104), 0.04) !important;
}

.ks-news-thumbnail-item-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    border-radius: 0 !important;
    margin: 0 auto !important;
    transition: transform 0.35s ease !important;
}

.ks-news-thumbnail-item:hover .ks-news-thumbnail-item-thumb img {
    transform: scale(1.05) !important;
}

.ks-news-thumbnail-content {
    padding: 22px 22px 16px 22px !important;
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    box-sizing: border-box !important;
    text-align: left !important;
}

.ks-section-news .ks-news-thumbnail-item-title,
.ks-news-thumbnail-item-title {
    font-family: var(--ks-heading-font, 'Poppins', sans-serif) !important;
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    color: var(--ks-heading-color, var(--ks-primary-color, #2D1A68)) !important;
    line-height: 1.35 !important;
    margin: 0 0 10px 0 !important;
    text-align: left !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.ks-section-news .ks-news-thumbnail-item-description,
.ks-news-thumbnail-item-description,
div.ks-news-thumbnail-item-description {
    font-family: var(--ks-body-font, 'Inter', sans-serif) !important;
    font-size: 0.92rem !important;
    line-height: 1.55 !important;
    color: var(--ks-text-muted, var(--ks-text-color, #666666)) !important;
    margin: 0 !important;
    text-align: left !important;
    flex-grow: 1 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.ks-section-news .ks-news-thumbnail-item-data,
.ks-news-thumbnail-item-data {
    position: static !important;
    width: 100% !important;
    padding: 14px 22px 18px 22px !important;
    margin: auto 0 0 0 !important;
    font-family: var(--ks-body-font, 'Inter', sans-serif) !important;
    font-size: 0.82rem !important;
    color: var(--ks-text-muted, #888888) !important;
    border-top: 1px solid rgba(var(--ks-primary-rgb, 45, 26, 104), 0.07) !important;
    box-sizing: border-box !important;
    text-align: left !important;
    display: flex !important;
    align-items: center !important;
    background: transparent !important;
}

/* ============================================================
   PERFECTLY CENTERED TOUCH UI SLIDER ARROWS FOR NEWS
   (Matched exactly to Services Slider Arrows Style)
   ============================================================ */
.ks-news-thumbnail-slick-arrow,
.ks-news-thumbnail-slick-prev,
.ks-news-thumbnail-slick-next,
.ks-news-thumbnail .ks-news-thumbnail-slick-arrow,
.ks-section-news .ks-news-thumbnail-slick-arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 10 !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    border-radius: 50% !important;
    background-color: var(--ks-block-card-bg, #FFFFFF) !important;
    border: 1px solid rgba(var(--ks-primary-rgb, 45, 26, 104), 0.12) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15) !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    background-image: none !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
    opacity: 0.95 !important;
    -webkit-appearance: none !important;
}

.ks-news-thumbnail-slick-prev,
.ks-news-thumbnail [class*="ks-news-thumbnail-slick-"][class*="-prev"],
.ks-section-news .ks-news-thumbnail-slick-prev {
    left: 6px !important;
    right: auto !important;
}

.ks-news-thumbnail-slick-next,
.ks-news-thumbnail [class*="ks-news-thumbnail-slick-"][class*="-next"],
.ks-section-news .ks-news-thumbnail-slick-next {
    right: 6px !important;
    left: auto !important;
}

.ks-news-thumbnail-slick-prev::before,
.ks-news-thumbnail [class*="ks-news-thumbnail-slick-"][class*="-prev"]::before,
.ks-section-news .ks-news-thumbnail-slick-prev::before {
    content: "" !important;
    display: block !important;
    width: 10px !important;
    height: 10px !important;
    border-left: 2.5px solid var(--ks-secondary-color, var(--ks-primary-color, #C05A86)) !important;
    border-bottom: 2.5px solid var(--ks-secondary-color, var(--ks-primary-color, #C05A86)) !important;
    transform: rotate(45deg) !important;
    margin-left: 3px !important;
}

.ks-news-thumbnail-slick-next::before,
.ks-news-thumbnail [class*="ks-news-thumbnail-slick-"][class*="-next"]::before,
.ks-section-news .ks-news-thumbnail-slick-next::before {
    content: "" !important;
    display: block !important;
    width: 10px !important;
    height: 10px !important;
    border-right: 2.5px solid var(--ks-secondary-color, var(--ks-primary-color, #C05A86)) !important;
    border-top: 2.5px solid var(--ks-secondary-color, var(--ks-primary-color, #C05A86)) !important;
    transform: rotate(45deg) !important;
    margin-right: 3px !important;
}

.ks-news-thumbnail-slick-prev:hover,
.ks-news-thumbnail-slick-next:hover,
.ks-news-thumbnail .ks-news-thumbnail-slick-arrow:hover,
.ks-news-thumbnail-slick-arrow:hover,
.ks-section-news .ks-news-thumbnail-slick-arrow:hover {
    opacity: 1 !important;
    transform: translateY(-50%) scale(1.1) !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.22) !important;
    border-color: var(--ks-accent-color, #1BA59D) !important;
}

.ks-news-thumbnail-slick-prev:hover::before,
.ks-news-thumbnail-slick-next:hover::before,
.ks-news-thumbnail [class*="ks-news-thumbnail-slick-"][class*="-prev"]:hover::before,
.ks-news-thumbnail [class*="ks-news-thumbnail-slick-"][class*="-next"]:hover::before,
.ks-section-news .ks-news-thumbnail-slick-arrow:hover::before {
    border-color: var(--ks-accent-color, #1BA59D) !important;
}

/* Force override any legacy arrow classes or raster backgrounds */
.ks-news-thumbnail-slick-arrow-left-type-a,
.ks-news-thumbnail-slick-arrow-left-type-b,
.ks-news-thumbnail-slick-arrow-right-type-a,
.ks-news-thumbnail-slick-arrow-right-type-b {
    background-image: none !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .ks-section-news,
    .ks-section-news-featured,
    .ks-section-news-paginated,
    .ks-section-newsletter,
    .ks-section-news-single-article {
        padding: 50px 16px !important;
    }

    .ks-news-section-header,
    .ks-news-featured-section-header,
    .ks-news-paginated-section-header,
    .ks-newsletter-section-header {
        margin-bottom: 30px !important;
    }
}

