/* =========================================================
   HFDXARC v1.2.4 Site Unifier
   Rolls the approved black/gold/blue glass style across normal
   WordPress pages, posts, archives, widgets, search and plugins.
   ========================================================= */

:root {
    --hfdxarc-black: #030609;
    --hfdxarc-bg: #050910;
    --hfdxarc-bg-2: #07111d;
    --hfdxarc-panel: rgba(8, 18, 30, 0.92);
    --hfdxarc-panel-2: rgba(11, 28, 46, 0.86);
    --hfdxarc-panel-3: rgba(15, 42, 70, 0.72);
    --hfdxarc-border: rgba(255, 255, 255, 0.16);
    --hfdxarc-border-strong: rgba(255, 210, 0, 0.35);
    --hfdxarc-gold: #ffd200;
    --hfdxarc-blue: #1677c8;
    --hfdxarc-blue-2: #2497ff;
    --hfdxarc-green: #2fc46d;
    --hfdxarc-red: #d43a35;
    --hfdxarc-white: #ffffff;
    --hfdxarc-text: #eef6ff;
    --hfdxarc-muted: #c8d5e3;
    --hfdxarc-soft: #91a4b8;
    --hfdxarc-radius: 12px;
    --hfdxarc-radius-lg: 18px;
    --hfdxarc-shadow: 0 18px 48px rgba(0, 0, 0, 0.52);
    --hfdxarc-inner-glow: inset 0 1px 0 rgba(255,255,255,.08);
    --hfdxarc-site-width: min(100%, 1880px);
    --hfdxarc-content-width: min(100%, 1560px);
}

html,
body {
    background: #030609 !important;
    color: var(--hfdxarc-text) !important;
}

body {
    min-height: 100vh;
    background:
        radial-gradient(circle at 18% 8%, rgba(22,119,200,.16), transparent 34rem),
        radial-gradient(circle at 82% 16%, rgba(255,210,0,.07), transparent 28rem),
        linear-gradient(180deg, #05080d 0%, #020407 100%) !important;
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255,255,255,.018) 1px, transparent 1px);
    background-size: 48px 48px;
    opacity: .25;
}

#wrapper,
#wrap,
#container,
.container,
#header.container,
#footer.container {
    max-width: var(--hfdxarc-site-width) !important;
}

#wrapper {
    width: min(100%, 1920px) !important;
    margin: 0 auto !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
}

#header-wrap,
#mainnav-wrap,
#content-wrap,
#footer-wrap {
    background: transparent !important;
}

#main {
    width: var(--hfdxarc-content-width) !important;
    max-width: var(--hfdxarc-content-width) !important;
    margin: 0 auto !important;
    padding: 22px 14px 38px !important;
    box-sizing: border-box !important;
}

#content {
    background: transparent !important;
    color: var(--hfdxarc-text) !important;
}

/* Standard two-column WordPress layout, styled like the approved mockup */
body:not(.hfdxarc-template-fullwidth):not(.hfdxarc-plugin-content-page) #content {
    width: calc(100% - 360px) !important;
    max-width: none !important;
    float: left !important;
    margin: 0 !important;
    padding: 0 20px 0 0 !important;
    box-sizing: border-box !important;
}

body:not(.hfdxarc-template-fullwidth):not(.hfdxarc-plugin-content-page) #sidebar,
body:not(.hfdxarc-template-fullwidth):not(.hfdxarc-plugin-content-page) #sidebar-primary {
    width: 340px !important;
    max-width: 340px !important;
    float: right !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

body.hfdxarc-template-fullwidth #content,
body.hfdxarc-plugin-content-page #content,
body.page-template-hfdxarc-template-fullwidth #content,
body.page-template-template-fullwidth-php #content {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    padding: 0 !important;
}

body.hfdxarc-template-fullwidth #sidebar,
body.hfdxarc-plugin-content-page #sidebar,
body.page-template-hfdxarc-template-fullwidth #sidebar,
body.page-template-template-fullwidth-php #sidebar,
body.hfdxarc-template-fullwidth #sidebar-primary,
body.hfdxarc-plugin-content-page #sidebar-primary {
    display: none !important;
}

/* Posts/pages */
.type-post,
.type-page,
.post,
.page,
article.hentry,
#content .entry,
#content .post,
#content article {
    background: linear-gradient(180deg, rgba(12, 31, 52, .94), rgba(5, 13, 23, .94)) !important;
    border: 1px solid var(--hfdxarc-border) !important;
    border-radius: var(--hfdxarc-radius-lg) !important;
    box-shadow: var(--hfdxarc-shadow), var(--hfdxarc-inner-glow) !important;
    color: var(--hfdxarc-text) !important;
    overflow: hidden;
}

