/* ========================================================================== 
   YUBEEN NEWS & INSIGHTS — SINGLE ARTICLE
   Stage 3Y / v0.27.31
   --------------------------------------------------------------------------
   Native WordPress Post template styling. No Elementor Pro required.
   ========================================================================== */

body.yubeen-news-single-assets-active {
    --yb-news-bg: #f7f5f1;
    --yb-news-paper: #fbfaf7;
    --yb-news-ink: #111315;
    --yb-news-muted: rgba(17, 19, 21, .62);
    --yb-news-soft: rgba(17, 19, 21, .43);
    --yb-news-line: rgba(17, 19, 21, .11);
    --yb-news-red: #e31e24;

    /*
     * Long-form reading width.
     * Keep body copy narrow enough for comfortable reading.
     */
    --yb-news-content: 920px;

    /*
     * Optional Gutenberg alignwide media.
     * Intentionally wider than article body text.
     */
    --yb-news-wide: 1100px;

    /*
     * Single Article Featured Image.
     *
     * Previously the Featured Image inherited the 1500px page width,
     * which made it visually dominate the article.
     *
     * 1040px keeps a clear editorial hierarchy:
     *
     * body copy:       760px
     * featured image: 1040px
     * wide media:     1100px
     */
    --yb-news-hero: 1040px;

    --yb-news-page: 1500px;

    background: var(--yb-news-bg);
}

.yb-news-single,
.yb-news-single * {
    box-sizing: border-box;
}

.yb-news-single {
    width: 100%;
    overflow: clip;
    color: var(--yb-news-ink);
    background: var(--yb-news-bg);
    font-family: Manrope, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* --------------------------------------------------------------------------
   Article header
   -------------------------------------------------------------------------- */
.yb-news-article__header {
    background: var(--yb-news-paper);
    border-bottom: 1px solid var(--yb-news-line);
}

.yb-news-article__header-inner {
    width: min(calc(100% - 96px), 1320px);
    margin: 0 auto;
    padding: 72px 0 66px;
}

.yb-news-article__breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin: 0 0 38px;
    color: var(--yb-news-soft);
    font-size: 10px;
    font-weight: 650;
    line-height: 1.35;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.yb-news-article__breadcrumb a {
    color: inherit;
    text-decoration: none;
    transition: color 160ms ease;
}

.yb-news-article__breadcrumb a:hover,
.yb-news-article__breadcrumb a:focus-visible {
    color: var(--yb-news-ink);
}

.yb-news-article__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 18px;
    margin-bottom: 21px;
    font-size: 10px;
    line-height: 1;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.yb-news-article__category {
    color: var(--yb-news-red);
    font-weight: 760;
    text-decoration: none;
}

.yb-news-article__meta time {
    color: var(--yb-news-soft);
    font-weight: 600;
}

/* --------------------------------------------------------------------------
   Article title

   Do not use text-wrap: balance here.

   Real News / SEO titles can be much longer than editorial placeholder
   titles. "balance" deliberately makes every line similar in length, which
   can make long headlines look manually line-broken.

   text-wrap: pretty keeps wrapping natural while still trying to avoid
   awkward orphan words where the browser supports it.
   -------------------------------------------------------------------------- */

.yb-news-article__title {
    max-width: 1120px;

    margin: 0;

    color: var(--yb-news-ink);

    font-size: clamp(54px, 5.25vw, 82px);
    font-weight: 650;
    line-height: .99;
    letter-spacing: -.055em;

    text-wrap: pretty;
}


/*
 * Long article titles
 *
 * Real SEO / News titles are frequently much longer than short editorial
 * headlines. The previous scale sat too close to a wrapping breakpoint:
 * a small reduction in viewport width could suddenly create a third line
 * with a single orphan word.
 *
 * Give long titles more horizontal room and use a calmer responsive scale.
 */
.yb-news-article__title--long {
    max-width: 1320px;

    font-size: clamp(44px, 4vw, 66px);
    line-height: 1.015;
    letter-spacing: -.045em;

    text-wrap: pretty;
}

.yb-news-article__dek {
    max-width: 820px;
    margin: 31px 0 0;
    color: var(--yb-news-muted);
    font-size: clamp(19px, 1.55vw, 24px);
    font-weight: 430;
    line-height: 1.5;
    letter-spacing: -.018em;
}

/* --------------------------------------------------------------------------
   Featured image
   -------------------------------------------------------------------------- */
.yb-news-article__hero {
    width: min(calc(100% - 96px), var(--yb-news-page));

    /*
     * Cap the article hero independently from the global page width.
     *
     * This prevents the Featured Image from becoming a second
     * full-page Hero while preserving the editorial wide-image effect.
     */
    max-width: var(--yb-news-hero);

    margin: 58px auto 0;
}

.yb-news-article__hero-frame {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--yb-news-bg);
}

