.artw-blog-engine {
    --artw-blog-accent: #16c8c8;
    --artw-blog-accent-soft: color-mix(in srgb, var(--artw-blog-accent) 16%, white);
    --artw-blog-cols: 3;
    --artw-blog-tablet-cols: 2;
    font-family: inherit;
    color: inherit;
}

.artw-blog-breadcrumb {
    margin: 0 0 .75rem;
    font-size: .88rem;
    line-height: 1.3;
}

.artw-blog-breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    gap: .3rem .45rem;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
}

.artw-blog-breadcrumb li {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    color: color-mix(in srgb, currentColor 62%, transparent);
}

.artw-blog-breadcrumb li + li::before {
    content: "/";
    opacity: .38;
}

.artw-blog-breadcrumb a {
    display: inline-flex;
    align-items: center;
    color: inherit;
    text-decoration: none;
}

.artw-blog-breadcrumb a:hover,
.artw-blog-breadcrumb a:focus-visible {
    color: var(--artw-blog-accent);
    text-decoration: none;
}

.artw-blog-breadcrumb [aria-current="page"] {
    color: currentColor;
    font-weight: 600;
}

.artw-blog-breadcrumb__home {
    width: 1rem;
    height: 1rem;
}

.artw-blog-header {
    margin-block-end: 1.5rem;
}

.artw-blog-titlebar {
    display: flex;
    align-items: center;
    gap: .55rem;
    min-height: 2.75rem;
}

.artw-blog-header--accent_bar .artw-blog-titlebar {
    padding: .22rem .45rem .28rem;
    background: var(--artw-blog-accent-soft);
}

/* Typography contract: H1-H6 and P keep the template's native typography. */
.artw-blog-heading {
    margin: 0;
}

.artw-blog-header--accent_bar .artw-blog-heading {
    color: var(--artw-blog-accent);
}

.artw-blog-description {
    margin-top: .75rem;
    max-width: 78ch;
}

.artw-blog-description > :last-child,
.artw-blog-category-info__panel > :last-child {
    margin-bottom: 0;
}

.artw-blog-category-info {
    position: relative;
    flex: 0 0 auto;
    margin-left: .1rem;
}

.artw-blog-category-info summary {
    display: grid;
    width: 1.8rem;
    height: 1.8rem;
    place-items: center;
    border-radius: 999px;
    color: var(--artw-blog-accent);
    cursor: pointer;
    list-style: none;
}

.artw-blog-category-info summary::-webkit-details-marker {
    display: none;
}

.artw-blog-category-info summary:hover,
.artw-blog-category-info summary:focus-visible {
    background: color-mix(in srgb, var(--artw-blog-accent) 11%, transparent);
    outline: none;
}

.artw-blog-category-info summary svg {
    width: 1.15rem;
    height: 1.15rem;
}

.artw-blog-category-info__panel {
    position: absolute;
    z-index: 20;
    top: calc(100% + .45rem);
    right: 0;
    width: min(34rem, calc(100vw - 2rem));
    padding: .85rem 1rem;
    border: 1px solid color-mix(in srgb, currentColor 15%, transparent);
    border-radius: .45rem;
    background: Canvas;
    color: CanvasText;
    box-shadow: 0 .7rem 2rem rgba(0, 0, 0, .12);
}

.artw-blog-hero {
    margin-block-end: clamp(1.25rem, 2.5vw, 2rem);
}

.artw-blog-grid {
    display: grid;
    grid-template-columns: repeat(var(--artw-blog-cols), minmax(0, 1fr));
    gap: clamp(1rem, 2vw, 1.6rem);
}

.artw-blog-card {
    min-width: 0;
    width: 100%;
    margin: 0;
    box-sizing: border-box;
    font-family: inherit;
}

.artw-blog-card__figure {
    position: relative;
    width: 100%;
    min-width: 0;
    margin: 0;
    overflow: hidden;
    box-sizing: border-box;
}

.artw-blog-card__media {
    display: block;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    box-sizing: border-box;
    background: color-mix(in srgb, currentColor 6%, transparent);
    text-decoration: none;
}

.artw-blog-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .22s ease;
}

.artw-blog-card__media:hover img,
.artw-blog-card__media:focus-visible img {
    transform: scale(1.018);
}

.artw-ratio-16-9 { aspect-ratio: 16 / 9; }
.artw-ratio-4-3 { aspect-ratio: 4 / 3; }
.artw-ratio-3-2 { aspect-ratio: 3 / 2; }
.artw-ratio-1-1 { aspect-ratio: 1 / 1; }
.artw-ratio-3-4 { aspect-ratio: 3 / 4; }
.artw-ratio-2-3 { aspect-ratio: 2 / 3; }

.artw-blog-card__caption {
    margin: 0;
    font-size: .78rem;
    line-height: 1.35;
}

.artw-blog-caption--hover .artw-blog-card__caption {
    position: absolute;
    z-index: 2;
    right: .5rem;
    bottom: .5rem;
    left: .5rem;
    padding: .45rem .55rem;
    border-radius: .3rem;
    background: rgba(0, 0, 0, .72);
    color: #fff;
    opacity: 0;
    transform: translateY(.25rem);
    pointer-events: none;
    transition: opacity .16s ease, transform .16s ease;
}

.artw-blog-caption--hover .artw-blog-card__figure:hover .artw-blog-card__caption,
.artw-blog-caption--hover .artw-blog-card__figure:focus-within .artw-blog-card__caption {
    opacity: 1;
    transform: translateY(0);
}

.artw-blog-caption--below .artw-blog-card__caption {
    padding-top: .4rem;
    color: color-mix(in srgb, currentColor 72%, transparent);
}

.artw-blog-card__body {
    width: 100%;
    min-width: 0;
    padding-top: .8rem;
    box-sizing: border-box;
}

.artw-blog-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .7rem;
    margin-bottom: .45rem;
    font-size: .82em;
    opacity: .72;
}

.artw-blog-card__title {
    max-width: 100%;
    margin: 0;
    overflow-wrap: break-word;
}

.artw-blog-card__title a {
    color: inherit;
    text-decoration: none;
}

.artw-blog-card__title a:hover,
.artw-blog-card__title a:focus-visible {
    color: var(--artw-blog-accent);
    text-decoration: none;
}

.artw-blog-card__intro {
    margin: .55rem 0 0;
    opacity: .86;
}

.artw-blog-card--hero-split {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(260px, .75fr);
    gap: clamp(1.2rem, 3vw, 2.5rem);
    align-items: center;
}

.artw-blog-card--hero-split .artw-blog-card__body {
    padding: 0;
}

.artw-blog-engine--magazine_portrait .artw-blog-card--hero-split {
    grid-template-columns: minmax(220px, .58fr) minmax(0, 1.42fr);
}

/* Hero ratio is controlled only by the ratio class produced by the renderer. */
.artw-blog-card--hero .artw-blog-card__media {
    max-height: none;
}

.artw-blog-card--hero-overlay {
    position: relative;
    display: block;
    overflow: hidden;
}

.artw-blog-card--hero-overlay .artw-blog-card__figure {
    isolation: isolate;
}

.artw-blog-card--hero-overlay .artw-blog-card__figure::after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(to top, rgba(0, 0, 0, .78) 0%, rgba(0, 0, 0, .42) 38%, rgba(0, 0, 0, .04) 72%);
}

.artw-blog-card--hero-overlay .artw-blog-card__body {
    position: absolute;
    z-index: 3;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: clamp(1rem, 3.2vw, 2.4rem);
    color: #fff;
}

.artw-blog-card--hero-overlay .artw-blog-card__meta,
.artw-blog-card--hero-overlay .artw-blog-card__intro {
    opacity: .92;
}

.artw-blog-card--hero-overlay .artw-blog-card__title a {
    color: inherit;
}

.artw-blog-card--hero-overlay .artw-blog-card__title a:hover,
.artw-blog-card--hero-overlay .artw-blog-card__title a:focus-visible {
    color: #fff;
    text-decoration: none;
}

.artw-blog-card--hero-overlay.artw-blog-card--no-media .artw-blog-card__body {
    position: static;
    padding: 0;
    color: inherit;
}

.artw-blog-caption--hover .artw-blog-card--hero-overlay .artw-blog-card__caption {
    z-index: 4;
    top: .5rem;
    bottom: auto;
}

.artw-blog-pagination {
    margin-top: clamp(1.75rem, 3vw, 2.75rem);
    /* Keep the progress thumb and its focus ring comfortably clear of
       whatever section/footer follows the blog. */
    margin-bottom: clamp(1rem, 2vw, 1.5rem);
}

