/* ========================================================== */
/* SMARTREPAIR — SERVISO NAUJIENOS                           */
/* Smoked Titanium + Steel Blue                              */
/* ========================================================== */

@font-face {
    font-family: 'News Adobe Clean Regular';
    src: url('../fonts/AdobeClean-Regular.otf') format('opentype');
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

:root {
    --sr-deep: #252b30;
    --sr-main: #2c3237;
    --sr-alt: #32393f;
    --sr-card: #383f45;
    --sr-elevated: #3d454c;
    --sr-footer: #24292e;

    --sr-text: #efeee9;
    --sr-text-secondary: #cdd0cc;
    --sr-text-muted: #a5aaa8;

    --sr-accent: #7b96ad;
    --sr-accent-strong: #617f97;
    --sr-accent-soft: #a1b6c5;

    --sr-line: rgba(222, 227, 230, .115);
    --sr-line-soft: rgba(222, 227, 230, .072);

    /* Keep old shared variables mapped to the current site system. */
    --grey-dark: #2c3237;
    --grey-mid: #383f45;
    --grey-light: #cdd0cc;
    --logo-dark: #7b96ad;
    --logo-light: #efeee9;
    --accent-amber: #7b96ad;
    --accent-amber-soft: rgba(161, 182, 197, .92);
    --header-background: #252b30;
    --header-border: rgba(222, 227, 230, .09);
    --navigation-default: rgba(205, 208, 204, .78);
    --navigation-hover: rgba(239, 238, 233, .98);
    --navigation-active: rgba(239, 238, 233, .95);
}

body {
    background: var(--sr-main);
    color: var(--sr-text-secondary);
}

main {
    display: block;
}

/* ========================================================== */
/* SHARED HEADER — MATCH HOMEPAGE                            */
/* ========================================================== */

.site-header {
    background: rgba(37, 43, 48, .982);
    border-bottom-color: rgba(222, 227, 230, .075);
    box-shadow: none;
}

.brand-smart { color: #a4b9c8; }
.brand-repair { color: var(--sr-text); }

.site-nav__link {
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-weight: 400;
    letter-spacing: .050em;
    color: rgba(205, 208, 204, .78);
}

.site-nav__link:hover,
.site-nav__link.current {
    color: var(--sr-text);
}

.site-nav__link::before,
.site-nav__link::after,
.site-nav__active-dot {
    background: var(--sr-accent);
}

.site-nav__link:focus-visible {
    color: #f0f0ec;
}

.menu-button span {
    background: rgba(239, 238, 233, .83);
}

@media (max-width: 1279px) {
    [data-mobile-overlay] .header-container {
        background: rgba(37, 43, 48, .992);
    }

    [data-mobile-overlay] .menu-button:hover,
    [data-mobile-overlay] .menu-button.open {
        background: rgba(123, 150, 173, .105);
        box-shadow: inset 0 0 0 1px rgba(161, 182, 197, .22);
    }

    [data-mobile-overlay] .menu-button.open span {
        background: var(--sr-accent-soft);
    }

    [data-mobile-overlay] .menu-button:focus-visible {
        outline-color: var(--sr-accent-soft);
    }

    [data-mobile-overlay] .mobile-menu-backdrop {
        background: rgba(21, 25, 29, .68);
        backdrop-filter: blur(6px);
    }

    [data-mobile-overlay] .mobile-menu {
        background: linear-gradient(155deg, #394147, #2b3237 72%);
        border-color: rgba(222, 227, 230, .105);
        box-shadow: 0 22px 62px rgba(9, 12, 15, .33);
    }

    [data-mobile-overlay] .mobile-menu__nav a {
        font-family: 'Barlow Semi Condensed', Arial, sans-serif;
        font-weight: 400;
        letter-spacing: .050em;
        color: var(--sr-text-secondary);
    }

    [data-mobile-overlay] .mobile-menu__nav a:hover {
        color: var(--sr-text);
        background: rgba(161, 182, 197, .062);
    }

    [data-mobile-overlay] .mobile-menu__nav a.current {
        color: #c6d5df;
        background: linear-gradient(90deg, rgba(123, 150, 173, .17), rgba(123, 150, 173, .04));
    }

    [data-mobile-overlay] .mobile-menu__nav a.current::before {
        background: var(--sr-accent);
    }

    [data-mobile-overlay] .mobile-menu__nav a:focus-visible {
        outline-color: rgba(161, 182, 197, .72);
        color: #d5dfe5;
        background: rgba(123, 150, 173, .09);
    }
}

/* ========================================================== */
/* PAGE HERO                                                 */
/* ========================================================== */

.news-hero {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(135deg, #2f363b 0%, #2c3237 49%, #292f34 100%);
    border-bottom: 1px solid rgba(222, 227, 230, .070);
}

.news-hero::before,
.news-archive::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.52'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-size: 180px 180px;
    mix-blend-mode: soft-light;
    opacity: .014;
}

.news-hero__container {
    position: relative;
    z-index: 1;
    width: min(calc(100% - clamp(48px, 6vw, 140px)), 1760px);
    min-height: clamp(430px, 32vw, 530px);
    margin: 0 auto;
    padding: clamp(66px, 5.2vw, 88px) 0;
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
    align-items: center;
    gap: clamp(64px, 7vw, 130px);
}

.news-hero__copy {
    max-width: 880px;
}

.news-hero__eyebrow,
.news-archive__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0;
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: clamp(12px, .72vw, 13px);
    font-weight: 400;
    line-height: 1;
    letter-spacing: .105em;
    color: var(--sr-accent-soft);
}

.news-hero__eyebrow::before,
.news-archive__eyebrow::before {
    content: none !important;
    display: none !important;
}

.news-hero__title {
    max-width: 760px;
    margin: 24px 0 0;
    font-family: 'Source Serif 4', Georgia, serif;
    font-weight: 400;
    font-size: clamp(40px, 3.35vw, 58px);
    line-height: 1.16;
    letter-spacing: -.025em;
    text-wrap: balance;
    color: var(--sr-text);
}

.news-hero__lead {
    max-width: 690px;
    margin: 26px 0 0;
    font-family: 'News Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: clamp(15.5px, .98vw, 17px);
    font-weight: 400;
    line-height: 1.68;
    letter-spacing: .002em;
    color: #c3c7c5;
}

.news-hero__visual {
    position: relative;
    justify-self: end;
    width: min(100%, 605px);
    min-width: 0;
    transform: translateY(2px);
}

.news-bulletin {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
    /* Tight physical depth — deliberately avoids a broad halo around the SVG. */
    filter: drop-shadow(0 5px 4px rgba(5, 8, 10, .19));
}

.news-bulletin path,
.news-bulletin rect,
.news-bulletin circle {
    vector-effect: non-scaling-stroke;
}

/* Final SVG polish: each sheet reads as a physical layer, not decorative line art. */
.news-bulletin__rear-far {
    opacity: .42;
}

.news-bulletin__rear-panel {
    opacity: .68;
    filter: drop-shadow(0 1px 1px rgba(5, 8, 10, .055));
}

.news-bulletin__frame {
    filter: drop-shadow(0 2px 2px rgba(5, 8, 10, .10));
}

.news-bulletin__header,
.news-bulletin__updates,
.news-bulletin__footer-strip {
    opacity: .96;
}

.news-bulletin__rear-far rect {
    fill: #2d3439;
    stroke: rgba(161, 182, 197, .11);
    stroke-width: 1;
}

.news-bulletin__rear-far path {
    fill: none;
    stroke: rgba(161, 182, 197, .13);
    stroke-width: 1;
    stroke-linecap: square;
}

.news-bulletin__rear-panel rect {
    fill: url(#newsRearSurface);
    stroke: rgba(161, 182, 197, .19);
    stroke-width: 1;
}

.news-bulletin__rear-panel path {
    fill: none;
    stroke: rgba(161, 182, 197, .23);
    stroke-width: 1;
    stroke-linecap: square;
}

.news-bulletin__main-surface {
    fill: url(#newsMainSurface);
    stroke: rgba(222, 227, 230, .30);
    stroke-width: 1;
}

.news-bulletin__inner-frame {
    fill: none;
    stroke: rgba(222, 227, 230, .060);
    stroke-width: 1;
}

.news-bulletin__frame .news-bulletin__spine {
    fill: none;
    stroke: rgba(161, 182, 197, .70);
    stroke-width: 1.4;
}

.news-bulletin__rail > path,
.news-bulletin__line,
.news-bulletin__divider,
.news-bulletin__row-rule {
    fill: none;
    stroke: rgba(185, 193, 197, .34);
    stroke-width: 1;
    stroke-linecap: square;
}

.news-bulletin__line--strong {
    stroke: rgba(232, 233, 231, .66);
}

.news-bulletin__line--micro {
    stroke: rgba(176, 184, 188, .22);
}

.news-bulletin__divider {
    stroke: rgba(176, 183, 185, .20);
}

.news-bulletin__row-rule {
    stroke: rgba(176, 183, 185, .115);
}

.news-bulletin__rail > path {
    stroke: rgba(161, 182, 197, .27);
}

.news-bulletin__node,
.news-bulletin__status {
    fill: #2b3237;
    stroke: rgba(161, 182, 197, .44);
    stroke-width: 1;
}

.news-bulletin__node--active {
    fill: rgba(123, 150, 173, .19);
    stroke: rgba(161, 182, 197, .96);
}

.news-bulletin__accent,
.news-bulletin__active-mark,
.news-bulletin__technical-accent {
    fill: none;
    stroke: #a1b6c5;
    stroke-width: 1.3;
    stroke-linecap: square;
}

.news-bulletin__active-mark {
    stroke: rgba(176, 195, 208, .98);
    stroke-width: 1.7;
}

.news-bulletin__footer-strip .news-bulletin__technical-accent {
    stroke: rgba(161, 182, 197, .52);
}



/* Hero entrance — keeps the existing shared JS contract. */
.js .news-hero__eyebrow,
.js .news-hero__title,
.js .news-hero__lead,
.js .news-hero__visual {
    opacity: 0;
    will-change: opacity, transform, filter;
}

.js.is-loaded .news-hero__eyebrow {
    animation: newsHeroTextIn 720ms cubic-bezier(.22, 1, .36, 1) 100ms both;
}

.js.is-loaded .news-hero__title {
    animation: newsHeroTextIn 880ms cubic-bezier(.22, 1, .36, 1) 180ms both;
}

.js.is-loaded .news-hero__lead {
    animation: newsHeroTextIn 880ms cubic-bezier(.22, 1, .36, 1) 300ms both;
}

.js.is-loaded .news-hero__visual {
    animation: newsHeroVisualIn 1050ms cubic-bezier(.16, 1, .3, 1) 220ms both;
}

@keyframes newsHeroTextIn {
    from { opacity: 0; transform: translateY(18px); filter: blur(5px); }
    to { opacity: 1; transform: translateY(0); filter: blur(0); }
}

@keyframes newsHeroVisualIn {
    from { opacity: 0; transform: translateY(12px) scale(.985); filter: blur(6px); }
    to { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}

/* ========================================================== */
/* NEWS ARCHIVE                                              */
/* ========================================================== */

.news-archive {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #32393f 0%, #30373c 42%, #2c3237 100%);
    border-bottom: 1px solid rgba(222, 227, 230, .070);
}

.news-archive__container {
    --archive-gap: 18px;
    position: relative;
    z-index: 1;
    width: min(calc(100% - clamp(48px, 6vw, 140px)), 1760px);
    margin: 0 auto;
    padding: clamp(98px, 7.4vw, 134px) 0 clamp(108px, 8vw, 150px);
}

.news-archive__header {
    width: 100%;
}

.news-archive__eyebrow {
    color: rgba(161, 182, 197, .90);
}

.news-archive__eyebrow::before {
    content: none !important;
    display: none !important;
}

.news-archive__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: auto;
    gap: var(--archive-gap);
    margin-top: clamp(26px, 2.4vw, 36px);
}

/* ========================================================== */
/* NEWS CARD                                                 */
/* ========================================================== */

.news-card {
    --news-image-scale: 1;
    --news-image-x: 0px;
    --news-image-y: 0px;

    position: relative;
    isolation: isolate;
    min-width: 0;
    min-height: clamp(350px, 22vw, 400px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(185px, .50fr);
    grid-template-rows: auto 1fr;
    gap: 0 clamp(24px, 2.2vw, 42px);
    overflow: hidden;
    padding: clamp(28px, 2.45vw, 38px) clamp(30px, 2.8vw, 44px) clamp(32px, 2.8vw, 44px);
    border: 1px solid rgba(222, 227, 230, .105);
    border-radius: 4px;
    background:
        linear-gradient(180deg, rgba(239, 238, 233, .020) 0%, rgba(239, 238, 233, .006) 18%, transparent 34%),
        linear-gradient(135deg, rgba(123, 150, 173, .018) 0%, transparent 34%),
        linear-gradient(180deg, #3a4248 0%, #383f45 52%, #353c42 100%);
    box-shadow:
        inset 0 1px 0 rgba(239, 238, 233, .026),
        inset 0 -1px 0 rgba(5, 8, 10, .10),
        0 5px 12px rgba(5, 8, 10, .14);
}

.news-card::before {
    content: '';
    position: absolute;
    z-index: 4;
    top: -1px;
    left: 0;
    width: 72px;
    height: 1px;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(161, 182, 197, .80), rgba(123, 150, 173, .22) 70%, transparent);
}

.news-card::after {
    content: '';
    position: absolute;
    z-index: 0;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    box-shadow: inset 1px 0 0 rgba(239, 238, 233, .010);
}

/* The newest update carries more visual weight without becoming a hero card. */
.news-card:first-child {
    grid-column: 1 / -1;
    grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
    min-height: clamp(330px, 20vw, 380px);
    border-color: rgba(222, 227, 230, .125);
    background:
        linear-gradient(180deg, rgba(239, 238, 233, .024) 0%, rgba(239, 238, 233, .007) 18%, transparent 34%),
        linear-gradient(135deg, rgba(123, 150, 173, .026) 0%, transparent 38%),
        linear-gradient(180deg, #3c444b 0%, #394147 54%, #363e44 100%);
    box-shadow:
        inset 0 1px 0 rgba(239, 238, 233, .030),
        inset 0 -1px 0 rgba(5, 8, 10, .11),
        0 6px 14px rgba(5, 8, 10, .15);
}

.news-card:first-child::before {
    width: 92px;
    background: linear-gradient(90deg, rgba(161, 182, 197, .88), rgba(123, 150, 173, .26) 72%, transparent);
}

.news-card__meta {
    position: relative;
    z-index: 2;
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 38px;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(222, 227, 230, .085);
}

.news-card__date {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-style: normal;
    white-space: nowrap;
}

.news-card__year {
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .09em;
    color: #a1b6c5;
}

.news-card__day {
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: .085em;
    white-space: nowrap;
    color: #aeb4b4;
}

.news-card__number {
    flex: 0 0 auto;
    white-space: nowrap;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: .08em;
    color: rgba(205, 208, 204, .42);
}

.news-card__content {
    position: relative;
    z-index: 2;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-self: stretch;
    padding-top: clamp(28px, 2.2vw, 34px);
}

.news-card__title {
    max-width: 520px;
    margin: 0;
    font-family: 'Source Serif 4', Georgia, serif;
    font-size: clamp(22px, 1.48vw, 27px);
    font-weight: 400;
    line-height: 1.24;
    letter-spacing: -.010em;
    color: #ecebe7;
    text-wrap: balance;
}

.news-card__text {
    max-width: 540px;
    margin: 16px 0 0;
    font-family: 'News Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: clamp(15px, .90vw, 16.5px);
    font-weight: 400;
    line-height: 1.66;
    letter-spacing: .001em;
    color: #bdc2c0;
}

.news-card:first-child .news-card__text {
    max-width: 700px;
}

.news-card__action {
    position: relative;
    width: fit-content;
    margin-top: auto;
    padding: 25px 0 7px;
    display: inline-flex;
    align-items: center;
    gap: 13px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11.4px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .088em;
    color: #bbc3c4;
    text-decoration: none;
    transition: color 180ms ease;
}

.news-card__action::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 28px;
    height: 1px;
    background: #7b96ad;
    opacity: .68;
    transition:
        width 220ms cubic-bezier(.22, 1, .36, 1),
        opacity 170ms ease;
}

.news-card__action svg {
    box-sizing: border-box;
    width: 29px;
    height: 18px;
    padding-left: 10px;
    border-left: 1px solid rgba(161, 182, 197, .18);
    fill: none;
    stroke: #a1b6c5;
    stroke-width: 1.45;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition:
        transform 180ms cubic-bezier(.22, 1, .36, 1),
        border-color 180ms ease,
        stroke 180ms ease;
}

.news-card__action:hover {
    color: #ecebe7;
}

.news-card__action:hover::after {
    width: 54px;
    opacity: .96;
}

.news-card__action:hover svg {
    transform: translateX(2px);
    border-left-color: rgba(161, 182, 197, .34);
    stroke: #b6c7d2;
}

.news-card__action:focus-visible {
    outline: 1px solid rgba(161, 182, 197, .78);
    outline-offset: 5px;
    color: #ecebe7;
}

.news-card__action:focus-visible::after {
    width: 54px;
    opacity: .96;
}

.news-card__action:focus-visible svg {
    border-left-color: rgba(161, 182, 197, .34);
    stroke: #b6c7d2;
}

.news-card__visual {
    position: relative;
    z-index: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    padding-top: 18px;
}

.news-card__image {
    display: block;
    width: min(100%, 285px);
    max-height: 230px;
    object-fit: contain;
    filter:
        saturate(.84)
        contrast(1.03)
        drop-shadow(0 7px 7px rgba(5, 8, 10, .18));
    opacity: .96;
    transform:
        translate3d(var(--news-image-x), var(--news-image-y), 0)
        scale(var(--news-image-scale));
    transform-origin: center center;
    transition:
        transform 320ms cubic-bezier(.22, 1, .36, 1),
        opacity 220ms ease,
        filter 220ms ease;
}

@media (hover: hover) and (pointer: fine) {
    .news-card:hover .news-card__image {
        transform:
            translate3d(var(--news-image-x), calc(var(--news-image-y) - 2px), 0)
            scale(calc(var(--news-image-scale) * 1.018));
        opacity: 1;
        filter:
            saturate(.90)
            contrast(1.04)
            drop-shadow(0 9px 8px rgba(5, 8, 10, .22));
    }
}

/* Mild optical balancing for varied transparent artwork. */
.news-card:nth-child(1) { --news-image-scale: 1.02; }
.news-card:nth-child(2) { --news-image-scale: 1.05; --news-image-y: 2px; }
.news-card:nth-child(3) { --news-image-scale: .96; }
.news-card:nth-child(4) { --news-image-scale: 1.04; }
.news-card:nth-child(5) { --news-image-scale: 1.04; }
.news-card:nth-child(6) { --news-image-scale: 1.06; --news-image-x: -4px; }
.news-card:nth-child(7) { --news-image-scale: 1.05; --news-image-x: -4px; }

/* ========================================================== */
/* FOOTER — SAME FINISHED SITE TREATMENT                     */
/* ========================================================== */

.site-footer {
    background: linear-gradient(180deg, #24292e 0%, #22272c 100%);
    border-top: 1px solid rgba(222, 227, 230, .085);
    box-shadow: none;
}

.site-footer .site-footer__main {
    grid-template-columns:
        minmax(250px, 1.28fr)
        minmax(160px, .88fr)
        minmax(170px, .92fr)
        minmax(220px, 1fr);
    align-items: start;
    gap: clamp(36px, 4.2vw, 76px);
    padding: clamp(72px, 6vw, 98px) 0 clamp(62px, 5vw, 82px);
}

.site-footer .site-footer__brand {
    grid-column: auto;
    max-width: 350px;
    margin: 0;
    justify-self: start;
    text-align: left;
}

.site-footer .site-footer__logo {
    font-size: clamp(29px, 1.75vw, 33px);
    line-height: 1;
    letter-spacing: 1.1px;
}

.site-footer .site-footer__logo-smart { color: #9aaebd; }
.site-footer .site-footer__logo-repair { color: #ecebe7; }

.site-footer .site-footer__description {
    max-width: 34ch;
    margin: 24px 0 0;
    font-family: 'News Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 15.5px;
    font-weight: 400;
    line-height: 1.72;
    letter-spacing: .002em;
    color: #aeb4b4;
    text-align: left;
}

.site-footer .site-footer__heading {
    position: relative;
    margin: 2px 0 22px;
    padding-bottom: 14px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: .115em;
    color: #cbd0d1;
}

.site-footer .site-footer__heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 28px;
    height: 1px;
    background: #748da3;
    opacity: .72;
}

.site-footer .site-footer__links {
    display: grid;
    gap: 3px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer .site-footer__links a,
.site-footer .site-footer__phone,
.site-footer .site-footer__email,
.site-footer .site-footer__direct a,
.site-footer .site-footer__location {
    font-family: 'News Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 14.5px;
    line-height: 1.45;
}

.site-footer .site-footer__links a {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 36px;
    padding: 5px 0;
    color: #b9bfbd;
    text-decoration: none;
    transition: color 180ms ease;
}

.site-footer .site-footer__links a:hover,
.site-footer .site-footer__links a[aria-current='page'] {
    color: #ecebe7;
}

.site-footer .site-footer__contact-list {
    gap: 7px;
}

.site-footer .site-footer__location {
    color: #929a9a;
}

.site-footer .site-footer__phone,
.site-footer .site-footer__email {
    width: fit-content;
    color: #c3c7c5;
    text-decoration: none;
    transition: color 180ms ease;
}

.site-footer .site-footer__phone:hover,
.site-footer .site-footer__email:hover {
    color: #ecebe7;
}

.site-footer .site-footer__direct {
    margin-top: 3px;
}

.site-footer .site-footer__direct a {
    color: #9aaebd;
    text-decoration: none;
    transition: color 180ms ease;
}

.site-footer .site-footer__direct a:hover {
    color: #c7d6df;
}

.site-footer .site-footer__direct span {
    color: rgba(198, 200, 197, .34);
}

.site-footer .site-footer__bottom {
    min-height: 76px;
    padding: 24px 0 27px;
    border-top: 1px solid rgba(222, 227, 230, .10);
}

.site-footer .site-footer__copyright {
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11.5px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: .04em;
    color: #929a9a;
    text-align: left;
}

.site-footer .site-footer__credit {
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 10.5px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: .075em;
    color: rgba(154, 174, 189, .78);
    text-align: right;
    flex-wrap: wrap;
}

.site-footer .site-footer__credit-name {
    color: inherit;
    text-decoration: none;
    transition: color 180ms ease;
}

.site-footer .site-footer__credit-name:hover {
    color: #c7d6df;
    text-decoration: none;
}

.site-footer .site-footer__credit-name:focus-visible {
    color: #d7e1e7;
}

.site-footer a:focus-visible {
    outline-color: var(--sr-accent-soft);
}

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

@media (max-width: 1279px) {
    .news-hero__container {
        grid-template-columns: minmax(0, 1fr) minmax(310px, .60fr);
        gap: clamp(46px, 5vw, 72px);
    }

    .news-hero__visual {
        width: min(100%, 520px);
    }

    .news-card {
        grid-template-columns: minmax(0, 1fr) minmax(160px, .46fr);
        gap: 0 28px;
    }
}

@media (max-width: 1199px) {
    .news-archive__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .news-card:first-child,
    .news-card {
        grid-column: auto;
        min-height: 300px;
        grid-template-columns: minmax(0, 1fr) minmax(190px, .42fr);
        padding: 30px 34px 34px;
    }

    .news-card__image {
        max-height: 190px;
    }

    .site-footer .site-footer__main {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 42px 32px;
    }

    .site-footer .site-footer__brand {
        grid-column: 1 / -1;
        max-width: 470px;
    }

    .site-footer .site-footer__description {
        max-width: 46ch;
    }

    .site-footer .site-footer__bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 9px;
    }

    .site-footer .site-footer__credit {
        text-align: left;
        justify-content: flex-start;
    }
}

@media (max-width: 900px) {
    .news-hero__container {
        min-height: auto;
        grid-template-columns: 1fr;
        gap: 18px;
        padding: 56px 0 58px;
    }

    .news-hero__copy {
        max-width: 720px;
        margin: 0 auto;
        text-align: center;
    }

    .news-hero__eyebrow {
        justify-content: center;
    }

    .news-hero__title,
    .news-hero__lead {
        margin-left: auto;
        margin-right: auto;
    }

    .news-hero__title {
        max-width: 700px;
        font-size: clamp(34px, 5.2vw, 44px);
        line-height: 1.18;
    }

    .news-hero__lead {
        max-width: 610px;
    }

    .news-hero__visual {
        justify-self: center;
        width: min(100%, 340px);
    }
}

@media (max-width: 767px) {
    .news-hero__container,
    .news-archive__container {
        width: calc(100% - 40px);
    }

    .news-hero__container {
        padding: 54px 0 58px;
    }

    .news-hero__title {
        max-width: 630px;
        font-size: clamp(31px, 6.4vw, 38px);
        line-height: 1.20;
    }

    .news-hero__lead {
        max-width: 560px;
        font-size: 16px;
        line-height: 1.64;
    }

    .news-hero__visual {
        display: none;
    }

    .news-archive__container {
        padding: 78px 0 88px;
    }

    .news-archive__header {
        max-width: 700px;
    }

    .news-archive__title {
        margin-top: 18px;
        font-size: 32px;
        line-height: 1.20;
    }

    .news-archive__lead {
        margin-top: 18px;
        max-width: 620px;
        font-size: 15.5px;
    }

    .news-archive__grid {
        gap: 12px;
        margin-top: 30px;
    }

    .news-card:first-child,
    .news-card {
        min-height: 0;
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        gap: 0;
        padding: 26px 26px 30px;
    }

    .news-card__meta {
        min-height: 36px;
        padding-bottom: 20px;
    }

    .news-card__content {
        align-items: center;
        padding-top: 25px;
        text-align: center;
    }

    .news-card__title,
    .news-card__text,
    .news-card:first-child .news-card__text {
        max-width: 620px;
        margin-left: auto;
        margin-right: auto;
    }

    .news-card__title {
        font-size: 22px;
        text-align: center;
    }

    .news-card__text {
        font-size: 15px;
        line-height: 1.62;
        text-align: center;
    }

    .news-card__action {
        margin: 22px auto 0;
        padding: 0 0 7px;
        justify-content: center;
        gap: 12px;
        font-size: 11px;
    }

    .news-card__action svg {
        width: 27px;
        height: 17px;
        padding-left: 9px;
    }

    .news-card__visual {
        padding-top: 28px;
        justify-self: center;
        width: min(72%, 300px);
    }

    .news-card__image {
        width: 100%;
        max-height: 210px;
    }

    .site-footer .site-footer__container {
        width: calc(100% - 40px);
    }

    .site-footer .site-footer__main {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 38px 24px;
        padding: 60px 0 44px;
    }

    .site-footer .site-footer__brand {
        grid-column: 1 / -1;
    }

    .site-footer .site-footer__contact {
        grid-column: 1 / -1;
        padding-top: 30px;
        border-top: 1px solid rgba(222, 227, 230, .075);
    }
}


@media (max-width: 520px) {
    .site-footer .site-footer__main {
        grid-template-columns: 1fr;
        gap: 34px;
        padding: 56px 0 40px;
    }

    .site-footer .site-footer__brand,
    .site-footer .site-footer__contact {
        grid-column: auto;
    }

    .site-footer .site-footer__contact {
        padding-top: 32px;
    }

    .site-footer .site-footer__bottom {
        padding: 22px 0 24px;
    }

    .site-footer .site-footer__copyright,
    .site-footer .site-footer__credit {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .news-hero__container,
    .news-archive__container {
        width: calc(100% - 40px);
    }

    .news-hero__container {
        padding: 48px 0 52px;
    }

    .news-hero__title {
        margin-top: 20px;
        font-size: 30px;
    }

    .news-hero__lead {
        margin-top: 20px;
        font-size: 15px;
    }

    .news-archive__container {
        padding: 66px 0 74px;
    }


    .news-archive__title {
        margin-top: 17px;
        font-size: 29px;
    }

    .news-archive__lead {
        margin-top: 16px;
        font-size: 15px;
        line-height: 1.64;
    }

    .news-archive__grid {
        gap: 10px;
        margin-top: 26px;
    }

    .news-card:first-child,
    .news-card {
        padding: 23px 20px 27px;
    }

    .news-card::before {
        width: 64px;
    }

    .news-card__meta {
        min-height: 34px;
        padding-bottom: 18px;
    }

    .news-card__date {
        gap: 9px;
    }

    .news-card__year {
        font-size: 13px;
    }

    .news-card__day {
        font-size: 11px;
    }

    .news-card__number {
        font-size: 15px;
    }

    .news-card__content {
        padding-top: 22px;
    }

    .news-card__title {
        font-size: 20px;
    }

    .news-card__text {
        margin-top: 13px;
        font-size: 14px;
        line-height: 1.60;
    }

    .news-card__action {
        margin-top: 20px;
        gap: 8px;
        font-size: 10.5px;
        letter-spacing: .085em;
    }

    .news-card__visual {
        width: min(78%, 250px);
        padding-top: 24px;
    }

    .news-card__image {
        max-height: 185px;
    }
}

@media (max-width: 360px) {
    .news-hero__container,
    .news-archive__container {
        width: calc(100% - 32px);
    }

    .news-hero__title {
        font-size: 28px;
    }

    .news-card:first-child,
    .news-card {
        padding: 21px 16px 25px;
    }

    .news-card__meta {
        gap: 12px;
    }

    .news-card__date {
        gap: 7px;
    }

    .news-card__year { font-size: 12px; }
    .news-card__day { font-size: 10px; }
    .news-card__title { font-size: 19px; }
    .news-card__text { font-size: 13.5px; }
}

@media (min-width: 2560px) {
    .news-hero__container,
    .news-archive__container {
        width: min(calc(100% - 120px), 2100px);
    }

    .news-hero__container {
        min-height: 560px;
        gap: 150px;
    }

    .news-hero__copy,
    .news-hero__title {
        max-width: 1040px;
    }

    .news-hero__title {
        font-size: 62px;
    }

    .news-hero__lead {
        max-width: 820px;
        font-size: 19px;
    }

    .news-hero__visual {
        width: min(100%, 610px);
    }

    .news-archive__container {
        --archive-gap: 20px;
        padding-top: 138px;
        padding-bottom: 166px;
    }

    .news-card {
        min-height: 430px;
        grid-template-columns: minmax(0, 1fr) minmax(230px, .50fr);
        padding: 40px 48px 48px;
    }

    .news-card:first-child {
        min-height: 405px;
    }

    .news-card__title {
        font-size: 29px;
    }

    .news-card__text {
        max-width: 620px;
        font-size: 18px;
    }

    .news-card__image {
        width: min(100%, 330px);
        max-height: 275px;
    }
}

@media (hover: none), (pointer: coarse) {
    .news-card__image {
        transition: none;
    }

    .site-footer .site-footer__links a:hover {
        color: #b9bfbd;
    }

    .site-footer .site-footer__phone:hover,
    .site-footer .site-footer__email:hover {
        color: inherit;
    }

    .site-footer .site-footer__direct a:hover {
        color: #9aaebd;
    }
}

@media (prefers-reduced-motion: reduce) {
    .js .news-hero__eyebrow,
    .js .news-hero__title,
    .js .news-hero__lead,
    .js .news-hero__visual {
        opacity: 1;
        animation: none !important;
        transform: none;
        filter: none;
    }

    .news-card__action,
    .news-card__action::after,
    .news-card__action svg,
    .news-card__image,
    .site-footer a {
        transition: none !important;
    }
}


/* Archive header — eyebrow-only, intentionally compact. */
@media (max-width: 767px) {
    .news-archive__grid { margin-top: 30px; }
}

@media (max-width: 480px) {
    .news-archive__grid { margin-top: 26px; }
}

/* ========================================================== */
/* NEWS ARCHIVE — DATE / INDEX REFINEMENT                     */
/* Editorial metadata: year -> connector -> date -> index.    */
/* ========================================================== */

.news-card__meta {
    min-height: 40px;
    padding-bottom: 21px;
    border-bottom-color: rgba(222, 227, 230, .078);
}

.news-card__date {
    gap: 0;
    font-variant-numeric: tabular-nums;
}

.news-card__year {
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .115em;
    color: #a1b6c5;
}

.news-card__year::after {
    content: '';
    width: 18px;
    height: 1px;
    margin: 0 12px;
    background: rgba(161, 182, 197, .34);
}

.news-card__day {
    font-size: 11.5px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .105em;
    color: rgba(205, 208, 204, .66);
}

.news-card__number {
    font-size: 18px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: .12em;
    font-variant-numeric: tabular-nums;
    color: rgba(161, 182, 197, .34);
}

/* The current update gets only a small metadata lift — no badge treatment. */
.news-card:first-child .news-card__year {
    color: #aec1cf;
}

.news-card:first-child .news-card__year::after {
    width: 22px;
    background: rgba(161, 182, 197, .46);
}

.news-card:first-child .news-card__number {
    color: rgba(161, 182, 197, .52);
}

@media (max-width: 767px) {
    .news-card__meta {
        min-height: 36px;
        padding-bottom: 19px;
    }

    .news-card__year {
        font-size: 12.5px;
    }

    .news-card__year::after {
        width: 14px;
        margin-inline: 10px;
    }

    .news-card:first-child .news-card__year::after {
        width: 17px;
    }

    .news-card__day {
        font-size: 10.8px;
    }

    .news-card__number {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .news-card__meta {
        min-height: 34px;
        padding-bottom: 17px;
    }

    .news-card__year {
        font-size: 12px;
        letter-spacing: .10em;
    }

    .news-card__year::after {
        width: 12px;
        margin-inline: 8px;
    }

    .news-card:first-child .news-card__year::after {
        width: 14px;
    }

    .news-card__day {
        font-size: 10px;
        letter-spacing: .09em;
    }

    .news-card__number {
        font-size: 15px;
        letter-spacing: .10em;
    }
}

@media (max-width: 360px) {
    .news-card__year::after {
        width: 9px;
        margin-inline: 6px;
    }

    .news-card:first-child .news-card__year::after {
        width: 11px;
    }

    .news-card__day {
        letter-spacing: .075em;
    }
}

/* ========================================================== */
/* NEWS CARD TYPOGRAPHY — FINAL EDITORIAL PASS                */
/* ========================================================== */

.news-card__title {
    max-width: 23ch;
    font-family: 'Source Serif 4', Georgia, serif;
    font-weight: 400;
    font-size: clamp(23px, 1.42vw, 27px);
    line-height: 1.22;
    letter-spacing: -.013em;
    text-wrap: balance;
    color: #efeee9;
}

.news-card:first-child .news-card__title {
    max-width: 30ch;
    font-size: clamp(25px, 1.65vw, 31px);
    line-height: 1.20;
    letter-spacing: -.016em;
}

.news-card__text {
    max-width: 52ch;
    margin-top: 17px;
    font-family: 'News Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-weight: 400;
    font-size: clamp(15px, .90vw, 16.5px);
    line-height: 1.68;
    letter-spacing: .001em;
    text-wrap: pretty;
    color: #c3c7c5;
}

.news-card:first-child .news-card__text {
    max-width: 68ch;
}

@media (max-width: 1199px) {
    .news-card__title {
        max-width: 27ch;
    }

    .news-card:first-child .news-card__title {
        max-width: 31ch;
    }

    .news-card__text,
    .news-card:first-child .news-card__text {
        max-width: 58ch;
    }
}

@media (max-width: 767px) {
    .news-card__title,
    .news-card:first-child .news-card__title {
        max-width: 26ch;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }

    .news-card__title {
        font-size: 21.5px;
        line-height: 1.24;
    }

    .news-card:first-child .news-card__title {
        font-size: 23px;
        line-height: 1.22;
    }

    .news-card__text,
    .news-card:first-child .news-card__text {
        max-width: 58ch;
        margin-left: auto;
        margin-right: auto;
        font-size: 15px;
        line-height: 1.64;
        text-align: center;
    }
}

@media (max-width: 480px) {
    .news-card__title {
        font-size: 19.5px;
        line-height: 1.26;
    }

    .news-card:first-child .news-card__title {
        font-size: 21px;
        line-height: 1.24;
    }

    .news-card__text,
    .news-card:first-child .news-card__text {
        margin-top: 13px;
        font-size: 14px;
        line-height: 1.62;
    }
}

@media (max-width: 360px) {
    .news-card__title {
        font-size: 18.5px;
    }

    .news-card:first-child .news-card__title {
        font-size: 20px;
    }

    .news-card__text,
    .news-card:first-child .news-card__text {
        font-size: 13.5px;
    }
}

@media (min-width: 2560px) {
    .news-card__title {
        font-size: 29px;
    }

    .news-card:first-child .news-card__title {
        font-size: 33px;
    }

    .news-card__text,
    .news-card:first-child .news-card__text {
        font-size: 18px;
        line-height: 1.68;
    }
}

/* ========================================================== */
/* NEWS CARD ARTWORK — OPTICAL STAGING PASS                  */
/* Each transparent asset is balanced individually.           */
/* No radial glow: depth comes from scale + tight black shade. */
/* ========================================================== */

.news-card {
    --news-image-max: 286px;
    --news-image-max-height: 226px;
}

.news-card__visual {
    position: relative;
    isolation: isolate;
    padding: 22px 2px 4px;
}

/* A restrained floor cue gives the PNG a place to sit without creating a halo. */
.news-card__visual::after {
    content: '';
    position: absolute;
    z-index: -1;
    left: 50%;
    bottom: 12%;
    width: min(72%, 205px);
    height: 1px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, transparent, rgba(5, 8, 10, .22) 24%, rgba(5, 8, 10, .30) 50%, rgba(5, 8, 10, .22) 76%, transparent);
    opacity: .64;
    pointer-events: none;
}

.news-card__image {
    width: min(100%, var(--news-image-max));
    max-height: var(--news-image-max-height);
    object-fit: contain;
    filter:
        saturate(.86)
        contrast(1.035)
        brightness(.975)
        drop-shadow(0 2px 2px rgba(5, 8, 10, .15))
        drop-shadow(0 7px 6px rgba(5, 8, 10, .19));
    opacity: .975;
}

/* Current website-update artwork: larger, calmer and more authoritative. */
.news-card:nth-child(1) {
    --news-image-scale: 1.055;
    --news-image-y: 1px;
    --news-image-max: 350px;
    --news-image-max-height: 258px;
}

.news-card:nth-child(1) .news-card__visual {
    padding-top: 16px;
}

.news-card:nth-child(1) .news-card__visual::after {
    width: min(68%, 240px);
    bottom: 10%;
    opacity: .58;
}

/* Galaxy phone artwork is naturally tall, so keep it centred and slightly larger. */
.news-card:nth-child(2) {
    --news-image-scale: 1.075;
    --news-image-y: 1px;
    --news-image-max: 278px;
    --news-image-max-height: 238px;
}

/* VISA / Mastercard artwork is visually wide and dense: reduce it a touch. */
.news-card:nth-child(3) {
    --news-image-scale: .925;
    --news-image-y: 1px;
    --news-image-max: 272px;
    --news-image-max-height: 208px;
}

/* Handheld console benefits from a little more horizontal presence. */
.news-card:nth-child(4) {
    --news-image-scale: 1.065;
    --news-image-y: 2px;
    --news-image-max: 300px;
    --news-image-max-height: 224px;
}

/* Xperia artwork: keep the tall silhouette crisp rather than oversized. */
.news-card:nth-child(5) {
    --news-image-scale: 1.035;
    --news-image-y: 1px;
    --news-image-max: 276px;
    --news-image-max-height: 232px;
}

/* Console sets have broader silhouettes; shift them slightly toward the text. */
.news-card:nth-child(6) {
    --news-image-scale: 1.075;
    --news-image-x: -3px;
    --news-image-y: 1px;
    --news-image-max: 304px;
    --news-image-max-height: 232px;
}

.news-card:nth-child(7) {
    --news-image-scale: 1.065;
    --news-image-x: -3px;
    --news-image-y: 1px;
    --news-image-max: 304px;
    --news-image-max-height: 232px;
}

@media (hover: hover) and (pointer: fine) {
    .news-card:hover .news-card__image,
    .news-card:focus-within .news-card__image {
        transform:
            translate3d(var(--news-image-x), calc(var(--news-image-y) - 2px), 0)
            scale(calc(var(--news-image-scale) * 1.014));
        opacity: 1;
        filter:
            saturate(.90)
            contrast(1.04)
            brightness(.985)
            drop-shadow(0 2px 2px rgba(5, 8, 10, .17))
            drop-shadow(0 8px 7px rgba(5, 8, 10, .22));
    }
}

@media (max-width: 1199px) {
    .news-card {
        --news-image-max: 270px;
        --news-image-max-height: 205px;
    }

    .news-card:nth-child(1) {
        --news-image-max: 314px;
        --news-image-max-height: 228px;
    }

    .news-card:nth-child(2),
    .news-card:nth-child(5) {
        --news-image-max-height: 218px;
    }

    .news-card:nth-child(4),
    .news-card:nth-child(6),
    .news-card:nth-child(7) {
        --news-image-max: 286px;
    }
}

@media (max-width: 767px) {
    .news-card__visual {
        width: min(76%, 310px);
        padding: 30px 0 2px;
    }

    .news-card:first-child .news-card__visual {
        width: min(78%, 330px);
        padding-top: 28px;
    }

    .news-card__visual::after,
    .news-card:nth-child(1) .news-card__visual::after {
        width: min(70%, 190px);
        bottom: 3%;
        opacity: .54;
    }

    .news-card {
        --news-image-max: 285px;
        --news-image-max-height: 210px;
    }

    .news-card:nth-child(1) {
        --news-image-scale: 1.035;
        --news-image-max: 318px;
        --news-image-max-height: 226px;
    }

    .news-card:nth-child(2) { --news-image-scale: 1.055; }
    .news-card:nth-child(3) { --news-image-scale: .92; }
    .news-card:nth-child(4) { --news-image-scale: 1.045; }
    .news-card:nth-child(5) { --news-image-scale: 1.02; }
    .news-card:nth-child(6),
    .news-card:nth-child(7) {
        --news-image-scale: 1.05;
        --news-image-x: 0px;
    }
}

@media (max-width: 480px) {
    .news-card__visual,
    .news-card:first-child .news-card__visual {
        width: min(80%, 265px);
        padding-top: 25px;
    }

    .news-card {
        --news-image-max: 250px;
        --news-image-max-height: 184px;
    }

    .news-card:nth-child(1) {
        --news-image-max: 272px;
        --news-image-max-height: 196px;
    }

    .news-card__visual::after,
    .news-card:nth-child(1) .news-card__visual::after {
        width: min(68%, 154px);
        opacity: .48;
    }
}

@media (min-width: 2560px) {
    .news-card {
        --news-image-max: 340px;
        --news-image-max-height: 270px;
    }

    .news-card:nth-child(1) {
        --news-image-max: 400px;
        --news-image-max-height: 300px;
    }
}

@media (hover: none), (pointer: coarse) {
    .news-card__image {
        filter:
            saturate(.86)
            contrast(1.035)
            brightness(.975)
            drop-shadow(0 2px 2px rgba(5, 8, 10, .15))
            drop-shadow(0 7px 6px rgba(5, 8, 10, .19));
    }
}

@media (prefers-reduced-motion: reduce) {
    .news-card:hover .news-card__image,
    .news-card:focus-within .news-card__image {
        transform:
            translate3d(var(--news-image-x), var(--news-image-y), 0)
            scale(var(--news-image-scale));
    }
}

/* ========================================================== */
/* NEWS ARCHIVE — FINAL CONSISTENCY PASS                      */
/* Lock card rhythm, interaction strength and responsive flow. */
/* ========================================================== */

.news-archive__grid {
    align-items: stretch;
}

.news-card {
    height: 100%;
    transition:
        border-color 180ms ease,
        box-shadow 200ms ease,
        background-color 200ms ease;
}

.news-card__content {
    min-height: 0;
}

/* Keep the current update distinct, but only by one visual step. */
.news-card:first-child {
    border-color: rgba(222, 227, 230, .132);
    box-shadow:
        inset 0 1px 0 rgba(239, 238, 233, .030),
        inset 0 -1px 0 rgba(5, 8, 10, .11),
        0 6px 13px rgba(5, 8, 10, .145);
}

/* No floating/lift effect: interaction is expressed through material response only. */
@media (hover: hover) and (pointer: fine) {
    .news-card:hover {
        border-color: rgba(161, 182, 197, .155);
        box-shadow:
            inset 0 1px 0 rgba(239, 238, 233, .028),
            inset 0 -1px 0 rgba(5, 8, 10, .11),
            0 6px 13px rgba(5, 8, 10, .155);
    }

    .news-card:first-child:hover {
        border-color: rgba(161, 182, 197, .20);
        box-shadow:
            inset 0 1px 0 rgba(239, 238, 233, .032),
            inset 0 -1px 0 rgba(5, 8, 10, .12),
            0 7px 14px rgba(5, 8, 10, .165);
    }
}

.news-card:focus-within {
    border-color: rgba(161, 182, 197, .22);
    box-shadow:
        inset 0 1px 0 rgba(239, 238, 233, .030),
        inset 0 -1px 0 rgba(5, 8, 10, .11),
        0 6px 13px rgba(5, 8, 10, .155);
}

/* Equalise the paired desktop cards without forcing the featured row to match them. */
@media (min-width: 1200px) {
    .news-card:not(:first-child) {
        min-height: clamp(370px, 21vw, 400px);
    }

    .news-card__content {
        padding-bottom: 1px;
    }
}

/* Tablet: one clean vertical rhythm, with the featured card only marginally taller. */
@media (min-width: 768px) and (max-width: 1199px) {
    .news-archive__grid {
        gap: 14px;
    }

    .news-card {
        min-height: 300px;
    }

    .news-card:first-child {
        min-height: 310px;
    }

    .news-card__visual {
        align-self: center;
    }
}

/* Mobile cards should feel deliberately stacked, not like collapsed desktop cards. */
@media (max-width: 767px) {
    .news-archive__grid {
        gap: 12px;
    }

    .news-card,
    .news-card:first-child {
        height: auto;
        min-height: 0;
    }

    .news-card__content {
        padding-bottom: 0;
    }

    .news-card__visual {
        align-self: auto;
    }
}

@media (max-width: 480px) {
    .news-archive__grid {
        gap: 10px;
    }
}

@media (hover: none), (pointer: coarse) {
    .news-card:hover {
        border-color: rgba(222, 227, 230, .105);
        box-shadow:
            inset 0 1px 0 rgba(239, 238, 233, .026),
            inset 0 -1px 0 rgba(5, 8, 10, .10),
            0 5px 12px rgba(5, 8, 10, .14);
    }

    .news-card:first-child:hover {
        border-color: rgba(222, 227, 230, .132);
        box-shadow:
            inset 0 1px 0 rgba(239, 238, 233, .030),
            inset 0 -1px 0 rgba(5, 8, 10, .11),
            0 6px 13px rgba(5, 8, 10, .145);
    }
}

@media (prefers-reduced-motion: reduce) {
    .news-card {
        transition: none !important;
    }
}

/* ========================================================== */
/* NEWS ARCHIVE — CARD SYSTEM V2                             */
/* Equal cards, cleaner metadata, no CSS image shadows.       */
/* ========================================================== */

/* Equal two-column archive: no featured/newest card. */
.news-archive__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    align-items: stretch;
}

.news-card,
.news-card:first-child {
    --news-image-scale: 1;
    --news-image-x: 0px;
    --news-image-y: 0px;
    --news-image-max: 255px;
    --news-image-max-height: 220px;

    grid-column: auto;
    grid-template-columns: minmax(0, 1.18fr) minmax(190px, .52fr);
    grid-template-rows: auto minmax(0, 1fr);
    min-height: clamp(395px, 22vw, 425px);
    height: 100%;
    border-color: rgba(222, 227, 230, .108);
    background:
        linear-gradient(180deg, rgba(239,238,233,.020) 0%, rgba(239,238,233,.006) 18%, transparent 34%),
        linear-gradient(135deg, rgba(123,150,173,.016) 0%, transparent 34%),
        linear-gradient(180deg, #3a4248 0%, #383f45 52%, #353c42 100%);
    box-shadow:
        inset 0 1px 0 rgba(239,238,233,.026),
        inset 0 -1px 0 rgba(5,8,10,.10),
        0 5px 12px rgba(5,8,10,.14);
    transition:
        border-color 220ms ease,
        background 240ms ease,
        box-shadow 240ms ease;
}

/* Steel-blue material hairline. */
.news-card::before,
.news-card:first-child::before {
    top: -1px;
    left: 0;
    width: 62px;
    height: 1px;
    background: linear-gradient(90deg, rgba(161,182,197,.78), rgba(123,150,173,.18) 72%, transparent);
    transform: none;
    transition: width 320ms cubic-bezier(.22,1,.36,1), opacity 220ms ease;
}

/* Restore the restrained cinematic sweep. */
.news-card::after,
.news-card:first-child::after {
    content: '';
    position: absolute;
    z-index: 1;
    top: -42%;
    left: -72%;
    width: 34%;
    height: 184%;
    border-radius: 0;
    pointer-events: none;
    background: linear-gradient(
        108deg,
        transparent 0%,
        rgba(239,238,233,.006) 27%,
        rgba(239,238,233,.055) 45%,
        rgba(239,238,233,.105) 50%,
        rgba(239,238,233,.040) 58%,
        transparent 76%
    );
    box-shadow: none;
    transform: skewX(-18deg);
    transition: left 680ms cubic-bezier(.22,1,.36,1);
}

@media (hover: hover) and (pointer: fine) {
    .news-card:hover,
    .news-card:first-child:hover {
        border-color: rgba(161,182,197,.20);
        background:
            linear-gradient(180deg, rgba(239,238,233,.026) 0%, rgba(239,238,233,.008) 18%, transparent 34%),
            linear-gradient(135deg, rgba(123,150,173,.024) 0%, transparent 36%),
            linear-gradient(180deg, #3c454b 0%, #394147 52%, #363e44 100%);
        box-shadow:
            inset 0 1px 0 rgba(239,238,233,.030),
            inset 0 -1px 0 rgba(5,8,10,.11),
            0 6px 13px rgba(5,8,10,.155);
    }

    .news-card:hover::before,
    .news-card:first-child:hover::before {
        width: 96px;
    }

    .news-card:hover::after,
    .news-card:first-child:hover::after {
        left: 138%;
    }
}

.news-card:focus-within,
.news-card:first-child:focus-within {
    border-color: rgba(161,182,197,.23);
    box-shadow:
        inset 0 1px 0 rgba(239,238,233,.030),
        inset 0 -1px 0 rgba(5,8,10,.11),
        0 6px 13px rgba(5,8,10,.155);
}

.news-card:focus-within::before,
.news-card:first-child:focus-within::before {
    width: 96px;
}

.news-card:focus-within::after,
.news-card:first-child:focus-within::after {
    left: 138%;
}

/* Date: compact editorial lockup, no long detached connector. */
.news-card__meta {
    min-height: 39px;
    padding-bottom: 20px;
    border-bottom-color: rgba(222,227,230,.078);
}

.news-card__date {
    gap: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-variant-numeric: tabular-nums;
}

.news-card__year,
.news-card:first-child .news-card__year {
    display: inline-flex;
    align-items: center;
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .090em;
    color: #a1b6c5;
}

.news-card__year::after,
.news-card:first-child .news-card__year::after {
    content: '';
    width: 1px;
    height: 13px;
    margin: 0 11px;
    background: rgba(161,182,197,.42);
}

.news-card__day {
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .075em;
    color: rgba(205,208,204,.72);
}

.news-card__number,
.news-card:first-child .news-card__number {
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: .09em;
    color: rgba(161,182,197,.40);
}

/* Card titles: technical/editorial rather than another serif headline. */
.news-card__title,
.news-card:first-child .news-card__title {
    max-width: 100%;
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-weight: 500;
    font-size: clamp(22px, 1.36vw, 25px);
    line-height: 1.16;
    letter-spacing: .018em;
    color: #efeee9;
    text-wrap: wrap;
}

.news-card__text,
.news-card:first-child .news-card__text {
    max-width: 55ch;
    margin-top: 17px;
}

/* Artwork shares one baseline. The PNG artwork provides its own depth. */
.news-card__visual,
.news-card:first-child .news-card__visual {
    width: auto;
    min-width: 0;
    align-self: stretch;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding: 10px 0 4px;
}

.news-card__visual::after,
.news-card:first-child .news-card__visual::after {
    display: none;
}

.news-card__image,
.news-card:first-child .news-card__image {
    width: min(100%, var(--news-image-max));
    max-height: var(--news-image-max-height);
    margin: 0 0 2px;
    object-fit: contain;
    filter: saturate(.88) contrast(1.03) brightness(.98);
    opacity: .98;
    transform:
        translate3d(var(--news-image-x), var(--news-image-y), 0)
        scale(var(--news-image-scale));
    transition:
        transform 320ms cubic-bezier(.22,1,.36,1),
        opacity 220ms ease,
        filter 220ms ease;
}

/* Optical scale only — no shadow and no vertical drifting. */
.news-card:nth-child(1) { --news-image-scale: .98; --news-image-max: 250px; --news-image-max-height: 214px; }
.news-card:nth-child(2) { --news-image-scale: 1.00; --news-image-max: 238px; --news-image-max-height: 220px; }
.news-card:nth-child(3) { --news-image-scale: .92; --news-image-max: 248px; --news-image-max-height: 188px; }
.news-card:nth-child(4) { --news-image-scale: 1.06; --news-image-max: 270px; --news-image-max-height: 196px; }
.news-card:nth-child(5) { --news-image-scale: .98; --news-image-max: 232px; --news-image-max-height: 218px; }
.news-card:nth-child(6) { --news-image-scale: 1.02; --news-image-max: 250px; --news-image-max-height: 220px; }
.news-card:nth-child(7) { --news-image-scale: 1.02; --news-image-max: 252px; --news-image-max-height: 220px; }

@media (hover: hover) and (pointer: fine) {
    .news-card:hover .news-card__image,
    .news-card:focus-within .news-card__image {
        transform:
            translate3d(var(--news-image-x), var(--news-image-y), 0)
            scale(calc(var(--news-image-scale) * 1.012));
        opacity: 1;
        filter: saturate(.91) contrast(1.035) brightness(.985);
    }
}

/* CTA becomes a compact ghost button: clearer action, still quiet enough for archive cards. */
.news-card__action {
    width: fit-content;
    min-height: 40px;
    margin-top: auto;
    padding: 0;
    display: inline-grid;
    grid-template-columns: auto 36px;
    align-items: stretch;
    gap: 0;
    border: 1px solid rgba(161,182,197,.20);
    border-radius: 3px;
    background:
        linear-gradient(180deg, rgba(239,238,233,.020), rgba(239,238,233,.004)),
        rgba(123,150,173,.025);
    color: #c2c8c8;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11.2px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .080em;
    text-decoration: none;
    overflow: hidden;
    transition:
        color 180ms ease,
        border-color 180ms ease,
        background 200ms ease,
        box-shadow 200ms ease;
}

.news-card__action > span {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 13px;
    white-space: nowrap;
}

.news-card__action::after {
    display: none;
}

.news-card__action svg {
    width: 36px;
    height: 100%;
    padding: 10px;
    border-left: 1px solid rgba(161,182,197,.16);
    stroke: #a1b6c5;
    stroke-width: 1.45;
    transition:
        transform 180ms cubic-bezier(.22,1,.36,1),
        background-color 180ms ease,
        border-color 180ms ease,
        stroke 180ms ease;
}

.news-card__action:hover,
.news-card__action:focus-visible {
    color: #efeee9;
    border-color: rgba(161,182,197,.42);
    background:
        linear-gradient(180deg, rgba(239,238,233,.032), rgba(239,238,233,.006)),
        rgba(123,150,173,.050);
    box-shadow: 0 3px 7px rgba(5,8,10,.12);
}

.news-card__action:hover svg,
.news-card__action:focus-visible svg {
    transform: translateX(2px);
    background: rgba(123,150,173,.055);
    border-left-color: rgba(161,182,197,.30);
    stroke: #b7c8d3;
}

.news-card__action:focus-visible {
    outline: 1px solid rgba(161,182,197,.78);
    outline-offset: 4px;
}

/* One-column layout keeps the same card language without forcing a fixed desktop height. */
@media (max-width: 1199px) {
    .news-archive__grid {
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
        gap: 14px;
    }

    .news-card,
    .news-card:first-child {
        grid-column: auto;
        grid-template-columns: minmax(0, 1fr) minmax(190px, .40fr);
        min-height: 315px;
    }

    .news-card__visual,
    .news-card:first-child .news-card__visual {
        padding-top: 8px;
    }
}

@media (max-width: 767px) {
    .news-card,
    .news-card:first-child {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        min-height: 0;
        height: auto;
    }

    .news-card__meta {
        min-height: 35px;
        padding-bottom: 18px;
    }

    .news-card__year,
    .news-card:first-child .news-card__year {
        font-size: 12.5px;
    }

    .news-card__year::after,
    .news-card:first-child .news-card__year::after {
        height: 12px;
        margin-inline: 9px;
    }

    .news-card__day {
        font-size: 10.8px;
    }

    .news-card__number,
    .news-card:first-child .news-card__number {
        font-size: 15px;
    }

    .news-card__title,
    .news-card:first-child .news-card__title {
        max-width: 30ch;
        margin-inline: auto;
        font-size: 21px;
        line-height: 1.18;
        text-align: center;
    }

    .news-card__text,
    .news-card:first-child .news-card__text {
        max-width: 58ch;
        margin-inline: auto;
        text-align: center;
    }

    .news-card__action {
        margin: 22px auto 0;
        min-height: 39px;
        font-size: 10.8px;
    }

    .news-card__visual,
    .news-card:first-child .news-card__visual {
        width: min(78%, 300px);
        justify-self: center;
        align-items: center;
        padding: 28px 0 0;
    }

    .news-card__image,
    .news-card:first-child .news-card__image {
        max-height: 205px;
        margin-bottom: 0;
    }
}

@media (max-width: 480px) {
    .news-card__year,
    .news-card:first-child .news-card__year {
        font-size: 12px;
    }

    .news-card__year::after,
    .news-card:first-child .news-card__year::after {
        height: 11px;
        margin-inline: 8px;
    }

    .news-card__day {
        font-size: 10px;
    }

    .news-card__title,
    .news-card:first-child .news-card__title {
        font-size: 19px;
    }

    .news-card__action {
        min-height: 38px;
        grid-template-columns: auto 34px;
        font-size: 10.2px;
    }

    .news-card__action svg {
        width: 34px;
        padding: 9px;
    }
}

@media (hover: none), (pointer: coarse) {
    .news-card:hover,
    .news-card:first-child:hover {
        border-color: rgba(222,227,230,.108);
        background:
            linear-gradient(180deg, rgba(239,238,233,.020) 0%, rgba(239,238,233,.006) 18%, transparent 34%),
            linear-gradient(135deg, rgba(123,150,173,.016) 0%, transparent 34%),
            linear-gradient(180deg, #3a4248 0%, #383f45 52%, #353c42 100%);
        box-shadow:
            inset 0 1px 0 rgba(239,238,233,.026),
            inset 0 -1px 0 rgba(5,8,10,.10),
            0 5px 12px rgba(5,8,10,.14);
    }

    .news-card:hover::before,
    .news-card:first-child:hover::before {
        width: 62px;
    }

    .news-card:hover::after,
    .news-card:first-child:hover::after {
        left: -72%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .news-card,
    .news-card::before,
    .news-card::after,
    .news-card__image,
    .news-card__action,
    .news-card__action svg {
        transition: none !important;
    }

    .news-card:hover::after,
    .news-card:focus-within::after {
        left: -72%;
    }

    .news-card:hover .news-card__image,
    .news-card:focus-within .news-card__image {
        transform:
            translate3d(var(--news-image-x), var(--news-image-y), 0)
            scale(var(--news-image-scale));
    }
}

/* ========================================================== */
/* NEWS ARCHIVE — PROPORTION + OPTICAL ARTWORK PASS           */
/* Equal within each row; artwork aligned by visual zone.      */
/* ========================================================== */

/* Let each row size itself from its own content. Cards in the
   same row still stretch to the same height automatically. */
.news-archive__grid {
    grid-auto-rows: auto;
    align-items: stretch;
}

.news-card,
.news-card:first-child {
    min-height: 0;
    height: 100%;
}

/* Centre artwork within the content area instead of anchoring
   the PNG canvas to the bottom edge. This removes the false
   visual baseline caused by transparent padding in the assets. */
.news-card__visual,
.news-card:first-child .news-card__visual {
    align-self: stretch;
    display: grid;
    place-items: center;
    padding: 18px 0 12px;
}

.news-card__image,
.news-card:first-child .news-card__image {
    margin: 0;
    object-position: center center;
}

/* Small optical corrections for the visible artwork rather
   than the transparent PNG canvas. No CSS shadows are added. */
.news-card:nth-child(1) {
    --news-image-scale: 1.00;
    --news-image-x: 0px;
    --news-image-y: -2px;
    --news-image-max: 255px;
    --news-image-max-height: 216px;
}

.news-card:nth-child(2) {
    --news-image-scale: 1.01;
    --news-image-x: 0px;
    --news-image-y: 0px;
    --news-image-max: 242px;
    --news-image-max-height: 220px;
}

.news-card:nth-child(3) {
    --news-image-scale: .94;
    --news-image-x: 4px;
    --news-image-y: -8px;
    --news-image-max: 250px;
    --news-image-max-height: 188px;
}

.news-card:nth-child(4) {
    --news-image-scale: 1.09;
    --news-image-x: 0px;
    --news-image-y: 4px;
    --news-image-max: 278px;
    --news-image-max-height: 198px;
}

.news-card:nth-child(5) {
    --news-image-scale: 1.00;
    --news-image-x: 0px;
    --news-image-y: -2px;
    --news-image-max: 238px;
    --news-image-max-height: 218px;
}

.news-card:nth-child(6) {
    --news-image-scale: 1.03;
    --news-image-x: 0px;
    --news-image-y: 1px;
    --news-image-max: 252px;
    --news-image-max-height: 220px;
}

.news-card:nth-child(7) {
    --news-image-scale: 1.03;
    --news-image-x: 0px;
    --news-image-y: 1px;
    --news-image-max: 254px;
    --news-image-max-height: 220px;
}

@media (max-width: 1199px) {
    .news-card,
    .news-card:first-child {
        min-height: 0;
    }

    .news-card__visual,
    .news-card:first-child .news-card__visual {
        padding: 14px 0 10px;
    }
}

@media (max-width: 767px) {
    .news-card__visual,
    .news-card:first-child .news-card__visual {
        display: grid;
        place-items: center;
        width: min(80%, 310px);
        padding: 26px 0 2px;
    }

    /* On stacked cards, reset the tiny desktop optical offsets;
       centred artwork is more natural in the single-column flow. */
    .news-card {
        --news-image-x: 0px;
        --news-image-y: 0px;
    }
}


/* ========================================================== */
/* NEWS ARCHIVE — AUTOMATIC NUMBERING                         */
/* Newest article goes first in the HTML; numbers follow it.  */
/* ========================================================== */

.news-archive__grid {
    counter-reset: news-item;
}

.news-card {
    counter-increment: news-item;
}

.news-card__number::before {
    content: counter(news-item, decimal-leading-zero);
}

/* ========================================================== */
/* NEWS CARD CTA — RESPONSIVE BREATHING ROOM                  */
/* Keep a guaranteed gap from body copy, especially on 4K.   */
/* ========================================================== */

.news-card__action {
    margin-top: 28px;
}

@media (min-width: 1600px) {
    .news-card__action {
        margin-top: 32px;
    }
}

@media (min-width: 2560px) {
    .news-card__action {
        margin-top: 38px;
    }
}

@media (max-width: 767px) {
    .news-card__action {
        margin: 22px auto 0;
    }
}

/* ========================================================== */
/* NEWS CARD DATE — EDITORIAL ARCHIVE STAMP                  */
/* Day leads; month/year form a quiet technical side label.   */
/* ========================================================== */

.news-card__meta {
    min-height: 58px;
    padding-bottom: 18px;
    align-items: flex-start;
}

.news-card__date {
    display: inline-grid;
    grid-template-columns: auto auto;
    align-items: center;
    gap: 0;
    min-width: 0;
    font-family: inherit;
    font-variant-numeric: lining-nums tabular-nums;
    white-space: nowrap;
}

.news-card__date-number {
    display: block;
    min-width: 1.55em;
    font-family: 'Source Serif 4', Georgia, serif;
    font-size: clamp(27px, 1.45vw, 31px);
    font-weight: 400;
    line-height: .92;
    letter-spacing: -.035em;
    color: #efeee9;
}

.news-card__date-copy {
    display: grid;
    align-content: center;
    gap: 5px;
    min-height: 31px;
    margin-left: 13px;
    padding-left: 13px;
    border-left: 1px solid rgba(161,182,197,.38);
}

.news-card__month {
    display: block;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .125em;
    color: #a1b6c5;
}

.news-card__year,
.news-card:first-child .news-card__year {
    display: block;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 10px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .11em;
    color: rgba(205,208,204,.50);
}

.news-card__year::after,
.news-card:first-child .news-card__year::after {
    display: none;
    content: none;
}

.news-card__day {
    display: none;
}

.news-card__number,
.news-card:first-child .news-card__number {
    margin-top: 3px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: .09em;
    color: rgba(161,182,197,.32);
}

@media (min-width: 2560px) {
    .news-card__date-number {
        font-size: 32px;
    }

    .news-card__date-copy {
        min-height: 32px;
        margin-left: 14px;
        padding-left: 14px;
    }

    .news-card__month {
        font-size: 11.5px;
    }

    .news-card__year,
    .news-card:first-child .news-card__year {
        font-size: 10.5px;
    }
}

@media (max-width: 767px) {
    .news-card__meta {
        min-height: 52px;
        padding-bottom: 17px;
    }

    .news-card__date-number {
        font-size: 25px;
    }

    .news-card__date-copy {
        min-height: 27px;
        gap: 4px;
        margin-left: 11px;
        padding-left: 11px;
    }

    .news-card__month {
        font-size: 10px;
    }

    .news-card__year,
    .news-card:first-child .news-card__year {
        font-size: 9px;
    }

    .news-card__number,
    .news-card:first-child .news-card__number {
        margin-top: 2px;
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .news-card__date-number {
        font-size: 23px;
    }

    .news-card__date-copy {
        margin-left: 10px;
        padding-left: 10px;
    }

    .news-card__month {
        font-size: 9.5px;
        letter-spacing: .115em;
    }
}

/* ========================================================== */
/* NEWS CARD DATE — FINAL SINGLE-LINE EDITORIAL TREATMENT     */
/* Compact by design: no extra metadata height.               */
/* ========================================================== */

.news-card__meta {
    min-height: 38px;
    padding-bottom: 20px;
    align-items: center;
}

.news-card__date {
    display: inline-flex;
    align-items: center;
    gap: 0;
    min-width: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-variant-numeric: lining-nums tabular-nums;
    white-space: nowrap;
}

.news-card__date::before {
    content: '';
    flex: 0 0 auto;
    width: 22px;
    height: 1px;
    margin-right: 11px;
    background: rgba(161,182,197,.52);
}

.news-card__date-number {
    display: inline-block;
    min-width: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .055em;
    color: #a1b6c5;
}

.news-card__date-copy {
    display: contents;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.news-card__month {
    display: inline-block;
    margin-left: 8px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .105em;
    color: rgba(205,208,204,.78);
}

.news-card__year,
.news-card:first-child .news-card__year {
    display: inline-flex;
    align-items: center;
    margin-left: 8px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 10.5px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .09em;
    color: rgba(205,208,204,.46);
}

.news-card__year::before,
.news-card:first-child .news-card__year::before {
    content: '·';
    margin-right: 8px;
    color: rgba(161,182,197,.48);
}

.news-card__year::after,
.news-card:first-child .news-card__year::after {
    display: none;
    content: none;
}

.news-card__number,
.news-card:first-child .news-card__number {
    margin-top: 0;
    align-self: center;
}

@media (min-width: 2560px) {
    .news-card__meta {
        min-height: 40px;
        padding-bottom: 22px;
    }

    .news-card__date::before {
        width: 24px;
        margin-right: 12px;
    }

    .news-card__date-number {
        font-size: 15px;
    }

    .news-card__month {
        margin-left: 9px;
        font-size: 11.5px;
    }

    .news-card__year,
    .news-card:first-child .news-card__year {
        margin-left: 9px;
        font-size: 11px;
    }

    .news-card__year::before,
    .news-card:first-child .news-card__year::before {
        margin-right: 9px;
    }
}

@media (max-width: 767px) {
    .news-card__meta {
        min-height: 36px;
        padding-bottom: 18px;
    }

    .news-card__date::before {
        width: 17px;
        margin-right: 9px;
    }

    .news-card__date-number {
        font-size: 13px;
    }

    .news-card__month {
        margin-left: 7px;
        font-size: 10px;
        letter-spacing: .095em;
    }

    .news-card__year,
    .news-card:first-child .news-card__year {
        margin-left: 7px;
        font-size: 9.5px;
    }

    .news-card__year::before,
    .news-card:first-child .news-card__year::before {
        margin-right: 7px;
    }
}

@media (max-width: 380px) {
    .news-card__date::before {
        width: 13px;
        margin-right: 7px;
    }

    .news-card__date-number {
        font-size: 12.5px;
    }

    .news-card__month {
        margin-left: 6px;
        font-size: 9.5px;
    }

    .news-card__year,
    .news-card:first-child .news-card__year {
        margin-left: 6px;
        font-size: 9px;
    }

    .news-card__year::before,
    .news-card:first-child .news-card__year::before {
        margin-right: 6px;
    }
}

/* ========================================================== */
/* NEWS CARD DATE — LOCKED SIMPLE ARCHIVE TREATMENT           */
/* Return to the stronger original direction: one line only,  */
/* with equal typography for year, month and day.             */
/* ========================================================== */

.news-card__meta {
    min-height: 38px;
    padding-bottom: 20px;
    align-items: center;
}

.news-card__date {
    --news-date-size: 12px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    white-space: nowrap;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: var(--news-date-size);
    font-weight: 500;
    line-height: 1;
    letter-spacing: .095em;
    font-variant-numeric: lining-nums tabular-nums;
}

.news-card__date::before,
.news-card__year::before,
.news-card:first-child .news-card__year::before,
.news-card__year::after,
.news-card:first-child .news-card__year::after {
    display: none;
    content: none;
}

.news-card__date-copy {
    display: contents;
}

.news-card__year,
.news-card:first-child .news-card__year,
.news-card__month,
.news-card__date-number {
    display: inline-block;
    margin: 0;
    padding: 0;
    min-width: 0;
    border: 0;
    font-family: inherit;
    font-size: var(--news-date-size);
    font-weight: 500;
    line-height: 1;
    letter-spacing: inherit;
}

/* Visual order matches the original archive treatment. */
.news-card__year,
.news-card:first-child .news-card__year {
    order: 1;
    color: #a1b6c5;
}

.news-card__month {
    order: 2;
    color: rgba(205,208,204,.66);
}

.news-card__date-number {
    order: 3;
    color: rgba(205,208,204,.66);
}

.news-card__number,
.news-card:first-child .news-card__number {
    margin-top: 0;
    align-self: center;
}

@media (min-width: 2560px) {
    .news-card__date {
        --news-date-size: 13px;
        gap: 11px;
    }
}

@media (max-width: 767px) {
    .news-card__date {
        --news-date-size: 11px;
        gap: 8px;
    }
}

@media (max-width: 380px) {
    .news-card__date {
        --news-date-size: 10.5px;
        gap: 7px;
        letter-spacing: .08em;
    }
}

/* ========================================================== */
/* NEWS DATE — YEAR SEPARATOR                                 */
/* Compact vertical hairline after the year; no added height. */
/* ========================================================== */
.news-card__year,
.news-card:first-child .news-card__year {
    display: inline-flex;
    align-items: center;
}

.news-card__year::after,
.news-card:first-child .news-card__year::after {
    content: '';
    display: inline-block;
    width: 1px;
    height: .82em;
    margin-left: 10px;
    background: rgba(161,182,197,.42);
    flex: 0 0 1px;
}

@media (min-width: 2560px) {
    .news-card__year::after,
    .news-card:first-child .news-card__year::after {
        margin-left: 11px;
    }
}

@media (max-width: 480px) {
    .news-card__year::after,
    .news-card:first-child .news-card__year::after {
        margin-left: 8px;
    }
}

/* ========================================================== */
/* NEWS DATE — FINAL SEPARATOR REFINEMENT                     */
/* Compact geometric marker with balanced optical spacing.    */
/* ========================================================== */
.news-card__date {
    gap: 8px;
    letter-spacing: .070em;
}

.news-card__year,
.news-card:first-child .news-card__year {
    gap: 0;
}

.news-card__year::after,
.news-card:first-child .news-card__year::after {
    content: '';
    display: inline-block;
    width: 4px;
    height: 4px;
    margin-left: 8px;
    border: 1px solid rgba(161,182,197,.58);
    background: rgba(161,182,197,.10);
    transform: rotate(45deg);
    transform-origin: center;
    flex: 0 0 4px;
}

@media (min-width: 2560px) {
    .news-card__date {
        gap: 9px;
        letter-spacing: .072em;
    }

    .news-card__year::after,
    .news-card:first-child .news-card__year::after {
        width: 4px;
        height: 4px;
        margin-left: 9px;
        flex-basis: 4px;
    }
}

@media (max-width: 767px) {
    .news-card__date {
        gap: 7px;
        letter-spacing: .065em;
    }

    .news-card__year::after,
    .news-card:first-child .news-card__year::after {
        width: 3px;
        height: 3px;
        margin-left: 7px;
        flex-basis: 3px;
    }
}

/* ========================================================== */
/* NEWS DATE — EVEN OPTICAL SPACING                           */
/* One explicit rhythm between year, marker, month and day.   */
/* ========================================================== */
.news-card__date {
    --news-date-gap: 9px;
    gap: 0;
}

.news-card__year,
.news-card:first-child .news-card__year {
    display: inline-flex;
    align-items: center;
}

.news-card__year::after,
.news-card:first-child .news-card__year::after {
    width: 4px;
    height: 4px;
    margin: 0 var(--news-date-gap);
    border: 1px solid rgba(161,182,197,.58);
    background: rgba(161,182,197,.10);
    transform: rotate(45deg);
    flex: 0 0 4px;
}

.news-card__month {
    margin-right: var(--news-date-gap);
}

@media (min-width: 2560px) {
    .news-card__date {
        --news-date-gap: 10px;
    }
}

@media (max-width: 767px) {
    .news-card__date {
        --news-date-gap: 8px;
    }

    .news-card__year::after,
    .news-card:first-child .news-card__year::after {
        width: 3px;
        height: 3px;
        flex-basis: 3px;
    }
}

/* ========================================================== */
/* NEWS PAGE — FOOTER PARITY LOCK — 2026-10-02               */
/* Exact homepage footer treatment, adapted to News font alias. */
/* ========================================================== */

.site-footer {
    background: linear-gradient(180deg, #24292e 0%, #22272c 100%);
    border-top: 1px solid rgba(222, 227, 230, .085);
    box-shadow: none;
}

.site-footer .site-footer__main {
    grid-template-columns:
        minmax(250px, 1.28fr)
        minmax(160px, .88fr)
        minmax(170px, .92fr)
        minmax(220px, 1fr);
    align-items: start;
    gap: clamp(36px, 4.2vw, 76px);
    padding: clamp(72px, 6vw, 98px) 0 clamp(62px, 5vw, 82px);
}

.site-footer .site-footer__brand {
    grid-column: auto;
    max-width: 350px;
    margin: 0;
    justify-self: start;
    text-align: left;
}

.site-footer .site-footer__logo {
    font-size: clamp(29px, 1.75vw, 33px);
    line-height: 1;
    letter-spacing: 1.1px;
}

.site-footer .site-footer__logo-smart { color: #9aaebd; }
.site-footer .site-footer__logo-repair { color: #ecebe7; }

.site-footer .site-footer__description {
    max-width: 34ch;
    margin: 24px 0 0;
    font-family: 'News Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 15.5px;
    font-weight: 400;
    line-height: 1.72;
    letter-spacing: .002em;
    color: #aeb4b4;
    text-align: left;
}

.site-footer .site-footer__heading {
    position: relative;
    margin: 2px 0 22px;
    padding-bottom: 14px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: .115em;
    color: #cbd0d1;
}

.site-footer .site-footer__heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 28px;
    height: 1px;
    background: #748da3;
    opacity: .72;
}

.site-footer .site-footer__links {
    display: grid;
    gap: 3px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer .site-footer__links a {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 36px;
    padding: 5px 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 15.5px;
    font-weight: 400;
    line-height: 1.42;
    letter-spacing: .018em;
    color: #b9bfbd;
    text-decoration: none;
    transition: color 170ms ease;
}

.site-footer .site-footer__links a:hover,
.site-footer .site-footer__links a[aria-current='page'] {
    color: #ecebe7;
}

.site-footer .site-footer__contact { grid-column: auto; }

.site-footer .site-footer__contact-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.site-footer .site-footer__location {
    font-family: 'News Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 15.5px;
    font-weight: 400;
    line-height: 1.65;
    color: #9ea4a3;
}

.site-footer .site-footer__phone {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 40px;
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: .025em;
    color: #ecebe7;
    text-decoration: none;
    transition: color 170ms ease;
}

.site-footer .site-footer__direct {
    display: flex;
    align-items: center;
    gap: 17px;
    margin: 0;
}

.site-footer .site-footer__direct span { display: none; }

.site-footer .site-footer__direct a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 15.5px;
    font-weight: 500;
    line-height: 1.45;
    letter-spacing: .025em;
    color: #9aaebd;
    text-decoration: none;
    transition: color 170ms ease;
}

.site-footer .site-footer__email {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 36px;
    margin: 0;
    font-family: 'News Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.5;
    color: #c0c5c3;
    text-decoration: none;
    overflow-wrap: anywhere;
    transition: color 170ms ease;
}

.site-footer .site-footer__phone:hover,
.site-footer .site-footer__email:hover { color: #ecebe7; }
.site-footer .site-footer__direct a:hover { color: #d0dce3; }

.site-footer a:focus-visible {
    outline: 1px solid #9aaebd;
    outline-offset: 5px;
    border-radius: 2px;
}

.site-footer .site-footer__bottom {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 0;
    padding: 23px 0 25px;
    border-top: 1px solid rgba(222, 227, 230, .095);
}

.site-footer .site-footer__copyright {
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11.5px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: .04em;
    color: #929a9a;
    text-align: left;
}

.site-footer .site-footer__credit {
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 10.5px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: .075em;
    color: rgba(154, 174, 189, .78);
    text-align: right;
    flex-wrap: wrap;
}

.site-footer .site-footer__credit-name {
    color: inherit;
    text-decoration: none;
    transition: color 180ms ease;
}

.site-footer .site-footer__credit-name:hover {
    color: #c7d6df;
    text-decoration: none;
}

.site-footer .site-footer__credit-name:focus-visible { color: #d7e1e7; }

@media (max-width: 1100px) {
    .site-footer .site-footer__main {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 42px 32px;
    }

    .site-footer .site-footer__brand {
        grid-column: 1 / -1;
        max-width: 470px;
    }

    .site-footer .site-footer__description { max-width: 46ch; }

    .site-footer .site-footer__bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 9px;
    }

    .site-footer .site-footer__credit {
        text-align: left;
        justify-content: flex-start;
    }
}

@media (max-width: 700px) {
    .site-footer .site-footer__container { width: calc(100% - 40px); }

    .site-footer .site-footer__main {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 38px 24px;
        padding: 60px 0 44px;
    }

    .site-footer .site-footer__brand { grid-column: 1 / -1; }

    .site-footer .site-footer__contact {
        grid-column: 1 / -1;
        padding-top: 30px;
        border-top: 1px solid rgba(222, 227, 230, .075);
    }

    .site-footer .site-footer__links a,
    .site-footer .site-footer__direct a,
    .site-footer .site-footer__email,
    .site-footer .site-footer__phone {
        min-height: 44px;
    }

    .site-footer .site-footer__heading { margin-bottom: 16px; }
}

@media (max-width: 520px) {
    .site-footer .site-footer__main {
        grid-template-columns: 1fr;
        gap: 34px;
        padding: 56px 0 40px;
    }

    .site-footer .site-footer__brand,
    .site-footer .site-footer__contact { grid-column: auto; }

    .site-footer .site-footer__description {
        max-width: 32ch;
        font-size: 15px;
    }

    .site-footer .site-footer__contact { margin-top: 2px; }
    .site-footer .site-footer__bottom { padding: 22px 0 24px; }

    .site-footer .site-footer__copyright,
    .site-footer .site-footer__credit { width: 100%; }
}

@media (hover: none), (pointer: coarse) {
    .site-footer .site-footer__links a:hover { color: #b9bfbd; }
    .site-footer .site-footer__phone:hover,
    .site-footer .site-footer__email:hover { color: inherit; }
    .site-footer .site-footer__direct a:hover { color: #9aaebd; }
}

/* ========================================================== */
/* FINAL RESPONSIVE QA — NEWS PAGE — 2026-10-02              */
/* Keep the tablet hero compact; SVG returns once a split layout fits. */
/* ========================================================== */

/* The previous 768px boundary made the hero jump from a compact text-only
   block to a very tall stacked text + SVG composition. Keep tablets concise
   and reveal the bulletin again at the existing 901px split breakpoint. */
@media (min-width: 768px) and (max-width: 900px) {
    .news-hero__container {
        min-height: auto;
        grid-template-columns: 1fr;
        gap: 0;
        padding: 54px 0 58px;
    }

    .news-hero__copy {
        max-width: 760px;
        margin-inline: auto;
        text-align: center;
    }

    .news-hero__title,
    .news-hero__lead {
        margin-left: auto;
        margin-right: auto;
    }

    .news-hero__visual {
        display: none;
    }
}

/* Keep compact-tablet archive gutters consistent with the text-only hero. */
@media (min-width: 768px) and (max-width: 900px) {
    .news-archive__container {
        padding-top: 78px;
        padding-bottom: 92px;
    }
}

/* Compact laptops: keep archive cards full-width until the desktop header
   also takes over. Two-column cards at 1200–1279px were too compressed. */
@media (min-width: 1200px) and (max-width: 1279px) {
    .news-archive__grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================================== */
/* NEWS CARD BODY COPY — ADOBE CLEAN REGULAR                 */
/* ========================================================== */
.news-card__text,
.news-card:first-child .news-card__text {
    font-family: 'News Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-weight: 400;
}

/* ========================================================== */
/* NEWS ARCHIVE — TIGHT PHYSICAL SHADOW SYSTEM — 2026-10-04  */
/* Matches the refined site card depth without broad shadow bands. */
/* ========================================================== */

.news-card,
.news-card:first-child {
    background:
        linear-gradient(180deg, rgba(239,238,233,.014), transparent 18%),
        linear-gradient(180deg, #3a4248 0%, #373f45 100%);
    box-shadow:
        0 5px 9px -5px rgba(0,0,0,.45),
        inset 0 1px 0 rgba(239,238,233,.025);
}

.news-card:focus-within,
.news-card:first-child:focus-within {
    background:
        linear-gradient(180deg, rgba(239,238,233,.020), transparent 18%),
        linear-gradient(180deg, #3d464d 0%, #394148 100%);
    box-shadow:
        0 7px 12px -6px rgba(0,0,0,.54),
        inset 0 1px 0 rgba(239,238,233,.030);
}

@media (hover:hover) and (pointer:fine) {
    .news-card:hover,
    .news-card:first-child:hover {
        background:
            linear-gradient(180deg, rgba(239,238,233,.020), transparent 18%),
            linear-gradient(180deg, #3d464d 0%, #394148 100%);
        box-shadow:
            0 7px 12px -6px rgba(0,0,0,.54),
            inset 0 1px 0 rgba(239,238,233,.030);
    }
}

@media (hover:none), (pointer:coarse) {
    .news-card:hover,
    .news-card:first-child:hover {
        background:
            linear-gradient(180deg, rgba(239,238,233,.014), transparent 18%),
            linear-gradient(180deg, #3a4248 0%, #373f45 100%);
        box-shadow:
            0 5px 9px -5px rgba(0,0,0,.45),
            inset 0 1px 0 rgba(239,238,233,.025);
    }
}

/* ========================================================== */
/* CARD SYSTEM — NO TOP HAIRLINES — 2026-10-04               */
/* Preserve the cinematic sweep and tight card depth. */
.news-card::before,
.news-card:first-child::before,
.news-card:hover::before,
.news-card:first-child:hover::before,
.news-card:focus-within::before,
.news-card:first-child:focus-within::before {
    content: none !important;
    display: none !important;
}

/* ========================================================== */
/* SITE-WIDE EYEBROW CLEANUP — NO DECORATIVE LEADING DASH     */
/* ========================================================== */
.news-hero__eyebrow::before,
.news-archive__eyebrow::before {
    content: none !important;
    display: none !important;
}



/* EYEBROW DASH HARD FIX — 2026-10-04 */
.news-hero__eyebrow,
.news-archive__eyebrow {
    gap: 0 !important;
}
.news-hero__eyebrow::before,
.news-archive__eyebrow::before {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    flex: 0 0 0 !important;
    background: none !important;
}