.yb-news-article__hero-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.yb-news-article__hero figcaption {
    max-width: var(--yb-news-content);
    margin: 11px auto 0;
    color: var(--yb-news-soft);
    font-size: 11px;
    line-height: 1.5;
}

/* --------------------------------------------------------------------------
   Long-form content
   -------------------------------------------------------------------------- */
.yb-news-article__content-wrap {
    width: 100%;

    /*
     * Top spacing reduced from 74px to 60px.
     *
     * The Featured Image still remains visually separate from the body,
     * but the relationship between image and article copy becomes tighter.
     */
    padding: 60px 0 88px;
}

.yb-news-article__content {
    width: min(calc(100% - 48px), var(--yb-news-content));
    margin: 0 auto;
    color: rgba(17, 19, 21, .88);
    font-size: 17.5px;
    font-weight: 420;
    line-height: 1.78;
    letter-spacing: -.008em;
}

.yb-news-article__content > *:first-child {
    margin-top: 0;
}

.yb-news-article__content > *:last-child {
    margin-bottom: 0;
}

.yb-news-article__content p {
    margin: 0 0 1.55em;
}

/*
 * H2 — long-form editorial section headings
 *
 * The previous 44px maximum was slightly too aggressive for the finalized
 * 920px article reading width. Medium-length real article headings could
 * cross a wrapping breakpoint too easily.
 *
 * Also avoid text-wrap: balance here. Real SEO headings should wrap according
 * to the available measure instead of being deliberately equalized.
 */
.yb-news-article__content h2 {
    margin: 2.2em 0 .74em;

    color: var(--yb-news-ink);

    font-size: clamp(31px, 2.45vw, 40px);
    font-weight: 650;
    line-height: 1.12;
    letter-spacing: -.038em;

    text-wrap: pretty;
}

.yb-news-article__content h3 {
    margin: 2em 0 .68em;

    color: var(--yb-news-ink);

    font-size: clamp(23px, 1.95vw, 30px);
    font-weight: 650;
    line-height: 1.18;
    letter-spacing: -.029em;

    text-wrap: pretty;
}

.yb-news-article__content h4 {
    margin: 1.8em 0 .62em;
    color: var(--yb-news-ink);
    font-size: 19px;
    font-weight: 680;
    line-height: 1.3;
}

/* Inline editorial links: neutral by default, Yubeen red only on interaction. */
.yb-news-article__content a {
    color: var(--yb-news-ink);
    text-decoration-color: rgba(17, 19, 21, .34);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    transition: color 160ms ease, text-decoration-color 160ms ease;
}

.yb-news-article__content a:hover,
.yb-news-article__content a:focus-visible {
    color: var(--yb-news-red);
    text-decoration-color: var(--yb-news-red);
}

/* Lists: preserve editorial reading rhythm without the large default block gaps. */
.yb-news-article__content ul,
.yb-news-article__content ol {
    margin: .9em 0 1.85em;
    padding-left: 1.35em;
}

.yb-news-article__content li {
    margin: .34em 0;
    padding-left: .18em;
}

.yb-news-article__content li::marker {
    color: rgba(17, 19, 21, .82);
    font-weight: 650;
}

/* Quote: editorial pull quote, not a card or poster treatment. */
.yb-news-article__content blockquote,
.yb-news-article__content .wp-block-quote {
    margin: 2.35em 0;
    padding: 8px 0 8px 25px;
    border-left: 2px solid var(--yb-news-red);
    color: var(--yb-news-ink);
    font-size: clamp(20px, 1.55vw, 23px);
    font-weight: 470;
    line-height: 1.52;
    letter-spacing: -.019em;
}