.artw-blog-pagination__device {
    width: 100%;
}

/* Only the control assigned to the active device is exposed. */
.artw-blog-pagination__device--tablet,
.artw-blog-pagination__device--mobile {
    display: none;
}

.artw-pagination-progress {
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr) 2.75rem;
    gap: .95rem;
    align-items: center;
    width: 100%;
    padding: .9rem 1rem 1.05rem;
    border: 1px solid color-mix(in srgb, currentColor 9%, transparent);
    border-radius: .9rem;
    background:
        linear-gradient(180deg, color-mix(in srgb, Canvas 98%, var(--artw-blog-accent) 2%), Canvas),
        Canvas;
    box-shadow: 0 .35rem 1.15rem rgba(0, 0, 0, .055);
}

.artw-pagination-progress__main {
    display: grid;
    gap: .5rem;
    min-width: 0;
}

.artw-pagination__arrow,
.artw-pagination-gesture__direction {
    display: grid;
    place-items: center;
    color: inherit;
    text-decoration: none;
}

.artw-pagination__arrow {
    width: 2.75rem;
    height: 2.75rem;
    border: 1px solid color-mix(in srgb, currentColor 10%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, Canvas 94%, var(--artw-blog-accent) 6%);
    box-shadow: 0 .18rem .55rem rgba(0, 0, 0, .07);
    transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.artw-pagination__arrow:hover,
.artw-pagination__arrow:focus-visible,
.artw-pagination-gesture__direction:hover,
.artw-pagination-gesture__direction:focus-visible {
    color: var(--artw-blog-accent);
    text-decoration: none;
    outline: 2px solid color-mix(in srgb, var(--artw-blog-accent) 62%, transparent);
    outline-offset: 2px;
}

.artw-pagination__arrow:hover,
.artw-pagination__arrow:focus-visible {
    border-color: color-mix(in srgb, var(--artw-blog-accent) 32%, transparent);
    background: color-mix(in srgb, Canvas 84%, var(--artw-blog-accent) 16%);
    box-shadow: 0 .28rem .8rem color-mix(in srgb, var(--artw-blog-accent) 18%, transparent);
    transform: translateY(-1px);
}

.artw-pagination__arrow svg,
.artw-pagination-gesture__direction svg {
    width: 1.35rem;
    height: 1.35rem;
}

.artw-pagination__arrow--disabled {
    opacity: 0;
    pointer-events: none;
}

.artw-pagination-progress input[type="range"] {
    --artw-pagination-progress: 0%;
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    min-height: 2rem;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    accent-color: var(--artw-blog-accent);
}

.artw-pagination-progress input[type="range"]::-webkit-slider-runnable-track {
    height: .48rem;
    border: 1px solid color-mix(in srgb, currentColor 6%, transparent);
    border-radius: 999px;
    background: linear-gradient(
        to right,
        var(--artw-blog-accent) 0,
        var(--artw-blog-accent) var(--artw-pagination-progress),
        color-mix(in srgb, currentColor 13%, transparent) var(--artw-pagination-progress),
        color-mix(in srgb, currentColor 13%, transparent) 100%
    );
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, .08);
}

.artw-pagination-progress input[type="range"]::-webkit-slider-thumb {
    width: 1.42rem;
    height: 1.42rem;
    margin-top: -.47rem;
    border: 4px solid Canvas;
    border-radius: 999px;
    background: var(--artw-blog-accent);
    box-shadow:
        0 0 0 1px color-mix(in srgb, var(--artw-blog-accent) 72%, black),
        0 0 0 .34rem color-mix(in srgb, var(--artw-blog-accent) 10%, transparent),
        0 .25rem .65rem rgba(0, 0, 0, .18);
    -webkit-appearance: none;
    appearance: none;
    transition: box-shadow .16s ease, transform .16s ease;
}

.artw-pagination-progress input[type="range"]:hover::-webkit-slider-thumb,
.artw-pagination-progress input[type="range"]:focus-visible::-webkit-slider-thumb {
    box-shadow:
        0 0 0 1px color-mix(in srgb, var(--artw-blog-accent) 78%, black),
        0 0 0 .46rem color-mix(in srgb, var(--artw-blog-accent) 15%, transparent),
        0 .3rem .8rem rgba(0, 0, 0, .2);
}

.artw-pagination-progress input[type="range"]::-moz-range-track {
    height: .48rem;
    border: 1px solid color-mix(in srgb, currentColor 6%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, currentColor 13%, transparent);
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, .08);
}

.artw-pagination-progress input[type="range"]::-moz-range-progress {
    height: .48rem;
    border-radius: 999px;
    background: var(--artw-blog-accent);
}

.artw-pagination-progress input[type="range"]::-moz-range-thumb {
    width: 1.42rem;
    height: 1.42rem;
    border: 4px solid Canvas;
    border-radius: 999px;
    background: var(--artw-blog-accent);
    box-shadow:
        0 0 0 1px color-mix(in srgb, var(--artw-blog-accent) 72%, black),
        0 0 0 .34rem color-mix(in srgb, var(--artw-blog-accent) 10%, transparent),
        0 .25rem .65rem rgba(0, 0, 0, .18);
}

.artw-pagination-progress input[type="range"]:focus-visible {
    outline: 2px solid var(--artw-blog-accent);
    outline-offset: .35rem;
    border-radius: 999px;
}

.artw-pagination__counter {
    display: inline-flex;
    justify-self: center;
    align-items: center;
    min-height: 1.65rem;
    padding: .18rem .65rem;
    border: 1px solid color-mix(in srgb, currentColor 8%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, Canvas 92%, var(--artw-blog-accent) 8%);
    text-align: center;
    font-size: .78em;
    font-variant-numeric: tabular-nums;
    opacity: .78;
}

/* Page-wide touch navigation: keep vertical scrolling native while reserving
   horizontal pan for ARTW. Once a gesture locks, transform + grayscale provide
   immediate visual feedback without changing document geometry. */
.artw-blog-engine--page-swipe {
    touch-action: pan-y pinch-zoom;
}

.artw-blog-swipe-surface {
    --artw-swipe-x: 0px;
    --artw-swipe-gray: 0;
}

.artw-blog-engine--page-swipe .artw-blog-swipe-surface {
    filter: grayscale(var(--artw-swipe-gray));
    transform: translate3d(var(--artw-swipe-x), 0, 0);
    transition:
        transform .24s cubic-bezier(.2, .75, .25, 1),
        filter .20s ease;
}

.artw-blog-engine--page-swipe.artw-swipe-tracking .artw-blog-swipe-surface {
    transition: none;
    will-change: transform, filter;
}

.artw-blog-engine--page-swipe.artw-swipe-locked .artw-blog-swipe-surface {
    will-change: transform, filter;
}

.artw-blog-engine--page-swipe.artw-swipe-committing .artw-blog-swipe-surface {
    transition:
        transform .12s ease-out,
        filter .12s ease-out;
    will-change: transform, filter;
}

.artw-page-swipe {
    display: none;
    position: fixed;
    z-index: 1045;
    top: 50%;
    right: 0;
    left: 0;
    height: 0;
    pointer-events: none;
    transform: translateY(-50%);
}

.artw-page-swipe__direction {
    position: absolute;
    top: 0;
    display: grid;
    width: 3rem;
    height: 3.4rem;
    place-items: center;
    border: 1px solid color-mix(in srgb, currentColor 14%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, Canvas 90%, transparent);
    box-shadow: 0 .2rem .75rem rgba(0, 0, 0, .13);
    color: var(--artw-blog-accent);
    opacity: .78;
    pointer-events: auto;
    text-decoration: none;
    transform: translateY(-50%);
    transition: opacity .18s ease, box-shadow .18s ease, background-color .18s ease, transform .18s ease;
}

.artw-page-swipe__direction--previous { left: .45rem; }
.artw-page-swipe__direction--next { right: .45rem; }

.artw-page-swipe__direction:hover,
.artw-page-swipe__direction:focus-visible,
.artw-page-swipe__direction:active {
    color: var(--artw-blog-accent);
    opacity: 1;
    text-decoration: none;
    outline: 2px solid color-mix(in srgb, var(--artw-blog-accent) 62%, transparent);
    outline-offset: 2px;
    box-shadow: 0 .25rem .9rem rgba(0, 0, 0, .18);
}


