:root {
    --news-ink: #06132f;
    --news-panel: #0a1b3c;
    --news-panel-2: #10264b;
    --news-paper: #eef1f4;
    --news-muted: #aeb9c8;
    --news-rule: rgba(184, 196, 213, .28);
    --news-gold: #e6a21a;
    --news-shell: 1180px;
}

.tow-tidal-news {
    background: radial-gradient(circle at 50% 0, #17315b 0, #071632 38%, #030b1d 100%);
    color: var(--news-paper);
}

.tow-news-shell {
    width: min(calc(100% - 40px), var(--news-shell));
    margin-inline: auto;
}

.tow-news-hero,
.tow-news-article-hero {
    width: 100%;
    border-bottom: 1px solid var(--news-rule);
    background: linear-gradient(180deg, rgba(3, 11, 29, .34), rgba(3, 11, 29, .88));
}

.tow-news-hero-inner {
    padding-top: 58px;
    padding-bottom: 48px;
}

.tow-news-kicker,
.tow-news-section-label {
    margin: 0 0 10px;
    color: var(--news-gold);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.tow-news-hero h1 {
    margin: 0;
    color: #f5f2e9;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(48px, 6vw, 82px);
    line-height: .9;
    letter-spacing: -.045em;
    text-transform: uppercase;
}

.tow-news-hero p:last-child {
    max-width: 700px;
    margin: 20px 0 0;
    color: #c2cad6;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 18px;
    line-height: 1.55;
}

.tow-news-main {
    padding: 42px 0 72px;
}

.tow-news-lead {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 250px;
    min-height: 310px;
    margin-bottom: 38px;
    border-top: 4px solid var(--news-gold);
    border-right: 1px solid var(--news-rule);
    border-bottom: 1px solid var(--news-rule);
    border-left: 1px solid var(--news-rule);
    background: linear-gradient(120deg, rgba(13, 34, 71, .98), rgba(5, 17, 42, .98));
}

.tow-news-lead-copy {
    padding: 36px 40px;
}

.tow-news-lead h2 {
    max-width: 780px;
    margin: 0 0 16px;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(32px, 3.5vw, 50px);
    line-height: 1.04;
    letter-spacing: -.03em;
}

.tow-news-lead h2 a,
.tow-news-card h3 a {
    color: #f5f2e9;
    text-decoration: none;
}

.tow-news-lead h2 a:hover,
.tow-news-card h3 a:hover {
    color: var(--news-gold);
}

.tow-news-deck {
    max-width: 720px;
    color: #c5ceda;
    font-size: 15px;
    line-height: 1.7;
}

.tow-news-byline {
    color: #8f9eb1;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .035em;
}

.tow-news-byline span {
    padding: 0 6px;
    color: var(--news-gold);
}

.tow-news-read,
.tow-news-native a {
    display: inline-block;
    margin-top: 14px;
    color: var(--news-gold) !important;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-decoration: none !important;
    text-transform: uppercase;
}

.tow-news-lead-mark {
    display: grid;
    place-content: center;
    border-left: 1px solid var(--news-rule);
    background: repeating-linear-gradient(135deg, rgba(230, 162, 26, .045) 0 2px, transparent 2px 11px);
    text-align: center;
}

.tow-news-lead-mark span {
    color: var(--news-gold);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .38em;
}

.tow-news-lead-mark strong {
    margin-top: 8px;
    color: rgba(245, 242, 233, .16);
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 48px;
    line-height: .85;
}

.tow-news-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 34px;
    align-items: start;
}

.tow-news-section-heading {
    margin-bottom: 18px;
    padding-bottom: 13px;
    border-bottom: 1px solid var(--news-rule);
}

.tow-news-section-heading h2,
.tow-news-sidebar h2 {
    margin: 0;
    color: #f5f2e9;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 29px;
}

.tow-news-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid var(--news-rule);
    border-left: 1px solid var(--news-rule);
}

.tow-news-card {
    min-height: 250px;
    padding: 24px;
    border-right: 1px solid var(--news-rule);
    border-bottom: 1px solid var(--news-rule);
    background: rgba(8, 26, 57, .68);
}

.tow-news-card h3 {
    margin: 0 0 12px;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 23px;
    line-height: 1.14;
}