.yb-news-article__content blockquote p,
.yb-news-article__content .wp-block-quote p {
    margin-bottom: .85em;
}

.yb-news-article__content blockquote p:last-child,
.yb-news-article__content .wp-block-quote p:last-child {
    margin-bottom: 0;
}

.yb-news-article__content cite {
    display: block;
    margin-top: 13px;
    color: var(--yb-news-soft);
    font-size: 11px;
    font-style: normal;
    font-weight: 650;
    line-height: 1.4;
    letter-spacing: .05em;
    text-transform: uppercase;
}

/* Images remain flat and documentary: no radius, shadow or decorative overlay. */
.yb-news-article__content figure,
.yb-news-article__content .wp-block-image {
    margin-top: 2.55em;
    margin-bottom: 2.55em;
}

.yb-news-article__content img {
    display: block;
    max-width: 100%;
    height: auto;
}

.yb-news-article__content figcaption,
.yb-news-article__content .wp-element-caption {

    max-width:
        100%;

    margin-top:
        9px;

    /*
     * Slightly stronger than before.
     *
     * Still clearly secondary to article body copy,
     * but no longer disappears on high-resolution displays.
     */
    color:
        rgba(17,19,21,.57);

    font-size:
        12px;

    font-weight:
        430;

    line-height:
        1.52;

    letter-spacing:
        -.004em;

    text-align:
        left;
}

.yb-news-article__content figure,
.yb-news-article__content .wp-block-image,
.yb-news-article__content img {
    background: transparent;
}


/* Gutenberg wide media: intentionally wider than body text but not full-screen. */
.yb-news-article__content .alignwide,
.yb-news-article__content .wp-block-image.alignwide,
.yb-news-article__content .wp-block-gallery.alignwide,
.yb-news-article__content .wp-block-table.alignwide {
    position: relative;
    left: 50%;
    width: min(calc(100vw - 96px), var(--yb-news-wide));
    max-width: none;
    transform: translateX(-50%);
}

.yb-news-article__content .alignfull,
.yb-news-article__content .wp-block-image.alignfull {
    position: relative;
    left: 50%;
    width: min(calc(100vw - 96px), 1300px);
    max-width: none;
    transform: translateX(-50%);
}

.yb-news-article__content hr,
.yb-news-article__content .wp-block-separator {
    margin: 3.1em 0;
    border: 0;
    border-top: 1px solid var(--yb-news-line);
}

/* ==========================================================================
   EDITORIAL / TECHNICAL TABLES

   Design intent:
   - horizontal reading structure
   - no Excel-style outer box
   - no vertical grid lines
   - restrained header treatment
   - horizontal scroll when required on small screens
   ========================================================================== */

.yb-news-single
.yb-news-article__content
.wp-block-table {

    width: 100%;

    margin:
        2.6em
        0;

    overflow-x:
        auto;

    overflow-y:
        hidden;

    -webkit-overflow-scrolling:
        touch;
}


/* --------------------------------------------------------------------------
   TABLE STRUCTURE

   Higher selector specificity is intentional here.
   Some WordPress / theme styles add borders back to Gutenberg tables.
   -------------------------------------------------------------------------- */

.yb-news-single
.yb-news-article__content
.wp-block-table table,

.yb-news-single
.yb-news-article__content
table {

    width:
        100%;

    min-width:
        560px;

    margin:
        0;

    border:
        0;

    border-collapse:
        collapse;

    border-spacing:
        0;

    color:
        rgba(17,19,21,.86);

    background:
        transparent;

    font-size:
        14px;

    line-height:
        1.5;
}


/* --------------------------------------------------------------------------
   CELLS

   Horizontal rules only.
   -------------------------------------------------------------------------- */

.yb-news-single
.yb-news-article__content
.wp-block-table th,

.yb-news-single
.yb-news-article__content
.wp-block-table td,

.yb-news-single
.yb-news-article__content
table th,