#content article,
#content .post,
#content .page {
    margin-bottom: 22px !important;
}

.entry,
.entry-content,
.page-content,
.post-content {
    color: var(--hfdxarc-text) !important;
}

.entry-content,
.page-content,
.post-content,
#content .entry {
    font-size: clamp(15px, .86vw, 18px) !important;
    line-height: 1.68 !important;
}

.entry-content,
.entry-summary,
.post-content,
.page-content,
#content .entry,
#content .post .entry {
    padding: clamp(18px, 2.1vw, 34px) !important;
}

.entry-title,
.post-title,
.page-title,
.archive-title,
.search-title,
#content h1,
#content h2,
#content h3,
#content h4,
#content h5,
#content h6 {
    color: var(--hfdxarc-white) !important;
    text-shadow: 0 2px 18px rgba(0,0,0,.55);
}

.entry-title,
.page-title,
.post-title,
#content h1 {
    font-size: clamp(2.2rem, 3.2vw, 4.8rem) !important;
    line-height: .98 !important;
    letter-spacing: -.04em !important;
    margin: 0 0 16px !important;
}

#content h2,
#content h3,
#sidebar h3,
.widget-title,
.widgettitle {
    color: var(--hfdxarc-gold) !important;
    text-transform: uppercase !important;
    letter-spacing: .025em !important;
    font-weight: 900 !important;
}

#content h2 {
    font-size: clamp(1.55rem, 2vw, 2.65rem) !important;
}

#content h3 {
    font-size: clamp(1.15rem, 1.35vw, 1.65rem) !important;
}

.entry-meta,
.postmeta,
.meta,
#content .entry-meta,
#content .postmeta,
#content .posted-on,
#content .byline {
    color: var(--hfdxarc-muted) !important;
    font-size: .92rem !important;
}

#content p,
#content li,
#content dt,
#content dd,
#content figcaption,
#content label,
#content small,
#content blockquote,
#content cite {
    color: var(--hfdxarc-text) !important;
}

#content .muted,
#content .has-small-font-size,
#content .wp-caption-text,
#content figcaption {
    color: var(--hfdxarc-muted) !important;
}

#content a,
#sidebar a,
#footer a {
    color: #78c3ff !important;
    text-decoration-color: rgba(120,195,255,.45) !important;
}

#content a:hover,
#sidebar a:hover,
#footer a:hover {
    color: var(--hfdxarc-gold) !important;
}

/* Images/media */
#content img,
#content iframe,
#content video,
.wp-caption,
.gallery img {
    border-radius: 12px !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    box-shadow: 0 14px 36px rgba(0,0,0,.42) !important;
}

#content img {
    height: auto !important;
}

.wp-caption {
    background: rgba(0,0,0,.24) !important;
    color: var(--hfdxarc-muted) !important;
    padding: 8px !important;
}

/* Cards, blocks and common editor elements */
.wp-block-group,
.wp-block-columns,
.wp-block-media-text,
.wp-block-cover,
#content .box,
#content .card,
#content .panel,
#content .notice,
#content .wp-block-table,
#content .wp-block-quote,
#content .wp-block-pullquote,
#content .wp-block-verse,
#content pre,
#content code {
    border-color: var(--hfdxarc-border) !important;
}

.wp-block-group.has-background,
.wp-block-media-text,
#content .box,
#content .card,
#content .panel,
#content .notice {
    background: linear-gradient(180deg, rgba(15,39,64,.86), rgba(6,16,28,.86)) !important;
    border: 1px solid var(--hfdxarc-border) !important;
    border-radius: var(--hfdxarc-radius) !important;
    box-shadow: var(--hfdxarc-inner-glow) !important;
    color: var(--hfdxarc-text) !important;
}

/* Tables */
#content table,
#sidebar table {
    width: 100% !important;
    border-collapse: collapse !important;
    background: rgba(0, 0, 0, .22) !important;
    color: var(--hfdxarc-text) !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}

#content th,
#sidebar th {
    background: rgba(255,255,255,.075) !important;
    color: var(--hfdxarc-white) !important;
    text-transform: uppercase !important;
}

#content td,
#content th,
#sidebar td,
#sidebar th {
    border: 1px solid rgba(255,255,255,.14) !important;
    padding: .72rem .85rem !important;
    color: var(--hfdxarc-text) !important;
}

#content tr:nth-child(even) td,
#sidebar tr:nth-child(even) td {
    background: rgba(255,255,255,.025) !important;
}

/* Buttons and forms */
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.button,
.btn,
.wp-block-button__link,
.more-link,
.read-more,
a.more-link,
#content .button,
#sidebar .button {
    background: linear-gradient(180deg, #2184d6, #0f5797) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    border-radius: 8px !important;
    color: #fff !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .025em !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 10px 24px rgba(0,0,0,.32) !important;
    text-decoration: none !important;
}