.tow-news-card > p:not(.tow-news-section-label) {
    color: #aeb9c8;
    line-height: 1.6;
}

.tow-news-card footer,
.tow-news-card-stats {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    color: #8290a4;
    font-size: 11px;
}

.tow-news-card-stats {
    margin-top: 13px;
    padding-top: 13px;
    border-top: 1px solid rgba(184, 196, 213, .14);
}

.tow-news-sidebar {
    position: sticky;
    top: 20px;
    display: grid;
    gap: 18px;
}

.tow-news-about,
.tow-news-native,
.tow-news-empty {
    padding: 25px;
    border: 1px solid var(--news-rule);
    border-top: 3px solid var(--news-gold);
    background: rgba(6, 19, 47, .88);
    box-shadow: 0 18px 45px rgba(0, 0, 0, .18);
}

.tow-news-sidebar p,
.tow-news-empty p {
    color: #aeb9c8;
    line-height: 1.65;
}

.tow-news-native h3,
.tow-news-empty h3 {
    margin: 0;
    color: #f5f2e9;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 22px;
}

/* Public article presentation. */
.tow-news-article-hero .tow-news-shell {
    padding-top: 54px;
    padding-bottom: 40px;
}

.tow-news-article-hero h1 {
    max-width: 940px;
    margin: 0;
    color: #f5f2e9;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(42px, 5.5vw, 72px);
    line-height: 1;
    letter-spacing: -.035em;
}

.tow-news-article-meta {
    margin: 18px 0 0;
    color: #9ba8ba;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .025em;
}

.tow-news-article-meta span {
    padding: 0 7px;
    color: var(--news-gold);
}

.tow-news-article-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 34px;
    align-items: start;
}

.tow-news-article-column {
    min-width: 0;
    display: grid;
    gap: 34px;
}

.tow-news-article {
    min-width: 0;
    border-top: 4px solid var(--news-gold);
    border-right: 1px solid var(--news-rule);
    border-bottom: 1px solid var(--news-rule);
    border-left: 1px solid var(--news-rule);
    background: rgba(7, 22, 50, .82);
}

.tow-news-article-body {
    padding: 40px 46px;
    color: #d9e0e9;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 17px;
    line-height: 1.85;
}

.tow-news-article-body p {
    margin: 0 0 1.35em;
}

.tow-news-article-body p:last-child {
    margin-bottom: 0;
}

.tow-news-article-body h2,
.tow-news-article-body h3,
.tow-news-article-body h4 {
    margin: 1.6em 0 .55em;
    color: #f5f2e9;
    font-family: Georgia, 'Times New Roman', serif;
    line-height: 1.15;
}

.tow-news-article-body a,
.tow-news-comment-body a {
    color: var(--news-gold);
}

.tow-news-article-body img,
.tow-news-comment-body img {
    max-width: 100%;
    height: auto;
}

.tow-news-article-body blockquote,
.tow-news-comment-body blockquote {
    margin: 1.5em 0;
    padding: .2em 0 .2em 24px;
    border-left: 3px solid var(--news-gold);
    color: #c5ceda;
}

.tow-news-article-body pre,
.tow-news-article-body code,
.tow-news-comment-body pre,
.tow-news-comment-body code {
    max-width: 100%;
    overflow: auto;
}

.tow-news-article-footer {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding: 20px 46px 28px;
    border-top: 1px solid var(--news-rule);
}

/* Public discussion. Replies stay native phpBB posts in the private newsroom,
   but approved replies are presented here as article comments. */
.tow-news-discussion {
    border: 1px solid var(--news-rule);
    border-top: 4px solid var(--news-gold);
    background: rgba(7, 22, 50, .72);
}

.tow-news-discussion-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    padding: 28px 34px 22px;
    border-bottom: 1px solid var(--news-rule);
}

.tow-news-discussion-heading h2 {
    margin: 0;
    color: #f5f2e9;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 32px;
}

.tow-news-discussion-heading > strong {
    display: grid;
    place-items: center;
    min-width: 42px;
    height: 42px;
    border: 1px solid rgba(230, 162, 26, .6);
    color: var(--news-gold);
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 18px;
}

.tow-news-comments {
    display: grid;
}

.tow-news-comment {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 18px;
    padding: 26px 34px;
    border-bottom: 1px solid var(--news-rule);
}