.yb-news-single
.yb-news-article__content
table td {

    padding:
        14px
        0;

    border:
        0;

    border-right:
        0;

    border-left:
        0;

    border-bottom:
        1px solid
        rgba(17,19,21,.12);

    text-align:
        left;

    vertical-align:
        top;
}


/*
 * Add comfortable separation between columns without drawing
 * a vertical divider.
 */

.yb-news-single
.yb-news-article__content
.wp-block-table th + th,

.yb-news-single
.yb-news-article__content
.wp-block-table td + td,

.yb-news-single
.yb-news-article__content
table th + th,

.yb-news-single
.yb-news-article__content
table td + td {

    padding-left:
        28px;
}


/* --------------------------------------------------------------------------
   HEADER

   Soft editorial background instead of a boxed header row.
   -------------------------------------------------------------------------- */

.yb-news-single
.yb-news-article__content
.wp-block-table th,

.yb-news-single
.yb-news-article__content
table th {

    padding-top:
        12px;

    padding-bottom:
        12px;

    color:
        var(--yb-news-ink);

    background:
        rgba(17,19,21,.032);

    border-top:
        1px solid
        rgba(17,19,21,.15);

    border-bottom:
        1px solid
        rgba(17,19,21,.16);

    font-weight:
        690;
}


/*
 * Gutenberg can sometimes preserve a first-row border rule
 * even when the table does not use a formal <thead>.
 */

.yb-news-single
.yb-news-article__content
.wp-block-table tr:first-child td {

    border-top:
        1px solid
        rgba(17,19,21,.13);
}

.yb-news-article__content pre,
.yb-news-article__content code {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.yb-news-article__content pre {
    overflow-x: auto;
    margin: 2em 0;
    padding: 18px;
    background: #111315;
    color: #f5f5f3;
    font-size: 13px;
    line-height: 1.6;
}



/* --------------------------------------------------------------------------
   Automatic Table of Contents
   -------------------------------------------------------------------------- */

.yb-news-toc {
    width: 100%;
    margin: 3.15em 0 3.35em;
    color: var(--yb-news-ink);
}

.yb-news-toc__details {
    overflow: hidden;
    border: 1px solid rgba(17, 19, 21, .11);
    background: var(--yb-news-paper);
}

.yb-news-toc__summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 68px;
    padding: 0 25px;
    cursor: pointer;
    list-style: none;
    user-select: none;
}

.yb-news-toc__summary::-webkit-details-marker {
    display: none;
}

.yb-news-toc__eyebrow {
    color: var(--yb-news-ink);
    font-size: 11px;
    font-weight: 760;
    line-height: 1;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.yb-news-toc__summary-icon {
    position: relative;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
}

.yb-news-toc__summary-icon::before,
.yb-news-toc__summary-icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 1px;
    background: currentColor;
    transform: translate(-50%, -50%);
    transition: transform .22s ease;
}

.yb-news-toc__summary-icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.yb-news-toc__details[open]
.yb-news-toc__summary-icon::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

.yb-news-toc__panel {
    padding: 0 25px 25px;
    border-top: 1px solid rgba(17, 19, 21, .085);
}

.yb-news-toc__list {
    counter-reset: none;
    margin: 0;
    padding: 8px 0 0;
    list-style: none;
}

.yb-news-toc__item {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid rgba(17, 19, 21, .075);
}

.yb-news-toc__item:last-child {
    border-bottom: 0;
}

.yb-news-toc__row {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: baseline;
    gap: 10px;
    padding: 15px 0;
}

.yb-news-toc__number {
    color: var(--yb-news-red);
    font-size: 10px;
    font-weight: 760;
    line-height: 1.4;
    letter-spacing: .08em;
}

.yb-news-toc__link,
.yb-news-toc__sublink {
    color: var(--yb-news-ink);
    text-decoration: none;
    transition:
        color .18s ease,
        opacity .18s ease;
}

.yb-news-toc__link {
    font-size: 14px;
    font-weight: 650;
    line-height: 1.4;
    letter-spacing: -.012em;
}