.artw-blog-engine.artw-swipe-toward-next .artw-page-swipe__direction--next,
.artw-blog-engine.artw-swipe-toward-previous .artw-page-swipe__direction--previous {
    opacity: 1;
    background: color-mix(in srgb, Canvas 80%, var(--artw-blog-accent) 20%);
    box-shadow: 0 .3rem 1rem color-mix(in srgb, var(--artw-blog-accent) 20%, rgba(0, 0, 0, .12));
    transform: translateY(-50%) scale(1.055);
}

.artw-page-swipe__icon {
    display: grid;
    place-items: center;
}

.artw-page-swipe__icon svg {
    width: 1.45rem;
    height: 1.45rem;
}

.artw-page-swipe__direction--next .artw-page-swipe__icon {
    animation: artw-pagination-nudge-next 1.8s ease-in-out infinite;
}

.artw-page-swipe__direction--previous .artw-page-swipe__icon {
    animation: artw-pagination-nudge-previous 1.8s ease-in-out infinite;
}

@keyframes artw-pagination-nudge-next {
    0%, 55%, 100% { transform: translateX(0); }
    70% { transform: translateX(.28rem); }
    84% { transform: translateX(0); }
}

@keyframes artw-pagination-nudge-previous {
    0%, 55%, 100% { transform: translateX(0); }
    70% { transform: translateX(-.28rem); }
    84% { transform: translateX(0); }
}

.artw-blog-card__title a:focus-visible,
.artw-blog-card__media:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--artw-blog-accent) 78%, white);
    outline-offset: 3px;
}

.artw-blog-lightbox {
    width: min(96vw, 1500px);
    max-width: none;
    max-height: 94vh;
    padding: 0;
    border: 0;
    border-radius: .55rem;
    background: rgba(14, 14, 16, .97);
    color: #fff;
    overflow: hidden;
}

.artw-blog-lightbox::backdrop {
    background: rgba(0, 0, 0, .84);
    backdrop-filter: blur(3px);
}

.artw-blog-lightbox figure {
    display: flex;
    max-height: 94vh;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 2.75rem 1rem 1rem;
}

.artw-blog-lightbox img {
    display: block;
    max-width: 100%;
    max-height: calc(94vh - 5rem);
    width: auto;
    height: auto;
    object-fit: contain;
}

.artw-blog-lightbox figcaption {
    width: min(100%, 80rem);
    padding: .75rem .25rem .15rem;
    text-align: center;
    font-size: .9rem;
    line-height: 1.4;
    color: rgba(255, 255, 255, .82);
}

.artw-blog-lightbox__close {
    position: absolute;
    z-index: 3;
    top: .5rem;
    right: .65rem;
    display: grid;
    width: 2.1rem;
    height: 2.1rem;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    font: inherit;
    font-size: 1.6rem;
    line-height: 1;
    cursor: pointer;
}

.artw-blog-lightbox__close:hover,
.artw-blog-lightbox__close:focus-visible {
    background: rgba(255, 255, 255, .2);
    outline: 2px solid #fff;
    outline-offset: 2px;
}

