/* News/Blog Page */
/* ===== FEATURED NEWS ===== */
.featured-section {
    background: var(--navy-deep);
    padding: var(--news-section-pad-bottom) var(--news-section-pad-x-fluid);
}

.featured-grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: var(--featured-grid-gap);
}

.featured-main {
    position: relative;
    background: var(--featured-card-bg);
    border: 1px solid var(--card-border);
    overflow: hidden;
    transition: border-color var(--transition-base),
                transform var(--transition-base);
}

.featured-main:hover {
    border-color: var(--teal);
    transform: translateY(var(--featured-card-lift));
}

.featured-image {
    height: var(--featured-image-height);
    background: linear-gradient(135deg, var(--navy-light) 0%, var(--navy) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.featured-image::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(0,201,167,0.1) 0%, rgba(0,180,216,0.1) 100%);
}

.featured-image-placeholder {
    font-size: var(--featured-image-placeholder-size);
    color: var(--teal);
    opacity: 0.3;
}

.featured-content {
    padding: var(--featured-content-pad);
}

.news-category {
    display: inline-block;
    font-size: var(--news-category-size);
    color: var(--teal);
    letter-spacing: var(--category-eyebrow-tracking);
    text-transform: uppercase;
    background: var(--news-category-bg);
    padding: var(--news-category-pad-y) var(--news-category-pad-x);
    margin-bottom: var(--news-category-gap);
}

.featured-main h2 {
    font-size: var(--news-title-size-lg);
    line-height: 1.4;
    margin-bottom: var(--space-sm);
}

.featured-main h2 a {
    color: var(--text);
    text-decoration: none;
    transition: color var(--transition-base);
}

.featured-main h2 a:hover {
    color: var(--teal);
}

.news-meta {
    display: flex;
    align-items: center;
    gap: var(--news-meta-gap);
    margin-bottom: var(--space-sm);
}

.news-date {
    font-size: var(--news-date-size);
    color: var(--muted);
    display: flex;
    align-items: center;
    gap: var(--breadcrumbs-gap);
}

.news-date svg {
    width: var(--news-date-icon-size);
    height: var(--news-date-icon-size);
    stroke: var(--muted);
    stroke-width: 1.5;
    fill: none;
}

.news-excerpt {
    font-size: var(--news-excerpt-size);
    line-height: var(--service-card-copy-line-height);
    margin-bottom: var(--news-excerpt-gap);
}

.read-more {
    display: inline-flex;
    align-items: center;
    gap: var(--read-more-gap);
    color: var(--teal);
    text-decoration: none;
    font-size: var(--read-more-size);
    font-weight: 600;
    transition: gap var(--transition-base);
}

.read-more:hover {
    gap: var(--read-more-gap-hover);
}

.read-more svg {
    width: var(--read-more-icon-size);
    height: var(--read-more-icon-size);
    stroke: currentColor;
    stroke-width: 2;
    fill: none;
}

/* Featured sidebar */
.featured-sidebar {
    display: flex;
    flex-direction: column;
    gap: var(--space-text-gap);
}

.featured-small {
    background: var(--featured-card-bg);
    border: 1px solid var(--card-border);
    padding: var(--featured-small-pad);
    transition: background var(--transition-base),
                border-color var(--transition-base);
    flex: 1;
}

.featured-small:hover {
    border-color: var(--teal);
    background: rgba(0,180,216,0.05);
}

.featured-small h3 {
    font-size: var(--news-title-size-sm);
    line-height: 1.5;
    margin-bottom: var(--space-tag-gap);
}

.featured-small h3 a {
    color: var(--text);
    text-decoration: none;
    transition: color var(--transition-base);
}

.featured-small h3 a:hover {
    color: var(--teal);
}

/* ===== NEWS GRID ===== */
.news-section {
    background: var(--navy);
    padding: var(--news-section-pad-top) var(--news-section-pad-x-fluid) var(--news-section-pad-bottom);
}

.news-layout {
    display: grid;
    grid-template-columns: 1fr var(--news-layout-sidebar);
    gap: var(--news-layout-gap);
}

.news-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--news-grid-gap);
}

.news-card {
    background: var(--featured-card-bg);
    border: 1px solid var(--card-border);
    transition: border-color var(--transition-base),
                transform var(--transition-base);
    overflow: hidden;
}

.news-card:hover {
    border-color: var(--teal);
    transform: translateY(var(--featured-card-lift));
}

.news-card-image {
    height: var(--news-card-image-height);
    background: linear-gradient(135deg, var(--navy-light) 0%, var(--navy-deep) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.news-card-image::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(0,201,167,0.08) 0%, rgba(0,180,216,0.08) 100%);
}

.news-card-image-placeholder {
    font-size: var(--news-card-image-placeholder-size);
    color: var(--teal);
    opacity: 0.2;
}

.news-card-content {
    padding: var(--news-card-content-pad);
}

.news-card h3 {
    font-size: var(--news-title-size-md);
    line-height: 1.5;
    margin-bottom: var(--space-tag-gap);
}

.news-card h3 a {
    color: var(--text);
    text-decoration: none;
    transition: color var(--transition-base);
}

.news-card h3 a:hover {
    color: var(--teal);
}