.yb-news-toc__link:hover,
.yb-news-toc__link:focus-visible,
.yb-news-toc__sublink:hover,
.yb-news-toc__sublink:focus-visible {
    color: var(--yb-news-red);
}

.yb-news-toc__sublist {
    display: none;
    margin: -2px 0 12px 48px;
    padding: 0 0 0 15px;
    border-left: 1px solid rgba(17, 19, 21, .11);
    list-style: none;
}

.yb-news-toc--show-details
.yb-news-toc__sublist {
    display: block;
}

.yb-news-toc__subitem {
    margin: 0;
    padding: 5px 0;
}

.yb-news-toc__sublink {
    display: inline-block;
    color: var(--yb-news-muted);
    font-size: 12px;
    font-weight: 540;
    line-height: 1.45;
}

.yb-news-toc__controls {
    display: flex;
    justify-content: flex-end;
    padding-top: 16px;
}

.yb-news-toc__toggle {
    appearance: none;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--yb-news-muted);
    cursor: pointer;
    font: inherit;
    font-size: 11px;
    font-weight: 680;
    line-height: 1.2;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.yb-news-toc__toggle:hover,
.yb-news-toc__toggle:focus-visible {
    color: var(--yb-news-red);
}

.yb-news-article__content h2[id],
.yb-news-article__content h3[id] {
    scroll-margin-top: 110px;
}


/* TOC responsive */

@media (max-width: 767px) {

    .yb-news-toc {
        margin: 2.6em 0 2.85em;
    }

    .yb-news-toc__summary {
        min-height: 60px;
        padding: 0 18px;
    }

    .yb-news-toc__panel {
        padding: 0 18px 20px;
    }

    .yb-news-toc__row {
        grid-template-columns: 31px minmax(0, 1fr);
        gap: 8px;
        padding: 14px 0;
    }

    .yb-news-toc__link {
        font-size: 13px;
    }

    .yb-news-toc__sublist {
        margin-left: 39px;
        padding-left: 12px;
    }

    .yb-news-toc__sublink {
        font-size: 11px;
    }
}


/* --------------------------------------------------------------------------
   Back to Top
   -------------------------------------------------------------------------- */

.yb-news-backtop {
    position: fixed;
    right: 26px;
    bottom: 26px;
    z-index: 90;

    display: grid;
    place-items: center;

    width: 46px;
    height: 46px;
    padding: 0;

    border: 1px solid rgba(17, 19, 21, .13);
    border-radius: 50%;

    background: var(--yb-news-paper);
    color: var(--yb-news-ink);

    box-shadow: 0 8px 28px rgba(17, 19, 21, .09);

    cursor: pointer;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transform: translateY(8px);

    transition:
        opacity .22s ease,
        visibility .22s ease,
        transform .22s ease,
        color .18s ease,
        border-color .18s ease;
}

.yb-news-backtop--visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.yb-news-backtop__icon {
    position: relative;
    display: block;
    width: 14px;
    height: 16px;
}

.yb-news-backtop__icon::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 50%;

    width: 8px;
    height: 8px;

    border-top: 1.5px solid currentColor;
    border-left: 1.5px solid currentColor;

    transform: translateX(-50%) rotate(45deg);
}

.yb-news-backtop__icon::after {
    content: "";
    position: absolute;
    top: 4px;
    left: 50%;

    width: 1.5px;
    height: 11px;

    background: currentColor;

    transform: translateX(-50%);
}

.yb-news-backtop:hover,
.yb-news-backtop:focus-visible {
    color: var(--yb-news-red);
    border-color: rgba(230, 38, 38, .32);
}

.yb-news-backtop:focus-visible {
    outline: 2px solid var(--yb-news-red);
    outline-offset: 3px;
}

@media (max-width: 767px) {
    .yb-news-backtop {
        right: 15px;
        bottom: 18px;
        width: 42px;
        height: 42px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .yb-news-backtop {
        transition: none;
    }
}







/* --------------------------------------------------------------------------
   Article end
   -------------------------------------------------------------------------- */
.yb-news-article__end {
    background: var(--yb-news-paper);
    border-top: 1px solid var(--yb-news-line);
    border-bottom: 1px solid var(--yb-news-line);
}

.yb-news-article__end-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    width: min(calc(100% - 96px), var(--yb-news-wide));
    margin: 0 auto;
    padding: 31px 0;
}