@media (max-width: 991.98px) {
    .artw-blog-engine--swipe-tablet {
        touch-action: pan-y pinch-zoom;
    }

    .artw-page-swipe--tablet {
        display: block;
    }

    .artw-blog-pagination--tablet-gesture {
        margin-top: 0;
    }

    .artw-blog-pagination__device--desktop {
        display: none;
    }

    .artw-blog-pagination__device--tablet {
        display: block;
    }

    .artw-blog-grid {
        grid-template-columns: repeat(var(--artw-blog-tablet-cols), minmax(0, 1fr));
    }

    .artw-blog-card--hero-split,
    .artw-blog-engine--magazine_portrait .artw-blog-card--hero-split {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 767.98px) {
    .artw-blog-engine--swipe-mobile {
        touch-action: pan-y pinch-zoom;
    }

    .artw-page-swipe--tablet {
        display: none;
    }

    .artw-page-swipe--mobile {
        display: block;
    }

    .artw-blog-pagination--mobile-gesture {
        margin-top: 0;
    }

    .artw-blog-pagination__device--tablet {
        display: none;
    }

    .artw-blog-pagination__device--mobile {
        display: block;
    }

    .artw-blog-breadcrumb {
        margin-bottom: .6rem;
        font-size: .8rem;
    }

    .artw-blog-header--accent_bar .artw-blog-titlebar {
        padding: .22rem .4rem .28rem;
    }

    .artw-blog-category-info__panel {
        position: fixed;
        z-index: 9999;
        top: 50%;
        right: 1rem;
        left: 1rem;
        width: auto;
        max-height: 70vh;
        overflow: auto;
        transform: translateY(-50%);
    }

    .artw-blog-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .artw-blog-card--hero-split,
    .artw-blog-engine--magazine_portrait .artw-blog-card--hero-split {
        display: block;
    }

    .artw-blog-card--hero-split .artw-blog-card__body {
        padding-top: .9rem;
    }

    .artw-blog-card--hero-overlay .artw-blog-card__body {
        padding: clamp(.85rem, 4vw, 1.3rem);
    }

    .artw-blog-mobile--compact .artw-blog-grid .artw-blog-card {
        display: grid;
        grid-template-columns: 108px minmax(0, 1fr);
        gap: .85rem;
        align-items: center;
        padding-bottom: 1rem;
        border-bottom: 1px solid color-mix(in srgb, currentColor 14%, transparent);
    }

    .artw-blog-mobile--compact .artw-blog-grid .artw-blog-card__figure {
        width: 108px;
    }

    .artw-blog-mobile--compact .artw-blog-grid .artw-blog-card__media {
        width: 108px;
        /* Keep the ratio class selected in ARTW (4:3, 16:9, portrait, etc.). */
    }

    .artw-blog-mobile--compact .artw-blog-grid .artw-blog-card__body {
        padding: 0;
    }

    .artw-blog-mobile--compact .artw-blog-grid .artw-blog-card__intro {
        display: none;
    }

    .artw-blog-mobile--compact .artw-blog-grid .artw-blog-card__meta {
        margin-bottom: .3rem;
        font-size: .75rem;
    }

    /* Captions are intentionally omitted from the mobile blog listing.
       Editorial alt text remains on the image and captions remain available
       in the full-screen lightbox where there is enough visual space. */
    .artw-blog-engine .artw-blog-card__caption {
        display: none;
    }
}


/* Optional explicit typography. These declarations exist only when the server
   adds the corresponding class and CSS variable. No JavaScript measurement or
   post-paint font recalculation is used. */
@media (min-width: 992px) {
    .artw-typo-hero-desktop .artw-blog-card--hero .artw-blog-card__title { font-size: var(--artw-font-hero-desktop); }
    .artw-typo-card-desktop .artw-blog-grid .artw-blog-card__title { font-size: var(--artw-font-card-desktop); }
    .artw-typo-hero-body-desktop .artw-blog-card--hero .artw-blog-card__intro { font-size: var(--artw-font-hero-body-desktop); }
    .artw-typo-card-body-desktop .artw-blog-grid .artw-blog-card__intro { font-size: var(--artw-font-card-body-desktop); }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .artw-typo-hero-tablet .artw-blog-card--hero .artw-blog-card__title { font-size: var(--artw-font-hero-tablet); }
    .artw-typo-card-tablet .artw-blog-grid .artw-blog-card__title { font-size: var(--artw-font-card-tablet); }
    .artw-typo-hero-body-tablet .artw-blog-card--hero .artw-blog-card__intro { font-size: var(--artw-font-hero-body-tablet); }
    .artw-typo-card-body-tablet .artw-blog-grid .artw-blog-card__intro { font-size: var(--artw-font-card-body-tablet); }
}

@media (max-width: 767.98px) {
    .artw-typo-hero-mobile .artw-blog-card--hero .artw-blog-card__title { font-size: var(--artw-font-hero-mobile); }
    .artw-typo-card-mobile .artw-blog-grid .artw-blog-card__title { font-size: var(--artw-font-card-mobile); }
    .artw-typo-hero-body-mobile .artw-blog-card--hero .artw-blog-card__intro { font-size: var(--artw-font-hero-body-mobile); }
    .artw-typo-card-body-mobile .artw-blog-grid .artw-blog-card__intro { font-size: var(--artw-font-card-body-mobile); }
}

@media (prefers-reduced-motion: reduce) {
    .artw-blog-engine--page-swipe .artw-blog-swipe-surface {
        transition: none;
    }

    .artw-page-swipe__direction--next .artw-page-swipe__icon,
    .artw-page-swipe__direction--previous .artw-page-swipe__icon {
        animation: none;
    }

    .artw-blog-card__media img,
    .artw-blog-card__caption {
        transition: none;
    }

    .artw-blog-card__media:hover img,
    .artw-blog-card__media:focus-visible img {
        transform: none;
    }
}

/* v0.2 Profile Engine: models are real responsive treatments, not aliases. */
@media (min-width: 992px) {
    .artw-model-desktop--magazine_portrait .artw-blog-grid {
        gap: clamp(1.25rem, 2.4vw, 2rem);
    }
    .artw-model-desktop--magazine_portrait .artw-blog-grid .artw-blog-card {
        padding: .85rem;
        border: 1px solid color-mix(in srgb, currentColor 10%, transparent);
        border-radius: .65rem;
        background: color-mix(in srgb, Canvas 98%, var(--artw-blog-accent) 2%);
    }
    .artw-model-desktop--magazine_portrait .artw-blog-grid .artw-blog-card__body {
        text-align: center;
        padding-top: .9rem;
    }
    .artw-model-desktop--magazine_portrait .artw-blog-card--hero-split {
        grid-template-columns: minmax(220px, .58fr) minmax(0, 1.42fr);
        padding: 1rem;
        border: 1px solid color-mix(in srgb, currentColor 10%, transparent);
        border-radius: .8rem;
    }
}

@media (min-width: 600px) and (max-width: 991.98px) {
    .artw-model-tablet--magazine_portrait .artw-blog-grid .artw-blog-card {
        padding: .7rem;
        border: 1px solid color-mix(in srgb, currentColor 10%, transparent);
        border-radius: .6rem;
    }
    .artw-model-tablet--compact_grid .artw-blog-card:not(.artw-blog-card--hero) {
        display: grid;
        grid-template-columns: minmax(120px, .72fr) minmax(0, 1.28fr);
        gap: 1rem;
        align-items: center;
    }
    .artw-model-tablet--compact_grid .artw-blog-card:not(.artw-blog-card--hero) .artw-blog-card__body {
        padding-top: 0;
    }
}

@media (max-width: 599.98px) {
    .artw-model-mobile--compact_list .artw-blog-card:not(.artw-blog-card--hero) {
        display: grid;
        grid-template-columns: minmax(108px, 34%) minmax(0, 1fr);
        gap: .85rem;
        align-items: center;
    }
    .artw-model-mobile--compact_list .artw-blog-card:not(.artw-blog-card--hero) .artw-blog-card__body { padding-top: 0; }

    .artw-model-mobile--cards .artw-blog-card:not(.artw-blog-card--hero) {
        display: block;
        padding-bottom: 1rem;
        border-bottom: 1px solid color-mix(in srgb, currentColor 10%, transparent);
    }

    .artw-model-mobile--editorial_feed .artw-blog-grid {
        gap: 0;
    }
    .artw-model-mobile--editorial_feed .artw-blog-card:not(.artw-blog-card--hero) {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 88px;
        gap: .9rem;
        align-items: center;
        padding: 1rem 0;
        border-bottom: 1px solid color-mix(in srgb, currentColor 12%, transparent);
    }
    .artw-model-mobile--editorial_feed .artw-blog-card:not(.artw-blog-card--hero) .artw-blog-card__figure {
        grid-column: 2;
        grid-row: 1;
    }
    .artw-model-mobile--editorial_feed .artw-blog-card:not(.artw-blog-card--hero) .artw-blog-card__body {
        grid-column: 1;
        grid-row: 1;
        padding-top: 0;
    }
    .artw-model-mobile--editorial_feed .artw-blog-card:not(.artw-blog-card--hero) .artw-blog-card__intro {
        display: none;
    }
}

/* v0.2.3 Composer / Article Allocator ------------------------------------ */
.artw-blog-engine--composer .artw-blog-area {
    margin-block-end: clamp(1.2rem, 2.3vw, 2rem);
}
.artw-blog-engine--composer .artw-blog-area:last-child {
    margin-block-end: 0;
}
.artw-blog-engine--composer .artw-blog-area__grid {
    display: grid;
    gap: clamp(1rem, 2vw, 1.6rem);
    min-width: 0;
}
.artw-blog-engine--composer .artw-blog-area .artw-blog-card {
    min-width: 0;
}

/* Hero structure is controlled by the Area presentation, not duplicated HTML. */
.artw-blog-engine--composer .artw-blog-card--hero-composer {
    width: 100%;
}
.artw-blog-engine--composer .artw-blog-card--hero-composer .artw-blog-card__media {
    max-height: none;
}

@media (min-width: 992px) {
    .artw-blog-engine--composer .artw-blog-area__grid {
        grid-template-columns: repeat(var(--artw-area-cols-desktop, 1), minmax(0, 1fr));
    }

    .artw-blog-engine--composer .artw-area-desktop--compact .artw-blog-card:not(.artw-blog-card--hero-composer) {
        display: grid;
        grid-template-columns: minmax(150px, 38%) minmax(0, 1fr);
        gap: 1rem;
        align-items: center;
    }
    .artw-blog-engine--composer .artw-area-desktop--compact .artw-blog-card__intro {
        display: none;
    }

    .artw-blog-engine--composer .artw-area-desktop--hero-split .artw-blog-area__grid,
    .artw-blog-engine--composer .artw-area-desktop--hero-overlay .artw-blog-area__grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .artw-blog-engine--composer .artw-area-desktop--hero-split .artw-blog-card--hero-composer {
        display: grid;
        grid-template-columns: minmax(0, 1.45fr) minmax(260px, .75fr);
        gap: clamp(1.2rem, 3vw, 2.5rem);
        align-items: center;
        position: static;
        overflow: visible;
    }
    .artw-blog-engine--composer .artw-area-desktop--hero-split .artw-blog-card--hero-composer .artw-blog-card__body {
        position: static;
        width: 100%;
        padding: 0;
        color: inherit;
    }
    .artw-blog-engine--composer .artw-area-desktop--hero-split .artw-blog-card--hero-composer .artw-blog-card__figure::after {
        content: none;
    }

    .artw-blog-engine--composer .artw-area-desktop--hero-overlay .artw-blog-card--hero-composer {
        position: relative;
        display: block;
        overflow: hidden;
    }
    .artw-blog-engine--composer .artw-area-desktop--hero-overlay .artw-blog-card--hero-composer .artw-blog-card__figure {
        isolation: isolate;
    }
    .artw-blog-engine--composer .artw-area-desktop--hero-overlay .artw-blog-card--hero-composer .artw-blog-card__figure::after {
        content: "";
        position: absolute;
        z-index: 1;
        inset: 0;
        pointer-events: none;
        background: linear-gradient(to top, rgba(0,0,0,.78) 0%, rgba(0,0,0,.42) 38%, rgba(0,0,0,.04) 72%);
    }
    .artw-blog-engine--composer .artw-area-desktop--hero-overlay .artw-blog-card--hero-composer .artw-blog-card__body {
        position: absolute;
        z-index: 3;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        padding: clamp(1rem, 3.2vw, 2.4rem);
        color: #fff;
    }
}

@media (min-width: 600px) and (max-width: 991.98px) {
    .artw-blog-engine--composer .artw-blog-area__grid {
        grid-template-columns: repeat(var(--artw-area-cols-tablet, 1), minmax(0, 1fr));
    }

    .artw-blog-engine--composer .artw-area-tablet--compact .artw-blog-card:not(.artw-blog-card--hero-composer) {
        display: grid;
        grid-template-columns: minmax(120px, 36%) minmax(0, 1fr);
        gap: 1rem;
        align-items: center;
    }
    .artw-blog-engine--composer .artw-area-tablet--compact .artw-blog-card__intro {
        display: none;
    }

    .artw-blog-engine--composer .artw-area-tablet--hero-split .artw-blog-area__grid,
    .artw-blog-engine--composer .artw-area-tablet--hero-overlay .artw-blog-area__grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .artw-blog-engine--composer .artw-area-tablet--hero-split .artw-blog-card--hero-composer {
        display: grid;
        grid-template-columns: minmax(0, 1.2fr) minmax(220px, .8fr);
        gap: clamp(1rem, 2.5vw, 1.7rem);
        align-items: center;
        position: static;
        overflow: visible;
    }
    .artw-blog-engine--composer .artw-area-tablet--hero-split .artw-blog-card--hero-composer .artw-blog-card__body {
        position: static;
        width: 100%;
        padding: 0;
        color: inherit;
    }
    .artw-blog-engine--composer .artw-area-tablet--hero-split .artw-blog-card--hero-composer .artw-blog-card__figure::after { content: none; }

    .artw-blog-engine--composer .artw-area-tablet--hero-overlay .artw-blog-card--hero-composer {
        position: relative;
        display: block;
        overflow: hidden;
    }
    .artw-blog-engine--composer .artw-area-tablet--hero-overlay .artw-blog-card--hero-composer .artw-blog-card__figure::after {
        content: "";
        position: absolute;
        z-index: 1;
        inset: 0;
        pointer-events: none;
        background: linear-gradient(to top, rgba(0,0,0,.78) 0%, rgba(0,0,0,.4) 42%, rgba(0,0,0,.04) 76%);
    }
    .artw-blog-engine--composer .artw-area-tablet--hero-overlay .artw-blog-card--hero-composer .artw-blog-card__body {
        position: absolute;
        z-index: 3;
        inset: auto 0 0;
        padding: clamp(1rem, 3vw, 1.8rem);
        color: #fff;
    }
}

@media (max-width: 599.98px) {
    .artw-blog-engine--composer .artw-blog-area__grid {
        grid-template-columns: repeat(var(--artw-area-cols-mobile, 1), minmax(0, 1fr));
        gap: .9rem;
    }

    .artw-blog-engine--composer .artw-area-mobile--compact .artw-blog-card:not(.artw-blog-card--hero-composer) {
        display: grid;
        grid-template-columns: minmax(108px, 34%) minmax(0, 1fr);
        gap: .85rem;
        align-items: center;
        padding-block: .2rem;
    }
    .artw-blog-engine--composer .artw-area-mobile--compact .artw-blog-card:not(.artw-blog-card--hero-composer) .artw-blog-card__body {
        padding-top: 0;
    }
    .artw-blog-engine--composer .artw-area-mobile--compact .artw-blog-card__intro,
    .artw-blog-engine--composer .artw-area-mobile--compact .artw-blog-card__caption {
        display: none;
    }

    .artw-blog-engine--composer .artw-area-mobile--links .artw-blog-card {
        padding-block: .75rem;
    }

    .artw-blog-engine--composer .artw-area-mobile--hero-split .artw-blog-area__grid,
    .artw-blog-engine--composer .artw-area-mobile--hero-overlay .artw-blog-area__grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .artw-blog-engine--composer .artw-area-mobile--hero-split .artw-blog-card--hero-composer {
        display: block;
        position: static;
        overflow: visible;
    }
    .artw-blog-engine--composer .artw-area-mobile--hero-split .artw-blog-card--hero-composer .artw-blog-card__body {
        position: static;
        width: 100%;
        padding-top: .85rem;
        color: inherit;
    }
    .artw-blog-engine--composer .artw-area-mobile--hero-split .artw-blog-card--hero-composer .artw-blog-card__figure::after { content: none; }

    .artw-blog-engine--composer .artw-area-mobile--hero-overlay .artw-blog-card--hero-composer {
        position: relative;
        display: block;
        overflow: hidden;
    }
    .artw-blog-engine--composer .artw-area-mobile--hero-overlay .artw-blog-card--hero-composer .artw-blog-card__figure::after {
        content: "";
        position: absolute;
        z-index: 1;
        inset: 0;
        pointer-events: none;
        background: linear-gradient(to top, rgba(0,0,0,.8) 0%, rgba(0,0,0,.43) 45%, rgba(0,0,0,.03) 78%);
    }
    .artw-blog-engine--composer .artw-area-mobile--hero-overlay .artw-blog-card--hero-composer .artw-blog-card__body {
        position: absolute;
        z-index: 3;
        inset: auto 0 0;
        padding: 1rem;
        color: #fff;
    }
    .artw-blog-engine--composer .artw-area-mobile--hero-overlay .artw-blog-card--hero-composer .artw-blog-card__intro {
        display: none;
    }
}

/* Composer must override legacy device model geometry when an Area explicitly
   asks for Cards. The device model remains a theme/preset, not the allocator. */
@media (min-width: 600px) and (max-width: 991.98px) {
    .artw-blog-engine--composer .artw-area-tablet--cards .artw-blog-card:not(.artw-blog-card--hero-composer),
    .artw-blog-engine--composer .artw-area-tablet--links .artw-blog-card:not(.artw-blog-card--hero-composer) {
        display: block;
        grid-template-columns: none;
        gap: 0;
    }
}
@media (max-width: 599.98px) {
    .artw-blog-engine--composer .artw-area-mobile--cards .artw-blog-card:not(.artw-blog-card--hero-composer),
    .artw-blog-engine--composer .artw-area-mobile--links .artw-blog-card:not(.artw-blog-card--hero-composer) {
        display: block;
        grid-template-columns: none;
        gap: 0;
    }
    .artw-blog-engine--composer .artw-area-mobile--cards .artw-blog-card:not(.artw-blog-card--hero-composer) .artw-blog-card__figure,
    .artw-blog-engine--composer .artw-area-mobile--cards .artw-blog-card:not(.artw-blog-card--hero-composer) .artw-blog-card__body {
        grid-column: auto;
        grid-row: auto;
    }
    .artw-blog-engine--composer .artw-area-mobile--cards .artw-blog-card:not(.artw-blog-card--hero-composer) .artw-blog-card__body {
        padding-top: .8rem;
    }
}

/* Device-scoped Link presentation. Keeping these rules inside breakpoints is
   essential: one Area may be Links on desktop and Compact on mobile. */
@media (min-width: 992px) {
    .artw-blog-engine--composer .artw-area-desktop--links .artw-blog-card__figure,
    .artw-blog-engine--composer .artw-area-desktop--links .artw-blog-card__intro { display: none; }
    .artw-blog-engine--composer .artw-area-desktop--links .artw-blog-card {
        padding-block: .65rem;
        border-bottom: 1px solid color-mix(in srgb, currentColor 11%, transparent);
    }
    .artw-blog-engine--composer .artw-area-desktop--links .artw-blog-card__body { padding-top: 0; }
}
@media (min-width: 600px) and (max-width: 991.98px) {
    .artw-blog-engine--composer .artw-area-tablet--links .artw-blog-card__figure,
    .artw-blog-engine--composer .artw-area-tablet--links .artw-blog-card__intro { display: none; }
    .artw-blog-engine--composer .artw-area-tablet--links .artw-blog-card {
        padding-block: .65rem;
        border-bottom: 1px solid color-mix(in srgb, currentColor 11%, transparent);
    }
    .artw-blog-engine--composer .artw-area-tablet--links .artw-blog-card__body { padding-top: 0; }
}
@media (max-width: 599.98px) {
    .artw-blog-engine--composer .artw-area-mobile--links .artw-blog-card__figure,
    .artw-blog-engine--composer .artw-area-mobile--links .artw-blog-card__intro { display: none; }
    .artw-blog-engine--composer .artw-area-mobile--links .artw-blog-card {
        padding-block: .75rem;
        border-bottom: 1px solid color-mix(in srgb, currentColor 11%, transparent);
    }
    .artw-blog-engine--composer .artw-area-mobile--links .artw-blog-card__body { padding-top: 0; }
}


/* v0.2.4 Independent Device Composer */
.artw-blog-engine--composer-v025 .artw-composer-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:1.4rem; align-items:start; }
.artw-blog-engine--composer-v025 .artw-composer-grid > .artw-blog-card { min-width:0; }
.artw-blog-engine--composer-v025 .artw-list-end { display:none; text-align:center; padding:1.25rem 1rem .5rem; color:color-mix(in srgb,currentColor 68%,transparent); }
.artw-blog-engine--composer-v025 .artw-list-end strong,.artw-blog-engine--composer-v025 .artw-list-end span { display:block; }
.artw-blog-engine--composer-v025 .artw-list-end span { font-size:.84em; margin-top:.2rem; }
.artw-blog-engine--composer-v025 .artw-progressive-sentinel { display:none; min-height:2.4rem; align-items:center; justify-content:center; }
.artw-blog-engine--composer-v025 .artw-progressive-spinner { width:1.15rem;height:1.15rem;border:.15rem solid color-mix(in srgb,var(--artw-blog-accent) 22%,transparent);border-top-color:var(--artw-blog-accent);border-radius:50%;animation:artw-reveal-spin .8s linear infinite; }
.artw-blog-engine--composer-v025 .artw-progressive-accessible { position:absolute; width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.artw-blog-engine--composer-v025 .artw-progressive-accessible:focus { position:static;width:auto;height:auto;padding:.55rem .8rem;margin:.5rem auto;overflow:visible;clip:auto;white-space:normal;display:block; }
@keyframes artw-reveal-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce){.artw-blog-engine--composer-v025 .artw-progressive-spinner{animation:none;}}