.tow-news-comment-avatar {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(230, 162, 26, .55);
    border-radius: 50%;
    background: rgba(230, 162, 26, .08);
    color: var(--news-gold);
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 21px;
    font-weight: 700;
}

.tow-news-comment-content {
    min-width: 0;
}

.tow-news-comment-content > header {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 12px;
}

.tow-news-comment-content > header > div {
    display: grid;
    gap: 3px;
}

.tow-news-comment-author {
    color: #f5f2e9 !important;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
}

.tow-news-comment-content time,
.tow-news-comment-link {
    color: #7f8ea3;
    font-size: 11px;
}

.tow-news-comment-link {
    text-decoration: none;
}

.tow-news-comment-body {
    color: #cad3de;
    font-size: 14px;
    line-height: 1.7;
}

.tow-news-comment-body p:first-child {
    margin-top: 0;
}

.tow-news-comment-body p:last-child {
    margin-bottom: 0;
}

.tow-news-no-comments {
    padding: 24px 34px;
    border-bottom: 1px solid var(--news-rule);
    color: #98a6b8;
}

.tow-news-comment-compose {
    padding: 28px 34px 32px;
}

.tow-news-comment-compose h3 {
    margin: 0 0 18px;
    color: #f5f2e9;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 27px;
}

.tow-news-comment-form textarea {
    box-sizing: border-box;
    width: 100%;
    min-height: 150px;
    resize: vertical;
    padding: 16px 18px;
    border: 1px solid rgba(184, 196, 213, .34);
    border-radius: 0;
    outline: 0;
    background: rgba(2, 10, 28, .7);
    color: #edf1f5;
    font: inherit;
    line-height: 1.6;
}

.tow-news-comment-form textarea:focus {
    border-color: var(--news-gold);
    box-shadow: 0 0 0 2px rgba(230, 162, 26, .12);
}

.tow-news-comment-form-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: 14px;
}

.tow-news-comment-form-footer p,
.tow-news-comment-login p,
.tow-news-comment-closed {
    margin: 0;
    color: #8f9db0;
    font-size: 12px;
    line-height: 1.55;
}

.tow-news-comment-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 18px;
    border: 1px solid #f0b323;
    background: #e6a21a;
    color: #071329 !important;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .07em;
    text-decoration: none !important;
    text-transform: uppercase;
    cursor: pointer;
}

.tow-news-comment-submit:hover {
    filter: brightness(1.08);
}

.tow-news-comment-error {
    margin-bottom: 16px;
    padding: 12px 14px;
    border-left: 3px solid #e05a66;
    background: rgba(224, 90, 102, .09);
    color: #ffb7be;
    font-size: 13px;
}

.tow-news-comment-login {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px;
    border: 1px solid var(--news-rule);
    background: rgba(3, 12, 31, .48);
}

@media (max-width: 900px) {
    .tow-news-lead,
    .tow-news-layout,
    .tow-news-article-layout {
        grid-template-columns: 1fr;
    }

    .tow-news-lead-mark {
        min-height: 140px;
        border-top: 1px solid var(--news-rule);
        border-left: 0;
    }

    .tow-news-sidebar {
        position: static;
    }
}

@media (max-width: 640px) {
    .tow-news-shell {
        width: min(calc(100% - 28px), var(--news-shell));
    }

    .tow-news-hero-inner {
        padding-top: 42px;
        padding-bottom: 36px;
    }

    .tow-news-lead-copy {
        padding: 26px 20px;
    }

    .tow-news-grid {
        grid-template-columns: 1fr;
    }

    .tow-news-article-body {
        padding: 28px 22px;
        font-size: 16px;
    }

    .tow-news-article-footer {
        align-items: flex-start;
        flex-direction: column;
        padding: 18px 22px 24px;
    }

    .tow-news-discussion-heading,
    .tow-news-comment-compose {
        padding-left: 22px;
        padding-right: 22px;
    }

    .tow-news-comment {
        grid-template-columns: 38px minmax(0, 1fr);
        gap: 13px;
        padding: 22px;
    }

    .tow-news-comment-avatar {
        width: 38px;
        height: 38px;
        font-size: 17px;
    }

    .tow-news-comment-form-footer,
    .tow-news-comment-login {
        align-items: flex-start;
        flex-direction: column;
    }
}