button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
.button:hover,
.btn:hover,
.wp-block-button__link:hover,
.more-link:hover {
    filter: brightness(1.12);
    transform: translateY(-1px);
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea,
select {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 10px !important;
    color: var(--hfdxarc-white) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
}

input::placeholder,
textarea::placeholder {
    color: rgba(230,240,255,.62) !important;
}

/* Sidebar widgets */
#sidebar .widget,
#sidebar-primary .widget,
.widget-area .widget,
#footer-widgets .widget,
#footer-sidebar .widget {
    background: linear-gradient(180deg, rgba(13,31,52,.94), rgba(5,13,23,.94)) !important;
    border: 1px solid var(--hfdxarc-border) !important;
    border-radius: var(--hfdxarc-radius) !important;
    box-shadow: var(--hfdxarc-shadow), var(--hfdxarc-inner-glow) !important;
    color: var(--hfdxarc-text) !important;
    padding: 18px !important;
    margin-bottom: 22px !important;
}

#sidebar .widget-title,
#sidebar h3,
.widget-title,
.widgettitle {
    background: transparent !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
    padding: 0 0 12px !important;
    margin: 0 0 14px !important;
}

#sidebar ul,
.widget ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

#sidebar li,
.widget li {
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
    padding: 9px 0 !important;
    color: var(--hfdxarc-text) !important;
}

#sidebar li:last-child,
.widget li:last-child {
    border-bottom: 0 !important;
}

/* Archive/search navigation */
.pagination,
.wp-pagenavi,
#nav-below,
.navigation,
.post-navigation,
.posts-navigation {
    background: linear-gradient(180deg, rgba(12,31,52,.86), rgba(5,13,23,.86)) !important;
    border: 1px solid var(--hfdxarc-border) !important;
    border-radius: var(--hfdxarc-radius) !important;
    padding: 14px !important;
    color: var(--hfdxarc-text) !important;
}

/* Comments */
#comments,
.commentlist .comment,
.comment-respond {
    background: linear-gradient(180deg, rgba(12,31,52,.90), rgba(5,13,23,.90)) !important;
    border: 1px solid var(--hfdxarc-border) !important;
    border-radius: var(--hfdxarc-radius) !important;
    color: var(--hfdxarc-text) !important;
}

/* Remove old light parent-theme fragments */
.breadcrumbs,
#breadcrumbs,
#respond,
#author-info,
.entry-tags,
.post-tags,
.related-posts,
.sharedaddy,
.sd-sharing-enabled,
.sd-block,
.sd-social,
#content .yarpp-related {
    background: transparent !important;
    color: var(--hfdxarc-text) !important;
}

/* Gutenberg alignment safety */
.alignwide,
.alignfull {
    max-width: 100% !important;
}

/* Plugin wrappers already used across the HFDXARC site */
[class*="hfdxarc-"] {
    box-sizing: border-box;
}

.hfdxarc-page,
.hfdxarc-plugin-page,
.hfdxarc-tech-page,
.hfdxarc-contact-page,
.hfdxarc-about-page,
.hfdxarc-onair-page,
.hfdxarc-events-page,
.hfdxarc-history-page,
.hfdxarc-members-page,
.hfdxarc-wire-page {
    width: 100% !important;
    max-width: var(--hfdxarc-content-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    color: var(--hfdxarc-text) !important;
}

/* Mobile and tablet */
@media (max-width: 980px) {
    #main {
        width: 100% !important;
        max-width: 100% !important;
        padding: 10px 8px 28px !important;
    }

    body:not(.hfdxarc-template-fullwidth):not(.hfdxarc-plugin-content-page) #content,
    body:not(.hfdxarc-template-fullwidth):not(.hfdxarc-plugin-content-page) #sidebar,
    body:not(.hfdxarc-template-fullwidth):not(.hfdxarc-plugin-content-page) #sidebar-primary {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        padding: 0 !important;
    }

    #sidebar,
    #sidebar-primary {
        margin-top: 18px !important;
    }

    .entry-content,
    .entry-summary,
    .post-content,
    .page-content,
    #content .entry {
        padding: 16px !important;
    }
}

@media (min-width: 1600px) {
    #main {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    body:not(.hfdxarc-template-fullwidth):not(.hfdxarc-plugin-content-page) #content {
        width: calc(100% - 390px) !important;
        padding-right: 24px !important;
    }

    body:not(.hfdxarc-template-fullwidth):not(.hfdxarc-plugin-content-page) #sidebar,
    body:not(.hfdxarc-template-fullwidth):not(.hfdxarc-plugin-content-page) #sidebar-primary {
        width: 366px !important;
        max-width: 366px !important;
    }
}