.yb-news-article__back,
.yb-news-article__end-category {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    color: var(--yb-news-ink);
    font-size: 11px;
    font-weight: 650;
    line-height: 1;
    text-decoration: none;
}

.yb-news-article__end-category {
    color: var(--yb-news-soft);
    font-size: 10px;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.yb-news-article__back:hover,
.yb-news-article__back:focus-visible,
.yb-news-article__end-category:hover,
.yb-news-article__end-category:focus-visible {
    color: var(--yb-news-red);
}

/* --------------------------------------------------------------------------
   Related stories
   -------------------------------------------------------------------------- */
.yb-news-related {
    background: var(--yb-news-bg);
}

.yb-news-related__inner {
    width: min(calc(100% - 96px), var(--yb-news-page));
    margin: 0 auto;
    padding: 66px 0 82px;
}

.yb-news-related__header {
    margin-bottom: 25px;
}

.yb-news-related__header h2 {
    margin: 0;
    color: var(--yb-news-ink);
    font-size: 12px;
    font-weight: 760;
    line-height: 1;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.yb-news-related__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.yb-news-related__card {
    min-width: 0;
    background: var(--yb-news-paper);
    border: 1px solid rgba(17, 19, 21, .075);
}

.yb-news-related__media {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--yb-news-paper);
}

.yb-news-related__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 520ms cubic-bezier(.22, .61, .36, 1);
}

.yb-news-related__card:hover .yb-news-related__image {
    transform: scale(1.012);
}

.yb-news-related__body {
    padding: 20px 21px 22px;
}

.yb-news-related__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 13px;
    color: var(--yb-news-soft);
    font-size: 9px;
    font-weight: 620;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.yb-news-related__meta span {
    color: var(--yb-news-red);
    font-weight: 740;
}

.yb-news-related__card h3 {
    margin: 0;
    font-size: clamp(18px, 1.35vw, 23px);
    font-weight: 650;
    line-height: 1.16;
    letter-spacing: -.03em;
}

.yb-news-related__card h3 a {
    color: var(--yb-news-ink);
    text-decoration: none;
}

.yb-news-related__read {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-top: 20px;
    padding-bottom: 5px;
    border-bottom: 1px solid rgba(17, 19, 21, .21);
    color: var(--yb-news-ink);
    font-size: 10.5px;
    font-weight: 650;
    text-decoration: none;
}

.yb-news-related__read span {
    transition: transform 160ms ease;
}

.yb-news-related__read:hover span,
.yb-news-related__read:focus-visible span {
    transform: translateX(3px);
}

/* --------------------------------------------------------------------------
   Focus states
   -------------------------------------------------------------------------- */
.yb-news-single a:focus-visible {
    outline: 2px solid var(--yb-news-red);
    outline-offset: 3px;
}

/* --------------------------------------------------------------------------
   Laptop / small desktop
   -------------------------------------------------------------------------- */
@media (max-width: 1180px) {
    .yb-news-article__header-inner,
    .yb-news-article__hero,
    .yb-news-related__inner {
        width: calc(100% - 72px);
    }

    .yb-news-article__header-inner {
        padding: 62px 0 58px;
    }

    .yb-news-article__hero {
        margin-top: 50px;
    }

    .yb-news-article__content .alignwide,
    .yb-news-article__content .wp-block-image.alignwide,
    .yb-news-article__content .wp-block-gallery.alignwide,
    .yb-news-article__content .wp-block-table.alignwide,
    .yb-news-article__content .alignfull,
    .yb-news-article__content .wp-block-image.alignfull {
        width: calc(100vw - 72px);
    }

    .yb-news-article__end-inner {
        width: min(calc(100% - 72px), var(--yb-news-wide));
    }
}

/* --------------------------------------------------------------------------
   Tablet
   -------------------------------------------------------------------------- */