.news-card .news-excerpt {
    font-size: var(--news-excerpt-size-sm);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ===== SIDEBAR ===== */
.sidebar {
    display: flex;
    flex-direction: column;
    gap: var(--sidebar-gap);
}

.sidebar-widget {
    background: var(--featured-card-bg);
    border: 1px solid var(--card-border);
    padding: var(--sidebar-widget-pad);
}

.sidebar-widget h4 {
    font-size: var(--sidebar-title-size);
    font-weight: 600;
    color: var(--text);
    margin-bottom: var(--sidebar-title-gap);
    display: flex;
    align-items: center;
    gap: 10px;
}

.sidebar-widget h4 svg {
    width: var(--sidebar-title-icon-size);
    height: var(--sidebar-title-icon-size);
    stroke: var(--teal);
    stroke-width: 1.5;
    fill: none;
}

/* Tags */
.tags-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--tags-gap);
}

.tag-pill {
    font-size: var(--tag-pill-size);
    color: var(--muted);
    background: var(--tag-pill-bg);
    border: 1px solid var(--card-border);
    padding: var(--tag-pill-pad-y) var(--tag-pill-pad-x);
    text-decoration: none;
    transition: all var(--transition-base);
}

.tag-pill:hover {
    color: var(--teal);
    border-color: var(--teal);
    background: var(--tag-pill-bg-hover);
}

/* Categories */
.categories-list {
    display: flex;
    flex-direction: column;
    gap: var(--category-list-gap);
}

.category-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--category-item-pad-y) 0;
    border-bottom: 1px solid var(--card-border);
    text-decoration: none;
    transition: all var(--transition-base);
}

.category-item:last-child {
    border-bottom: none;
}

.category-item span {
    font-size: var(--category-item-size);
    color: var(--muted);
    transition: color var(--transition-base);
}

.category-item:hover span {
    color: var(--teal);
}

.category-count {
    font-size: var(--category-count-size);
    color: var(--navy);
    background: var(--muted);
    padding: var(--category-count-pad-y) var(--category-count-pad-x);
    border-radius: 10px;
    transition: all var(--transition-base);
}

.category-item:hover .category-count {
    background: var(--teal);
}

/* Recent posts */
.recent-list {
    display: flex;
    flex-direction: column;
    gap: var(--recent-list-gap);
}

.recent-item {
    display: flex;
    gap: var(--recent-item-gap);
    text-decoration: none;
}

.recent-item-number {
    font-size: var(--recent-number-size);
    font-weight: 700;
    color: var(--navy-light);
    -webkit-text-stroke: 1px var(--teal);
    line-height: 1;
    min-width: 30px;
}

.recent-item-content h5 {
    font-size: var(--recent-title-size);
    font-weight: 500;
    color: var(--text);
    line-height: 1.5;
    margin-bottom: 4px;
    transition: color var(--transition-base);
}

.recent-item:hover h5 {
    color: var(--teal);
}

.recent-item-date {
    font-size: var(--recent-date-size);
    color: var(--muted);
}

/* ===== PAGINATION ===== */
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--pagination-gap);
    margin-top: var(--pagination-top-gap);
}

.pagination a,
.pagination span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--pagination-size);
    height: var(--pagination-size);
    font-size: var(--pagination-font-size);
    font-weight: 500;
    color: var(--muted);
    background: var(--featured-card-bg);
    border: 1px solid var(--card-border);
    text-decoration: none;
    transition: all var(--transition-base);
}

.pagination a:hover {
    color: var(--teal);
    border-color: var(--teal);
}

.pagination .active {
    color: var(--navy);
    background: var(--teal);
    border-color: var(--teal);
}

.pagination .dots {
    background: transparent;
    border: none;
    color: var(--muted);
}

.pagination .nav-arrow {
    width: auto;
    padding: 0 var(--pagination-arrow-pad-x);
    gap: 6px;
}

.pagination .nav-arrow svg {
    width: var(--read-more-icon-size);
    height: var(--read-more-icon-size);
    stroke: currentColor;
    stroke-width: 2;
    fill: none;
}

/* ===== NEWSLETTER ===== */
.newsletter-section {
    background: var(--grad-dark-teal);
    padding: var(--news-section-pad-bottom) var(--news-section-pad-x-fluid);
}

.newsletter-content {
    max-width: var(--newsletter-max);
    margin: 0 auto;
    text-align: center;
}

.newsletter-content h2,
.newsletter-content p {
    color: var(--text);
}

.newsletter-content p {
    margin: var(--newsletter-copy-gap-top) 0 var(--newsletter-copy-gap-bottom);
    opacity: var(--newsletter-copy-opacity);
}

.newsletter-form {
    display: flex;
    gap: var(--newsletter-form-gap);
}

.newsletter-form input {
    flex: 1;
    padding: var(--newsletter-input-pad-y) var(--newsletter-input-pad-x);
    font-family: var(--font-family-base);
    font-size: var(--newsletter-input-font-size);
    background: var(--newsletter-input-bg);
    border: 1px solid var(--newsletter-input-border);
    color: var(--text);
    outline: none;
    transition: all var(--transition-base);
}

.newsletter-form input::placeholder {
    color: var(--newsletter-placeholder);
}

.newsletter-form input:focus {
    background: var(--newsletter-input-bg-focus);
    border-color: var(--newsletter-input-border-focus);
}


/* newsletter-form button → 05-buttons.css */
/* footer / .footer-simple / .footer-copy → 07-footer.css */