@media (min-width:992px) {
 .artw-blog-engine--composer-v025 .artw-composer-grid>.artw-blog-card { grid-column:span var(--artw-span-desktop,12); }
 .artw-blog-engine--composer-v025 .artw-area-start-desktop { grid-column-start:1; }
 .artw-blog-engine--composer-v025 .artw-blog-card__media { aspect-ratio:var(--artw-ratio-desktop,4 / 3); }
 .artw-blog-engine--composer-v025 .artw-blog-card__title { font-size:var(--artw-title-desktop,inherit); }
 .artw-blog-engine--composer-v025 .artw-blog-card__intro { font-size:var(--artw-body-desktop,inherit); }
 .artw-blog-engine--composer-v025 .artw-intro-hide-desktop .artw-blog-card__intro { display:none; }
 .artw-blog-engine--composer-v025 .artw-layout-desktop--hero-split { grid-column:span 12; display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:1.6rem;align-items:center; }
 .artw-blog-engine--composer-v025 .artw-layout-desktop--hero-overlay { grid-column:span 12;position:relative;overflow:hidden;min-height:min(62vh,680px); }
 .artw-blog-engine--composer-v025 .artw-layout-desktop--hero-overlay .artw-blog-card__figure,.artw-blog-engine--composer-v025 .artw-layout-desktop--hero-overlay .artw-blog-card__media { height:100%;margin:0; }
 .artw-blog-engine--composer-v025 .artw-layout-desktop--hero-overlay .artw-blog-card__body { position:absolute;inset:auto 0 0;padding:clamp(1.25rem,4vw,3rem);color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.78));z-index:2; }
 .artw-blog-engine--composer-v025 .artw-layout-desktop--hero-overlay .artw-blog-card__title a { color:inherit; }
 .artw-blog-engine--composer-v025 .artw-layout-desktop--compact { display:grid;grid-template-columns:138px minmax(0,1fr);gap:1rem;align-items:center; }
 .artw-blog-engine--composer-v025 .artw-layout-desktop--links .artw-blog-card__figure,.artw-blog-engine--composer-v025 .artw-layout-desktop--links .artw-blog-card__intro { display:none; }
}
@media (min-width:768px) and (max-width:991.98px) {
 .artw-blog-engine--composer-v025 .artw-composer-grid>.artw-blog-card { grid-column:span var(--artw-span-tablet,12); }
 .artw-blog-engine--composer-v025 .artw-area-start-tablet { grid-column-start:1; }
 .artw-blog-engine--composer-v025 .artw-blog-card__media { aspect-ratio:var(--artw-ratio-tablet,4 / 3); }
 .artw-blog-engine--composer-v025 .artw-blog-card__title { font-size:var(--artw-title-tablet,inherit); }
 .artw-blog-engine--composer-v025 .artw-blog-card__intro { font-size:var(--artw-body-tablet,inherit); }
 .artw-blog-engine--composer-v025 .artw-intro-hide-tablet .artw-blog-card__intro { display:none; }
 .artw-blog-engine--composer-v025 .artw-layout-tablet--hero-split { grid-column:span 12;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:1.25rem;align-items:center; }
 .artw-blog-engine--composer-v025 .artw-layout-tablet--hero-overlay { grid-column:span 12;position:relative;overflow:hidden;min-height:480px; }
 .artw-blog-engine--composer-v025 .artw-layout-tablet--hero-overlay .artw-blog-card__figure,.artw-blog-engine--composer-v025 .artw-layout-tablet--hero-overlay .artw-blog-card__media { height:100%;margin:0; }
 .artw-blog-engine--composer-v025 .artw-layout-tablet--hero-overlay .artw-blog-card__body { position:absolute;inset:auto 0 0;padding:1.6rem;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.78));z-index:2; }
 .artw-blog-engine--composer-v025 .artw-layout-tablet--hero-overlay .artw-blog-card__title a { color:inherit; }
 .artw-blog-engine--composer-v025 .artw-layout-tablet--compact { display:grid;grid-template-columns:118px minmax(0,1fr);gap:.9rem;align-items:center; }
 .artw-blog-engine--composer-v025 .artw-layout-tablet--links .artw-blog-card__figure,.artw-blog-engine--composer-v025 .artw-layout-tablet--links .artw-blog-card__intro { display:none; }
 .artw-blog-engine--composer-v025.artw-reveal-tablet-active .artw-reveal-hidden-tablet { display:none; }
 .artw-blog-engine--composer-v025 .artw-progressive-sentinel--tablet { display:flex; }
 .artw-blog-engine--composer-v025.artw-list-complete-tablet .artw-progressive-sentinel--tablet { display:none; }
 .artw-blog-engine--composer-v025.artw-list-complete-tablet .artw-list-end--tablet { display:block; }
 .artw-blog-engine--composer-v025.artw-reveal-tablet-active:not(.artw-list-complete-tablet) .artw-page-swipe--tablet { display:none !important; }
}
@media (max-width:767.98px) {
 .artw-blog-engine--composer-v025 .artw-composer-grid { grid-template-columns:1fr;gap:1rem; }
 .artw-blog-engine--composer-v025 .artw-composer-grid>.artw-blog-card { grid-column:span 1; }
 .artw-blog-engine--composer-v025 .artw-blog-card__media { aspect-ratio:var(--artw-ratio-mobile,4 / 3); }
 .artw-blog-engine--composer-v025 .artw-blog-card__title { font-size:var(--artw-title-mobile,inherit); }
 .artw-blog-engine--composer-v025 .artw-blog-card__intro { font-size:var(--artw-body-mobile,inherit); }
 .artw-blog-engine--composer-v025 .artw-intro-hide-mobile .artw-blog-card__intro { display:none; }
 .artw-blog-engine--composer-v025 .artw-layout-mobile--hero-split { display:block; }
 .artw-blog-engine--composer-v025 .artw-layout-mobile--hero-overlay { position:relative;overflow:hidden;min-height:min(70vh,520px); }
 .artw-blog-engine--composer-v025 .artw-layout-mobile--hero-overlay .artw-blog-card__figure,.artw-blog-engine--composer-v025 .artw-layout-mobile--hero-overlay .artw-blog-card__media { height:100%;margin:0; }
 .artw-blog-engine--composer-v025 .artw-layout-mobile--hero-overlay .artw-blog-card__body { position:absolute;inset:auto 0 0;padding:1.2rem;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.8));z-index:2; }
 .artw-blog-engine--composer-v025 .artw-layout-mobile--hero-overlay .artw-blog-card__title a { color:inherit; }
 .artw-blog-engine--composer-v025 .artw-layout-mobile--compact { display:grid;grid-template-columns:108px minmax(0,1fr);gap:.8rem;align-items:center; }
 .artw-blog-engine--composer-v025 .artw-layout-mobile--links .artw-blog-card__figure,.artw-blog-engine--composer-v025 .artw-layout-mobile--links .artw-blog-card__intro { display:none; }
 .artw-blog-engine--composer-v025.artw-reveal-mobile-active .artw-reveal-hidden-mobile { display:none; }
 .artw-blog-engine--composer-v025 .artw-progressive-sentinel--mobile { display:flex; }
 .artw-blog-engine--composer-v025.artw-list-complete-mobile .artw-progressive-sentinel--mobile { display:none; }
 .artw-blog-engine--composer-v025.artw-list-complete-mobile .artw-list-end--mobile { display:block; }
 .artw-blog-engine--composer-v025.artw-reveal-mobile-active:not(.artw-list-complete-mobile) .artw-page-swipe--mobile { display:none !important; }
}