@media (max-width: 900px) {
    .yb-news-article__header-inner,
    .yb-news-article__hero,
    .yb-news-related__inner {
        width: calc(100% - 48px);
    }

    .yb-news-article__header-inner {
        padding: 52px 0 51px;
    }

    .yb-news-article__breadcrumb {
        margin-bottom: 30px;
    }

    .yb-news-article__title {
        font-size: clamp(47px, 7vw, 62px);
    }

    .yb-news-article__title--long {
        font-size: clamp(42px, 6.2vw, 54px);
        line-height: 1.02;
    }

    .yb-news-article__hero {
        margin-top: 42px;
    }

    .yb-news-article__content-wrap {
        padding: 54px 0 72px;
    }

    .yb-news-article__content .alignwide,
    .yb-news-article__content .wp-block-image.alignwide,
    .yb-news-article__content .wp-block-gallery.alignwide,
    .yb-news-article__content .wp-block-table.alignwide,
    .yb-news-article__content .alignfull,
    .yb-news-article__content .wp-block-image.alignfull {
        width: calc(100vw - 48px);
    }

    .yb-news-article__end-inner {
        width: calc(100% - 48px);
    }

    .yb-news-related__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* --------------------------------------------------------------------------
   Mobile
   -------------------------------------------------------------------------- */
@media (max-width: 700px) {
    .yb-news-article__header-inner,
    .yb-news-article__hero,
    .yb-news-related__inner {
        width: calc(100% - 38px);
    }

    .yb-news-article__header-inner {
        padding: 42px 0 43px;
    }

    .yb-news-article__breadcrumb {
        gap: 7px;
        margin-bottom: 24px;
        font-size: 8.5px;
    }

    .yb-news-article__meta {
        margin-bottom: 17px;
        font-size: 9px;
    }

    .yb-news-article__title {
        font-size: clamp(39px, 11.5vw, 53px);
        line-height: 1.02;
    }

    .yb-news-article__title--long {
        font-size: clamp(34px, 9.5vw, 44px);
        line-height: 1.04;
        letter-spacing: -.042em;
    }

    .yb-news-article__dek {
        margin-top: 23px;
        font-size: 17.5px;
    }

    .yb-news-article__hero {
        margin-top: 30px;
    }

    .yb-news-article__content-wrap {
        padding: 44px 0 58px;
    }

    .yb-news-article__content {
        width: calc(100% - 38px);
        font-size: 16px;
        line-height: 1.75;
    }

    .yb-news-article__content h2 {
        font-size: clamp(27px, 7.6vw, 34px);
        line-height: 1.13;
    }

    .yb-news-article__content h3 {
        font-size: clamp(22px, 6vw, 27px);
    }

    .yb-news-article__content blockquote,
    .yb-news-article__content .wp-block-quote {
        padding-left: 20px;
        font-size: 19px;
    }

    .yb-news-article__content .alignwide,
    .yb-news-article__content .wp-block-image.alignwide,
    .yb-news-article__content .wp-block-gallery.alignwide,
    .yb-news-article__content .wp-block-table.alignwide,
    .yb-news-article__content .alignfull,
    .yb-news-article__content .wp-block-image.alignfull {
        width: calc(100vw - 38px);
    }

    .yb-news-article__end-inner {
        width: calc(100% - 38px);
        padding: 25px 0;
    }

    .yb-news-related__inner {
        padding: 52px 0 60px;
    }

    .yb-news-related__grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }
}

@media (max-width: 420px) {
    .yb-news-article__header-inner,
    .yb-news-article__hero,
    .yb-news-related__inner {
        width: calc(100% - 32px);
    }

    .yb-news-article__content {
        width: calc(100% - 32px);
    }

    .yb-news-article__content .alignwide,
    .yb-news-article__content .wp-block-image.alignwide,
    .yb-news-article__content .wp-block-gallery.alignwide,
    .yb-news-article__content .wp-block-table.alignwide,
    .yb-news-article__content .alignfull,
    .yb-news-article__content .wp-block-image.alignfull {
        width: calc(100vw - 32px);
    }

    .yb-news-article__end-inner {
        align-items: flex-start;
        flex-direction: column;
        width: calc(100% - 32px);
        gap: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .yb-news-single *,
    .yb-news-single *::before,
    .yb-news-single *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }
}