/* v0.2.5 Composer stabilization -------------------------------------------
   Overlay Hero geometry is governed by the Area ratio itself. The figure is
   pinned to that box, preventing the old min-height gap on narrow screens. */
.artw-blog-engine--composer-v025.artw-reveal-tablet-pending .artw-page-swipe--tablet,
.artw-blog-engine--composer-v025.artw-reveal-mobile-pending .artw-page-swipe--mobile {
    display: none !important;
}

@media (min-width: 992px) {
    .artw-blog-engine--composer-v025 .artw-layout-desktop--hero-overlay {
        min-height: 0;
        aspect-ratio: var(--artw-ratio-desktop, 16 / 9);
    }
    .artw-blog-engine--composer-v025 .artw-layout-desktop--hero-overlay .artw-blog-card__figure {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
    }
    .artw-blog-engine--composer-v025 .artw-layout-desktop--hero-overlay .artw-blog-card__media {
        width: 100%;
        height: 100%;
        aspect-ratio: auto;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .artw-blog-engine--composer-v025 .artw-layout-tablet--hero-overlay {
        min-height: 0;
        aspect-ratio: var(--artw-ratio-tablet, 4 / 3);
    }
    .artw-blog-engine--composer-v025 .artw-layout-tablet--hero-overlay .artw-blog-card__figure {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
    }
    .artw-blog-engine--composer-v025 .artw-layout-tablet--hero-overlay .artw-blog-card__media {
        width: 100%;
        height: 100%;
        aspect-ratio: auto;
    }
}

@media (max-width: 767.98px) {
    .artw-blog-engine--composer-v025 .artw-layout-mobile--hero-overlay {
        min-height: 0;
        aspect-ratio: var(--artw-ratio-mobile, 4 / 3);
    }
    .artw-blog-engine--composer-v025 .artw-layout-mobile--hero-overlay .artw-blog-card__figure {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
    }
    .artw-blog-engine--composer-v025 .artw-layout-mobile--hero-overlay .artw-blog-card__media {
        width: 100%;
        height: 100%;
        aspect-ratio: auto;
    }
}

.artw-blog-engine--composer-v025 .artw-layout-desktop--hero-overlay.artw-blog-card--no-media,
.artw-blog-engine--composer-v025 .artw-layout-tablet--hero-overlay.artw-blog-card--no-media,
.artw-blog-engine--composer-v025 .artw-layout-mobile--hero-overlay.artw-blog-card--no-media {
    aspect-ratio: auto;
}
.artw-blog-engine--composer-v025 .artw-layout-desktop--hero-overlay.artw-blog-card--no-media .artw-blog-card__body,
.artw-blog-engine--composer-v025 .artw-layout-tablet--hero-overlay.artw-blog-card--no-media .artw-blog-card__body,
.artw-blog-engine--composer-v025 .artw-layout-mobile--hero-overlay.artw-blog-card--no-media .artw-blog-card__body {
    position: static;
    color: inherit;
    background: none;
}

/* v0.3.0 Graphic Model Engine ---------------------------------------------
   Composer decides allocation, Area presentation and columns. Graphic Models
   change the structural anatomy of normal Cards on each device. Explicit
   Hero/Compact/Links Area presentations keep precedence. Theme decoration is
   intentionally left for the separate Theme Engine. */

/* Shared model helpers. */
.artw-blog-engine--graphic-model-v030 .artw-blog-card__intro {
    min-width: 0;
}
.artw-blog-engine--graphic-model-v030 .artw-blog-card__intro,
.artw-blog-engine--graphic-model-v030 .artw-blog-card__title {
    overflow-wrap: anywhere;
}

@media (min-width: 992px) {
    /* Editorial: the neutral reference model. */
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--editorial .artw-layout-desktop--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--grid .artw-layout-desktop--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--grid .artw-blog-grid > .artw-blog-card {
        display: flex;
        flex-direction: column;
        min-height: 100%;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--grid .artw-layout-desktop--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--grid .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        display: flex;
        flex: 1 1 auto;
        flex-direction: column;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--grid .artw-layout-desktop--cards .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--grid .artw-blog-grid > .artw-blog-card .artw-blog-card__intro {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
    }

    /* Magazine Portrait: vertical imagery and a centered magazine cadence. */
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--magazine_portrait .artw-layout-desktop--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--magazine_portrait .artw-blog-grid > .artw-blog-card {
        display: flex;
        flex-direction: column;
        min-height: 100%;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--magazine_portrait .artw-blog-grid > .artw-blog-card .artw-blog-card__media {
        aspect-ratio: 3 / 4;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--magazine_portrait .artw-layout-desktop--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--magazine_portrait .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        width: min(92%, 34rem);
        margin-inline: auto;
        text-align: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--magazine_portrait .artw-layout-desktop--cards .artw-blog-card__meta,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--magazine_portrait .artw-blog-grid > .artw-blog-card .artw-blog-card__meta {
        justify-content: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--magazine_portrait .artw-layout-desktop--hero-split {
        grid-template-columns: minmax(240px, .72fr) minmax(0, 1.28fr);
    }

    /* Newsroom: fast scanning, thumbnail-led horizontal stories. */
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--newsroom .artw-layout-desktop--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--newsroom .artw-blog-grid > .artw-blog-card {
        display: grid;
        grid-template-columns: minmax(150px, 30%) minmax(0, 1fr);
        gap: 1rem;
        align-items: start;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--newsroom .artw-layout-desktop--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--newsroom .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        padding-top: 0;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--newsroom .artw-layout-desktop--cards:not(.artw-intro-show-desktop) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--newsroom .artw-blog-grid > .artw-blog-card .artw-blog-card__intro {
        display: none;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--newsroom .artw-layout-desktop--cards.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--newsroom .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media {
        display: block;
    }

    /* List: roomier horizontal rows with preview text retained. */
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--list .artw-layout-desktop--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--list .artw-blog-grid > .artw-blog-card {
        display: grid;
        grid-template-columns: minmax(190px, 40%) minmax(0, 1fr);
        gap: clamp(1rem, 2vw, 1.5rem);
        align-items: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--list .artw-layout-desktop--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--list .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        padding-top: 0;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--list .artw-layout-desktop--cards .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--list .artw-blog-grid > .artw-blog-card .artw-blog-card__intro {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--list .artw-layout-desktop--cards.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--list .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media {
        display: block;
    }

    /* Cover: image-led cards with content layered over the media. */
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-layout-desktop--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-blog-grid > .artw-blog-card {
        position: relative;
        display: block;
        overflow: hidden;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__media {
        aspect-ratio: 16 / 9;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-layout-desktop--cards .artw-blog-card__figure::after,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__figure::after {
        content: "";
        position: absolute;
        z-index: 1;
        inset: 0;
        pointer-events: none;
        background: linear-gradient(to top, rgba(0,0,0,.82), rgba(0,0,0,.08) 68%);
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-layout-desktop--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        position: absolute;
        z-index: 3;
        inset: auto 0 0;
        padding: clamp(1rem, 2vw, 1.5rem);
        color: #fff;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-layout-desktop--cards .artw-blog-card__title a,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__title a {
        color: inherit;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-layout-desktop--cards:not(.artw-intro-show-desktop) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__intro {
        display: none;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-layout-desktop--cards.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media {
        overflow: visible;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-layout-desktop--cards.artw-blog-card--no-media .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media .artw-blog-card__body {
        position: static;
        padding: 0;
        color: inherit;
    }

    /* Compact: dense thumbnail rows. */
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--compact .artw-layout-desktop--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--compact .artw-blog-grid > .artw-blog-card {
        display: grid;
        grid-template-columns: 136px minmax(0, 1fr);
        gap: .9rem;
        align-items: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--compact .artw-layout-desktop--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--compact .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        padding-top: 0;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--compact .artw-layout-desktop--cards:not(.artw-intro-show-desktop) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--compact .artw-blog-grid > .artw-blog-card .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--compact .artw-layout-desktop--cards .artw-blog-card__caption {
        display: none;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--compact .artw-layout-desktop--cards.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--compact .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media {
        display: block;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--grid .artw-layout-tablet--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--grid .artw-blog-grid > .artw-blog-card,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--editorial .artw-layout-tablet--cards {
        display: flex;
        flex-direction: column;
        min-height: 100%;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--grid .artw-layout-tablet--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--grid .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        display: flex;
        flex: 1 1 auto;
        flex-direction: column;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-tablet--magazine_portrait .artw-layout-tablet--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--magazine_portrait .artw-blog-grid > .artw-blog-card {
        display: flex;
        flex-direction: column;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--magazine_portrait .artw-blog-grid > .artw-blog-card .artw-blog-card__media {
        aspect-ratio: 3 / 4;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--magazine_portrait .artw-layout-tablet--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--magazine_portrait .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        width: min(94%, 32rem);
        margin-inline: auto;
        text-align: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--magazine_portrait .artw-layout-tablet--cards .artw-blog-card__meta,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--magazine_portrait .artw-blog-grid > .artw-blog-card .artw-blog-card__meta {
        justify-content: center;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-tablet--newsroom .artw-layout-tablet--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--newsroom .artw-blog-grid > .artw-blog-card {
        display: grid;
        grid-template-columns: minmax(118px, 32%) minmax(0, 1fr);
        gap: .9rem;
        align-items: start;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--newsroom .artw-layout-tablet--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--newsroom .artw-blog-grid > .artw-blog-card .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--list .artw-layout-tablet--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--list .artw-blog-grid > .artw-blog-card .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--compact .artw-layout-tablet--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--compact .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        padding-top: 0;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--newsroom .artw-layout-tablet--cards:not(.artw-intro-show-tablet) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--newsroom .artw-blog-grid > .artw-blog-card .artw-blog-card__intro {
        display: none;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-tablet--list .artw-layout-tablet--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--list .artw-blog-grid > .artw-blog-card {
        display: grid;
        grid-template-columns: minmax(145px, 38%) minmax(0, 1fr);
        gap: 1rem;
        align-items: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--list .artw-layout-tablet--cards .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--list .artw-blog-grid > .artw-blog-card .artw-blog-card__intro {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-tablet--compact .artw-layout-tablet--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--compact .artw-blog-grid > .artw-blog-card {
        display: grid;
        grid-template-columns: 118px minmax(0, 1fr);
        gap: .8rem;
        align-items: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--compact .artw-layout-tablet--cards:not(.artw-intro-show-tablet) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--compact .artw-blog-grid > .artw-blog-card .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--compact .artw-layout-tablet--cards .artw-blog-card__caption {
        display: none;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-tablet--newsroom .artw-layout-tablet--cards.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--newsroom .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--list .artw-layout-tablet--cards.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--list .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--compact .artw-layout-tablet--cards.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--compact .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media {
        display: block;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-layout-tablet--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-blog-grid > .artw-blog-card {
        position: relative;
        display: block;
        overflow: hidden;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__media {
        aspect-ratio: 16 / 9;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-layout-tablet--cards .artw-blog-card__figure::after,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__figure::after {
        content: "";
        position: absolute;
        z-index: 1;
        inset: 0;
        background: linear-gradient(to top, rgba(0,0,0,.82), rgba(0,0,0,.08) 68%);
        pointer-events: none;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-layout-tablet--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        position: absolute;
        z-index: 3;
        inset: auto 0 0;
        padding: 1rem;
        color: #fff;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-layout-tablet--cards .artw-blog-card__title a,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__title a { color: inherit; }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-layout-tablet--cards:not(.artw-intro-show-tablet) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__intro { display: none; }
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-layout-tablet--cards.artw-blog-card--no-media .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media .artw-blog-card__body {
        position: static;
        padding: 0;
        color: inherit;
    }
}

@media (max-width: 767.98px) {
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--editorial .artw-layout-mobile--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--grid .artw-layout-mobile--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--grid .artw-blog-grid > .artw-blog-card {
        display: block;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-mobile--magazine_portrait .artw-layout-mobile--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--magazine_portrait .artw-blog-grid > .artw-blog-card {
        display: flex;
        flex-direction: column;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--magazine_portrait .artw-blog-grid > .artw-blog-card .artw-blog-card__media {
        aspect-ratio: 3 / 4;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--magazine_portrait .artw-layout-mobile--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--magazine_portrait .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        width: 94%;
        margin-inline: auto;
        text-align: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--magazine_portrait .artw-layout-mobile--cards .artw-blog-card__meta,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--magazine_portrait .artw-blog-grid > .artw-blog-card .artw-blog-card__meta {
        justify-content: center;
    }

    /* Mobile Newsroom places a small thumbnail to the right, newspaper-app style. */
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-layout-mobile--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-blog-grid > .artw-blog-card {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 92px;
        gap: .85rem;
        align-items: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-layout-mobile--cards .artw-blog-card__figure,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-blog-grid > .artw-blog-card .artw-blog-card__figure {
        grid-column: 2;
        grid-row: 1;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-layout-mobile--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        grid-column: 1;
        grid-row: 1;
        padding-top: 0;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-layout-mobile--cards:not(.artw-intro-show-mobile) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-blog-grid > .artw-blog-card .artw-blog-card__intro {
        display: none;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-mobile--list .artw-layout-mobile--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--list .artw-blog-grid > .artw-blog-card {
        display: grid;
        grid-template-columns: minmax(108px, 36%) minmax(0, 1fr);
        gap: .85rem;
        align-items: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--list .artw-layout-mobile--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--list .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        padding-top: 0;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--list .artw-layout-mobile--cards .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--list .artw-blog-grid > .artw-blog-card .artw-blog-card__intro {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-mobile--compact .artw-layout-mobile--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--compact .artw-blog-grid > .artw-blog-card {
        display: grid;
        grid-template-columns: 104px minmax(0, 1fr);
        gap: .8rem;
        align-items: center;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--compact .artw-layout-mobile--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--compact .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        padding-top: 0;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--compact .artw-layout-mobile--cards:not(.artw-intro-show-mobile) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--compact .artw-blog-grid > .artw-blog-card .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--compact .artw-layout-mobile--cards .artw-blog-card__caption {
        display: none;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-layout-mobile--cards.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--list .artw-layout-mobile--cards.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--list .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--compact .artw-layout-mobile--cards.artw-blog-card--no-media,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--compact .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media {
        display: block;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-layout-mobile--cards.artw-blog-card--no-media .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--newsroom .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media .artw-blog-card__body {
        grid-column: 1 / -1;
        grid-row: auto;
    }

    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-layout-mobile--cards,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-blog-grid > .artw-blog-card {
        position: relative;
        display: block;
        overflow: hidden;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__media {
        aspect-ratio: 16 / 9;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-layout-mobile--cards .artw-blog-card__figure::after,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__figure::after {
        content: "";
        position: absolute;
        z-index: 1;
        inset: 0;
        background: linear-gradient(to top, rgba(0,0,0,.84), rgba(0,0,0,.08) 70%);
        pointer-events: none;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-layout-mobile--cards .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__body {
        position: absolute;
        z-index: 3;
        inset: auto 0 0;
        padding: .9rem;
        color: #fff;
    }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-layout-mobile--cards .artw-blog-card__title a,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__title a { color: inherit; }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-layout-mobile--cards:not(.artw-intro-show-mobile) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__intro { display: none; }
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-layout-mobile--cards.artw-blog-card--no-media .artw-blog-card__body,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-blog-grid > .artw-blog-card.artw-blog-card--no-media .artw-blog-card__body {
        position: static;
        padding: 0;
        color: inherit;
    }
}

/* Grid intentionally prioritises image + meta + headline. An Area can force the
   preview back on with its explicit Intro = Show setting. */
@media (min-width: 992px) {
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--grid .artw-layout-desktop--cards:not(.artw-intro-show-desktop) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--grid .artw-blog-grid > .artw-blog-card .artw-blog-card__intro { display: none; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--grid .artw-layout-tablet--cards:not(.artw-intro-show-tablet) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--grid .artw-blog-grid > .artw-blog-card .artw-blog-card__intro { display: none; }
}
@media (max-width: 767.98px) {
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--grid .artw-layout-mobile--cards:not(.artw-intro-show-mobile) .artw-blog-card__intro,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--grid .artw-blog-grid > .artw-blog-card .artw-blog-card__intro { display: none; }
}

/* Keep Cover headlines readable and keyboard-focusable over the image. */
@media (min-width: 992px) {
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-layout-desktop--cards .artw-blog-card__title a:hover,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-layout-desktop--cards .artw-blog-card__title a:focus-visible,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__title a:hover,
    .artw-blog-engine--graphic-model-v030.artw-model-desktop--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__title a:focus-visible { color: #fff; text-decoration: underline; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-layout-tablet--cards .artw-blog-card__title a:hover,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-layout-tablet--cards .artw-blog-card__title a:focus-visible,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__title a:hover,
    .artw-blog-engine--graphic-model-v030.artw-model-tablet--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__title a:focus-visible { color: #fff; text-decoration: underline; }
}
@media (max-width: 767.98px) {
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-layout-mobile--cards .artw-blog-card__title a:hover,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-layout-mobile--cards .artw-blog-card__title a:focus-visible,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__title a:hover,
    .artw-blog-engine--graphic-model-v030.artw-model-mobile--cover .artw-blog-grid > .artw-blog-card .artw-blog-card__title a:focus-visible { color: #fff; text-decoration: underline; }
}
